zoukankan      html  css  js  c++  java
  • Springboot的日志管理

    Springboot默认使用Logback组件作为日志管理,Logback是由log4j创始人设计的一个开源日志组件

    在Springboot中我们不需要添加额外的Logback依赖,因为在spring-boot-starter或者spring-boot-starter-web中已经包含了Logback的依赖

    1,Logback的配置文件

      【1】在classpath下查找文件logback-test.xml

      【2】如果文件不存在,则查找logback.xml

      【3】如果两个文件都不存在,Logback用BasiConfiguration自动对自己进行最小化配置

          这样即使实现了上面我们b不需要添加任何配置就可以输出到控制台日志信息

    1,添加日志配置文件

    <?xml version="1.0" encoding="UTF-8"?>
    <!--
        scan:当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true。
        scanPeriod:设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒。当scan为true时,此属性生效。默认的时间间隔为1分钟。
        debug:当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false。
         scan="true" scanPeriod="60 seconds" debug="true"
     -->
    <configuration>
        <!--定义日志文件的储存地址  勿在LogBack的配置中使用相对路径-->
        <property name="LOG_HOME" value="${catalina.base}/logs/" />
    
    
        <!--控制台输出-->
        <appender name="Stdout" class="ch.qos.logback.core.ConsoleAppender">
            <!--日志输出编码-->
            <layout class="ch.qos.logback.classic.PatternLayout">
                <pattern>%d{yyyy-MM-dd  HH:mm:ss.SSS} [%thread] %-5level %logger{80} - %msg%n</pattern>
            </layout>
        </appender>
        <!--按照每天生成日志文件-->
        <appender name="RollingFile"  class="ch.qos.logback.core.rolling.RollingFileAppender">
            <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
                <!--日志文件输出文件名-->
                <fileNamePattern>${LOG_HOME}/output.%d{yyyy-MM-dd}.log</fileNamePattern>
                <maxHistory>30</maxHistory>
            </rollingPolicy>
            <layout class="ch.qos.logback.classic.PatternLayout">
                <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度-->
                <pattern>%d{yyyy-MM-dd  HH:mm:ss.SSS} [%thread] %-5level %logger{80} - %msg%n</pattern>
            </layout>
            <!--日志文件大小-->
            <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
                <MaxFileSize>10MB</MaxFileSize>
            </triggeringPolicy>
    
        </appender>
    
        <!--
              将root的打印级别设置为“INFO”
              日志输出级别
         -->
        <root level="info">
            <appender-ref ref="Stdout" />
            <appender-ref ref="RollingFile" />
        </root>
    
    </configuration>

    2,添加Controller

        

    3,运行

        

        

      在这里也可以看到日志输出

        

      4,屏蔽指定包日志输出

        

         

  • 相关阅读:
    Python中使用MongoEngine
    Python中MongoDB使用
    JAVA 日期相关API (JDK 8 新增)
    JAVA 日期相关API(JDK 8 之前)
    StringBuffer 和StringBuilder
    String 类型转换
    String类常用方法
    JAVA String类
    关于线程锁的释放和保留
    java线程同步--使用线程池
  • 原文地址:https://www.cnblogs.com/yz-bky/p/12828156.html
Copyright © 2011-2022 走看看