web-dev-qa-db-ja.com

Sensuは180回の発生のみを処理します

最新のsensu-coreがインストールされていて、omnibusパッケージを使用してsensu-plugin gemをインストールしました。

Sensuは問題なく稼働していますが、ハンドラーに関する大きな問題に直面しています。コミュニティプラグインの標準のRuby mailer.rbと、pagerdutyハンドラーの両方をセットアップしました。

ログで失敗していることがわかっているチェックにハンドラーを追加すると、次のように表示されます。

{\"id\":\"a1e807d2-425f-4891-b291-ed5bda5b6105\",\"client\":{\"name\":\"mfp\",\"address\":\"25.147.26.157\",\"subscriptions\":[\"test\"],\"version\":\"0.20.0\",\"timestamp\":1437673191},\"check\":{\"command\":\"/etc/sensu/plugins/check-disk.sh -d /dev/md1 -w 80 -c 90\",\"interval\":10,\"handlers\":[\"default\",\"pagerduty\",\"mailer\"],\"occurrences\":3,\"subscribers\":[\"test\"],\"name\":\"disk\",\"issued\":1437673279,\"executed\":1437673201,\"duration\":0.01,\"output\":\"CRITICAL - /dev/md1 space used=94% | '/dev/md1 usage'=94%;80;90;\\n\",\"status\":2,\"history\":[\"2\",\"2\",\"2\",\"2\",\"2\",\"2\",\"2\",\"2\",\"2\",\"2\",\"2\",\"2\",\"2\",\"2\",\"2\",\"2\",\"2\",\"2\",\"2\",\"2\",\"2\"],\"total_state_change\":0},\"occurrences\":513,\"action\":\"create\"}"]}
{"timestamp":"2015-07-23T12:41:20.873279-0500","level":"info","message":"handler output","handler":{"type":"pipe","command":"/etc/sensu/handlers/pagerduty.rb","api_key":"2e24c101ef754ff6add39aaaffa846c9","name":"pagerduty"},"output":["only handling every 180 occurrences: ws/disk\n"]}
{"timestamp":"2015-07-23T12:41:20.873561-0500","level":"info","message":"handler output","handler":{"type":"pipe","command":"/etc/sensu/handlers/pagerduty.rb","api_key":"2e24c101ef754ff6add39aaaffa846c9","name":"pagerduty"},"output":["only handling every 180 occurrences: wwv/disk\n"]}
{"timestamp":"2015-07-23T12:41:21.055407-0500","level":"info","message":"handler output","handler":{"type":"pipe","command":"/etc/sensu/handlers/pagerduty.rb","api_key":"2e24c101ef754ff6add39aaaffa846c9","name":"pagerduty"},"output":["only handling every 180 occurrences: mfp/disk\n"]}

つまり、ハンドラーは起動していますが、sensu-handler.rb gemによってフィルターされており、電子メールやpagerdutyイベントは作成されていません。

これが問題の行です

only handling every 180 occurrences

誰が問題が何であるか知っていますか?これはバグですか?何かをオーバーライドする必要がありますか?私はこの特定のチェック(check_disk)のためにsensuで大量のオカレンスを持っているので、それはpagerdutyとメーラーに発火しているはずです。

7
nulltek

これはsensu-pluginのバグであり、必ずしもバグではなく、ドキュメントの不足です。問題はconfig.jsonにあり、APIブロックのホスト宣言を指定する必要があります。sensu-pluginはこれを必要とします。そうでない場合、これらのフィルタリングの問題が発生します。

  "api": {
    "Host": "localhost",
    "port": 4567
  }
1
nulltek

私はスラックハンドラーを統合しようとして同じ問題に直面しました。ハンドラー構成ファイルにrefreshパラメーターを追加する必要があります。例えば ​​:

{
  "checks": {
    "memory": {
      "command": "/etc/sensu/plugins/check-memory.sh -w 700 -c 64",
      "interval": 10,
      "subscribers": [
        "test"
      ],
      "handlers": [
        "slack",
        "default"
      ],
      "occurrences": 5,
      "refresh": 60
    }
  }
}

このチュートリアルで見つかった解決策: http://www.whiteboardcoder.com/2014/11/getting-sensu-to-talk-to-hipchat.html

5
user2563869