部署的war(tomcat)中缺少SpingBoot日志文件
当我使用部署的war(tomcat)中缺少SpingBoot日志文件,tomcat,spring-boot,Tomcat,Spring Boot,当我使用java-jar命令运行时,我的日志配置生效了。但是当我部署到外部tomcat容器时,我发现我的日志配置无效,日志文件丢失 我查看了很多问题和答案,发现tomcat日志覆盖了默认配置,但我没有找到解决问题的方法 这是我的日志配置 logging.config=classpath:config/logging-config.xml logging.path=src/main/resources/log 在外部tomcat中运行时会发生这种情况,因为tomcat将在系统环境中设置loggi
java-jar
命令运行时,我的日志配置生效了。但是当我部署到外部tomcat容器时,我发现我的日志配置无效,日志文件丢失
我查看了很多问题和答案,发现tomcat日志覆盖了默认配置,但我没有找到解决问题的方法
这是我的日志配置
logging.config=classpath:config/logging-config.xml
logging.path=src/main/resources/log
在外部tomcat中运行时会发生这种情况,因为tomcat将在系统环境中设置logging.config属性,并覆盖spring默认的logging.config上下文文件 你可以破门而入
org.springframework.boot.logging.LoggingApplicationListener#initializeSystem
进入字符串logConfig=environment.getProperty(CONFIG\u属性)代码>
然后你就能找到原因
要解决这个问题,您可以运行System.setProperty(“loggin.config”,“您的日志文件”)
来覆盖tomcat的loggin.properties