Spring Boot中如何设置嵌入式tomcat的日志级别?
特别是我需要查看tomcat集群相关的日志。
我将以下行添加到 application.properties 中,但 tomcat 似乎只记录 INFO 级别日志。
logging.level.org.apache.catalina=TRACE
有没有一种简单的方法可以实现这一点?
最好了解 Spring Boot 和嵌入式 tomcat 特定的简单解决方案,最好只编辑 application.properties。
简而言之,将 Spring Boot 1.3.0 版本与 Logback 结合使用。 (我使用的是Spring Boot 1.2.4)
Spring Boot 1.3.0 添加LevelChangePropagator
to LogbackLoggingSystem.java
(看到这个提交 https://github.com/spring-projects/spring-boot/commit/22e0a50a11cbcfaaf130f08a7f8fa53d89e9579b),因此 application.properties 中设置的日志记录级别将传播到 tomcat 使用的 jul(java.util.logging) 。
否则,如果级别低于默认的 INFO 级别,则必须在 jul 的logging.properties中设置记录器的日志记录级别,并且还在application.properties中设置记录器的日志记录级别。这是为了限制 jul-to-slf4j 模块不能完全覆盖 jul 实现,因为 jul 位于 java.* 包中。
另请参阅以下 Spring Boot 问题:优化 JUL 日志记录 #2585 https://github.com/spring-projects/spring-boot/issues/2585, Slf4JLoggingSystem 还应该配置 JUL 级别 #2923 https://github.com/spring-projects/spring-boot/issues/2923.
这是相关的 StackOverflow 问题:Spring Boot - 设置使用 Java Util Logging 的外部 jar 的日志记录级别 (jul) https://stackoverflow.com/questions/25364913/spring-boot-set-logging-level-of-external-jar-which-is-using-java-util-logging/30085782。其实这就是我面临的问题。
(如果从现在起几天后没有发布更好的答案,我将接受这个答案。)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)