Log4j настроить и смотреть не работает должным образом - PullRequest
5 голосов
/ 19 сентября 2011

Я использую log4j для цели входа в мое приложение. С тех пор, чтобы настроить логирование, я использовал следующий код:

LogManager.resetConfiguration();
InputStream stream = Thread.currentThread().getContextClassLoader().getResourceAsStream("log4j.properties"); 
Properties props= new Properties();
props.load(stream);
PropertyConfigurator.configure(props);

Но проблема в том, что всякий раз, когда я хотел изменить уровень ведения журнала во время процесса, мне приходилось перезагружать сервер. Поэтому я изменил код: -

LogManager.resetConfiguration();
PropertyConfigurator.configureAndWatch(("log4j.properties", 900000L);

этот код в идеале должен помочь перезагрузить файл log4j.properties по истечении указанного времени, которое я упомянул как 15 минут. Но все равно код не работает

Что-то не хватает во время кода?

Привет.

Ответы [ 2 ]

7 голосов
/ 19 сентября 2011

configureAndWatch() смотрит файлы. Не ресурсы в пути к классам.

1 голос
/ 22 февраля 2012

Я попробовал решение и работает отлично!Дело в том, что вы должны указать путь как файл, а не как ресурс.

//Resource
DOMConfigurator.configureAndWatch("/log4j.xml", 2000L);

//File
DOMConfigurator.configureAndWatch("./src/log4j.xml", 2000L);

Попробуйте второй вариант и измените log4j.xml и протестируйте его!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...