zoukankan      html  css  js  c++  java
  • springboot + logback

    Logback 日志输出

    SpringBoot中默认使用logback

    引用:

    直接引入:
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-logging</artifactId>
      <version>2.1.11.RELEASE</version>
      <scope>compile</scope>
    </dependency>
    
    间接引入:
    引入spring-boot-starter,会自动引入spring-boot-starter-logging
    引入spring-boot-starter-web,会自动引入spring-boot-starter

    配置文件声明logging配置

    #日志存放路径
    logging.path=/home/admin/excels
    #配置引用路径
    logging.config=classpath:conf/logging/logback-spring.xml

    logback-spring.xml

    <?xml version="1.0" encoding="UTF-8" ?>
    <configuration>
        <!-- 属性文件:在properties文件中找到对应的配置项 -->
        <springProperty scope="context" name="LOGGING_PATH" source="logging.path"/>
    
        <contextName>SpringBoot-Excels</contextName>
    
        <!-- 输出控制台 -->
        <!-- ConsoleAppender:把日志添加到控制台 -->
        <appender name="consoleLog" class="ch.qos.logback.core.ConsoleAppender">
            <encoder>
                <!--格式化输出(配色):%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
                <pattern>%yellow(%d{yyyy-MM-dd HH:mm:ss}) %red([%thread]) %highlight(%-5level) %cyan(%logger{50}) - %magenta(%msg) %n
                </pattern>
                <charset>UTF-8</charset>
            </encoder>
        </appender>
    
        <!--根据日志级别分离日志,分别输出到不同的文件-->
        <!--RollingFileAppender:滚动记录文件,先将日志记录到指定文件,当符合某个条件时,将日志记录到其他文件。它是FileAppender的子类-->
        <appender name="fileInfoLog" class="ch.qos.logback.core.rolling.RollingFileAppender">
            <file>${LOGGING_PATH}/info.log</file>
            <encoder>
                <pattern>
                    [ %-5level] [%date{yyyy-MM-dd HH:mm:ss}] %logger{96} -%msg%n
                </pattern>
                <charset>UTF-8</charset> <!-- 此处设置字符集 -->
            </encoder>
            <!--滚动策略-->
            <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
                <!--按时间保存日志 修改格式可以按小时、按天、月来保存-->
                <fileNamePattern>${LOGGING_PATH}/mylog-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
                <!--日志文件保留天数-->
                <MaxHistory>10</MaxHistory>
                <!-- 文件压缩分为多个文件 -->
                <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                    <maxFileSize>30KB</maxFileSize>
                </timeBasedFileNamingAndTriggeringPolicy>
                <!--文件大小-->
                <!--<totalSizeCap>10K</totalSizeCap>-->
            </rollingPolicy>
            <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
                <level>DEBUG</level>
            </filter>
        </appender>
    
        <root level="info">
            <appender-ref ref="consoleLog"/>
            <appender-ref ref="fileInfoLog"/>
        </root>
    
    </configuration>

    启动程序后

    liunx日志保存在

    /home/admin/excels

    win日志保存在当前盘的

    /home/admin/excels

  • 相关阅读:
    100到简单加减乘除算法的程序
    安卓日程管理系统中的bug
    绑定到Collection与绑定到CollectionViewSource的不同及解决方案
    【WPF】完美的布局不留白——解决WrapPanel右侧留白问题
    WPF里最简单的控件的Style你能写对么?(默认Style是有问题的)
    WPF Bug清单之(13)——应该出现却没有出现的ListView水平滚动条
    [WPF Bug清单]之(12)——与自定义Attached Property相关的Binding Path运行时错误
    请争取你可以拥有的——即使你不在乎
    C#编码风格——using语句的位置
    【WPF】实现QQ中的分组面板(2)——添加动画
  • 原文地址:https://www.cnblogs.com/yinduang/p/13164310.html
Copyright © 2011-2022 走看看