Spring Boot 整合日志框架的核心是通过 spring-boot-starter-logging 依赖来实现的,它默认整合了 Logback 日志框架。
Spring Boot 对各种日志框架进行了自动配置,使得我们可以很容易地在 Spring Boot 应用中使用日志。
- Spring Boot 在类路径下寻找 Logback 的配置文件 logback-spring.xml,如果不存在,则会寻找标准的 Logback 配置文件 logback.xml。
- 如果 logback-spring.xml 或 logback.xml 文件不存在,Spring Boot 会查找默认的日志配置,并应用默认的日志级别(通常是 INFO)
- Spring Boot 还可以通过在 application.properties 或 application.yml 配置文件中设置 logging.config 属性来指定日志配置文件
- Spring Boot 提供了自动配置的日志工厂,可以自动适配 Logback、Log4j2、Log4j 等日志框架。
在 Maven 的 pom.xml
中添加 spring-boot-starter-logging
依赖
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-logging</artifactId> </dependency>
在 src/main/resources
目录下创建 logback-spring.xml
文件,并配置日志
<configuration> <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender"> <encoder> <pattern>%d{yyyy-MM-dd HH:mm:ss} - %msg%n</pattern> </encoder> </appender> <root level="info"> <appender-ref ref="CONSOLE" /> </root> </configuration>
在代码中使用日志
import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Component; @Component public class MyComponent { private static final Logger logger = LoggerFactory.getLogger(MyComponent.class); public void doSomething() { logger.info("This is an info message"); } }