1. 程式人生 > >大眾點評cat監控系統

大眾點評cat監控系統

點評的cat做業務監控確實不錯,聽說cat 2 快要出來了。。。。。


搭建、文件

cat github地址:https://github.com/dianping/cat 
相關文件:搭建文件 
怎麼搭建就不細說了,這裡記錄下大家cat-home 需要注意的地方

  • data/appdatas/cat 目錄是存放cat-home 配置檔案的相對地址,如果是window就是相對於專案部屬所在的磁碟
  • data/applogs/cat 目錄是存放cat-home 的log日誌

cat有個很重要的概念,就是domain,一個domain可以對應成一個project,比如cat-home打包成war 
也是一個domain, cat-home預設是服務端 也是客戶端,也就是說cat-home自身也會被監控,這就是 
為什麼cat-home /META-INF/cat目錄裡面會有clinet.xml

  • cat-home 也就是cat伺服器端是支援叢集的,如果有多個服務端那麼在client.xml就得配置多個 
    服務端的資訊
<config mode="client">
    <servers>
       <server ip="10.1.1.1" port="2280" http-port="8080"/>
       <server ip="10.1.1.2" port="2280" http-port="8080"/>
       <server ip="10.1.1.3" port="2280" http-port="8080"
/>
</servers> </config>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

-cat服務端的server.xml,如果是叢集remote-servers 就配置多個,如果用到了hdfs 就配置,需要注意的就是local-mode=”false” 如果配置成true 就不會使用資料庫了

<config local-mode="false" hdfs-machine="false" job-machine="false" alert-machine="false">
    <storage  local-base
-dir="/data/appdatas/cat/bucket/" max-hdfs-storage-time="15" local-report-storage-time="7" local-logivew-storage-time="7"> <hdfs id="logview" max-size="128M" server-uri="hdfs://10.1.77.86/user/cat" base-dir="logview"/> <hdfs id="dump" max-size="128M" server-uri="hdfs://10.1.77.86/user/cat" base-dir="dump"/> <hdfs id="remote" max-size="128M" server-uri="hdfs://10.1.77.86/user/cat" base-dir="remote"/> </storage> <console default-domain="Cat" show-cat-domain="true"> <remote-servers>10.1.1.1:8080,10.1.1.2:8080,10.1.1.3:8080</remote-servers> </console> </config>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 客戶端路由修改下,叢集和單個都需要修改成對於的ip

這裡寫圖片描述

  • 客戶端整合其實文件已經說的很詳細了,基本配置下就可以。

使用

  • 如果客戶端已經接入了,比如名字叫domain=cat,首先要新增專案,然後專案組分配 
    這裡寫圖片描述

  • 告警的介面需要我們自己去實現

-我們可以對埋點進行監控,什麼是埋點,其實就是這個

  Cat.logMetricForCount(key
  • 1

我們可以對埋的點進行指標監控,比如這個方法在一定時間內被執行多少次就直接報警啊 
這裡寫圖片描述

  • 報警級別和聯絡人設定 和報警介面 
    這裡寫圖片描述
    這裡寫圖片描述
    這裡寫圖片描述
    報警介面程式碼 我們可以重寫