java使用Spring@Profile加载log4j2 xml配置,而不是maven<Profile>
目前,我正在使用maven加载log4j2配置,如下所示
<profiles>
<profile>
<id>dev</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<build>
<resources>
<resource>
<directory>src/main/resources/env-dev</directory>
</resource>
</resources>
</build>
</profile>
<profile>
<id>test</id>
<build>
<resources>
<resource>
<directory>src/main/resources/env-test</directory>
</resource>
</resources>
</build>
</profile>
<profile>
<id>prd</id>
<build>
<resources>
<resource>
<directory>src/main/resources/env-prd</directory>
</resource>
</resources>
</build>
</profile>
</profiles>
但这需要我为每个环境构建一场新的战争,我希望避免这场战争。我有没有办法使用Spring@Profile注释来加载log4j2配置
# 1 楼答案
我没有尝试使用log4j2,但我相信您可以使用属性
logging.config
提供配置文件位置例如:
在
application-dev.properties
文件中放置以下内容。可以使用-Dspring激活此配置文件。简介。活动=开发logging.config=/env-test/log4j2.xml
在
application-prd.properties
文件中放置以下内容。可以使用-Dspring激活此配置文件。简介。活动=珠三角logging.config=/env-prd/log4j2.xml
将两个配置文件都放在src/main/resources目录中
注意:如果使用YAML更方便,因为它们可以放在单个配置文件中,使用
-
分隔文档