我们的Spring Boot应用程序使用log4j2进行日志记录,但我们要部署它的服务器的管理员要求:
日志记录可以在其末尾完全配置,即必须有一个log4j2.xml文件,他们可以编辑这些文件来调整日志记录格式,文件,级别等,
当部署新版本的应用程序时,配置必须不丢失或覆盖(上传战争 - >停止tomcat - >删除webapp文件夹 - >启动Tomcat )过程将自动化。
理想情况下,应在webapps上下文.xml文件中设置sshpass -p your_password ssh user@hostname
的路径 - 因为这是数据库连接配置的位置。但我似乎无法找到一种方法来使这项工作。所有搜索结果都谈论使用log4j2.xml
或META-INF/web.xml
文件(不是一个选项,因为它们会在部署时被覆盖),而我能找到的唯一SO问题(Spring application without web.xml log4j configuration)不起作用启动时我(“没有配置提供”)异常。
答案 0 :(得分:0)
将环境变量logging.config设置为log4j2.xml文件的位置。
还建议您将其命名为log4j2-spring.xml
请参阅https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-logging.html
部分"自定义日志配置"