Springboot中lookback日志配置文件

lookback-spring.xml

<?xml version="1.0" encoding="UTF-8"?>
<!-- 
	scan:程序运行时配置文件被修改,是否重新加载,true:重新加载;false:不重新加载;默认为 true;
	scanPeriod:监测配置文件被修改的时间间隔,默认为 1 分钟,默认单位包括:milliseconds、seconds、minutes 和 hours;
	debug:是否打印 logback 程序运行的日志信息,默认为false;
	格式:
		%d{HH:mm:ss.SSS}:时间格式化,14:06:49.812;
		%line:输出执行日志请求的行号;
		%thread:表示产生日志的线程名;
		%level:输出日志级别;
		%method:输出执行日志请求的方法名;
		%class:输出日志打印类的全限定名;
		%-4relative含义:“-”左对齐标志,接着是可选的最小宽度修饰符,十进制表示,relative 输出从程序启动到创建日志的时间,单位毫秒;
		%msg:表示应用程序打印的日志信息;
		%n:表示换行符;
		%logger{36}:class 的全名,数字代表限制最长的字符;
 -->
<configuration debug="false" scan="true" scanPeriod="30 seconds">
    
    <!-- 定义常量 -->
    <property name="env" value="dev" />
    <property name="project" value="java_spring_boot" />
    <property name="root" value="/var/log" />
    <property name="fileSize" value="50MB" />
    <property name="maxHistory" value="100" />
    <timestamp key="dateTime" datePattern="yyyy-MM-dd HH:mm:ss" />
    <property name="pattern" value="%d{${dateTime}} %-5level %logger{36} -- %msg%n" />
    
    <!-- 控制台打印 -->
    <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
        <encoder charset="utf-8">
            <pattern>${pattern}</pattern>
        </encoder>
    </appender>
    
    <!-- 输入到文件,按日期和文件大小 -->
    <appender name="file" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <encoder charset="utf-8">
            <pattern>${pattern}</pattern>
        </encoder>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <fileNamePattern>${root}/${project}_${env}_%d.%i.log</fileNamePattern>
            <maxHistory>${maxHistory}</maxHistory>
            <timeBasedFileNamingAndTriggeringPolicy
                class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                <maxFileSize>${fileSize}</maxFileSize>
            </timeBasedFileNamingAndTriggeringPolicy>
        </rollingPolicy>
    </appender>
    
    <!-- 指定第三方 jar 包或者自定义包的输出日志级别,additivity: false,不会打印两次 -->
    <Logger name="org.springframework" level="INFO" additivity="false">
    	<appender-ref ref="console"/>
    	<appender-ref ref="file"/>
    </Logger>
    
    <!-- Root Logger Level: TRACE < DEBUG < INFO < WARN < ERROR -->
    <root level="DEBUG">
        <appender-ref ref="console" />
        <appender-ref ref="file" />  
    </root>
</configuration>

lookback-spring.xml

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

    <contextName>atguiguSrb</contextName>

    <!-- 日志的输出目录 -->
    <property name="log.path" value="D:/project/srb_log/core" />

    <!--控制台日志格式:彩色日志-->
    <!-- magenta:洋红 -->
    <!-- boldMagenta:粗红-->
    <!-- cyan:青色 -->
    <!-- white:白色 -->
    <!-- magenta:洋红 -->
    <property name="CONSOLE_LOG_PATTERN"
              value="%yellow(%date{yyyy-MM-dd HH:mm:ss}) %highlight([%-5level]) %green(%logger) %msg%n"/>

    <!--文件日志格式-->
    <property name="FILE_LOG_PATTERN"
              value="%date{yyyy-MM-dd HH:mm:ss} [%-5level] %thread %file:%line %logger %msg%n" />

    <!--编码-->
    <property name="ENCODING"
              value="UTF-8" />


    <!-- 控制台日志 -->
    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>${CONSOLE_LOG_PATTERN}</pattern>
            <charset>${ENCODING}</charset>
        </encoder>
    </appender>

    <!-- 文件日志 -->
    <appender name="FILE" class="ch.qos.logback.core.FileAppender">
        <file>${log.path}/log.log</file>
        <append>true</append>
        <encoder>
            <pattern>${FILE_LOG_PATTERN}</pattern>
            <charset>${ENCODING}</charset>
        </encoder>
    </appender>

    <!-- 滚动日志配置 -->
    <appender name="ROLLING_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">

        <!--  要区别于其他的appender中的文件名字  -->
        <file>${log.path}/log-rolling.log</file>
        <encoder>
            <pattern>${FILE_LOG_PATTERN}</pattern>
            <charset>${ENCODING}</charset>
        </encoder>


        <!-- 设置滚动日志记录的滚动策略 -->
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- 日志归档路径以及格式 -->
            <fileNamePattern>${log.path}/info/log-rolling-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
            <!--归档日志文件保留的最大数量(15个)-->
            <maxHistory>15</maxHistory>
            <!--归档日志文件保留的最大存储(500MB),超过生成新日志文件-->
            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                <maxFileSize>500MB</maxFileSize>
            </timeBasedFileNamingAndTriggeringPolicy>
        </rollingPolicy>

    </appender>


    <!-- 开发环境和测试环境 -->
    <springProfile name="dev,test">
        <!-- 日志记录器  -->
        <logger name="com.atguigu" level="INFO">
            <appender-ref ref="CONSOLE" />
            <appender-ref ref="ROLLING_FILE" />
        </logger>
    </springProfile>

    <!-- 生产环境 -->
    <springProfile name="prod">
        <!-- 日志记录器  -->
        <logger name="com.atguigu" level="ERROR">
            <appender-ref ref="CONSOLE" />
            <appender-ref ref="FILE" />
        </logger>
    </springProfile>
</configuration>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值