小编典典

如何在Java Spring Boot中更改log4j2.xml的默认位置?

spring-boot

正如文档所述,Log4j2通过log4j2.xml根类路径中的配置文件与Spring Boot配合良好。

但是,当尝试将此文件移动到其他位置时,我无法在启动时将新位置传递给Spring。从文档中

可以通过在类路径中包括适当的库来激活各种日志记录系统,并通过在类路径的根目录中或 在Spring
Environment属性指定的位置中logging.config
提供适当的配置文件来进一步自定义各种日志记录系统。

我尝试使用Java系统属性设置新位置

java -jar -Dlogging.config="classpath:/config/log4j2.xml" target/app.jar

或使用application.properties包含相关属性的外部

logging.config=classpath:/config/log4j2.xml

但是,我经常收到以下错误消息。

ERROR StatusLogger No log4j2 configuration file found. Using default configuration: logging only errors to the console.

阅读 768

收藏
2020-05-30

共1个答案

小编典典

由于在指定的Spring参考文档,该logging.config属性不能被应用程序属性中设置,因为日志已经被初始化后,他们被读取。

解决方案是通过以下方式提供外部日志记录配置的路径:

java -Dlogging.config='/path/to/log4j2.xml' -jar app-current.jar
2020-05-30