美文网首页
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