使用 Log4j Bridge 重新加载 log4j.properties
reloading log4j.properties using Log4j Bridge
我必须将现有项目从 log4j1 迁移到 log4j2。最简单的方法似乎是使用 Log4j 1.2 Bridge (https://logging.apache.org/log4j/2.x/log4j-1.2-api/index.html)。这很好用,甚至可以使用现有的 log4j.properties 文件。我的问题是:
是否可以在运行时定期重新加载 log4j.properties 文件,以便在更改 log4j.properties 文件后不需要重新启动应用程序?
在 log4j1 中,这可以使用
PropertyConfigurator.configureAndWatch(fileName, 10000);
但似乎这不再适用于桥接器。
您可以使用log4j1.monitorInterval
系统属性:
log4j1.monitorInterval=10
该值以秒为单位。
上面提到的属性可以任意设置property source,例如在 log4j2.component.properties
文件中。
我必须将现有项目从 log4j1 迁移到 log4j2。最简单的方法似乎是使用 Log4j 1.2 Bridge (https://logging.apache.org/log4j/2.x/log4j-1.2-api/index.html)。这很好用,甚至可以使用现有的 log4j.properties 文件。我的问题是:
是否可以在运行时定期重新加载 log4j.properties 文件,以便在更改 log4j.properties 文件后不需要重新启动应用程序?
在 log4j1 中,这可以使用
PropertyConfigurator.configureAndWatch(fileName, 10000);
但似乎这不再适用于桥接器。
您可以使用log4j1.monitorInterval
系统属性:
log4j1.monitorInterval=10
该值以秒为单位。
上面提到的属性可以任意设置property source,例如在 log4j2.component.properties
文件中。