为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>[%d{yyyyMMdd 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}-%d{yyyyMMdd}.%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>[%d{yyyyMMdd 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的配置。

你可能感兴趣的:(java,Web,日志,logback配置,jabva,logback.xml)