logback 日志不输出
最近合公司项目后,发现logback日志不输出,最终发现是因为依赖冲突slf4j-log4j12原因
在使用logback作为日志输出的时候,会遇到日志并没有按照logback.xml中的配置进行输出,出现这一问题的原因,有如下可能。
原因1:与log4j的jar包冲突
采用logback作为日志输出时,需要包含如下依赖:
<dependency> <groupId>ch.qos.logbackgroupId> <artifactId>logback-coreartifactId> <version>1.1.2version> dependency> <dependency> <groupId>ch.qos.logbackgroupId> <artifactId>logback-classicartifactId> <version>1.1.2version> dependency> <dependency> <groupId>org.slf4jgroupId> <artifactId>slf4j-apiartifactId> <version>1.7.6version> dependency>
不能包含如下依赖,如果加入该依赖,会导致日志都输出到log4j的日志文件中
<dependency> <groupId>org.slf4jgroupId> <artifactId>slf4j-log4j12artifactId> <version>1.7.25version> dependency>
原因2:多个logback.xml文件
由于引入的第三方包中带有logback.xml文件,而导致logback有多份配置,而出现日志输出不正常的情况。
这种情况下,可以通过控制台输出日志,查看logback.xml文件都来自哪些,然后看是否能够排除掉,如果无法排除,则可以通过java启动时,指定logback.xml的文件路径来解决
java -Dlogback.configurationFile=./conf/logback.xml
https://blog.csdn.net/qq_21653785/article/details/73165776