APM メトリクス検出¶
本ドキュメントの位置づけ
本ドキュメントは、検出ルール設定フローの第2ステップです。設定完了後、メインドキュメントに戻り第3ステップ:イベント通知を続けてください。
データ範囲:トレース(T)。ワークスペース内のAPMの主要メトリクスデータを監視するために使用します。システムは、指定された期間内に条件を満たすトレース数を集計し、カスタムしきい値を超えた場合に異常イベントをトリガーします。
検出設定¶
検出頻度¶
検出を実行する時間間隔を設定します。
-
プリセットオプション:1分、5分、10分、15分、30分、1時間
-
Crontabモード:「Crontabモードに切り替える」をクリックすると、カスタム周期を設定できます。秒、分、時、日、月、週などの周期に基づいて、スケジュールされたタスクの実行を設定できます。
検出範囲¶
検出時にクエリを実行するデータの時間範囲を設定します(❗️ 検出範囲は検出頻度以上である必要があり、データの実際の報告周期と一致している必要があります。漏れや誤検出を防ぐためです)。
| 検出頻度 | 検出範囲(ドロップダウンオプション) |
|---|---|
| 30s | 1m/5m/15m/30m/1h/3h |
| 1m | 1m/5m/15m/30m/1h/3h |
| 5m | 5m/15m/30m/1h/3h |
| 15m | 15m/30m/1h/3h/6h |
| 30m | 30m/1h/3h/6h |
| 1h | 1h/3h/6h/12h/24h |
| 6h | 6h/12h/24h |
| 12h | 12h/24h |
| 24h | 24h |
- カスタム形式:
20m(直近20分)、2h(直近2時間)、1d(直近1日)のように、検出範囲を直接入力することもできます。
検出メトリクス¶
検出データのメトリクスを設定します。2つの検出モードをサポートします。
-
サービスメトリクス
-
トレース統計
注意
検出ディメンションとして、カーディナリティの高いフィールドを選択しないでください。設定が適切でない場合、トリガー条件が緩くなり、頻繁なアラートが発生する可能性があります。現在のクエリの最大返却レコード数は10万件です。
サービスメトリクス¶
現在のワークスペース内のAPMサービスを監視します。
| 設定項目 | 説明 |
|---|---|
| サービス | 現在のワークスペース内のAPMサービスを選択します。「すべて」または特定のサービスを選択できます。 |
| メトリクス | 具体的な検出メトリクス。リクエスト数、エラーリクエスト数、リクエストエラー率、平均リクエスト/秒、平均応答時間、P50応答時間、P75応答時間、P90応答時間、P99応答時間を含みます。 |
| フィルター条件 | メトリクスのタグに基づいて検出データをフィルタリングし、検出範囲を限定します。1つ以上のタグフィルターを追加でき、曖昧一致および曖昧不一致のフィルター条件をサポートします。 |
| 検出ディメンション | データ内のkeywordタイプのフィールドを検出ディメンションとして選択できます。現在、最大3つのフィールドを選択できます。複数の検出ディメンションのフィールドを組み合わせることで、特定の検出対象を特定できます(例:{service: svc1, host: host1})。 |
| 追加情報 | イベント内容を充実させるために、追加で表示するフィールド情報を選択します。 |
トレース統計¶
指定された時間内に条件を満たすトレース(スパン)の数を集計します。カスタムしきい値を超えた場合に異常イベントをトリガーし、サービスラインの異常エラーの通知に使用できます。
| 設定項目 | 説明 |
|---|---|
| ソース | 集計するトレースデータのソース(サービス)を選択します。キーワードによるフィルタリングをサポートします。 |
| フィルター条件 | タグを使用してトレースspanをフィルタリングし、検出のデータ範囲を限定します。1つ以上のタグフィルター条件を追加できます。 |
| 集計アルゴリズム | デフォルトでは"*"が選択され、対応する集計関数はcount(スパン数の集計)です。他のフィールドを選択すると、集計関数は自動的にcount distinct(キーワードが出現するデータポイント数をカウント、つまり重複排除集計)に変わります。 |
| 検出ディメンション | データ内のkeywordタイプのフィールドを検出ディメンションとして選択できます。現在、最大3つのフィールドを選択できます。複数の検出ディメンションのフィールドを組み合わせることで、特定の検出対象を特定できます。 |
トリガー条件¶
トリガー条件と重大度を設定します。クエリ結果が複数の値である場合、いずれかの値がトリガー条件を満たすとイベントが生成されます。
クリティカル、メジャー、ワーニング、インフォメーションの4段階のしきい値と、正常回復条件を設定できます。
| レベル | 設定 | 説明 |
|---|---|---|
| クリティカル | Result >= [値] の場合 |
最高レベルのアラート。即時対応が必要です。 |
| メジャー | Result >= [値] の場合 |
高レベルのアラート。優先的な対応が必要です。 |
| ワーニング | Result >= [値] の場合 |
中レベルのアラート。注意が必要です。 |
| インフォメーション | Result >= [値] の場合 |
低レベルのアラート。留意が必要です。 |
| 正常 | [N] 回の検出でイベントが発生しない場合 |
検出メトリクスが「クリティカル」「メジャー」「ワーニング」「インフォメーション」の異常イベントをトリガーした後、連続してN回の検出が正常であれば、「正常」イベントが生成されます。異常イベントが正常に復旧したかどうかを判断するために使用します。設定を推奨します。 |
詳細については、イベントレベル説明を参照してください。
詳細オプション¶
連続トリガー判定¶
有効にすると、トリガー条件を継続的に満たした場合にのみイベントが生成され、一時的な変動による誤検出を防ぎます(❗️ 最大設定上限は10回です)。
大量アラート保護¶
システムデフォルトで有効です。
1回の検出で生成されるアラート数がプリセットしきい値を超えた場合、システムは自動的にステータス集約戦略に切り替わります。つまり、アラートオブジェクトを個別に処理する代わりに、イベントステータスに基づいて少数のサマリアラートを生成し、プッシュします。
これにより、通知の即時性を確保しつつ、アラートノイズを大幅に削減し、過剰なアラート処理によるタイムアウトのリスクを回避できます。
このスイッチがオンの場合、後続のモニターが異常を検出した後に生成されるこのようなイベント詳細には、履歴と関連イベントは表示されません。
回復条件¶
回復条件と重大度を設定します。クエリ結果が複数の値である場合、いずれかの値がトリガー条件を満たすと回復イベントが生成されます。
異なるレベルに対して個別の回復しきい値を設定し、段階的な回復を実現します。例:メジャーアラートは値が70未満に低下した場合に回復し、ワーニングアラートは80未満で回復します。
デフォルトの回復ロジック
段階的回復条件の設定が有効になっていない場合、デフォルトでは検出結果がトリガー条件を満たさなくなった時点で自動的に回復します。
データ欠落¶
検出範囲内で検出メトリクスのクエリ結果が空の場合の処理戦略。
| オプション | 説明 |
|---|---|
| イベントをトリガーしない(デフォルト) | データがない場合にアラートを生成しません。データ欠落が許容されるシナリオに適しています。 |
| クエリ結果を0とみなす | 空データを0値として扱い、しきい値判定を行います。 |
| データ欠落イベントをトリガー | データがない場合に異常とみなし、データ欠落イベントをトリガーします。 |
| クリティカルイベントをトリガー | データがない場合にクリティカルレベルのイベントをトリガーします。 |
| メジャーイベントをトリガー | データがない場合にメジャーレベルのイベントをトリガーします。 |
| ワーニングイベントをトリガー | データがない場合にワーニングレベルのイベントをトリガーします。 |
| インフォメーションイベントをトリガー | データがない場合にインフォメーションレベルのイベントをトリガーします。 |
| 回復イベントをトリガー | データがない場合に回復イベントをトリガーします。 |
トリガー条件、データ欠落、情報生成を同時に設定する場合、以下の優先順位でトリガーが判断されます。データ欠落 > トリガー条件 > 情報イベント生成。
つまり、最初にデータ欠落があるかどうかを判断し、次にしきい値をトリガーするかどうかを判断し、最後に情報イベントを生成するかどうかを判断します。
情報生成¶
このオプションを有効にすると、情報生成条件の設定が必要になります。検出結果が「クリティカル」「メジャー」「ワーニング」「インフォメーション」のいずれのしきい値もトリガーせず、かつ情報生成条件を満たした場合にのみ、システムは「情報」イベントを書き込みます。
正常な状態変化や優先度の低い情報を記録する必要があるシナリオに適しています。
後続設定¶
上記の検出設定が完了したら、以下の設定を続けて行ってください。