天天看點

slf4j log4j logback相關用法

Java的簡單日志門面( Simple Logging Facade for Java SLF4J)作為一個簡單的門面或抽象,用來服務于各種各樣的日志架構,比如java.util.logging、logback和log4j。SLF4J允許最終使用者在部署時內建自己想要的日志架構。

需要注意的是,你的應用啟用SLF4J意味着需要一個額外的依賴:slf4j-api-1.7.19.jar。

log4j和logback就是兩個受歡迎的日志架構。但兩者又有不同。

log4j是apache實作的一個開源日志元件。(Wrapped implementations)

logback同樣是由log4j的作者設計完成的,擁有更好的特性,用來取代log4j的一個日志架構。是slf4j的原生實作。(Native implementations)

logback是直接實作了slf4j的接口,是不消耗記憶體和計算開銷的。而log4j不是對slf4j的原生實作,是以slf4j api在調用log4j時需要一個适配層。

slf4j的好處:

軟體工程的角度.抽象,解耦,便于維護。

文法設計角度。slf4j有{}占位符,而log4j需要用“+”來連接配接字元串,既不利于閱讀,同時消耗了記憶體(heap memory)。

使用:

slf4j+log4j

隻需要導入這一個,就可以有3個jar

slf4j log4j logback相關用法

log4j.properties

log4j.xml

======================================================================================

slf4j-logback

maven配置:

logback.xml

運作以後會在D:/app/log/netty.log中記錄。