log4j: ConversionPattern для ConsoleAppender не работает
У меня есть файл свойств log4j (log4j v1.2.16), где я использовал оба RollingFileAppender
а также ConsoleAppender
,
конфигурация для RollingFileAppender
следующее:
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=${log.dir}\\mpnlog.log
log4j.appender.R.MaxFileSize=400KB
log4j.appender.R.MaxBackupIndex=10
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%d %-6r[%20.20t] %-5p %45.45c %x - %m%n
конфигурация для ConsoleAppender
следующее:
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.target=System.out
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %45.45c %x - %m%n
Я получаю правильный вывод с отметкой даты и времени в RollingFileAppender
то есть в mpnlog.log, но в файле catalina.out я не получаю метку даты и времени для System.out.println()
.. Я не знаю, где именно я делаю ошибку. Мне нужна правильная метка времени для заявлений Sysout в файле catalina.out.
Кто-нибудь... знает, как добавить отметку времени даты, используя выше или любой другой подход к catalina.out?
1 ответ
Вы забыли установить уровень журнала
Например:
log4j.rootLogger=INFO, stdout
Лучше изменить на log4j.xml
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE log4j:configuration SYSTEM "log4j.dtd" >
<log4j:configuration>
<appender name="stdout" class="org.apache.log4j.ConsoleAppender">
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss} %-5p %45.45c %x - %m%n/>
</layout>
</appender>
<root>
<priority value="info"></priority>
<appender-ref ref="stdout"/>
</root>
</log4j:configuration>