日志的使用

Posted 虚极静笃

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了日志的使用相关的知识,希望对你有一定的参考价值。

因为默认是输出info和以上级别的日志,所以debug没有输出。

这里的参数LoggerTest.class表示在控制台打印com.imooc.LoggerTest,如果换成其他的类,那么控制台也会相应的打印该类。

有一种更简单的写法(使用@Slf4j注解代替,注解属于lombok,需要安装lombok插件并且要添加maven依赖):

在日志里面输出变量,有两种写法(建议用后者):

 

第一种配置方式:

 

第二种配置方式:

 

<?xml version="1.0" encoding="UTF-8" ?>
<configuration>
    <appender name="consoleLog" class="ch.qos.logback.core.ConsoleAppender">
        <layout class="ch.qos.logback.classic.PatternLayout">
            <pattern>%d - %msg%n</pattern>
        </layout>
    </appender>
    <appender name="fileInfoLog" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <level>ERROR</level>
            <onMatch>DENY</onMatch>
            <onMismatch>ACCEPT</onMismatch>
        </filter>
        <encoder>
            <pattern>%msg%n</pattern>
        </encoder> <!--滚动策略-->
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!--路径-->
            <fileNamePattern>/var/log/tomcat/sell/info.%d.log</fileNamePattern>
        </rollingPolicy>
    </appender>
    <appender name="fileErrorLog" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
            <level>ERROR</level>
        </filter>
        <encoder>
            <pattern>%msg%n</pattern>
        </encoder> <!--滚动策略-->
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!--路径-->
            <fileNamePattern>/var/log/tomcat/sell/error.%d.log</fileNamePattern>
        </rollingPolicy>
    </appender>
    <root level="info">
        <appender-ref ref="consoleLog"/>
        <appender-ref ref="fileInfoLog"/>
        <appender-ref ref="fileErrorLog"/>
    </root>
</configuration>

 这里要注意:

LevelFilter过滤的是该level的日志
ThresholdFilter是一个临界值,过滤低于该level的日志

以上是关于日志的使用的主要内容,如果未能解决你的问题,请参考以下文章

argparse 代码片段只打印部分日志

webstorm代码片段的创建

python常用代码片段总结

如何使用 tabLayout 在 ViewPager 中显示片段?

执行代码时有时不显示对话框片段

片段内 Spinner 的 Kotlin 问题