zoukankan      html  css  js  c++  java
  • logback.xml配置

    1、logback需要引入的依赖

          <!--logback-->
            <dependency>
                <groupId>ch.qos.logback</groupId>
                <artifactId>logback-classic</artifactId>
                <version>1.2.1</version>
            </dependency>
            <!--logback spring扩展-->
            <dependency>
                <groupId>org.logback-extensions</groupId>
                <artifactId>logback-ext-spring</artifactId>
                <version>0.1.4</version>
            </dependency>

    2、logback.xml的配置

    <?xml version="1.0" encoding="UTF-8" ?>
    <configuration>
        <jmxConfigurator/>
        <!-- 控制台输出日志 -->
        <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{36} -%msg%n</pattern>
            </layout>
        </appender>
        <appender name="ERROR-OUT" class="ch.qos.logback.core.rolling.RollingFileAppender">
            <file>my-logs/error.log</file>
            <encoder>
                <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} -%msg%n</pattern>
            </encoder>
            <filter class="ch.qos.logback.classic.filter.LevelFilter">
                <level>ERROR</level>
                <onMatch>ACCEPT</onMatch>
                <onMismatch>DENY</onMismatch>
            </filter>
            <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
                <!-- rollover daily -->
                <fileNamePattern>my-logs/error-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
                <timeBasedFileNamingAndTriggeringPolicy
                        class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                    <!-- or whenever the file size reaches 100MB -->
                    <maxFileSize>100MB</maxFileSize>
                </timeBasedFileNamingAndTriggeringPolicy>
            </rollingPolicy>
        </appender>
        <appender name="INFO-OUT" class="ch.qos.logback.core.rolling.RollingFileAppender">
            <file>my-logs/info.log</file>
            <encoder>
                <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} -
                    %msg%n
                </pattern>
            </encoder>
            <filter class="ch.qos.logback.classic.filter.LevelFilter">
                <level>INFO</level>
                <onMatch>ACCEPT</onMatch>
                <onMismatch>DENY</onMismatch>
            </filter>
            <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
                <!-- rollover daily -->
                <fileNamePattern>info-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
                <timeBasedFileNamingAndTriggeringPolicy
                        class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                    <!-- or whenever the file size reaches 100MB -->
                    <maxFileSize>100MB</maxFileSize>
                </timeBasedFileNamingAndTriggeringPolicy>
            </rollingPolicy>
        </appender>
        <appender name="DEBUG-OUT" class="ch.qos.logback.core.rolling.RollingFileAppender">
            <file>my-logs/debug.log</file>
            <encoder>
                <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} -
                    %msg%n
                </pattern>
            </encoder>
            <filter class="ch.qos.logback.classic.filter.LevelFilter">
                <level>DEBUG</level>
                <onMatch>ACCEPT</onMatch>
                <onMismatch>DENY</onMismatch>
            </filter>
    
            <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
                <!-- rollover daily -->
                <fileNamePattern>debug-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
                <timeBasedFileNamingAndTriggeringPolicy
                        class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                    <!-- or whenever the file size reaches 100MB -->
                    <maxFileSize>100MB</maxFileSize>
                </timeBasedFileNamingAndTriggeringPolicy>
            </rollingPolicy>
        </appender>
        <appender name="EXPRESSION-RESOLVER-OUT" class="ch.qos.logback.core.rolling.RollingFileAppender">
            <file>my-logs/expressionResolver.log</file>
            <encoder>
                <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} -
                    %msg%n
                </pattern>
            </encoder>
            <filter class="ch.qos.logback.classic.filter.LevelFilter">
                <level>INFO</level>
                <onMatch>ACCEPT</onMatch>
                <onMismatch>DENY</onMismatch>
            </filter>
            <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
                <!-- rollover daily -->
                <fileNamePattern>my-logs/expressionResolver-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
                <timeBasedFileNamingAndTriggeringPolicy
                        class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                    <!-- or whenever the file size reaches 100MB -->
                    <maxFileSize>100MB</maxFileSize>
                </timeBasedFileNamingAndTriggeringPolicy>
            </rollingPolicy>
        </appender>
    
        <logger name="wx.client" level="DEBUG" additivity="false">
            <appender-ref ref="STDOUT"/>
            <appender-ref ref="ERROR-OUT"/>
            <appender-ref ref="INFO-OUT"/>
            <appender-ref ref="DEBUG-OUT"/>
        </logger>
        <logger name="diamond.task" level="ERROR" additivity="false">
            <appender-ref ref="STDOUT"/>
        </logger>
        <logger name="org.thymeleaf" level="WARN" additivity="false">
            <appender-ref ref="STDOUT"/>
        </logger>
    
        <root level="INFO">
            <appender-ref ref="STDOUT"/>
        </root>
    </configuration>

    3、如果是在springboot中使用,可以application.properties中添加

    logging.config=classpath:logback.xml
    人生没有彩排,每天都是现场直播!
  • 相关阅读:
    结构与算法(04):排序规则与查找算法
    虚拟机系列 | JVM特点,基础结构与执行周期
    Springboot 轻量替代框架 Solon 1.3.10 发布
    Java RPC 框架 Solon 1.3.9 发布,更便利的支持
    Java RPC 框架 Solon 1.3.7 发布,增强Cloud接口能力范围
    分享个本地maven配置
    Java RPC 框架 Solon 1.3.1 发布,推出Cloud接口与配置规范
    使用 quartz-solon-plugin 开发定时任务(新)
    使用 cron4j-solon-plugin 开发定时任务(新)
    国际开源社区OW2成立快应用兴趣小组,助推快应用生态发展
  • 原文地址:https://www.cnblogs.com/northern-light/p/10497710.html
Copyright © 2011-2022 走看看