淘寶開源其系統監控工具Tsar

pythontab發表於2013-04-16

淘寶在開發社群的貢獻可謂功不可沒,近日又將其系統監控工具Tsar程式碼上傳至GitHub。據@淘叔度介紹,Tsar在淘寶內部已經被大量使用,它不僅可以監控CPU、IO、記憶體、TCP等系統狀態,也可監控Apache、Nginx/Tengine、Squid等伺服器狀態。

淘寶開源其系統監控工具Tsar

Tsar(Taobao System Activity Reporter)可將收集到的資料儲存在磁碟上,另外可以支援將資料儲存到MySQL中,也可將資料傳送到Nagios報警伺服器。在展示資料層面,可以指定模組,並且支援對多條資訊的資料進行Merge輸出,如果帶--live引數,還可以輸出秒級的實時資訊。

從架構上來看,Tsar基於模組化設計,原始碼上來看主要包含兩部分:框架和模組。框架原始碼主要存放在src目錄,模組原始碼主要在modules目錄中。框架提供對配置檔案的解析、模組的載入、命令列引數的解析、應用模組的介面對模組原始資料的解析與輸出。

Tsar的執行流程圖如下:

淘寶開源其系統監控工具Tsar

主要執行流程:

解析輸入

讀取配置檔案資訊

載入相應模組

Tsar的三種模式(print、live和cron)執行

釋放資源

本次開源訊息公佈後,受到了社群開發者的歡迎:

TriChaos:喜歡沒有浮華的字元介面,像和沒有廢話的人對話。

_Yuen:程式碼少邏輯清晰模組化又好,不得不說是一個好工具的典範。

淘木名:事後線上問題分析必備利器。

淘叔度:目前只支援C語言開發的外掛。不過寫個模組非常簡單。

得益於淘寶開源

淘寶開源平臺於2010年6月上線,至今,該平臺已經發布了若干開源專案,其中不乏來自於淘寶之外的專案在此落戶。目前註冊會員數13002人,收錄專案已達到2875個。目前,該平臺關注度最高的5個專案分別是tfs、tair、webx、OceanBase、athrun。


相關文章