概述
背景:之前的一个项目采用log4j和slf4j做日志输出,后来引入了dubbo+zookeeper。新的项目采用logback和slf4j。老的项目需要使用maven引用新项目生成jar
发现的问题:做好一切准备后,发现控制台日志不停的刷,几分钟可以刷200M+,主要来自org.apache.zookeeper.ClientCnxn的debug日志。
解决思路:
1、调整log4j.properties中配置
结果不起作用
2、查看输出出来的日志格式,发现和log4j定义的格式并不一致
3、查看ClientCnxn源码,发现:
private static final Logger LOG = LoggerFactory.getLogger(ClientCnxn.class);
说明LOG是采用slf4j定义生成的。
结合2、3所以怀疑是不是引入了logback相关的jar
4、查看pom.xml,发现项目中确实引入了logback相关的jar
所以猜测ClientCnxn中的日志输出会使用logback默认输出,而不是通过log4j.所以果断把logback给排除掉。
5、尝试把logback相关的jar屏蔽掉,采用的方法
经过测试,完美搞定
最后
以上就是怡然帅哥为你收集整理的log4j、logback和slf4j混合使用趟过的坑的全部内容,希望文章能够帮你解决log4j、logback和slf4j混合使用趟过的坑所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复