美文网首页
Springboot 日志

Springboot 日志

作者: 庙人 | 来源:发表于2018-12-20 11:36 被阅读0次

Springboot默认使用Logback作为日志框架实现

  1. 配置logback.xml
    <include resource="org/springframework/boot/logging/logback/base.xml" />

    <appender name="INFO_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <File>${LOG_PATH}/info.log</File>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <fileNamePattern>${LOG_PATH}/info-%d{yyyyMMdd}.log.%i</fileNamePattern>
            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                <maxFileSize>500MB</maxFileSize>
            </timeBasedFileNamingAndTriggeringPolicy>
            <maxHistory>2</maxHistory>
        </rollingPolicy>
        <layout class="ch.qos.logback.classic.PatternLayout">
            <Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} -%msg%n
            </Pattern>
        </layout>
    </appender>

    <appender name="ERROR_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
            <level>ERROR</level>
        </filter>
        <File>${LOG_PATH}/error.log</File>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <fileNamePattern>${LOG_PATH}/error-%d{yyyyMMdd}.log.%i
            </fileNamePattern>
            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                <maxFileSize>500MB</maxFileSize>
            </timeBasedFileNamingAndTriggeringPolicy>
            <maxHistory>2</maxHistory>
        </rollingPolicy>
        <layout class="ch.qos.logback.classic.PatternLayout">
            <Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} -%msg%n

            </Pattern>
        </layout>
    </appender>
    
    <root level="INFO">
        <appender-ref ref="INFO_FILE" />
        <appender-ref ref="ERROR_FILE" />
    </root>
    
    <logger name="org.springframework.boot" level="DEBUG"/>
    
</configuration>```
2. 配置application.properties
```#logback日志配置
logging.config=classpath:logback.xml
logging.path=D:/logFile```

其中logging.path定义的是logback.xml中${LOG_PATH}
3. 在类中定义log
```package com.duck.load;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.boot.CommandLineRunner;
import org.springframework.core.annotation.Order;
import org.springframework.stereotype.Component;

/**
 * 启动加载数据
 */
@Component
@Order(value = 1)
public class DuckLoad implements CommandLineRunner{

    private static final Logger logger = LoggerFactory.getLogger(DuckLoad.class);

    public void run(String... args){
        logger.debug(this.getClass().getName() + "日志级别 Debug" + " DuckLoad 方法加载数据");
        logger.info(this.getClass().getName() + "日志级别 Info" + " DuckLoad 方法加载数据");
        logger.error(this.getClass().getName() + "日志级别 Error" + " DuckLoad 方法加载数据");
    }
}```
3. 启动查看后台日志
![image.png](https://img.haomeiwen.com/i13686663/32705fa57f851a55.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
因为我们定义的日志级别是INFO,所以类中的DEBUG级别是不输出的,我们指输出INFO以上的日志(INFO ERROR)
4. 查看文件生成地址
![image.png](https://img.haomeiwen.com/i13686663/31018fd94f52e7de.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
日志文件生成路径在配置文件中logging.path定义

相关文章

网友评论

      本文标题:Springboot 日志

      本文链接:https://www.haomeiwen.com/subject/yxzekqtx.html