你們都知道slf4j是原來log4j的做者寫的一個新的日誌組件,意思是簡單日誌門面接口,能夠跟其餘日誌組件配合使用,經常使用的配合是slf4j+logback,不管從功能上仍是從性能上都較之log4j有了很大的提高,我想不少用戶都已經嘗試,並應用到項目中。
對於日誌記錄,說實話,之前用過log4j,但沒有深刻研究,用其最簡單的功能。有幸在項目中用到了slf4j,來解決一個稍微複雜點的日誌記錄需求。因而便深刻研究了下,下邊將本身的研究成果與你們分享:
首先描述下須要解決的問題:
好比有以下包:
com.spike.test.a
com.spike.test.b
com.spike.test.c
com.spike.test.d
com.spike.test
個人配置日誌需求:
A. com.spike.test.a的日誌級別任意設置,單獨一日誌文件,獨立的日誌級別。
B. com.spike.test.b的日誌級別任意設置,單獨一日誌文件,獨立的日誌級別。
C. com.spike.test.b的日誌級別任意設置,單獨一日誌文件,獨立的日誌級別。
D. com.spike.test.b的日誌級別任意設置,單獨一日誌文件,獨立的日誌級別。
E. com.spike.test的日誌記錄需求:
1)記錄全部的info級別的日誌,也就是不記錄debug級別日誌,單獨一個日誌文件,能夠看到整個系統的全部info級別以上的日誌記錄。且該配置不受A,B,C,D,E其餘配置的任何影響。
2)記錄全部的error級別的日誌,也就是不記錄debug,info,warn級別日誌,單獨一個日誌文件,能夠看到整個系統的全部error級別日誌記錄。且該配置不受A,B,C,D,E其餘配置的任何影響html
解決方案:http://www.cppblog.com/fwxjj/archive/2012/08/16/187345.html性能