インシデント集約¶
インシデント集約は、同一ルールを満たし、かつ同一の集約キー値を持つイベントを1つのインシデントにまとめることで、同種のイベントが集中して発生した際の重複インシデントを削減します。ルールの作成・管理は、インシデントセンター > 設定管理 > 集約ルール で行えます。
各ルールで使用できる集約方式は、時間ウィンドウによるイベント集約 または モニター連携インシデント のいずれか1つのみです。この2つの方式が同時に実行されることはありません。1つのワークスペースに複数のルールを設定でき、同一イベントが有効な複数のルールに該当する場合、それぞれのルールで集約処理が行われます。
集約ルールの設定¶
- インシデントセンター > 設定管理 > 集約ルール に移動し、集約ルールを作成 をクリックします。
- ルール名を入力し、インシデント集約方式を選択します。
- イベントフィルター条件と集約キーを設定します。
- 選択した方式に応じて、時間ウィンドウまたはモニター連携の設定を追加します。
- インシデントレベルの生成ポリシーとインシデント内容の表示ルールを設定します。
- ルールを保存し、有効化します。
ルールを無効化すると、以降のイベントはそのルールで処理されなくなります。ただし、既に生成されたインシデントやその関連イベントが削除されたり、再計算されたりすることはありません。
集約方式の選択¶
| 集約方式 | 適用シナリオ | 処理方法 |
|---|---|---|
| 時間ウィンドウによるイベント集約 | ワークスペース内の転送イベントに対応するモニターがない場合や、ワークスペースイベントから直接インシデントを生成する必要がある場合 | 各時間ウィンドウ終了後、現在のワークスペース内でフィルター条件を満たすイベントをクエリし、集約キーでグループ化 |
| モニター連携インシデント | 「インシデントに連携」が有効なモニターを使用して、リアルタイムにインシデントを生成する場合 | モニターがイベントを生成する際のリアルタイム処理パイプラインをそのまま使用し、時間ウィンドウクエリは実行しない |
時間ウィンドウによるイベント集約¶
- 時間ウィンドウは必須項目です。
1、5、10、15、30、60分から選択できます。 - システムは自然な分単位の境界でウィンドウを処理します。例:5分ウィンドウの場合、
[10:00, 10:05)、[10:05, 10:10)。 - 現在のワークスペース内で、ウィンドウ内に該当し、かつフィルター条件を満たすイベントのみを処理します。他のワークスペースから転送され、現在のワークスペースでクエリ可能なイベントも含みます。
- レベルマッピング を1つ選択する必要があります。レベルマッピングに一致しないイベントは集約対象となりません。
- 後続のウィンドウで同じ集約IDが出現した場合、同一のアクティブインシデントが更新されます。元のインシデントが既に復旧またはクローズされている場合は、新しいインシデントが作成されます。
モニター連携インシデント¶
- インシデントに連携 が有効なモニターによって生成されたイベントのみを処理します。
- 時間ウィンドウの設定は表示も保存もされません。
- モニターでは、カスタムマッピング または 既存のマッピングルールを選択 を選択できます。既存のモニターと新規作成のモニターは、デフォルトでカスタムマッピングを使用します。既存のマッピング関係は維持されます。
- 既存のマッピングルールを選択する場合、レベルマッピングを1つ選択する必要があります。マッピングに一致しないイベントはインシデント集約の対象となりません。
イベント範囲の設定¶
イベントが集約の対象となるためには、ルールのフィルター条件を満たす必要があります。フィルター条件はイベントのフィルタリング機能を再利用し、イベントフィールドに基づいて絞り込みが可能です。例えば、service:trade-api AND env:prod を使用すると、本番環境の trade-api サービスのイベントに範囲を限定できます。
ルールの変更は、変更後に処理パイプラインに入るイベントと後続のウィンドウにのみ影響します。過去のイベント、既に生成されたインシデント、または過去の関連付け関係が再計算されることはありません。
集約キーの設定¶
集約キーは、どのイベントを同じインシデントにまとめるかを決定します。システムは「ルール + 設定された順序の集約キーとその値」に基づいて、同一のイベントグループを識別します。
- 各ルールには、最低1つ、最大3つの集約キーを設定できます。
- イベントフィールドから検索し、
df_workspace_name、host、serviceなどのトップレベルフィールドを選択できます。 df_dimension_tags.host、df_workspace_declaration.CODEなどのセカンダリフィールドパスを手動で入力することも可能です。入力後は完全なパスで保存・表示されます。- いずれかの集約キーが存在しない、空 (
nullを含む) の場合、そのイベントは現在のルールの対象外となります。 - 安定しており、インシデントの対象を適切に表すことができるフィールドを選択することを推奨します。タイムスタンプやリクエストIDなどの高基数フィールドは、多数の独立したインシデントを生成する可能性があります。
- 同一ルール内でキー名と値が両方とも一致するイベントは、同一のアクティブインシデントにまとめられます。異なるルールで同じキーと値が使用されていても、それぞれ別のインシデントが生成されます。
レベルマッピングの設定¶
レベルマッピングは、イベントレベルをインシデントレベルに変換するために使用され、時間ウィンドウ集約ルールとモニター連携インシデントの両方で再利用可能です。まず インシデントセンター > 設定管理 > レベルマッピング でマッピングを作成し、その後でルールやモニターに戻って選択してください。
- 1つのイベントレベルは1つのインシデントレベルにのみマッピングでき、かつ少なくとも1つのマッピング関係を設定する必要があります。
- 作成後すぐに使用可能です。変更は後続のイベントと後続のウィンドウにのみ影響し、既に生成されたインシデントには影響しません。
- 集約ルールやモニターから参照されているマッピングは削除できません。最初に全ての参照を解除する必要があります。
- レベルマッピング自体には、有効/無効の状態はありません。
設定の詳細については、レベルマッピング を参照してください。
インシデントレベル生成ポリシーの設定¶
| ポリシー | 説明 |
|---|---|
| レベル固定 | このルールに固定のインシデントレベルを選択します。このルールによって生成される全てのインシデントは、このレベルを使用します。 |
| 過去の最高レベル | インシデントレベルは、現在のライフサイクル内で発生した最高レベルを維持します。後続のより低いレベルのイベントによって低下することはありません。 |
| リアルタイム変動 | インシデントレベルは、最新の関連イベントのレベルに応じてリアルタイムに更新されます。 |
| 初回トリガーレベル | インシデント作成時には、最初にトリガーとなったイベントのレベルが使用されます。後続のイベントによってインシデントレベルが変更されることはありません。 |
| 関連イベントの最高レベル | 関連イベントの最高レベルを使用してインシデントレベルを決定します。デフォルトのインシデントレベルを使用する場合、P0 > P1 > P2 > P3 の順で計算されます。カスタムインシデントレベルを使用する場合、初回トリガーレベルとして処理されます。 |
インシデント内容表示ルールの設定¶
| ルール | 説明 |
|---|---|
| 最新イベントの内容に従う | 最新の関連イベントのタイトルと説明を使用して、インシデントの内容を更新します。 |
| 初回トリガーイベントの内容に従う | 初回トリガーイベントのタイトルと説明を常に保持します。 |
| カスタム | 設定されたインシデントのタイトルと説明テンプレートを使用して内容を生成します。テンプレートでは、集約キーやイベントフィールドを参照できます。 |
カスタムルールにおいて、インシデントタイトルが未入力の場合、システムは初回トリガーイベントのタイトルを使用します。
集約インシデントの表示¶
集約ルールによって生成されたインシデントは、集約インシデント とマークされます。インシデント一覧で、インシデントタイプでフィルタリングして確認できます。インシデント詳細の関連イベントは、実際に集約が行われた時点の関係に基づくため、後でルールのフィルター条件や集約キーを変更しても、既に生成されたインシデントの過去の関連イベントは変更されません。
インシデント通知、Webhook、およびサードパーティ ITSM へのプッシュは、既存のフローに従います。集約インシデントの関連イベントに変更が発生した場合、Webhook で 集約変更 イベントがチェックされていれば、システムは最新のインシデントと関連イベントのスナップショットをプッシュします。