作為一名Java程式設計師,我們開發了很多Java應用程式,包括桌面應用、WEB應用以及移動應用。然而日誌系統是一個成熟Java應用所必不可少的,在開發和調試階段,日誌可以幫助我們更好更快地定位bug;在運行維護階段,日誌系統又可以幫我們記錄大部分的異常信息,從而幫助我們更好的完善系統。本文要來分享一些Java程式設計師最常用的Java日誌框架組件。
1、Log4j – 最受歡迎的Java日誌組件
Log4j是一款基於Java的開源日誌組件,Log4j功能非常強大,我們可以將日誌信息輸出到控制臺、文件、用戶界面,也可以輸出到作業系統的事件記錄器和一些系統常駐進程。更值得一提的是,Log4j可以允許你非常便捷地自定義日誌格式和日誌等級,可以幫助開發人員全方位地掌控日誌信息。
官方網站:http://logging.apache.org/log4j/2.x/
下面是使用Log4j的一個簡單例子:
package com.mai.test;import org.apache.log4j.Logger;import org.apache.log4j.PropertyConfigurator;public class Log4jTest {public static void main(String[] args) {Logger log = Logger.getLogger(Log4jTest.class);PropertyConfigurator.configure("src/log4j.properties");log.debug("yes,debug");log.info("yes,info");log.error("yes,error");log.warn("yes,warn");}}
2、gclogviewer – Java日誌查看工具
gclogviewer是一個支持jdk 6的gc log可視化工具,和gcviewer相比,gclogviewer支持根據gc log生成GC的趨勢圖,也支持生成調優建議所需的數據趨勢圖。
官方網站:http://code.google.com/p/gclogviewer/
3、SLF4J – 基於API的Java日誌框架
SLF4J提供了一個簡單統一的日誌記錄接口,開發者在配置和部署時只需要實現這個接口即可實現日誌功能。 Logging API實現既可以選擇直接實現SLF4J接的loging APIs如: NLOG4J、SimpleLogger。也可以通過SLF4J提供的API實現來開發相應的適配器如Log4jLoggerAdapter、JDK14LoggerAdapter。
官方網站:http://www.slf4j.org/
4、Flume – Apache日誌伺服器
之前介紹的都是一些日誌記錄工具,Flume則是一個日誌分析系統,Flume是分布式的,它有一個非常靈活的架構,用來收集、聚合以及移動大量日誌數據,並且提供可靠、容錯的系統架構。
官方網站:http://flume.apache.org/
5、zLogFabric – 日誌存儲系統
zLogFabric 是一個集成的跨平臺日誌解決方案,通過消息系統收集各個應用的日誌信息存儲到一個集中式的系統中。模塊化的設計使得伺服器可對日誌進行存儲、轉發、警報以及生成日誌統計信息。
zLogFabric 可收集來自文件、syslog、log4j、log4net 以及 Windows 事件的數據。
官方網站:http://www.zlogfabric.com/
6、logstash – Java日誌管理工具
logstash是一款功能非常強大的日誌管理工具,利用logstash,你可以對日誌進行傳輸、處理、管理和檢索,並且提供Web接口以便開發者統計和查詢日誌信息。
官方網站:http://www.logstash.net/
7、Commons Logging
Commons Logging的實現不依賴於具體的日誌實現工具,僅僅提供一些日誌操作的抽象接口,它對其他的日誌工具做了封裝,比如Log4J, Avalon LogKit, 和JDK 1.4等。
官方網站:http://commons.apache.org/proper/commons-logging/
8、Darks Logs
Darks Logs和log4j類似,也適用於Java、Android等項目,但是Darks Logs使用更加簡單,而且對Android端做了非常大的改善。Darks Logs對Sqlite的日誌保存增加了Appender。其旨在解決Android日誌無法靈活控制日誌等級、格式、保存或顯示目標等常用操作等的問題。
官方網站:
https://github.com/liulhdarks/darks-logs
來自:碼農網
連結:http://www.codeceo.com/article/8-java-log-framework.html
——————————————————
●本文編號412,以後想閱讀這篇文章直接輸入412即可。
●本文分類「Java」,搜索分類名可以獲得相關文章。
●輸入m可以獲取到全部文章目錄
●輸入r可以獲取到熱門文章推薦
●輸入f可以獲取到全部分類名稱
—————————————————
小猿個人微信:itcodemonkey 歡迎調戲
推薦一個微信公眾號:IT電商網,長按下面的微信號可以進行複製
itdianshang
點擊「閱讀原文」可關注