2017-11-14 4 views
1

私はSensuをアラートに使用しています。いずれかのサービスに何か問題が生じた場合は、アラートをトリガーして通知メールを送信します。sensuで通知時間を処理する

私は、業務時間外に通知時間を変更することができる文書を1つ見つけました。thisは私が参照していた文書です。私は、フィルタルールを作成しました

/etc/sensu/conf.d/filters/nine_to_fiver.json

{ 
    "filters": { 
     "nine_to_fiver": { 
     "negate": false, 
     "attributes": { 
      "timestamp": "eval: [1,2,3,4,5].include?(Time.at(value).wday) && Time.at(value).hour.between?(9,17)" 
     } 
    } 
    } 
} 

この変更を行った後、私はクライアント側でsensuのクライアントデーモンを再ロードが、私はまだメールIDの通知を取得しています。フィルタルールに問題はありますか?または私は何かが欠けている?

ご協力いただければ幸いです。

答えて

1

フィルタは、SensuクライアントではなくSensu Serverに適用する必要があります。さらに、フィルターはサーバー側に存在し、handler must be configuredはフィルターを適用する必要があります。

また、whenフィルタフィールドで少し気になるかもしれません。

+0

ありがとうございます。私は本当にあなたの助けに感謝します。 「いつ」のフィルタフィールドもサーバ側で設定されるはずですか? – Rahul

+1

"when"属性は、どのフィルタJSON設定にも存在することができるので、最初に示した '/ etc/sensu/conf.d/filters/nine_to_fiver.json'の中にあります(そう、はい、サーバ側も同様です)。私はそれを試していないが、排他的な(マッチしたイベントは処理されない)フィルタを想像しています。フィルタロジックとしては 'eval:true'、9〜5では" when "ブロックが_might_workです。あなたのフィルタはSensuのドキュメントから直接9から5へのフィルタリング方法についてのものです。だから私はそれに固執します。 – vase

+0

ちょうど1つの質問ですが、[sudue](https://sensuapp.org/docs/1.0/reference/checks.html#subdue-attributes)は、この場合、それぞれのチェックに役立ちます。もしそうなら、どこで設定することができますか? – Rahul

関連する問題