前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >日志 --- SLF4J日志框架问答

日志 --- SLF4J日志框架问答

作者头像
十毛
发布2019-03-27 11:46:46
3380
发布2019-03-27 11:46:46
举报

现在主流的日志方案是使用SLF4J作为API在代码中使用,具体的日志实现由不同的JAR完成,本文帮助了解一下SLF4J常见问题以及如何完美兼容各种不同日志框架

SLF4J如何自动使用lib中的日志实现JAR ?比如Logback, Log4j

答:直接使用org.slf4j.impl.StaticLoggerBinder,该类由各日志框架实现,比如Logback.

代码语言:javascript
复制
import org.slf4j.impl.StaticLoggerBinder;
private static String STATIC_LOGGER_BINDER_PATH = "org/slf4j/impl/StaticLoggerBinder.class";
Log4j, Commons-Logging, JUL(java.util.logging)都没有实现org.slf4j.impl.StaticLoggerBinder, 应该如何被SLF4J使用?

答: 使用绑定包slf4j-log4j12, slf4j-jcl, slf4j-jdk14,这些包中都实现了StaticLoggerBinder

如果第三方的项目已经使用了其他日志框架,如何统一使用SLF4J

答:使用桥接包log4j-over-slf4j, jcl-over-slf4j, jul-over-slf4j,这些桥接包就是底层使用SLF4J分别实现了Log4j, Commons-Logging,JUL的核心功能

可以同时使用log4j-over-slf4j.jar和slf4j-log4j12.jar吗?

答:不可以,log4j-over-slf4j.jar中使用SLF4J实现了Log4j,但是slf4j-log4j12.jar又把SLF4J的实现交给了Log4j, 因此就产生了一个死循环。

日志系列

参考

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018.11.13 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 日志系列
  • 参考
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档