按照the documentation,Log4j2支持通过在configurationFile变量中传递配置文件列表来创建复合配置:
log4j2.configurationFile: log4j2-local.yaml,log4j2-base.yaml
另一方面,Spring使用变量logging.config:
logging.config: classpath:log4j2-local.yaml
我正在寻找一种使Spring Boot中的log4j2的复合配置工作的方法,但是我还没有成功。我也找不到有关该主题的文档。
到目前为止,我已经尝试了以下操作,但无济于事:
在logging.config中传递文件列表
在application.yaml中的log4j2.configurationFile变量中设置列表
在资源文件夹中的log4j2.component.properties文件中的log4j2.configurationFile变量中设置列表。
通过Java命令在LOG4J_CONFIGURATION_FILE环境变量中传递列表。
在How to use Log4J2 composite configuration with Spring Boot中回复
对我不起作用。不知道那是因为他们使用的是XML配置而不是yaml,但事实并非如此。
有人可以给我指点吗?在Spring Boot中执行此操作的正确方法是哪种?或者至少是一种可行的方式。
提前致谢。
最佳答案
它可以与以下xml配置一起使用:
application.ymllogging.config: {classpath:log4j2-base.xml, classpath:log4j2-local.xml}
我认为与yml-configuration应该相同。
关于java - Spring Boot中的Log4j2 Composite Configuration支持,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53321032/