您的位置:首页 > 编程语言 > Java开发

Log4j配置失效导致spring等框架一直打印DEBUG级别的日志

2015-04-09 12:45 399 查看
        在应用中使用了SpringMVC+Hibernate+Log4j+SLF4J。Log4j的日志级别调到INFO。但是在web容器(Tomcat)在启动和运行的时候Spring,Hibernate等框架中DEBUG级别的日志不断狂刷,导致日志文件剧增,磁盘没几天就爆了。

针对这个问题在网上找了好多方法,都是没有效果或者治标不治本的。一直以为自己的Log4j配置文件写的有问题。后来在自己新搭建的project中发现Log4j的配置是正确的。只打印出INFO及以上级别的日志信息。后来才知道,是因为自己的应用依赖的jar隐式依赖了logback日志框架。

Log4j和logback是有冲突的,这样会导致Log4j的日志级别降低到DEBUG级别。知道了原因,就在maven依赖中把logback的隐式依赖给去掉。然后启动tomcat,发现日志可以正常打印。去除依赖的方法:

<dependency>
<groupId>com.hoteam.df</groupId>
<artifactId>util-tools</artifactId>
<version>3.1.8</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+sjf4j需要的jar包包括:

              log4j-1.2.xx.jar

             slf4j-api-x.x.x.jar

             slf4j-log4j12-x.x.x.jar

logback+sjf4j需要的jar包有

             logback-classic-0.9.21.jar

             logback-core-0.9.21.jar

             slf4j-api-1.6.x.jar
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  log4j