Monitoring

如何將守護程序腳本與 sensu 集成?

  • September 1, 2015

我有一些在無限循環中執行的守護程序腳本,如果檢測到的節點失敗,它們會執行一些操作。例如; 在 AWS 中移動彈性 IP。

如何集成這個在無限循環中執行的腳本以向 sensu 推送警報?關於檢查的傳統 Sensu 文件不適用(此腳本永遠執行)。我需要一種將自定義事件直接發送到 sensu 的方法。我認為 API 可能是它,但似乎我無法推送事件。

Sensu 在此處提供有關如何執行此操作的文件:https ://sensuapp.org/docs/latest/clients#client-socket-input

基本上,每個 sensu 客戶端(client.json)都有一個內部套接字,您可以將外部數據發送到該套接字;預設情況下,此套接字僅偵聽,127.0.0.1:3030因此必須調整客戶端的配置:

{
 "client": {
   "name": "my.host",
   "address": "x.x.x.x",
   "subscriptions": [
     "all"
   ],
   "socket": {
     "bind": "0.0.0.0",
     "port": 3030
   }
 }
}

然後,外部腳本需要使用以下格式通過 TCP 或 UDP 以 JSON 格式將數據發送到該客戶端套接字:

{
 "name": "some_name",
 "output": "ITS DOWN OH NO!",
 "status": 2
}

引用自:https://unix.stackexchange.com/questions/226665