Большинство аппендеров Log4J являются синхронными, т.е. приостанавливают выполнение основного кода приложения до завершения записи в журнал.
Поэтому, для файлов журналов, в которые идёт активная запись, необходимо использовать асинхронный вывод. Особенно актуальной асинхронная запись в журнал становится с ростом числа потоков в приложении.
Для этого, делается двухуровневая структура аппендеров для каждого лог-файла: на верхнем уровне ставится AsyncAppender, который передаёт сообщения в аппендер, выполняющий собственно ввод/вывод (например, RollingFileAppender).
Комментариев нет:
Отправить комментарий