【问题标题】:What is the difference between Log4j, SLF4J and Logback?Log4j、SLF4J 和 Logback 有什么区别?
【发布时间】:2017-01-26 12:58:49
【问题描述】:

我对这三个记录器库有点困惑。似乎他们可以在 Java 日志记录中做类似的事情......

【问题讨论】:

  • 他们做类似的事情。它们有不同的 API。我会用你最喜欢的那个。顺便说一句,看看 log4j2 而不是 log4j。
  • @PeterLawrey 除了 slf4j,它本身不是一个记录器(它是一个外观,为 另一个 记录器提供一致的 api)。
  • @ElliottFrisch 好点,虽然我使用 slf4j-simple 不需要其他记录器。
  • 为什么这个问题得到 2 票反对?

标签: java logging log4j slf4j


【解决方案1】:

查看他们的主页:

SLF4J - The Simple Logging Facade for Java (SLF4J) 用作各种日志框架(例如 java.util.logging、 logback, log4j) 允许最终用户在部署时插入所需的日志框架。

1) 它本身不是一个日志库,而是许多日志库之一的通用接口。

Log4j 1.2 - 欢迎使用 Apache log4j,这是一个用于 Java 的日志库

Logback - Logback 旨在作为流行 log4j 项目的继任者 项目,从 log4j 停止的地方接手。

Log4j 2 - Apache Log4j 2 是对 Log4j 的升级,它在其前身 Log4j 1.x 的基础上进行了重大改进,并且提供了 Logback 中可用的许多改进 同时修复 Logback 架构中的一些固有问题。

至少,他们都是这么评价自己的。

【讨论】:

  • 所以以 SLF4J 作为外观,我们可以使用 log4j 或 logback 或 。是吗?
  • @Shekhar 是的,没错
【解决方案2】:

此链接:https://medium.com/@krishankantsinghal/logback-slf4j-log4j2-understanding-them-and-learn-how-to-use-d33deedd0c46

详细解释差异。

从那里引用

Slf4j

因此,Java 的 Simple Logging Facade 基本上用作各种日志框架的简单外观或抽象,允许最终用户在部署时插入所需的日志框架。

log4j2

Log4j、Logback 和 java.util.Logger 是日志库,它们实际编写日志并各有优缺点。由于行业标准是 Log4j2 和 logback

我建议您浏览博客。它提供了如何与适配器一起使用的所有荣耀细节。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-07-13
    • 2014-03-30
    • 1970-01-01
    • 1970-01-01
    • 2011-05-29
    • 2023-04-09
    • 2018-05-14
    • 2013-10-16
    相关资源
    最近更新 更多