В моем веб-приложении я инициирую регистрацию в своем веб-приложении с помощью функции PropertyConfigurator.configure(filepath)
в сервлете, который загружается при запуске.
String log4jfile = getInitParameter("log4j-init-file");
if (log4jfile != null) {
String propfile = getServletContext().getRealPath(log4jfile);
PropertyConfigurator.configure(propfile);
Я поместил мой log4j.properties файл в каталог WEB_INF / classes и указываю файл как
log4j.appender.rollingFile.File=${catalina.home}/logs/myapp.log
Мой корневой логгер был изначально настроен как:
log4j.rootLogger=DEBUG, rollingFile,console
(я считаю, что атрибут console также записывает операторы в catalina.out)
В Windows ведение журнала, как правило, происходит с операторами, появляющимися в файле журнала.
В Unix мои операторы журналирования перенаправляются в catalina.out вместо моего реального файла журнала (который содержит только журналы из сервлета инициализации). Все последующие журналы отображаются в catalina.out.
Это заставляет меня поверить, что мой log4j не настроен должным образом, но я не могу выяснить причину. Может ли кто-нибудь помочь мне выяснить, где может быть проблема.
Заранее спасибо,
Fell