Logback原生VS VS Logback通过SLF4J

我已阅读了以下关于Java可用的日志框架的文章:http://michaelandrews.typepad.com/the_technical_times/2011/04/java-logging-reconsidered.html

作者曾提到将SLF4J与Logback结合使用。 这与直接使用Logback有何不同。 如果一个人直接使用Logback而不是SLF4J,会不会更好,因为Logback是建立在SLF4J之上的。


SLF4J为Logback增加了零开销,因为它仅仅是由Logback实现的接口,没有任何额外的层。

你应该使用SLF4J,因为...

  • 它使您可以从Logback切换,如果你需要
  • 它不需要花费任何东西,即使是进口也小);
  • 其他人会喜欢你使用SLF4J,并且如果你把代码放到野外,直​​接使用特定的日志记录框架会让你憎恨。
  • 直接访问Logback的唯一地方是在应用程序中手动配置日志(重新)。 偶尔会出现这种需求,但即使在这种情况下,使用Logback也会受限于单个类或甚至是方法。

    作为一个经验法则:库应该总是使用日志抽象,而应用程序定义他们正在使用的日志记录,可以直接访问它。


    SLF4J几乎没有开销,Logback有一个本地绑定。

    如果您100%知道您将来不需要切换到其他日志框架,请使用logback native。 但是SLF4J允许你进行一些抽象,你可以在瞬间切换日志后端。

    Logback不是建立在SLF4J之上的。 SLF4J是一个用于日志记录的抽象框架。 它本身不做任何记录。 它只是提供统一的日志记录界面。

    链接地址: http://www.djcxy.com/p/36823.html

    上一篇: Logback native VS Logback via SLF4J

    下一篇: Best practices for using Markers in SLF4J/Logback