Java:logback中状态消息(status message)打印

当logback.xml中的配置信息不正确时,比如:

    <appender name="ROLLING"
        class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>mylog.txt</file>
        <append>false</append>
        <rollingPolicy
            class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
            <!-- rollover daily -->
            <fileNamePattern>mylog-%d{yyyy-MM-dd}.%i.txt</fileNamePattern>
            <maxFileSize>100MB</maxFileSize>
            <maxHistory>60</maxHistory>
            <totalSizeCap>20GB</totalSizeCap>
        </rollingPolicy>
        <encoder>
            <pattern>%msg%n</pattern>
        </encoder>
    </appender>

会在控制台上打印状态消息(status message),如下所示:

19:08:03,597 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.xml]
19:08:03,598 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.groovy]
19:08:03,599 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found resource [logback.xml] at [file:/D:/java_workshop/tempGroup/TestClient/target/classes/logback.xml]
19:08:03,904 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - debug attribute not set
19:08:03,907 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.ConsoleAppender]
19:08:03,918 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [STDOUT]
19:08:03,941 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
19:08:04,226 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.rolling.RollingFileAppender]
19:08:04,244 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [ROLLING]
19:08:04,265 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@1681595665 - setting totalSizeCap to 20 GB
19:08:04,273 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@1681595665 - Archive files will be limited to [100 MB] each.
19:08:04,282 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@1681595665 - No compression will be used
19:08:04,286 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@1681595665 - Will use the pattern mylog-%d{yyyy-MM-dd}.%i.txt for the active file
19:08:04,295 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@2ef5e5e3 - The date pattern is 'yyyy-MM-dd' from file name pattern 'mylog-%d{yyyy-MM-dd}.%i.txt'.
19:08:04,295 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@2ef5e5e3 - Roll-over at midnight.
19:08:04,307 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@2ef5e5e3 - Setting initial period to Mon May 24 19:00:34 CST 2021
19:08:04,312 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
19:08:04,314 |-WARN in ch.qos.logback.core.rolling.RollingFileAppender[ROLLING] - Append mode is mandatory for RollingFileAppender. Defaulting to append=true.
19:08:04,320 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[ROLLING] - Active log file name: mylog.txt
19:08:04,320 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[ROLLING] - File property is set to [mylog.txt]
19:08:04,330 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Setting level of logger [org.springframework.ejet.circuitbreak] to DEBUG
19:08:04,330 |-INFO in ch.qos.logback.classic.joran.action.RootLoggerAction - Setting level of ROOT logger to INFO
19:08:04,330 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [STDOUT] to Logger[ROOT]
19:08:04,332 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - End of configuration.
19:08:04,335 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@36d4b5c - Registering current configuration as safe fallback point

将以上配置改成如下内容时,就不会打印logback的状态消息了:

<append>true</append>

如果想让logback的状态消息都能打印,在logback.xml添加如下配置:

<statusListener class="ch.qos.logback.core.status.OnConsoleStatusListener" />

 或在启动应用时添加JVM参数:

-Dlogback.statusListenerClass=ch.qos.logback.core.status.OnConsoleStatusListener

除了使用ch.qos.logback.core.status.OnConsoleStatusListener外,也可以使用ch.qos.logback.core.status.OnErrorConsoleStatusListener

如果想在logback.xml配置不正确的情况下,也不打印状态消息,则使用ch.qos.logback.core.status.NopStatusListener,配置如下:

<statusListener class="ch.qos.logback.core.status.NopStatusListener" />

 或

-Dlogback.statusListenerClass=ch.qos.logback.core.status.NopStatusListener

 

参考文档

http://logback.qos.ch/manual/configuration.html#statusListener

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值