slf4j與log4j全面了解
推薦使用SLF4J(Simple Logging Facade for Java)作為日志的api,SLF4J是一個(gè)用于日志系統(tǒng)的簡(jiǎn)單Facade,允許最終用戶在部署其應(yīng)用時(shí)使用其所希望的日志系統(tǒng)。
1、Slf4j優(yōu)勢(shì)
與使用apache commons-logging或直接使用log4j相比,SLF4J提供了一個(gè)名為參數(shù)化日志的高級(jí)特性,可以顯著提高在配置為關(guān)閉日志的情況下的日志語(yǔ)句性能,
log.debug("Found {} records matching filter: '{}'", records, filter);//slf4j
log.debug("Found " + records + " records matching filter: '" + filter + "'");//log4j
可以看出SLF4J的優(yōu)點(diǎn)有:更簡(jiǎn)略易讀;在日志級(jí)別不夠時(shí),少了字符串拼接的開(kāi)銷,不會(huì)調(diào)用對(duì)象(records/filter)的toString方法。
Slf4j在1.6.0之后,更是支持了異常堆棧的打印,作為最后一個(gè)參數(shù)傳入即可,基本滿足了日志的常見(jiàn)打印場(chǎng)景。
log.error("Failed to format {}", s, e);
2、注意Logger間的繼承關(guān)系
logger的繼承是通過(guò)命名來(lái)實(shí)現(xiàn)的。
子logger會(huì)默認(rèn)繼承父logger的appender,將它們加入到自己的Appender中;除非加上了additivity="false",則不再繼承父logger的appender。
子logger只在自己未定義輸出級(jí)別的情況下,才會(huì)繼承父logger的輸出級(jí)別。
以上這篇slf4j與log4j全面了解就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
java處理數(shù)據(jù)庫(kù)不支持的emoji表情符問(wèn)題解決
這篇文章主要介紹了java處理數(shù)據(jù)庫(kù)不支持的emoji表情符問(wèn)題解決,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-09-09Mybatis Plus查詢時(shí)sql字段名大小寫報(bào)錯(cuò)的解決
這篇文章主要介紹了Mybatis Plus查詢時(shí)sql字段名大小寫報(bào)錯(cuò)的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-12-12java面向?qū)ο?API(接口)與集合(ArrayList)
這篇文章主要介紹了Java語(yǔ)言面向?qū)ο蟮腁PI與集合,還是十分不錯(cuò)的,這里給大家分享下,需要的朋友可以參考,希望能夠給你帶來(lái)幫助2021-08-08Spring Boot中使用Spring-data-jpa的配置方法詳解
今天小編就為大家分享一篇關(guān)于Spring Boot中使用Spring-data-jpa的配置方法詳解,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2019-03-03詳解Java中l(wèi)og4j.properties配置與加載應(yīng)用
這篇文章主要介紹了 log4j.properties配置與加載應(yīng)用的相關(guān)資料,需要的朋友可以參考下2018-02-02詳談spring boot中幾種常見(jiàn)的依賴注入問(wèn)題
這篇文章主要介紹了spring boot中幾種常見(jiàn)的依賴注入問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-09-09