问题描述
我的log4j.properties文件 -
log4j.rootLogger=INFO, stdout # =============== console output appender ===================== log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=[%d{HH:mm:ss}] %5p: [%c{1}] %m%n # =================== common logging ========================= # The log level for all classes that are not configured below. log4j.logger.petascope=INFO log4j.logger.petascope.wcps=DEBUG log4j.logger.petascope.wcst=DEBUG log4j.logger.petascope.wcs=DEBUG log4j.logger.petascope.wcs2=TRACE
我想在stdout上显示偶数调试和跟踪消息,所以我更改了以下行
log4j.rootLogger=TRACE, stdout
但是,当我在tomcat控制台上查看日志回声时,我看不到任何更改,我仍然只看到信息,警告...消息.
推荐答案
好吧,即使您将根记录器作为跟踪,您的log4j.logger.petascope(指向info)也会覆盖petascope的默认根记录器跟踪.*软件包,这就是您没有看到任何调试的原因和跟踪.
要保持简单,请尝试...将根记录器设置为跟踪: -
log4j.rootLogger=TRACE, stdout
然后,评论以下几行: -
#log4j.logger.petascope=INFO #log4j.logger.petascope.wcps=DEBUG #log4j.logger.petascope.wcst=DEBUG #log4j.logger.petascope.wcs=DEBUG #log4j.logger.petascope.wcs2=TRACE
让我知道这是否对您有用.
其他推荐答案
尝试以下方法:
log4j.appender.stdout.Threshold=TRACE
(如上所述).
问题描述
My log4j.properties file -
log4j.rootLogger=INFO, stdout # =============== console output appender ===================== log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=[%d{HH:mm:ss}] %5p: [%c{1}] %m%n # =================== common logging ========================= # The log level for all classes that are not configured below. log4j.logger.petascope=INFO log4j.logger.petascope.wcps=DEBUG log4j.logger.petascope.wcst=DEBUG log4j.logger.petascope.wcs=DEBUG log4j.logger.petascope.wcs2=TRACE
I want to display even DEBUG and TRACE messages on stdout, so I changed the following line
log4j.rootLogger=TRACE, stdout
But I don't see any changes when I view the logs echoes on Tomcat Console, I still see only INFO, WARN ... messages.
推荐答案
Well, even if you have your root logger as TRACE, your log4j.logger.petascope (pointing to INFO) will override the default root logger's TRACE for petascope.* packages, which is the reason you are not seeing any DEBUG and TRACE.
To keep things simple, try this... set the root logger to trace:-
log4j.rootLogger=TRACE, stdout
Then, comment out the following lines:-
#log4j.logger.petascope=INFO #log4j.logger.petascope.wcps=DEBUG #log4j.logger.petascope.wcst=DEBUG #log4j.logger.petascope.wcs=DEBUG #log4j.logger.petascope.wcs2=TRACE
Let me know if that works for you.
其他推荐答案
Try this:
log4j.appender.stdout.Threshold=TRACE
(as described in another StackOverflow question).