Можно ли сделать так, чтобы log4j отображал, какой файл он использовал для настройки?

Вопрос

Можно ли заставить Log4J отображать полный путь к файлу, который он использовал для конфигурации?


Предпосылки

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

На этот раз она сильно сломана. Каждый оператор журнала повсюду выгружается на консоль, и я не могу понять почему. Та же самая точная база кода, которая использовала мои файлы log4j.xml на прошлой неделе, внезапно использует другую конфигурацию. Ничего очевидного не изменилось. Мое единственное предположение, несколько зависимостей изменились, и я подозреваю, что Maven загрузил какой-то злобный JAR, который все ломает.

Если бы я мог просто выяснить , какой файл конфигурации Log4J решил использовать при запуске , я мог бы заняться этим и многими другими проблемы легко.


Резюме

Есть ли способ указать Log4J напечатать, какой файл он использовал для конфигурации? В качестве альтернативы, есть ли способ сломать работающее приложение и использовать отладчик для ответа на этот вопрос (может быть, с помощью выражения или путем проверки переменных)?

73
задан gMale 20 September 2010 в 15:26
поделиться