首页 > 编程语言 > 详细

小D课堂 - 零基础入门SpringBoot2.X到实战_第11节 Logback日志框架介绍和SpringBoot整合实战_45、SpringBoot2.x日志讲解和Logback配置实战

时间:2019-08-29 19:00:16      阅读:94      评论:0      收藏:0      [点我收藏+]

笔记

2、SpringBoot2.x日志讲解和自定义Logback配置实战
    简介:讲解SpringBoot2.x整合Logback配置实战

        1、官网介绍:https://docs.spring.io/spring-boot/docs/2.1.0.BUILD-SNAPSHOT/reference/htmlsingle/#boot-features-logging

           各个组件案例:https://logback.qos.ch/manual/index.html
        
        2、分析SpringBoot启动日志
            1)默认情况下,Spring Boot将日志输出到控制台

        3、整合Logback实战
            1)创建 日志文件logback-spring.xml,官方推荐 -spring.xml结尾
                默认加载加载配置顺序 logback-spring.xml, logback-spring.groovy, logback.xml, or logback.groovy
            
            注释:
                <configuration> 子节点
                <appender></appender>                       
                <logger></logger>
                <root></root>(要加在最后)        

 

开始


springboot的默认的start里面包含了一个logback
技术分享图片

技术分享图片


技术分享图片

spring启动的时候默认是Info级别的
技术分享图片

想获取更多的信息可以在用 java-jar的会后后面加上--dubug
技术分享图片
新建,logback-spring.xml文件

技术分享图片

提前准备的日志文件拷贝过来

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

     <appender name="consoleApp" class="ch.qos.logback.core.ConsoleAppender">
        <layout class="ch.qos.logback.classic.PatternLayout">
            <pattern>
                %date{yyyy-MM-dd HH:mm:ss.SSS} %-5level[%thread]%logger{56}.%method:%L -%msg%n
            </pattern>
        </layout>
    </appender>

    <appender name="fileInfoApp" 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>
                %date{yyyy-MM-dd HH:mm:ss.SSS} %-5level[%thread]%logger{56}.%method:%L -%msg%n
            </pattern>
        </encoder>
        <!-- 滚动策略 -->
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- 路径 -->
            <fileNamePattern>app_log/log/app.info.%d.log</fileNamePattern>
        </rollingPolicy>
    </appender>

    <appender name="fileErrorApp" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
            <level>ERROR</level>
        </filter>
        <encoder>
            <pattern>
                %date{yyyy-MM-dd HH:mm:ss.SSS} %-5level[%thread]%logger{56}.%method:%L -%msg%n
            </pattern>
        </encoder>
        
        <!-- 设置滚动策略 -->
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- 路径 -->
            <fileNamePattern>app_log/log/app.err.%d.log</fileNamePattern>
            
            <!-- 控制保留的归档文件的最大数量,超出数量就删除旧文件,假设设置每个月滚动,
            且<maxHistory> 是1,则只保存最近1个月的文件,删除之前的旧文件 -->
             <MaxHistory>1</MaxHistory>
            
        </rollingPolicy>
    </appender>
   <root level="INFO">  
        <appender-ref ref="consoleApp"/>
        <appender-ref ref="fileInfoApp"/>
        <appender-ref ref="fileErrorApp"/>
    </root>
</configuration>

 



技术分享图片

各个组件案例:https://logback.qos.ch/manual/index.html
技术分享图片

技术分享图片

测试日志

技术分享图片
引入的包是org.slf4j.Logger
技术分享图片
测试这几个级别的日志的输出
技术分享图片
启动程序
技术分享图片

技术分享图片
技术分享图片

技术分享图片

root节点加载最后面
技术分享图片

技术分享图片

技术分享图片
info的文件里面输出了info和warn这两个级别的日志。
技术分享图片
、这是因为这里的过滤器的配置
技术分享图片
如果把root这里改为debug
技术分享图片
重启应用

技术分享图片
技术分享图片
error的还是只有error
技术分享图片
过滤器过滤掉了error级别,所以debug、warn、info这几个级别的都往这个文件里面输出
技术分享图片

degbu级别有太多没用的信息 会进行干扰。这里一般用Info级别,不会产生太多的日志信息,占用我们的磁盘空间
技术分享图片



 

小D课堂 - 零基础入门SpringBoot2.X到实战_第11节 Logback日志框架介绍和SpringBoot整合实战_45、SpringBoot2.x日志讲解和Logback配置实战

原文:https://www.cnblogs.com/wangjunwei/p/11431341.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!