SpringBoot按每天日期来分割日志配置

SpringBoot的日志是非常重要的一项内容,因为我们可以清晰的记录错误异常以及调试。

第一步,添加依赖:

       <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
        </dependency>
        <!--这个依赖可以不加,但是有时候会出现问题,建议加上。-->
        <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-classic</artifactId>
        </dependency>

        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
        </dependency>

第二步,添加配置文件

在目录 /src/main/resources 中添加文件,文件名:logback-spring.xml ,文件名必须是这个,文件内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <!-- 定义日志输出目录 -->
    <property name="LOG_PATH" value="/tmp/logs/jishuge" />

    <!-- 控制台输出日志 -->
    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
        </encoder>
    </appender>

    <!-- 按照每天日期分割日志文件 -->
    <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <fileNamePattern>${LOG_PATH}/%d{yyyy-MM-dd}.log</fileNamePattern>
            <maxHistory>30</maxHistory>
        </rollingPolicy>
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
        </encoder>
    </appender>

    <!-- 设置日志输出级别 -->
    <root level="info">
        <appender-ref ref="CONSOLE" />
        <appender-ref ref="FILE" />
    </root>
</configuration>

以上是最简单的一个配置,每天 /tmp/logs/jishuge 目录下,产生日志文件,比如2022-06-12.log 这样的按日志分割。