首页 > 文章列表 > Springboot项目怎么处理日志

Springboot项目怎么处理日志

springboot
311 2023-05-17

Springboot项目怎么处理日志

如上图,每天会生成一个新的日志文件,然后日志进行分类,我这里只对error和info进行分类。

怎么做呢?

首先,在resource目录创建一个新文件,取名logback-spring.xml

<?xml version="1.0" encoding="UTF-8" ?>

<configuration >

    <appender name="consoleLog" class="ch.qos.logback.core.ConsoleAppender">

        <layout class="ch.qos.logback.classic.PatternLayout">

            <pattern>

                %d - %msg%n

            </pattern>

        </layout>

    </appender>



    <appender name="fileInfoLog" class="ch.qos.logback.core.rolling.RollingFileAppender">

        <filter class="ch.qos.logback.classic.filter.LevelFilter">

            <level>

                ERROR

            </level>

            <onMatch>DENY</onMatch>

            <onMismatch>ACCEPT</onMismatch>

        </filter>

        <encoder>

            <pattern>

                %msg%n

            </pattern>

        </encoder>

        <!--  滚动策略-->

        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">

        <!--   路径-->

            <fileNamePattern>

            /var/log/tomcat/sell/info.%d.log

            </fileNamePattern>

        </rollingPolicy>

    </appender>



    <appender name="fileErrorLog" class="ch.qos.logback.core.rolling.RollingFileAppender">

        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">

            <level>

                ERROR

            </level>

        </filter>

        <encoder>

            <pattern>

                %msg%n

            </pattern>

        </encoder>

        <!--  滚动策略-->

        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">

            <!--   路径-->

            <fileNamePattern>

                /var/log/tomcat/sell/error.%d.log

            </fileNamePattern>

        </rollingPolicy>

    </appender>



    <root level="info">

        <appender-ref ref="consoleLog" />

        <appender-ref ref="fileInfoLog" />

        <appender-ref ref="fileErrorLog" />



    </root>

</configuration>

单例测试:

import lombok.Data;

import lombok.extern.slf4j.Slf4j;

import org.junit.jupiter.api.Test;

import org.junit.runner.RunWith;

import org.springframework.boot.test.context.SpringBootTest;

import org.springframework.test.context.junit4.SpringRunner;



@RunWith(SpringRunner.class)

@SpringBootTest

@Slf4j

@Data

public class LoggerTest {



    @Test

    public void test1(){

        String name="laomi";

        String password="123456";

        log.info("debug.....");

        log.info("info.....");

        log.error("error....");

        log.info("name:{}, password:{}",name,password);



    }

}

添加依赖:

 <dependency>

            <groupId>org.projectlombok</groupId>

            <artifactId>lombok</artifactId>

            <scope>test</scope>

 </dependency>

fileNamePattern这个是文件路径,我是在这个项目的同级目录找到新创建的文件夹的