所以我遇到了一个问题,当我将根记录器切换到 DEBUG 时,log4j 似乎想要记录所有可以“调试”的东西。
这是我的文件:
log4j.rootLogger=DEBUG, READER
log4j.appender.READER=org.apache.log4j.ConsoleAppender
log4j.appender.READER.layout=org.apache.log4j.PatternLayout
log4j.appender.READER.layout.ConversionPattern=[%-5p] %t->%c{1} - %m%n
com.myclass.readers=DEBUG, READER
现在我想要的是仅我在要打印的阅读器类下定义的调试语句。我遇到的问题是,我在阅读器类中使用的 Apache HTTP 包似乎也开始转储其调试内容。
我如何才能将其限制为我类(class)的内容?我在网上四处查看,我不确定我是否完全遗漏了一些东西,但我似乎无法弄清楚这一点。
谢谢!
最佳答案
看来您已将 rootLogger 设置为 DEBUG 级别:
log4j.rootLogger=DEBUG
如果没有单独指定,所有记录器都将继承rootLogger的级别。
所以设置rootLogger的级别为ERROR或WARN,然后只有com.myclass.readers
处于DEBUG级别。
log4j.rootLogger=ERROR, READER
关于java - 为什么 log4j 在调试时绝对记录所有内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21298863/