logback.xml配置

北城余情 提交于 2020-01-22 07:39:51

本文介绍springboot中的logback配置:
默认情况下,Spring Boot会用Logback来记录日志,并用INFO级别输出到控制台。在运行应用程序和其他例子时,你应该已经看到很多INFO级别的日志了。
在这里插入图片描述
从上图可以看到,日志输出内容元素具体如下:

时间日期:精确到毫秒
日志级别:ERROR, WARN, INFO, DEBUG or TRACE
进程ID
分隔符:— 标识实际日志的开始
线程名:方括号括起来(可能会截断控制台输出)
Logger名:通常使用源代码的类名
日志内容
在项目的resource目录下新建logback.xml文件
具体配置如下:

<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="60 seconds" debug="false">
    <!--
    scan: 当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true。
    scanPeriod: 设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒。当scan为true时,
    此属性生效。默认的时间间隔为1分钟。
    debug: 当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false-->
    <!--<contextName>logback-demo</contextName> 区分不同应用程序的记录-->
    <!-- 
    用来定义变量的标签, 有两个属性:name 、value;
    其中name的是变量名,value 是变量值。定义变量后,可以使 ${} 来使用变量。
    -->
    <property name="LOG_HOME" value="D:\\log\\blog-web"/>

    <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
        <layout class="ch.qos.logback.classic.PatternLayout">
            <pattern>
                <![CDATA[
                 weblog|%date{yy-MM-dd HH:mm:ss.SSS}|%thread|%level|%X{gloId}|%X{sessionId}|%X{userId}|%logger{10}|%msg%n
             ]]>
            </pattern>
        </layout>
        <!--<encoder charset ="UTF-8">
            <pattern>%d -2 %msg%n</pattern>
        </encoder>-->
    </appender>

    <appender name="rollingFile" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!--文件路径,定义了日志的切分方式——把每一天的日志归档到一个文件中,以防止日志填满整个磁盘空间-->
            <FileNamePattern>${LOG_HOME}/info.${ServerId}.%d{yyyy-MM-dd}.log</FileNamePattern>
            <!--只保留最近7天的日志-->
            <maxHistory>7</maxHistory>
            <!--用来指定日志文件的上限大小,那么到了这个值,就会删除旧的日志-->
            <!--<totalSizeCap>1GB</totalSizeCap>-->
        </rollingPolicy>
        <!--日志输出编码格式化-->
        <encoder>
            <charset>UTF-8</charset>
            <pattern>%d{yy-MM-dd HH:mm:ss.SSS}|%thread|%-5level %logger -%msg%n</pattern>
        </encoder>
    </appender>

    <!--指定最基础的日志输出级别-->
    <root level="INFO" >
        <appender-ref ref="console"/>
        <appender-ref ref="rollingFile"/>
    </root>

</configuration>
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!