來自大眾點評的實時應用監控平臺:CAT
CAT 由大眾點評開發的,基于 Java 的實時應用監控平臺,包括實時應用監控,業務監控。
CAT 支持的監控消息類型包括:
-
Transaction 適合記錄跨越系統邊界的程序訪問行為,比如遠程調用,數據庫調用,也適合執行時間較長的業務邏輯監控,Transaction用來記錄一段代碼的執行時間和次數。
-
Event 用來記錄一件事發生的次數,比如記錄系統異常,它和transaction相比缺少了時間的統計,開銷比transaction要小。
-
Heartbeat 表示程序內定期產生的統計信息, 如CPU%, MEM%, 連接池狀態, 系統負載等。
-
Metric 用于記錄業務指標、指標可能包含對一個指標記錄次數、記錄平均值、記錄總和,業務指標最低統計粒度為1分鐘。
-
Trace 用于記錄基本的trace信息,類似于log4j的info信息,這些信息僅用于查看一些相關信息
消息樹
CAT監控系統將每次URL、Service的請求內部執行情況都封裝為一個完整的消息樹、消息樹可能包括Transaction、Event、Heartbeat、Metric和Trace信息。
完整的消息樹
可視化消息樹
分布式消息樹【一臺機器調用另外一臺機器】
要求
-
Java 6
-
Maven 3
-
MySQL
快速上手
1、在CAT目錄下,用maven構建項目
mvn clean install -DskipTests
2、配置CAT的環境
mvn cat:install
Note:
-
Linux\Mac 需要對/data/appdatas/cat和/data/applogs/cat有讀寫權限
-
Windows 則是對系統運行盤下的/data/appdatas/cat和/data/applogs/cat有讀寫權限
3、(Optional)如果安裝了hadoop集群,需到/data/appdatas/cat/server.xml中配置對應hadoop信息。將localmode設置為false,默認情況下,CAT在開發模式(localmode=true)下工作。
4、運行CAT
cd cat-home;mvn jetty:run
然后打開瀏覽器,輸入http://localhost:2281/cat/。
或者在cat目錄下輸入 mvn eclipse:clean eclipse:eclipse 然后將項目導入到eclipse中,運行cat-home項目里得‘com.dianping.cat.TestServer’來啟動CAT。