Java日志组件应用总结

概述

由于Java日志功能发布较晚,开源社区的日志组件发展日趋成熟,导致应用系统中日志组件依赖比较混乱。

常见 log 组件

组件名称 分类 备注
SLF4J 接口 slf4j-api.jar
Commons-logging (jcl) 接口 commons-logging.jar / jcl-over-slf4j.jar
Log4j2 接口 + 实现 log4j-api.jar, log4j-core.jar, log4j-slf4j-impl.jar, log4j-to-slf4j-2.x.jar
Log4j 实现 log4j.jar / log4j-over-slf4j.jar
Logback 实现 logback-classic.jar, logback-core.jar
java.util.logging (jul) 实现 jul-to-slf4j.jar / JDK 1.4+

总结:

  • xxx-over-slf4j.jar 表示采用适配器模式(Adapter Pattern)实现调用转发;
  • xxx-to-slf4j.jar 表示采用桥模式(Bridge Pattern)实现调用转发;

常见模式

SLF4J 推荐的模式

模式总结:日志API => slf4j-api => 原生实现 | (适配器 + 非原生实现)

image.png

Log4j2 推荐的模式

模式总结:日志API (适配器) => log4j-api-2.x => 原生实现

image.png

模式总结

个人推荐采用slf4j的模式,更利于项目的长期维护(如果log4j再次升级,比如log4j3,几乎需要升级全部组件,升级阻力较大),如下图:


日志组件使用总结.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,280评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 177,223评论 25 709
  • log4j, log4j2, slf4j, logback关系 log4j是由Apache开发的一套元老级日志框架...
    rainybowe阅读 5,651评论 0 4
  • 感恩: 感恩这个周末可以多睡一会儿,难得这么放松一下。 感恩今日的阳光明媚,冬天还有这么好的太阳,真是难得。 感恩...
    遇见念念相续阅读 1,868评论 0 0
  • 6月13日精进 今日体验:今天路路通学习和他们老总一起吃饭.一个身价上亿的老板如此平易近人如此低调!是我们学习的榜...
    京心达何海港阅读 1,706评论 0 0

友情链接更多精彩内容