有没有办法在Tomcat上外化Spring [Boot] app的log4j2配置?

时间:2017-02-17 16:19:28

标签: java spring tomcat spring-boot log4j2

我们的Spring Boot应用程序使用log4j2进行日志记录,但我们要部署它的服务器的管理员要求:

  1. 日志记录可以在其末尾完全配置,即必须有一个log4j2.xml文件,他们可以编辑这些文件来调整日志记录格式,文件,级别等,

  2. 当部署新版本的应用程序时,配置必须丢失或覆盖(上传战争 - >停止tomcat - >删除webapp文件夹 - >启动Tomcat )过程将自动化。

  3. 理想情况下,应在webapps上下文.xml文件中设置sshpass -p your_password ssh user@hostname 的路径 - 因为这是数据库连接配置的位置。但我似乎无法找到一种方法来使这项工作。所有搜索结果都谈论使用log4j2.xmlMETA-INF/web.xml文件(不是一个选项,因为它们会在部署时被覆盖),而我能找到的唯一SO问题(Spring application without web.xml log4j configuration)不起作用启动时我(“没有配置提供”)异常。

1 个答案:

答案 0 :(得分:0)

将环境变量logging.config设置为log4j2.xml文件的位置。

还建议您将其命名为log4j2-spring.xml

请参阅https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-logging.html

部分"自定义日志配置"