我使用JMX客户端以编程方式更改log4j中的 Logger 级别 . 它工作正常,但如何为未注册(在log4j2.xml中未指定) Logger 指定 Logger 级别?
例如,我有以下 Logger 块:
<Loggers>
<Root level="WARN">
<AppenderRef ref="async"/>
</Root>
<Logger name="com.example" level="INFO" />
<Logger name="com.example.java" level="INFO" />
</Loggers>
我有“com.example”和“com.example.java” Logger 可以通过JMX使用 . 但是如果我需要为“com.example.java.Runner”或“com.example.groovy”指定 Logger 级别呢?
2 回答
您是否尝试过远程编辑Log4j配置,如客户端GUI部分here中所述?
目前(版本2.1)这是不可能的 . JMX仅用于配置配置中的 Logger .
没有JMX,你可以做一些像这里提到的:Programmatically change log level in Log4j2
但这也适用于在配置中命名的 Logger ......