Отсутствуют журналы - конфигурация log4j.xml, похоже, игнорируется - Weblogic 9.2 - PullRequest
2 голосов
/ 28 февраля 2012

Я использую WAR, упакованный в EAR на WebLogic 9.2 . Моя функция использует slf4j для входа в систему с использованием конфигурации log4j.xml . log4j.xml находится в каталоге resources проекта war, поэтому он попадает в каталог WEB-INF/classes.

Все работало как под WebLogic 8 , так и Weblogic 9.2 под Windows, однако WebLogic 9.2 под Linux просто игнорирует файл, и файл журнала не создается .

Я тестировал следующие модификации:

  1. Удалено имя каталога от File param до RollingFileAppender, оставляя только имя файла
  2. Включая и исключая log4j из войны (область действия provided)
  3. Использование slf4j версии 1.5.10 с log4j версия 1.2.8 (из weblogic) и 1.2.12
  4. Размещение отдельного файла log4j.xml в каталоге mydomain/conf

Однако ни одно из них не заставляло сообщения журнала появляться нигде. Даже info сообщения не отображаются в главном журнале, однако это установлено для info сообщений, а в предыдущем weblogic они также отображались в главном журнале.

Что еще хуже, даже System.out звонки идут на null и нигде не отображаются.

Итак, в настоящее время я понятия не имею, что не так, потому что даже нет сообщения об ошибке о конфигурации журнала. Кто-нибудь может помочь?


У меня обновление немного.

Я успешно установил параметр log4j.debug = true для weblogic и получил коммюнике: log4j:WARN No appenders could be found for logger

Но файл log4j.xml присутствует в WEB-INF/classes. Я дополнительно добавил к WEB-INF. И это так и работало под виндой. Так что я не знаю, что вызывает проблему с поиском этого файла в Linux.


Обновление 2 Ведение журнала работает в Linux-версии WebLogic 9.2 . Проблема зависит от конкретного случая. Но я до сих пор не знаю, что можно запутать, чтобы добиться такого эффекта. В конфигурации в веб-консоли ничего подозрительного не вижу.

Ответы [ 2 ]

3 голосов
/ 29 февраля 2012

Я считаю эту опцию среды неоценимой: -Dlog4j.debug = true Он показывает вам, как инициализируется log4j и где он ищет свой файл конфигурации.

0 голосов
/ 08 марта 2012

Что ж, после разговора с гуру weblogic, который отправил меня на несколько миллионов страниц документации по weblogic, я нашел решение:

Никогда пользователь log4j под weblogic !

И, применяя эту максиму, я переключился на logback .

И это работает!Так много нервов, и решение было таким простым ... Однако мы не смогли запустить logback под jBoss , используя slf4j , поэтому он так специфичен для сервера: (*

...