如何使用Log4j配置文件生成具有不同日志记录级别的两个日志记录

时间:2016-11-03 05:25:10

标签: java file logging log4j

我想使用log4j配置文件在两个具有不同日志记录级别的日志文件中生成日志记录。

例如usual.logINFOdebug.log DEBUG

注意:我已经提到了link1Link2。我不想更改现有的java代码,因此上面的链接与我的问题无关。

1 个答案:

答案 0 :(得分:3)

我假设您希望debug.log包含INFO以及DEBUG。

log4j.appender.usual=org.apache.log4j.DailyRollingFileAppender
log4j.appender.usual.DatePattern=${roll.pattern.daily}
log4j.appender.usual.layout=org.apache.log4j.PatternLayout
log4j.appender.usual.layout.ConversionPattern=%d{${datestamp}} [%t] %-5p %C{2} - %m%n
log4j.appender.usual.File=usual.log
log4j.appender.usual.Threshold=INFO

log4j.appender.debug=org.apache.log4j.DailyRollingFileAppender
log4j.appender.debug.DatePattern=${roll.pattern.daily}
log4j.appender.debug.layout=org.apache.log4j.PatternLayout
log4j.appender.debug.layout.ConversionPattern=%d{${datestamp}} [%t] %-5p %C{2} - %m%n
log4j.appender.debug.File=debug.log
log4j.appender.debug.Threshold=DEBUG

log4j.logger.customlogger=DEBUG, usual, debug

密钥是appender本身的Threshold过滤器。您可以将所有日志发送到多个appender并将其过滤到那里。

上面的语法可能是一个触发,我更习惯于XML配置。