(我是 Java 新手,我已经读过 java.util.logging: how to set level by logger package (or prefix)?。因为它无法回答我的问题,所以就在这里)
我正在开发一个具有 private static final Logger log = Logger.getLogger(XXX.class.getName());
的系统多个类中的属性( XXX
是相应的类)。
我使用log.setLevel(level)
与不同level
s,但所有log
对象似乎在相同日志级别上工作。打印 log
本身,似乎表明个人log
对象实际上是相同的。我不明白为什么。
调试输出如下:
[CONFIG ]...Parser init: java.util.logging.Logger@6bc7c054 logging level FINE
[CONFIG ]...Tokenizer init: java.util.logging.Logger@6bc7c054 logging level CONFIG
仍然是Parser
CONFIG
级别的类日志...
最佳答案
Printing the log itself, seems to indicate that the individual log objects are actually the same. I don't understand why.
Parser
和Tokenizer
正在调用Logger.getLogger(XXX.class.getName());
同名XXX
类(class)。修改您的代码示例以打印 name记录器的。
Debug output is like this
这是 Minimal, Complete, and Verifiable example 的位置帮我。级别用于限定消息,级别用于过滤消息。如果您至少不包含生成调试输出的代码,则很难说出列出的每个级别的含义。
关于java - 如何在不同的 Java 类中设置单独的日志级别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49917507/