小编典典

单个Logger的每个附加程序的日志级别

java

是否可以基于附加程序为单个Logger配置不同的日志级别?

我意识到这与这个问题类似,这是我已经了解到的,但是问题是该阈值适用于登录到该附加程序的所有记录器,而我只希望该阈值适用于单个记录器。

即到目前为止,我有这样的事情:

log4j.rootLogger=WARN, stdout

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Threshold=WARN
log4j.appender.stdout.layout=org.apache.log4j.SimpleLayout

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

我希望将 Mylogger的 DEBUG消息发送到 日志文件 追加器,但是我也希望将 Mylogger的 INFO消息发送到
stdout 追加器(但对于所有其他记录器,仅WARN ings)。使用阈值将stdout限制为WARN会限制 mylogger 的输出。


阅读 222

收藏
2020-09-18

共1个答案

小编典典

啊哈,我改了

log4j.appender.stdout.Threshold=WARN

log4j.appender.stdout.Threshold=INFO

第一次应该更谨慎。

2020-09-18