Monitoring
如何將守護程序腳本與 sensu 集成?
我有一些在無限循環中執行的守護程序腳本,如果檢測到的節點失敗,它們會執行一些操作。例如; 在 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 }