zoukankan      html  css  js  c++  java
  • SpringBoot日志相关

    SpringBoot使用的是SLF4j当门面,Logback当实现完成

    日志级别

    数字越大,级别越高,框架只会输出大于等于当前日志级别的信息

    • ERROR 40
    • WARN 30
    • INFO 20
    • DEBUG 10
    • TRACE 0

    几种常用的使用方法

    第一种 :

    默认的级别上info,按上面的排名只会输出 info,warn,error级别以上的日志

    在获取logger对象时,一般都是将本类的class传递进去,在默认的格式在日志输出时会把每条日志信息所在的class名输出出来

    第二种: SpringBoot整合 Lombok

    Lombok不仅仅提供了强大的@Data,和getset注解,同时支持日志相关

    @Slf4j添加在类上,我们就不用再手动的获取Logger对象了,而是直接使用log

    格式:

    在输出日志的时候可以向下面这样,两种写法

    logback-sring.xml的配置

    通过这个配置文件,可以更方便的控制日志的输出,比如将 级别为info的输出到A文件, 级别为error的输出到B文件

    默认放置在Resources目录下

    <?xml version="1.0" encoding="UTF-8"?>
    <configuration>
    
        <!-- 配置项  配置控制台的输出-->
        <appender name="consoleLog" class="ch.qos.logback.core.ConsoleAppender">
            <!--展示格式-->
            <layout class="ch.qos.logback.classic.PatternLayout">
                 <pattern>
                     %d - %msg%n
                 </pattern>
            </layout>
        </appender>
    
        <!-- 配置项  配置文件的输出  -->
        <appender name="fileInfoLog" class="ch.qos.logback.core.rolling.RollingFileAppender">
            <!-- 只保留 INFO -->
            <filter class="ch.qos.logback.classic.filter.LevelFilter">
                <level>ERROR</level>
                <!-- 当匹配到error时, 禁止输出 -->
                <onMatch>DENY</onMatch>
                <onMismatch>ACCEPT</onMismatch>
            </filter>
    
            <encoder> <!--展示格式-->
                <pattern>
                    %msg%n
                </pattern>
            </encoder>
            <!--滚动策略  按照时间,每天产生一个-->
            <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
                <!--路径-->
                <fileNamePattern>E:info.%d.log</fileNamePattern>
            </rollingPolicy>
        </appender>
    
    
        <!-- 创建第三个配置项,将error和info分别输出到不同的文件中 -->
        <appender name="fileErrorLog" class="ch.qos.logback.core.rolling.RollingFileAppender">
            <!-- 只保留ERROR -->
            <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
                <level>ERROR</level>
            </filter>
    
            <encoder>
                <!--展示格式-->
                <pattern>
                    %msg%n
                </pattern>
            </encoder>
            <!--滚动策略  按照时间,每天产生一个-->
            <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
                <!--路径-->
                <fileNamePattern>E:error.%d.log</fileNamePattern>
            </rollingPolicy>
        </appender>
    
    
        <!-- 将上面的配置项,使用到root目录上 -->
        <root level="info">
            <appender-ref ref="consoleLog"/>
            <appender-ref ref="fileInfoLog"/>
            <appender-ref ref="fileErrorLog"/>
        </root>
    
    </configuration>

    此文来源于: https://www.cnblogs.com/ZhuChangwu/p/11266679.html#2541471269

  • 相关阅读:
    SAP OPEN UI5 Step 8: Translatable Texts
    SAP OPEN UI5 Step7 JSON Model
    SAP OPEN UI5 Step6 Modules
    SAP OPEN UI5 Step5 Controllers
    SAP OPEN UI5 Step4 Xml View
    SAP OPEN UI5 Step3 Controls
    SAP OPEN UI5 Step2 Bootstrap
    SAP OPEN UI5 Step1 环境安装和hello world
    2021php最新composer的使用攻略
    Php使用gzdeflate和ZLIB_ENCODING_DEFLATE结果gzinflate报data error
  • 原文地址:https://www.cnblogs.com/JonaLin/p/11307520.html
Copyright © 2011-2022 走看看