【前导】
是一个功能强大的日志组件,提供方便的日志记录
日志框架
log4j,log4j2,slf4j,jcl,logback....
关系: 接口+实现
slf4j:日志的抽象层
log4j,log4j2:日志实现
【基本应用】
1 导入依赖
2 编辑配置文件
(log4j2的配置)
文件位置 resource/ log4j2.xml
applciation.yml配置
logging.config: classpath:log4j2.xml
【其他细节】
输出日志内容格式
时间 + 日志级别(trace,debug,info,warn,error)+ 线程ID + 分割符 + 主线程 + 全限定类名 + 输出文本 - - - 可在配置文件中自定义
【构建springboot项目-日志配置问题】
问题1
问题描述
不同的框架可能使用不同的默认日志框架:mybatis,spring,springboot,druid
要求
统一日志记录 eg: slf4j + logback/log4j2
解决
参:https://www.bilibili.com/video/BV1gW411W76m?p=23
1 排除其他框架的日志框架
2 用中间包替换原有日志框架
3 导入+配置 要使用的日志框架
问题2
自己配置内容即问题 springboot(2.3.2.RELEASE)默认使用logback druid使用log4j2 so:在springboot集成druid时要解除springboot默认改为druid支持的 解决方式参:https://blog.csdn.net/weixin_39370859/article/details/105039787
1
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions> <!-- 去掉Springboot默认的日志插件logback -->
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
2
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-log4j2</artifactId> </dependency>
3 log4j2.xml 配置文件创建+内容
4 application.yml 配置log4j2.xml的位置