Приложение не регистрирует журнал, как отлаживать запуск журнала 4j или нет - PullRequest
0 голосов
/ 31 августа 2011

Я создал очень простое приложение, в котором я пытаюсь использовать Log4J, но мое приложение не регистрирует какой-либо журнал.

Может кто-нибудь сказать мне, как я могу отлаживать так же, как мой log4j запущен или нет?

Я сохранил файл в папке классов WEB-INF/classes

Спасибо

Следующие мои log4j.properties

log4j.rootLogger=debug, stdout, ABC

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout

# Pattern to output the caller's file name and line number.
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] (%F:%L) - %m%n

log4j.appender.ABC=org.apache.log4j.RollingFileAppender
log4j.appender.ABC.File=D://abc//dams_workflow_application.log

log4j.appender.ABC.MaxFileSize=3000KB
# Keep one backup file
log4j.appender.ABC.MaxBackupIndex=10

log4j.appender.ABC.layout=org.apache.log4j.PatternLayout
log4j.appender.ABC.layout.ConversionPattern=%5p [%t] (%F:%L) - %m%n

Ниже приведен пример строки для использования журнала 4j ..

 Logger log = Logger.getLogger("ABC");
 log.info("my message");

Ответы [ 3 ]

1 голос
/ 31 августа 2011

Если вы пишете веб-приложение, вы можете просмотреть Log4J Инициализация по умолчанию в Tomcat . Даже в Tomcat говорится, что то же самое относится и к другим контейнерам / серверам веб-приложений.

0 голосов
/ 31 августа 2011

Убедитесь, что jar log4j находится в каталоге lib вашего веб-приложения или в каталоге lib в tomcat. Мне кажется, что Log4j не работает должным образом, если я не поместил файл свойств log4j в пакет по умолчанию в исходном каталоге веб-приложения в проекте.

Все мои файлы свойств log4j обычно выглядят примерно так:

# Define a logger called "processLog" using the FileAppender implementation of the
# Log interface
log4j.appender.processLog=org.apache.log4j.DailyRollingFileAppender
log4j.appender.processLog.File.DateFormat='.'yyyy-ww

# Define the output location
log4j.appender.processLog.File=C:/logs/myapp.log

# Define what the output is going to look like for your log
log4j.appender.processLog.layout=org.apache.log4j.PatternLayout
log4j.appender.processLog.layout.ConversionPattern=%d{yyyy-MM-dd hh:mm a} %5p %c{1}: Line#%L - %m%n

# log4j.rootLogger specifies the default logging level and output location.
# The first parameter is the level (debug > info > warn > error > fatal).
log4j.rootLogger=INFO, processLog

Вот так я и делаю. Возможно, есть лучший способ, но этот всегда работает для меня.

0 голосов
/ 31 августа 2011

Консоль распечатает это, если log4j не запущен:

log4j:WARN No log4j configuration information found.
log4j:WARN Changed non-configured level from DEBUG to ERROR.
log4j:WARN The log4j system is not properly configured!

Вы могли бы взглянуть на Log4j - В поисках хорошего учебника или блога по началу работы , чтобы начать.

С уважением, Стефан

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