1

我在我的项目中使用 log4j2,我已经外部化了 application.properties 和 log4j2.xml,我想在 application.properties 中提供 log4j2.xml 文件路径

log4j2.xml 和 application.properties 位于与 jar 相同的目录中的 config 文件夹中。

这是我的依赖

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-log4j2</artifactId>
</dependency>

目录结构:/tmp/myproj/conf/application.properties

/tmp/myproj/conf/log4j2.xml

/tmp/myproj/my.jar

任何帮助,将不胜感激。

4

1 回答 1

3

Spring Boot 期望 log4j2-spring.xml 配置文件位于类路径中。但是,您可以将其存储在不同的位置并使用 application.properties 中的 logging.config 属性指向它。

尝试为您的 application.properties 提供以下配置。这里 log4j2-spring.xml 在项目类路径上。如果没有,请尝试将完整路径指定为(假设)“C:/tmp/myproj/conf/log4j2.xml”。

**logging.config=classpath:log4j2-spring.xml**
logging.level.org.springframework.web=INFO
logging.file=logs/spring-boot-logging.log

粗体字的配置应该适合你。

然后您需要根据您的要求配置您的 log4j2-spring.xml。(简单,也适用于附加程序,请参见此处https://howtodoinjava.com/log4j2/log4j-2-xml-configuration-example/)。

注意:我使用 log4j2-spring.xml 代替了 log4j2.xml。你可以随意更换。

于 2019-01-16T20:21:35.023 回答