国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

log4j 詳解異步日志的配置和測試

2019-11-26 13:12:43
字體:
來源:轉載
供稿:網友

 log4j 詳解異步日志的配置和測試

日志可以幫助我們分析故障原因,做些數據挖掘的工作。最簡單的日志方法,就是自己寫個寫文件的方法,在需要打日志的時候調用下,但是這顯然不可能在實際工程上用。還有個問題,就是頻繁地打日志,會增加磁盤I/O,使得系統性能下降。這里用log4j這個庫來部署一個含有日志管理的輕量級的系統,主要支持日志的異步寫和等級分類的功能,完成最低限度的日志需求。

首先,我們建立一個Maven工程,并且在pom.xml文件里面引入log4j的依賴:

<dependency>   <groupId>org.slf4j</groupId>   <artifactId>slf4j-log4j12</artifactId>   <version>1.7.2</version> </dependency> 

接著,我們在src/main/resources路徑下面創建一個配置文件:log4j.xml


其實xml配置文件的內容是至關重要的,里面必須定義日志的等級、是否異步等屬性。這里我通過截圖來簡單說明幾個關鍵點。完整的配置文件會隨這篇博客一起上傳。


這里關于日志等級需要多解釋一下,這里的日志等級默認是debug:

所以如果不像上圖中利用日志過濾器來定義日志等級,那么最后ERROR日志的會寫到INFO日志的文件里,導致日志管理混亂。所以需要來設置這個日志等級的問題。


這張圖需要解釋的不多,主要是異步日志的配置。

那么到這里,日志的配置基本就好了。而想要在程序里面引用直接就寫成:

然后調用log.info,log.error等方法就可以寫日志了。注意我們設了2KB的大小,因此日志會累計到2KB再去寫。所以并不是實時的,但這樣可以減少頻繁的磁盤I/O,在壓測的時候可以避免由于I/O所帶來的CPU的損耗。

接著我們寫一段簡單的測試程序來驗證我們的配置是否正確。


這段代碼的功能很簡單:迭代計數到10W,然后將10的倍數寫到error日志里,非10的倍數寫到info日志里面。運行該程序,就會在相應的文件里打印出響應的結果。具體的日志結果如下圖:


需要注意的是,當天的日志不會馬上加上日期,隔了一天后會顯示日期(如何馬上顯示當天的日期,樓主還沒搞定)。info和error日志中的內容如下:


可見,通過我們之前之前的配置,我們可以按照我們的意思來正確地打印日志。ok,就先寫到這里。

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 灵台县| 铜梁县| 大埔区| 连山| 江西省| 旺苍县| 吉林市| 龙江县| 华安县| 商都县| 沧州市| 贡山| 云浮市| 福泉市| 铜山县| 土默特右旗| 郴州市| 城步| 满洲里市| 扶绥县| 会理县| 岳普湖县| 简阳市| 弥勒县| 佛学| 丘北县| 宾川县| 英山县| 镇平县| 社会| 嘉鱼县| 江永县| 九江市| 博湖县| 平顶山市| 富宁县| 绥中县| 华池县| 五峰| 津南区| 惠东县|