Log4j2的配置路径

时间:2012-12-18 15:07:27

标签: configuration log4j2

我正在尝试将Log4j2用于我的项目。由于我的Java应用程序被打包在一个JAR文件中。我不希望将“log4j2.xml”配置打包在JAR文件中。我正在尝试从“http://logging.apache.org/log4j/2.x/manual/configuration.html

了解配置文件的工作原理

但似乎没有关于更改Log4j2的配置文件路径的明确指示。

在使用Google搜索此主题后,我发现类似“在可执行JAR中引用log4j配置文件”Referencing log4j config file within executable JAR,但根据“http://logging.apache.org/log4j/2.x/manual/migration.html”此解决方案不再可用(如果我理解正确的话) )。

所以我想知道是否有人对这个问题有所了解。

由于

3 个答案:

答案 0 :(得分:7)

您可以设置系统属性以指定配置路径。

在VM参数中设置“-Dlog4j.configurationFile =”D:\ learning \ blog \ 20130115 \ config \ LogConfig.xml。

将“D:\ learning \ blog \ 20130115 \ config \ LogConfig.xml”替换为您的配置路径。

Elar

答案 1 :(得分:0)

尝试使用-Dlogging.config =路径到您的文件

答案 2 :(得分:0)

  1. log4j2.xml文件放在你项目的资源目录下,这样log4j会自动定位类路径下的文件。

从自定义位置加载 log4j2.xml 文件-

  1. 您可以使用系统属性/VM 参数- Dlog4j.configurationFile=file:/path/to/file/log4j2.xml 这适用于任何网络应用程序。

  2. 对于一些遗留应用程序,您可以创建一个类来从机器上的自定义位置加载 log4j2.xml/log4j2.properties,例如 - D:/property/log4j2 .xml 使用这些方法中的任何一种,在应用程序启动期间,来自 src/resources 文件夹的 log4j2.xml 文件将被自定义位置 log4j.xml 文件覆盖。