log4j,slf4j和logback有什么区别?

时间:2016-09-18 21:42:24

标签: java java-ee logging log4j slf4j

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

2 个答案:

答案 0 :(得分:42)

查看他们的主页:

SLF4J - 简单日志外观Java(SLF4J)用作各种日志框架的简单外观或抽象 1 (例如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中可用的许多改进< / strong>同时修复了Logback架构中的一些固有问题。

至少,这是他们所说的自己。

答案 1 :(得分:2)

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

详细说明差异。

从那里报价

Slf4j

因此,对于Java来说,基本上简单的Logging Facade可以充当各种日志框架的简单外观或抽象,从而允许最终用户在部署时插入所需的日志框架。

log4j2

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

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