如何在运行时更改log4j2的配置文件?

6
我希望在运行时关闭log4j2中的调试语句。根据文档,我们可以做到这一点。我将我的log4j.xml文件保留在默认包中,并从中创建了一个jar文件。由于我无法修改jar文件,所以我使用Dlog4j.configuration=/path/to/log4j.xml来指定xml文件。然而,这并没有起作用。我尝试了所有file:// uri和组合,但仍然没有获取xml文件。
2个回答

3

在log4j-1.x中,指定配置文件位置的系统属性与log4j2不同。在log4j2中,该属性为“log4j.configurationFile”。

因此,如果配置文件位于jar文件中,则应使用以下命令:

-Dlog4j.configurationFile=jar:file:///C:/path/to/jarfile.jar!/path/to/log4j2.xml

(我假设您已经按照此处的文档设置了monitorIntervalhttp://logging.apache.org/log4j/2.x/manual/configuration.html#AutomaticReconfiguration

1
以下内容必须添加到配置文件中:

<Configuration monitorInterval="60" >

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接