logback中日志输出的格式pattern详解

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <appender name="consoleLog" class="ch.qos.logback.core.ConsoleAppender">
        <layout clas="ch.qos.logback.classic.PatternLayout">
            <pattern>
                %d - %LOG_LEVEL - %msg%n
            </pattern>
        </layout>
    </appender>

    <appender name="fileInfoLog" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <!--&lt;!&ndash;过滤输出到日志文件的日志内容&ndash;&gt;
        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
            <level>
                &lt;!&ndash;只配置这个还是会输出ERROR等级的日志,因为error level > info level;拦截的是>=info等级的内容&ndash;&gt;
                INFO
            </level>
        </filter>-->

        <!--要用下面这种方式才能过滤输出到日志文件的ERROR信息,类似switch case,onMatch和onMisMatch中的指令在LevelFilter类的FilterReply中可以看到-->
        <!--<filter class="ch.qos.logback.classic.filter.LevelFilter">
            <level>ERROR</level>
            &lt;!&ndash;匹配到上面level的ERROR等级日志时,禁止输出到日志文件中&ndash;&gt;
            <onMatch>DENY</onMatch>
            &lt;!&ndash;匹配到上面的ERROR日志时,输出到日志文件中,(还有一个指令NEUTRAL,代表当前这条策略不做操作,让下一条策略去匹配)&ndash;&gt;
            <onMismatch>ACCEPT</onMismatch>
        </filter>-->
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <level>ERROR</level>
            <onMatch>DENY</onMatch>
            <onMismatch>NEUTRAL</onMismatch>
        </filter>
        <encoder>
            <pattern>
                %d - %p - %msg%n
            </pattern>
        </encoder>
        <!--滚动策略,按照时间滚动-->
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!--路径要先去建好,不然会报错,linux/Mac下要给予可写权限,sudo chmod -R 777 /var/log/tomcat
            windows 类似,D:\log\tomcat-->
            <fileNamePattern>
                <!--在文件名中带上时间,配置完后要在下面root level中指定这个配置-->
                D:\tomcat\info.%d.log
            </fileNamePattern>
        </rollingPolicy>
    </appender>

    <appender name="fileErrorLog" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <!--过滤输出到日志文件的日志内容-->
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <level>ERROR</level>
            <onMatch>ACCEPT</onMatch>
            <onMismatch>DENY</onMismatch>
        </filter>
        <encoder>
            <pattern>
                %d - %p - %msg%n
            </pattern>
        </encoder>
        <!--滚动策略,按照时间滚动,每天创建一个文件-->
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!--路径要先去建好,不然会报错,linux/Mac下要给予可写权限,sudo chmod -R 777 /var/log/tomcat
            windows 类似,D:\log\tomcat-->
            <fileNamePattern>
                <!--在文件名中带上时间,配置完后要在下面root level中指定这个配置-->
                D:\tomcat\error.%d.log
            </fileNamePattern>
        </rollingPolicy>
    </appender>

    <!--root代表整个项目的日志等级-->
    <root level="INFO">
        <!--上面配置的appender中的name-->
        <appender-ref ref="consoleLog"/>
        <appender-ref ref="fileInfoLog"/>
        <appender-ref ref="fileErrorLog"/>
    </root>
</configuration>
<encoder>
            <pattern>
                %d - %p - %msg%n
            </pattern>
</encoder>

输出格式中%d是时间,%p是日志等级,%msg是信息,%n是换行

具体这些信息可以参考官网文档:

https://logback.qos.ch/manual/layouts.html
官网patternlayout部分!

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
目录 ..........................................................................................................................I 译者声明.......................................................................................................................... 1 发布记录.......................................................................................................................... 1 1. 介绍.......................................................................................................................... 2 1.1. 什么是 logback ............................................................................................ 2 1.2. 第一步 ........................................................................................................ 2 1.2.1. 必要条件.............................................................................................. 2 1.3. 构建 logback................................................................................................ 5 2. 体系结构................................................................................................................... 6 2.1. logback 的体系结构 ..................................................................................... 6 2.2. Logger、Appender 和 Layout ........................................................................ 6 2.2.1. Logger 上下文 ...................................................................................... 6 2.2.2. 有效级别(Level)即级别继承 ............................................................. 7 2.2.3. 打印方法和基本选择规则 ..................................................................... 9 2.2.4. 获取 Logger........................................................................................ 10 2.2.5. Appender 和 Layout..............................................................................11 2.2.6. 参数化记录 ........................................................................................ 13 2.2.7. 更好的替代方法 ................................................................

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值