gpt4 book ai didi

java - 在运行时在 log4j.xml 中添加和删除记录器

转载 作者:行者123 更新时间:2023-11-30 11:48:34 24 4
gpt4 key购买 nike

我在运行时在 log4j.xml 中添加记录器

<logger name="com.bas">    
<priority value="DEBUG"/>
<appender-ref ref="B2BAPP"/>
</logger>

我用于加载运行时 log4j.xml 的 java 代码

LogManager.resetConfiguration();
DOMConfigurator.configureAndWatch(log4j.xml,100000L);

通过 java 代码在运行时获取记录器:

Enumeration enumLoggers = 
Logger.getRootLogger().getLoggerRepository().getCurrentLoggers();

当我将记录器添加到 log4j 时,我会在 enumLoggers 中获得记录器名称,但是如果我删除任何现有的记录器(如删除的记录器“com.bas”),那么它不会从 enumLogger 中删除即使在指定的时间延迟之后(即在本例中为 100000L)。

我可以知道为什么吗?有什么我想念的吗?

最佳答案

快速浏览一下 XMLWatchdog 类(及其父类(super class))就会发现它没有调用 LogManager.resetConfiguration(),也许这就是原因?它可能意味着“增量”工作。

关于java - 在运行时在 log4j.xml 中添加和删除记录器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8728058/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com