73. 日志
Spring Boot除了commons-logging
API外没有其他强制性的日志依赖,你有很多可选的日志实现。想要使用Logback,你需要包含它及jcl-over-slf4j
(它实现了Commons Logging API)。最简单的方式是通过依赖spring-boot-starter-logging
的starters。对于一个web应用程序,你只需添加spring-boot-starter-web
依赖,因为它依赖于logging starter。例如,使用Maven:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
Spring Boot有一个LoggingSystem
抽象,用于尝试通过classpath上下文配置日志系统。如果Logback可用,则首选它。如果你唯一需要做的就是设置不同日志级别,那可以通过在application.properties
中使用logging.level
前缀实现,比如:
logging.level.org.springframework.web=DEBUG
logging.level.org.hibernate=ERROR
你也可以使用logging.file
设置日志文件的位置(除控制台之外,默认会输出到控制台)。
想要对日志系统进行更细粒度的配置,你需要使用LoggingSystem
支持的原生配置格式。默认情况下,Spring Boot从系统的默认位置加载原生配置(比如对于Logback为classpath:logback.xml
),但你可以使用logging.config
属性设置配置文件的位置。