検出されたノードが失敗した場合、いくつかのタスクを実行する無限ループで実行されるいくつかのデーモンスクリプトがあります。たとえば、AWS で Elastic IP を移動します。
無限ループで実行されるこのスクリプトを統合して sensu に警告をプッシュするにはどうすればよいですか?スキャンに関する従来のSensuドキュメントは適用されません(このスクリプトは永久に実行されます)。カスタムイベントをsensuに直接送信する方法が必要です。 APIがこのように思われたが、イベントをプッシュすることはできないようです。
答え1
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
}