问题描述
在web应用开发过程中发现部署在服务器中的应用日志突然不见了,服务器中只有tomcat或jboss的重启启动日志在打印,但应用本身设置的日志文件没有打印出来。
问题分析
该应用分支是刚从主干check下来的,而且主干分支在服务器上部署后是正常的,所有日志文件及文件内的日志信息都能正常打印和显示。
根据之前经验判断由于应用部署是成功的,并且提交的新代码中只是在maven工程的pom文件中引入了新的依赖包,初步怀疑是由于新引入的包导致logback包冲突引起的。
解决方案
通过mvn dependency命令打出来该maven工程的依赖数,果然出现了两个不同版本的logback引用情况。
使用exclusion命令对低版本的logback包进行排除操作,参考示例如下:
<exclusions> <exclusion> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> </exclusion> </exclusions>
主要是logback-classic的包冲突引起的,经过唯一版本确认后重新部署应用,日志顺利打印出来。
问题总结
一开始以为是log4j的包冲突引起的,后来排查结果却是logback包问题,之前对这两两者区别不是很了解,经过这次问题排查也顺便学习了一下这方面的知识:
logback介绍
LogBack被分为3个组件,logback-core, logback-classic 和 logback-access。其中
logback-core提供了LogBack的核心功能,是另外两个组件的基础;
logback-classic则实现了Slf4j的API,所以当想配合Slf4j使用时,需要将logback-classic加入classpath;
logback-access是为了集成Servlet环境而准备的,可提供HTTP-access的日志接口。
由于logback在技术实现及性能上具有无可比拟的优势,现在一般都是使用logback,慢慢替代log4j。
相关推荐
logback日志的jar包和配置介绍:logback-classic-1.1.2.jar、logback-core-1.1.2.jar、slf4j-api-1.7.7.jar、logback.xml、rsframework.properties
适用于java中的Logback日志框架
logback日志框架包(包含xml配置文件,logback类库)
包含logback所需:logback-classic-1.1.7.jar、logback-classic-1.1.7-sources.jar、logback-core-1.1.7.jar、logback-core-1.1.7-sources.jar、slf4j-api-1.7.21.jar、slf4j-api-1.7.21-sources.jar
内置三个jar包 一个配置文件 logback.txt logback-classic-1.2.3.jar logback-core-1.2.3.jar slf4j-api-1.7.26.jar
Tomcat日志catalina.out过大解决方案--使用logback的资源包,包括jar包,和使用文档,具体使用请参考我的同名博客。
这是logback日志输出需要的jar包,以及最基础的logback.xml配置
logback-classic-1.2.3.jar logback-core- 1.2.3.jar slf4j-api-1.7.26.jar
免费获取Logback所需的jar包 打包合集 让你少走弯路 一.logback简介 1.logback: Logback是由log4j创始人设计的另一个开源日志组件。(好的日志记录方式可以提供我们足够多的定位错误的依据)。 2.主要有三个模块...
Grails3配置logback日志.pdf
springboot+logback输出日志文件1
logback日志写logstash配置appender参考
Logback日志应用.mp4
此zip包含logback-access-1.2.3和logback-classic-1.2.3和logback-core-1.2.3
LogBack日志的使用,有配置文件,详细的说明文档,所需要的jar包
Spring Boot默认使用LogBack日志系统,并且已经引入了相关的jar包,所以我们无需任何配置便可以使用LogBack打印日志。这篇文章主要介绍了SpringBoot+Logback实现一个简单的链路追踪功能,需要的朋友可以参考下
其中包含logback.xml配制详解,所配制的jar包,maven配制,我们项目的配制,里面还包含日志打包等
logback是在log4j的基础上衍生出来的日志管理技术,现在外面用的也非常广,这里给大家分享一个我们经常用的配置,我们公司项目中已经在使用了,亲测可行,需要的下载看看,希望对你有帮助
使用logback-spring.xml的日志打印输出demo
logback 日志 + jar + 配置