如何在Spring Boot中设置嵌入式tomcat的日志级别?

时间:2015-11-16 07:23:48

标签: spring tomcat logging spring-boot

如何在Spring Boot中设置嵌入式tomcat的日志记录级别?

特别是我需要查看与tomcat集群相关的日志。

我在application.properties中添加了以下行,但tomcat似乎只记录INFO级别日志。

logging.level.org.apache.catalina=TRACE

有没有一种简单的方法可以实现这一目标?

最好知道Spring Boot和嵌入式tomcat特有的简单解决方案,最好只编辑application.properties。

1 个答案:

答案 0 :(得分:3)

简而言之,使用带有Logback的Spring Boot 1.3.0版。 (我使用的是Spring Boot 1.2.4)

Spring Boot 1.3.0将LevelChangePropagator添加到LogbackLoggingSystem.javasee this commit),因此application.properties中设置的日志记录级别将传播到jul(java.util.logging) )tomcat使用哪个。

否则,如果级别低于默认的INFO级别,则必须在jul的logging.properties中设置记录器的日志记录级别,并且还要在application.properties中设置记录器的日志记录级别。这是为了限制jul-to-slf4j模块,因为jul在java。*包中,所以不能完全覆盖jul实现。

另请参阅以下Spring Boot问题:Optimize JUL logging #2585Slf4JLoggingSystem should also configure JUL levels #2923

这是相关的StackOverflow问题:Spring Boot - set logging level of external jar which is using Java Util Logging (jul)。实际上这是我面临的问题。

(如果从现在开始几天没有更好的答案,我会接受这个答案。)