slf4j與log4j全面了解
推薦使用SLF4J(Simple Logging Facade for Java)作為日志的api,SLF4J是一個用于日志系統(tǒng)的簡單Facade,允許最終用戶在部署其應(yīng)用時使用其所希望的日志系統(tǒng)。
1、Slf4j優(yōu)勢
與使用apache commons-logging或直接使用log4j相比,SLF4J提供了一個名為參數(shù)化日志的高級特性,可以顯著提高在配置為關(guān)閉日志的情況下的日志語句性能,
log.debug("Found {} records matching filter: '{}'", records, filter);//slf4j
log.debug("Found " + records + " records matching filter: '" + filter + "'");//log4j
可以看出SLF4J的優(yōu)點有:更簡略易讀;在日志級別不夠時,少了字符串拼接的開銷,不會調(diào)用對象(records/filter)的toString方法。
Slf4j在1.6.0之后,更是支持了異常堆棧的打印,作為最后一個參數(shù)傳入即可,基本滿足了日志的常見打印場景。
log.error("Failed to format {}", s, e);
2、注意Logger間的繼承關(guān)系
logger的繼承是通過命名來實現(xiàn)的。
子logger會默認(rèn)繼承父logger的appender,將它們加入到自己的Appender中;除非加上了additivity="false",則不再繼承父logger的appender。
子logger只在自己未定義輸出級別的情況下,才會繼承父logger的輸出級別。
以上這篇slf4j與log4j全面了解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
SpringBoot 自定義注解異步記錄復(fù)雜日志詳解
這篇文章主要為大家介紹了SpringBoot 自定義注解異步記錄復(fù)雜日志詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-09-09
Netty分布式ByteBuf使用的底層實現(xiàn)方式源碼解析
這篇文章主要為大家介紹了Netty分布式ByteBuf使用底層實現(xiàn)方式源碼解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-03-03
Java多態(tài)中的向上轉(zhuǎn)型與向下轉(zhuǎn)型淺析
多態(tài)是指不同類的對象在調(diào)用同一個方法是所呈現(xiàn)出的多種不同行為,下面這篇文章主要給大家介紹了關(guān)于Java多態(tài)中向上轉(zhuǎn)型與向下轉(zhuǎn)型的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2023-02-02

