slf4j日志整合框架的一些问题
2024-09-04 16:57:05
概述:
今天遇到一个问题,现在流程的形式,记录一下解法问题的一些过程,
你将收获解决常用包日志系统冲突的解决办法:
Code
由于要使用log4j所以引入以下依赖
<!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-api -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.21</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-log4j12 -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.21</version>
</dependency>
编写llog4j.properties
# Set specific logger levels.
log4j.logger.org.mortbay.log=fatal
log4j.logger.org.apache.http=fatal
log4j.logger.org.apache.http.headers=fatal
log4j.logger.org.apache.http.wire=fatal
# For HttpClient 3, which is used by FirefoxDriver
log4j.logger.httpclient.wire=fatal
log4j.logger.org.apache.commons=fatal
log4j.logger.com.gargoylesoftware.htmlunit=fatal
log4j.logger.com.gargoylesoftware.htmlunit.WebTestCase=fatal
# Change this to TRACE when enabling the debugger.
log4j.logger.com.gargoylesoftware.htmlunit.javascript.DebugFrameImpl=fatal
运行test程序:
发现无论把日志级别提升到多高,甚至关闭,依然运行出现问题,控制台输出大量日志,奇怪,明明定制了输出规范,怎么还会输出日志呢,
这个时间,我第一想到了就是存在的某个包 引入了日志系统,导致存在多个日志发生冲突, 所以我已存着那个包出现问题,找到了logback这个包,既然我们使用log4j slf4j那么这个两个是不能共存的,所以先排除这个
<exclusion>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
</exclusion>
<exclusion>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
</exclusion>
然后继续测试,又出现了下面的异常
读打印的异常,可以看出,出现了反复导致溢出,那么排除它(这里也可以选择调整优先级)
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>log4j-over-slf4j</artifactId>
</exclusion>
最后:这里说一下,虽然很多包提供了日志管理lib,但是还是希望你能够花时间把这些包全部排除,引入自己的包,还有配置文件,这样你的项目在导出到别人那里使用才不会出现太多问题。
最新文章
- 苹果iOS强制HTTPS迫在眉睫,距离2017年只剩1天,准备好了么?
- 为PHP安装两个扩展,memcache和Redis
- hdu 2586 How far away ?(离线求最近公共祖先)
- 导入aar文件出错
- Java对象的多态性(转型)
- C语言一个简单的闹钟程序
- Tomcat提示Null component
- java正则表达式Pattern和Matcher
- 抛出异常的区别 throw 和throw ex
- 对Spring IOC和AOP的理解
- CANOE入门(一)
- Promise事件比timeout优先
- ltp 分析 fail testcase
- Kafka 0.10 DelayedTaskQueue的用法和实现
- CSS知识点(二)
- httpService 和 WebService接口协议
- flink-jdbc sink
- box-shadow四周都有阴影
- python正则表达式,以及应用[下载图片]
- Mysql转换成SqlServer数据库,以及SqlServer转换成Mysql数据库