SLF4j、Log4j、Log4j2、Logback 以及统一日志

SLF4j作为日志门面提供抽象接口,允许在不修改代码的情况下切换日志实现。Logback是其常用的实现框架,SpringBoot默认采用SLF4j+Logback。若已有Log4j,可通过slf4j-log4j12适配,或使用log4j-over-slf4j将Log4j转换为SLF4j,以达到日志记录的统一。
摘要由CSDN通过智能技术生成
  1. 日志门面
    是对不同日志框架提供的一个抽象层(统一接口),可在部署的时候不修改任何配置即可接入一种日志实现方案,SLF4j 属于一个日志门面
  2. 日志实现框架
    Log4j、Logback、Log4j2 都属于日志实现框架,其中Logback 是Log4j 的升级版;SpringBoot框架选用的是SLF4j +Logback 组合
  3. SLF4j +Logback 的使用
    开发中,日志记录方法的调用,形式上是调用抽象层的方法,实质上是调用的实现层的方法;要使用SLF4j +Logback,只需导入SLF4j 与Logback 的依赖即可
  4. SLF4j +Log4j 的使用
    由于Log4j 出现早于SLF4j,需额外添加适配层slf4j-log4j12.jar,这样Log4j 也能符合SLF4j 规范
  5. 配置文件取决于具体日志实现框架
  6. 统一日志记录
    开发中,框架之间的整合可能会导致混乱,因为不同框架自身带有不同的日志实现框架,所以需要一个转换;例如需要统一使用SLF4j +Logback 组合时,额外再添加 log4j-over-slf4j,它的作用就是将引入的jar 包中的Log4j 换为SLF4j ,所有使用Log4j 打印日志的地方将会转换为SLF4j 打印日志,而SLF4j 实际调用的是Logback 来具体的打印日志,这样就可以将项目中的日志框架统一
  7. 统一日志到SLF4j 步骤小结(SpringBoot 选用SLF4j +Logback 组合的原理也是这样的)
    1. 排除框架自带的日志框架(导入依赖时排除,如只排除,框架无法运行,故引出第二步)
    2. 导入中间包例如log4j-over-slf4j 去替代被排除的日志框架
    3. 导入SLF4j 具体的实现框架如Logback
      PS: 使用SpringBoot框架时,如引入其他框架,只需将其他框架自带的日志框架排除即可
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值