大眾美團服務鏈監控CAT
阿新 • • 發佈:2018-11-09
github連結:https://github.com/dianping/cat
CAT 作為服務端專案基礎元件,提供了 Java, C/C++, Node.js, Python, Go 等多語言客戶端,已經在美團點評的基礎架構中介軟體框架(MVC框架,RPC框架,資料庫框架,快取框架等,訊息佇列,配置系統等)深度整合,為美團點評各業務線提供系統豐富的效能指標、健康狀況、實時告警等。
CAT 簡介
- CAT 是基於 Java 開發的實時應用監控平臺,為美團點評提供了全面的實時監控告警服務。
- CAT 作為服務端專案基礎元件,提供了 Java, C/C++, Node.js, Python, Go 等多語言客戶端,已經在美團點評的基礎架構中介軟體框架(MVC框架,RPC框架,資料庫框架,快取框架等,訊息佇列,配置系統等)深度整合,為美團點評各業務線提供系統豐富的效能指標、健康狀況、實時告警等。
- CAT 很大的優勢是它是一個實時系統,CAT 大部分系統是分鐘級統計,但是從資料生成到服務端處理結束是秒級別,秒級定義是48分鐘40秒,基本上看到48分鐘38秒資料,整體報表的統計粒度是分鐘級;第二個優勢,監控資料是全量統計,客戶端預計算;鏈路資料是取樣計算。
Cat 產品價值
- 減少故障發現時間
- 降低故障定位成本
- 輔助應用程式優化
Cat 優勢
- 實時處理:資訊的價值會隨時間銳減,尤其是事故處理過程中
- 全量資料:全量採集指標資料,便於深度分析故障案例
- 高可用:故障的還原與問題定位,需要高可用監控來支撐
- 故障容忍:故障不影響業務正常運轉、對業務透明
- 高吞吐:海量監控資料的收集,需要高吞吐能力做保證
- 可擴充套件:支援分散式、跨 IDC 部署,橫向擴充套件的監控系統
更新日誌
監控模型:
支援 Transaction、Event、Heartbeat、Metric 四種訊息模型。 模型設計
模組簡介
功能模組
- cat-client: 客戶端,上報監控資料
- cat-consumer: 服務端,收集監控資料進行統計分析,構建豐富的統計報表
- cat-alarm: 實時告警,提供報表指標的監控告警
- cat-hadoop: 資料儲存,logview 儲存至 Hdfs
- cat-home: 管理端,報表展示、配置管理等
- 根目錄下 cat-client 模組以後不再維護,下個大版本更新計劃移除。新版Java客戶端參考:lib/java
- 管理端、服務端、告警服務均使用 cat-home 模組部署即可
其他模組
- cat-doc:服務端報表使用文件
- integration:cat和一些第三方工具整合的內容(此部分一部分是由社群貢獻,一部分官方貢獻)
- lib:CAT 的客戶端,包括 Java、C/C++、Python、Node.js、Go
- script:CAT 資料庫指令碼
Quick Start
服務端
專案設計
Copyright and License
CAT 接入公司
更多接入公司,歡迎在 https://github.com/dianping/cat/issues/753 登記