Log日志整合

本文介绍了Java日志框架的关系,包括log4j、log4j2和logback的使用,强调了slf4j作为门面的优势,并讨论了适配器和桥接器在日志框架整合中的作用。
摘要由CSDN通过智能技术生成

Log关系

在这里插入图片描述

一 概述

1.1 常用的框架

jul (java.util.logging):jdk官方日志框架
log4j:基于淘汰,没有更新了
log4j2(Apatch):性能优于log4j
logback:性能优于log4j

1.2 常用的门面

(概念:不实现日志功能,整合日志的)

JCL:jakarta commons logging官方
slf4j:性能高于JCL,与logback日志框架源自一个作者
PS:流行log4j2 + slf4j 或 logback + slf4j(开销最小,最优)

1.3 门面的依赖

<!--slf4j门面核心依赖-->
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>1.7.30</version>
</dependency>

<!--JCL门面依赖-->
<dependency>
    <groupId>commons-logging</groupId>
    <artifactId>commons-logging</artifactId>
    <version>1.2</version>
</dependency>

1.3 适配器和桥接器

适配器:
(概念:当项目使用了两种日志框架,可以使用适配器进行统一)
例:一个项目同时使用了jul+JCL和 log4j+slf4j的日志框架,现在需要统一,即可以将jul或者JCL通过导入适配
器依赖的形式,整合到slf4j上面来实现。
桥接器:
(概念:日志框架要在日志门面使用的桥梁)
也就是说,当引入了logback日志框架和slf4j日志门面的maven依赖后,还需要引入对应的桥接器依赖,才能
使日志运行。
桥接器只能有一个(slf4j只能运行一个)。

1.3.1 适配器
jar包名 说明 实现日志
log4j-over-slf4j.jar 将Log4j重定向到Slf4j log4j
log4j-to-slf4j.jar 将Log4j2重定向到Slf4j log4j2
jcl-over-slf4j.jar 将Commons Logging里的Simple Logger重定向到Slf4j jcl
jul-to-slf4j.jar 将Java Util Logging重定向到Slf4j jul
1.3.2 适配器的依赖
<!--日志统一,将logf4j转到slf4j,添加logf4j-slf4j适配器-->
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>log4j-over-slf4j</artifactId>
    <version>2.0.2</version>
</dependency>

<!--日志统一,将logf4j2转到slf4j,添加logf4j2-slf4j适配器-->
<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-to-slf4j</artifactId>
    <version>2.12.1</version>
</dependency>

<!--日志统一,将JCL转到slf4j,添加JCL-slf4j适配器--&
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值