目录
  • log4j配置失效日志中打印Debug信息
    • 去除依赖的方法
  • log4j日志的配置–Debug

    log4j配置失效日志中打印Debug信息

    最近发布项目的时候发现控制台打印的日志较往常多了很多,仔细一看,debug和info信息也赫然在列,打开log4j.xml配置文件看一下:

    <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
    <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false">
    	<appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
    		<layout class="org.apache.log4j.PatternLayout">
    			<param name="ConversionPattern" value="[%d{dd/MM/yy hh:mm:ss:sss z}] %t %5p %c{2}: %m%n" />
    		</layout>
    		<filter class="org.apache.log4j.varia.LevelRangeFilter">  
    		    <param name="LevelMax" value="ERROR" />
    		    <param name="LevelMin" value="INFO" />  
    		</filter>
    	</appender>
        
    	<appender name="catAppender" class="com.dianping.cat.log4j.CatAppender">
            <param name="Threshold" value="ERROR"></param>
        </appender>
    	<root> 
    		<priority value="error" />
    		<!-- 日志输出最低级别  -->
    		<appender-ref ref="CONSOLE" />
    		<appender-ref ref="catAppender" /> 
    	</root> 
    </log4j:configuration>

    配置的是error级别,显然不应该出现debug信息的,一定是配置文件没起作用,什么原因呢?

    查资料找到一种解释:Log4j和logback冲突了,这样会导致Log4j的日志级别降低到DEBUG级别。

    项目用的是log4j,没用到logback,难道是依赖隐式地加入了logback?打开依赖看下,还真的有logback:

    log4j配置失效日志中打印Debug信息问题

    知道了原因,就在maven依赖中把logback去掉。

    去除依赖的方法

    1. 调到引入logback的依赖处,如图,右键->Jump To Source

    log4j配置失效日志中打印Debug信息问题

    2. 排掉logback依赖

    log4j配置失效日志中打印Debug信息问题

    <dependency>
    <groupId>com.weimob.saas.foundation</groupId>
    <artifactId>wxbase-core-service-client</artifactId>
    <version>1.3.2-SNAPSHOT</version>
    <exclusions>
    <exclusion>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-classic</artifactId>
    </exclusion>
    <exclusion>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-core</artifactId>
    </exclusion>
    </exclusions>
    </dependency>

    log4j日志的配置–Debug

    ############################### 日志记录器定义 ###############################
    # 日志输出级别 OFF、DEBUG、INFO、WARN、ERROR
    log4j.rootLogger = DEBUG,consoleAppender,debug,info,warn,error
    
    ############################### 日志输出控制器定义 ###############################
    #根记录器 控制台输出控制器
    log4j.appender.consoleAppender = org.apache.log4j.ConsoleAppender
    log4j.appender.consoleAppender.Target = System.out
    log4j.appender.consoleAppender.layout = org.apache.log4j.PatternLayout
    log4j.appender.consoleAppender.layout.ConversionPattern = %-d{yyyy-MM-dd HH\:mm\:ss} - %C [%t\:%r] - [%p] %m%n
    
    #根记录器 文件输出控制器 DEBUG
    log4j.logger.debug=debug
    log4j.appender.debug = org.apache.log4j.RollingFileAppender
    log4j.appender.debug.encoding=UTF-8
    log4j.appender.debug.File =E:\\tomcat-8.5.16-x86\\mylog\\debug.log
    log4j.appender.debug.Append = true
    log4j.appender.debug.Threshold = DEBUG
    log4j.appender.debug.MaxFileSize=900KB
    log4j.appender.debug.MaxBackupIndex=1
    log4j.appender.debug.layout = org.apache.log4j.PatternLayout
    log4j.appender.debug.layout.ConversionPattern = %-d{yyyy-MM-dd HH\:mm\:ss} - %C [%t\:%r] - [%p] %m%n
    
    #根记录器 文件输出控制器 INFO
    log4j.logger.info=info
    log4j.appender.info = org.apache.log4j.RollingFileAppender
    log4j.appender.info.encoding=UTF-8
    log4j.appender.info.File =E:\\tomcat-8.5.16-x86\\mylog\\info.log
    log4j.appender.info.Append = true
    log4j.appender.info.Threshold = INFO
    log4j.appender.info.MaxFileSize=900KB
    log4j.appender.info.MaxBackupIndex=1
    log4j.appender.info.layout = org.apache.log4j.PatternLayout
    log4j.appender.info.layout.ConversionPattern = %-d{yyyy-MM-dd HH\:mm\:ss} - %C [%t\:%r] - [%p] %m%n
    
    #根记录器 文件输出控制器 WARN
    log4j.logger.warn=warn
    log4j.appender.warn = org.apache.log4j.RollingFileAppender
    log4j.appender.warn.encoding=UTF-8
    log4j.appender.warn.File =E:\\tomcat-8.5.16-x86\\mylog\\warn.log
    log4j.appender.warn.Append = true
    log4j.appender.warn.Threshold = WARN
    log4j.appender.warn.MaxFileSize=900KB
    log4j.appender.warn.MaxBackupIndex=1
    log4j.appender.warn.layout = org.apache.log4j.PatternLayout
    log4j.appender.warn.layout.ConversionPattern = %-d{yyyy-MM-dd HH\:mm\:ss} - %C [%t\:%r] - [%p] %m%n
    
    #根记录器 文件输出控制器 ERROR
    log4j.logger.error=error
    log4j.appender.error = org.apache.log4j.RollingFileAppender
    log4j.appender.error.encoding=UTF-8
    log4j.appender.error.File =E:\\tomcat-8.5.16-x86\\mylog\\error.log
    log4j.appender.error.Append = true
    log4j.appender.error.Threshold = ERROR
    log4j.appender.error.MaxFileSize=900KB
    log4j.appender.error.MaxBackupIndex=1
    log4j.appender.error.layout = org.apache.log4j.PatternLayout
    log4j.appender.error.layout.ConversionPattern = %-d{yyyy-MM-dd HH\:mm\:ss} - %C [%t\:%r] - [%p] %m%n

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

    声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。