为web项目添加logback
Posted web小菜鸟ing
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为web项目添加logback相关的知识,希望对你有一定的参考价值。
在项目进行的过程中,难免要涉及到日志查看和打印,所以学习了logback的使用和配置方法,在这里记录下,和大家分享
1.jar包
上面的两个包是必须要使用的,注意不要重复加载了,不然会找不到这个包,导致加载失败
2.配置xml
在web.xml里面先配置好logback.xml的地址,配置如下
<context-param>
<param-name>logbackConfigLocation</param-name>
<param-value>classpath:main/resources/logback.xml</param-value>
</context-param>
配置logback.xml如下所示
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<property name="APP_Name" value="cptIdeUI" />
<contextName>$APP_Name</contextName>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<layout class="ch.qos.logback.classic.PatternLayout">
<pattern>[%dyyyyMMdd HH:mm:ss-SSS] %-5level [%thread][%logger:%line]- %msg%n</pattern>
</layout>
<!-- <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> <level>INFO</level>
</filter> -->
</appender>
<appender name="SIFT" class="ch.qos.logback.classic.sift.SiftingAppender">
<discriminator>
<key>filename</key>
<DefaultValue>c:/test</DefaultValue>
</discriminator>
<sift>
<appender name="FILE"
class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>C:/test.log</file>
<prudent>false</prudent>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<FileNamePattern>$filename-%dyyyyMMdd.%i.log.gz</FileNamePattern>
<maxHistory>30</maxHistory>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<maxFileSize>20MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
</rollingPolicy>
<layout class="ch.qos.logback.classic.PatternLayout">
<ImmediateFlush>false</ImmediateFlush><!-- 缓存 -->
<pattern>[%dyyyyMMdd HH:mm:ss.SSS] %-5level [%thread][%logger:%line]- %msg%n</pattern>
</layout>
</appender>
</sift>
</appender>
<!-- 过滤第三方日志-->
<logger name="org.apache.cxf" level="error"/>
<!-- 开发环境level设置为ALL打印和记录所有日志,生成环境建议修改为ERROR或WARN避免产生大量日志 -->
<root level="debug">
<appender-ref ref="SIFT"></appender-ref>
<appender-ref ref="STDOUT"></appender-ref>
</root>
</configuration>
上面可以根据自己的需要修改配置文件,简单介绍下
STDOUT是配置输出日志的格式
FILE是配置输出日志文件的名称格式和大小等一些基本配置
<logger>配置了需要过滤的第三方日志,这里可以添加我们自己jar包里的内容,并设置显示级别,这里我假设把cxf设置为error级别才显示日志
<root>的话就简单的解释为除了logger自己配置的日志以外,其他的都是root的配置。
以上是关于为web项目添加logback的主要内容,如果未能解决你的问题,请参考以下文章
gradle多项目构建添加logback日志功能以及相关配置