アラート管理システムは、ルートおよびマージポリシーで指定された条件に一致するアラートの通知を送信します。
ルートとマージポリシー
[ルートとマージポリシー] タブで、アラートのマージ設定を構成できます。 関連するパラメーターは、Merge by、Action Policy、Group Wait、Group Interval、Repeat Intervalです。 アラートは、ルートポリシーとマージポリシー間で設定されたパラメーターの値が同じ場合にのみ、1つのマージセットにマージされます。
たとえば、サービスがホスト 1 とホスト 2 にデプロイされている場合を考えます。 ホスト1とホスト2は、それぞれ20:00と20:01から1分間隔で高CPUアラートをトリガーします。 この場合、サービス名に基づいてルートとマージポリシーを作成し、アラートをマージできます。 最初のアラートと新しいアラートのアラート通知が送信された後、マージセット内の重複アラートのアラート通知は遅延されます。
次の条件で統合:
アラート属性とラベルに基づいてマージ条件を指定し、アラートをマージできます。 組み込みのマージ条件を使用するか、カスタムマージ条件を指定できます。
マージ条件タイプ | 説明 |
組み込み | Simple Log Serviceは、次の組み込みマージ条件を提供します。
|
Custom | アラート属性とラベルに基づいてカスタムマージ条件を指定して、アラートをマージできます。
|
一致ポリシー
アクションポリシーは、Simple Log Serviceがアラート通知を送信する方法を定義します。 ルートとマージポリシーまたはアラートルールを作成するときに、アクションポリシーを関連付けることができます。 アクションポリシーを動的アクションポリシーに設定した場合、アラートルールの作成時に指定したアクションポリシーが使用されます。 アクションポリシーを特定のアクションポリシーに設定した場合、指定されたアクションポリシーが使用されます。
グループ待機、グループ間隔、および繰り返し間隔
シナリオ1: グループ待機で指定された期間にアラートAのみが生成されます。
このシナリオでは、グループ待機は5秒に設定され、グループ間隔は1分に設定され、繰り返し間隔は4時間に設定されます。 次の図では、アラートAはオレンジ色で表され、アラートBは青色で表されます。
アラートAは00:00:00に生成され、同時にマージセットが作成されます。 ただし、Group Waitに値が指定されているため、アラート通知はすぐには送信されません。
00:00:05にGroup Waitの値に達すると、Simple Log Serviceは最初のアラート通知を送信します。
最初のアラート通知が送信された後、システムはグループ間隔の値に基づいてマージセット内のデータを定期的にチェックします。 アラートBが生成され、グループ間隔の最初の期間中にマージセットに追加されます。 そのため、Simple Log Serviceは2番目のアラート通知を00:01:05に送信します。
次に、システムは、グループ間隔の値に基づいてマージセット内のデータをチェックし続ける。 アラートAとアラートBのみがマージセットに存在します。 04:01:05に繰り返し間隔の値に達すると、2番目の通知が送信された後にマージセットにデータが変更されないため、Simple Log Serviceは3番目のアラート通知を送信します。
シナリオ2: グループ待機で指定された期間にアラートAとアラートBが生成されます。
このシナリオでは、グループ待機は5秒に設定され、グループ間隔は1分に設定され、繰り返し間隔は4時間に設定されます。 次の図では、アラートAはオレンジ色で表され、アラートBは青色で表されます。
アラートAとアラートBは00:00:00から00:00:05の時間範囲で生成され、同じ時間範囲内でマージセットが作成されます。 ただし、Group Waitに値が指定されているため、アラート通知はすぐには送信されません。
00:00:05にGroup Waitの値に達すると、Simple Log Serviceは最初のアラート通知を送信します。
最初のアラート通知が送信された後、システムはグループ間隔の値に基づいてマージセット内のデータを定期的にチェックします。 システムは、00:00:05から04:01:05までマージセットにアラートAとアラートBのみが存在することを確認します。 04:01:05に繰り返し間隔の値に達すると、最初の通知が送信された後にマージセットにデータが変更されないため、Simple Log Serviceは2番目のアラート通知を送信します。
パラメーター | 説明 |
グループ待機時間 | マージセットが作成されたときにSimple Log Serviceがアラート通知を送信する間隔。 単位は [秒] に設定することを推奨します。 |
グループ間隔 | マージセット内のデータが変更されたときにSimple Log Serviceがアラート通知を送信する間隔。 新しいアラートがマージセットに追加された場合、またはアラートのステータスが変更された場合、システムはマージセット内のデータが変更されたと見なします。 単位は [分] に設定することを推奨します。 単位を [秒] に設定して、できるだけ早い機会にアラート通知を受信することもできます。 |
繰り返し間隔 | マージセット内のデータが変更されない場合に、Simple Log Serviceがアラート通知を送信する間隔。 マージセットにアラートが追加されない場合、またはアラートステータスが変更されない場合、システムはマージセットのデータは変更されていないと見なします。 単位は [時間] に設定することを推奨します。 説明 アラートルールを作成するときにアクションポリシーを動的アクションポリシーに設定した場合、関連付けられたアラートポリシーで繰り返し間隔を設定する必要はありません。 デフォルトでは、システムはアラートルールで指定された繰り返し間隔を使用して、ルートおよびマージポリシーで指定された繰り返し間隔を上書きします。 |
例
アラートルールを作成するときに、アラートをマージするかマージしないようにアラートポリシーを設定できます。
シナリオ1: アラートのマージ
アラートルールが属するプロジェクト、envラベル、およびサービスラベルに基づいてアラートをマージします。
アラート
// Alert A { "alert_name": "Alert1", "project": "Project1", "labels": { "env": "test", "service": "service1" } } // Alert B { "alert_name": "Alert2", "project": "Project1", "labels": { "env": "prod", "service": "service2" } } // Alert C { "alert_name": "Alert3", "project": "Project1", "labels": { "env": "test", "service": "service1" } } // Alert D { "alert_name": "Alert4", "project": "Project1", "labels": { "env": "prod", "service": "service2" } }
設定
マージ結果
アラートAとアラートCは1つのマージセットにマージされます。 アラートBとアラートDは別のマージセットにマージされます。
シナリオ2: アラートをマージしない
ルートとマージポリシーを設定するときに、[マージ] を [アラートIDとすべてのラベル] に設定した場合、同じアラートルールによってトリガーされ、同じラベルを持つアラートが1つのマージセットにマージされます。 次の例では、2つのアラートルールが使用されています。
アラートルール1では、グループ評価がカスタムラベルに設定され、アラートポリシーが [詳細モード] に設定されていません。 ルートとマージポリシーでは、[マージ] が [アラートIDとすべてのラベル] に設定されます。 この場合、アラート管理システムは、ホスト1、ホスト2、およびホスト3によってトリガーされたアラートのアラート通知を個別に送信します。
アラートルール2では、グループ評価はグループ化なしに設定され、アラートポリシーは詳細モードに設定されていません。 ルートとマージポリシーでは、[マージ] が [アラートIDとすべてのラベル] に設定されます。 この場合、アラート管理システムは、ホスト1、ホスト2、およびホスト3によってトリガーされたすべてのアラートを含むマージセットに対して1つのアラート通知を送信します。