log4j rootlogger отключить регистратор для некоторых классов

StackOverflow https://stackoverflow.com/questions/1411452

  •  05-07-2019
  •  | 
  •  

Вопрос

как мне настроить log4j.properties с помощью rootlogger = debug, stdout, logfile
и org.apache.httpclient = debug , который входит в файл журнала, но не в стандартный вывод?

поднятие rootlogger для информации недопустимо, так как у меня есть другие пакеты на уровне отладки.

Это было полезно?

Решение

В файле log4j.properties добавьте строку

log4j.logger.org.apache.httpclient=DEBUG, logfile

направить выходные данные регистратора org.apache.httpclient в приложение logfile .

Также добавьте строку

log4j.additivity.org.apache.httpclient=false

для предотвращения выхода журнала org.apache.httpclient в приложение rootLogger .

Другие советы

Вы можете достичь этой функциональности, используя фильтры в разных приложениях. Я думаю, что LevelRangeFilter будет что вы ищете.

Однако я думаю, что фильтры можно указывать, только если вы используете XML-файл для конфигурации и не поддерживаются при использовании файла .properties.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top