NewRelicで下記手順の設定をTerraformで行いSlack通知のテストを行いました。
しかし、1回目の通知は上手くいったものの、2回目以降の通知が来ず困ったので、その際の解決方法をメモ書き残します。
やっていたこと
1:「alert & AI」--> 「alert condition」でアラート設定をおこなう
2:「Channel 」--> 「new notification channel」--> 「URL」にSlackのweb hook urlを設定
3:「Channel 」--> 「2.で作ったchannel name」--> 「Alert policies」-->「Add alert policies」で1.のPolicyと、2.で作ったchannelを紐づける
4: 意図的にシステムでエラーをおこなし、「alert & AI」--> 「alert condition」--> 「対象の
解決方法
方法1
incidentをclosedにしないと次の通知がこないようなので、closedになるまで待つ。
closedになるまでの時間は下記で設定できる。
「alert & AI」--> 「alert condition」--> 「<対象ポリシー>」--> 「<対象インシデント>」-->「Additional settings」--> 「Close open violations after」( ※現状最低値は5分)
方法2
方法1でも上手くいかない場合は下記の設定をすれば通知が来るようになるかもしれない。
「alert & AI」--> 「alert condition」--> 「Issue Creation Preference」をクリックして、「 One issue per incident」または、「One issue per condition」に設定する。(デフォルトは「One issue per policy」)
One issue per incident --> インシデント単位で通知を出す
One issue per condition --> コンディション単位で通知を出す
方法3
方法2でも通知がこない場合は、critical violationsを2回発生させる(アラートの閾値を2回超える)と通知が来たりする。
なぜそうなるのかは不明。。