ディテクターとアラート

Splunk Observability Cloud ディテクターを使用してテストの異常を監視し、Splunk Synthetic Monitoring でアラートを生成する方法。

Splunk Observability Cloud では、ディテクターがテストやメトリクスに異常がないかを監視し、問題が発生するとアラートを生成します。アラートのしきい値、重大度、通知方法、受信者などをカスタマイズできます。

Splunk Observability Cloud における高度なアラートとディテクターの詳細については、「Splunk Observability Cloud のアラートとディテクターの概要」を参照してください。Synthetics に固有の静的しきい値ディテクターの作成については、以下の説明を参照してください。

Syntheticsにおけるディテクターのタイプ

Synthetics では、ブラウザテストのテストレベル、ページレベル、合成トランザクションレベルのメトリクスに対してアラートを発するディテクターがあります。以下の表は、それらの各ディテクタータイプについて説明したものです。

ディテクタータイプ

説明

テストレベルディテクター

テストレベルのディテクターは、テスト全体に該当するメトリクスに対してアラートを送信します。

例:runの失敗数、アップタイムの割合(%)、またはテスト全体の時間が所定の閾値を超えた場合にアラートを送信する。

ページレベルディテクター

ページレベルのディテクターは、ブラウザテスト内の単一ページに該当するメトリクスに対してアラートを送信します。

例:特定のページ上でのDOM読み込み時間、LCP(最大コンテンツの描画)、または合計画像サイズが所定の閾値を超えた場合にアラートを送信する。

ページレベルのメトリクスに対してアラートをページレベルにスコープしない場合、ディテクターはページ全体の平均メトリクス値を監視します。詳細については、「ブラウザテスト用のページレベルディテクターを作成する」を参照してください。

トランザクションレベルディテクター

合成トランザクションレベルのディテクターは、ブラウザテスト内のある合成トランザクションに該当するメトリクスに対してアラートを送信します。

例:Splunk Synthetic Monitoring が取得する 3 つのトランザクションレベルのメトリクス(期間、リクエスト、サイズ)に対してアラートを送信する。詳細については、「ブラウザテスト用のトランザクションレベルディテクターを作成します」を参照してください。

合成テストが失敗する場合のアラート送信のベストプラクティス

ディテクターのセットアップは、最初にテストを作成する際、または編集する際、あるいは特定のテストの結果ビューから実行できます。ディテクターは 1 つまたは複数の合成テストを追跡できます。

ディテクターを設定するには、以下のいずれかを行ってください:

  • テストの作成または編集の際に、Create detectorを選択してディテクターダイアログボックスを開く。

  • 特定のテストのTest resultsページから、Create detectorを選択してディテクターダイアログボックスを開く。

ディテクターダイアログボックスで、以下のフィールドに入力します:

  1. テスト名リストで、ディテクターに含めるテストを選択します。ベストプラクティスは、実行時間が近いテストを選択することです。

  2. メトリクスリストで、[Uptime] を選択します。テストが失敗した場合、アップタイムメトリクスは 0 になります。

  3. [+ Add filters] では、[failed] または [success] のフィルターを追加しないでください。これらのフィルターを含めないことによって、ディテクターがテスト実行のすべてのデータポイントを確認できるようにします。

  4. Alert details セクションで、次を入力します:

    • Trigger threshold: アラートをトリガーするしきい値。

    • Orientation: アラートをトリガーするためにメトリクスが閾値より下または上になる必要があるかどうか。

    • Violates threshold:アラートをトリガーするためにメトリクスがしきい値に違反する必要がある回数。

    • [Split by location]:ディテクターをテストロケーション別に分割するかどうか。ロケーションで分割しない場合、ディテクターはすべてのロケーションにおける最大値をモニターします。

  5. 重大度セレクターを使用して、アラートの重大度を設定します。

  6. 受信者を追加します。

  7. Activate を選択します。

失敗したテストに対するディテクターの設定。

これで、ディテクターは失敗したテストrunについて毎分チェックを実行し、Alert detailsの設定に基づいてアラートを送信するように設定されました。

Splunk Synthetic Monitoring テスト用のディテクターを設定する

ディテクターのセットアップは、最初にテストを作成する際、または編集する際、あるいは特定のテストの結果ビューから実行できます。ディテクターは、同じタイプの 1 つまたは複数の Synthetic Monitoring テストを追跡できます。

ディテクターを設定するには、以下のいずれかを行ってください:

  • テストの作成または編集中に、[Create detector] を選択します。ディテクターダイアログボックスが開きます。

  • 特定の検査の [Test results] ページから、[Create detector] を選択します。ディテクターダイアログボックスが開きます。

ディテクターダイアログボックスで、以下のフィールドに入力します:

  1. テスト名リストで、ディテクターに含めるテストを選択します。リストに表示されているすべてのテストを含める場合は、[All tests] チェックボックスを選択します。

    注: [All tests] オプションは、プログラムテキストでワイルドカード(*)を使用し、常に同じタイプのすべてのテストをカバーします。
  2. メトリクスリストで、アラートを受信するメトリクスを選択します。デフォルトでは、ディテクターは [Uptime] メトリクスを追跡します。

  3. デフォルトの [Static threshold] アラート条件は変更できません。

  4. ディメンション別にアラートの範囲を設定するには、[+ Add filters] を選択します。ブラウザテストの場合、このセレクターを使用して、テスト全体、テスト内の特定のページ、またはテスト内の特定の合成トランザクションにディテクターをスコープできます。詳細については、次のセクションを参照してください。

  5. Alert details セクションで、次を入力します:

    • Trigger threshold: アラートをトリガーするしきい値。

    • [Orientation]:アップタイムメトリクスでのみ使用できます。アラートをトリガーするために、メトリクスがしきい値を下回らなければならないか、しきい値を超えなければならないかを指定します。

    • Violates threshold:アラートをトリガーするためにメトリクスがしきい値に違反する必要がある回数。

    • [Split by location]:ディテクターをテストロケーション別に分割するかどうかを選択します。ロケーションでフィルタリングしない場合、ディテクターはすべてのロケーションにおける最大値をモニターします。

    • [Auto-clear alerts]:メトリクスが指定の期間、新しいデータを報告しなかった場合にアクティブなアラートを自動的にクリアするには、チェックボックスを選択し、リストから期間を選択します。詳細は、アラートのオートクリア を参照してください。

  6. 重大度セレクターを使用して、アラートの重大度を選択します。

  7. 受信者を追加します。

  8. Activate を選択します。

ブラウザテスト用のページレベルディテクターを作成する

ページレベルディテクターを作成するには、ディテクターを作成する際に以下の手順を実行します:

  1. ディテクターでアラートを発するメトリクスを選択する際には、ページレベルに適用されるメトリクスを選択します。テスト内の特定のページではなく、ブラウザテスト実行全体に適用される [Run Duration] や [Run count] などのメトリクスは使用しないでください。

  2. Scope alerts to と書かれた + ボタンを選択します。

  3. Find a key で、page_position ディメンションを選択します。

  4. [Find a value] で、モニターするページに対応する番号を選択します。 ページの位置 0 は、ブラウザテストが最初に接するページで、位置 1 はテストの 2 番目のページです。

  5. ディテクターのセットアップを終了します。上記の「Splunk Synthetic Monitoring テスト用のディテクターを設定する」を参照してください。

注:

ページレベルのメトリクスに対して特定のページにアラートをスコープしない場合、ディテクターはテスト内のすべてのページにわたるメトリクスの平均値を追跡します。

複数のページを選択した場合、ディテクターは選択した複数のページの集約メトリクス値を監視します。

テスト内の各ページのメトリクス値を監視するディテクターが必要な場合は、監視したいページごとに別のディテクターを作成してください。

ブラウザテスト用のトランザクションレベルディテクターを作成します。

トランザクションレベルのディテクターを作成するには、ディテクターを作成する際に以下の操作を行ってください:

  1. アラートを発するディテクターのメトリクスを選択する際に、次のトランザクションレベルのメトリクスのいずれかを選択します:

    • 期間

    • リクエスト

    • サイズ

  2. Scope alerts to と書かれた + ボタンを選択します。

  3. [Find a key] で、transaction または transaction_position ディメンションを選択します。transaction ディメンションを使用すると、トランザクションを数値位置ではなく名前で識別できます。

  4. Find a value で、監視したい合成トランザクションを選択します。

  5. ディテクターのセットアップを終了します。上記の「Splunk Synthetic Monitoring テスト用のディテクターを設定する」を参照してください。

注:

トランザクション レベルのメトリクスに対して特定のトランザクションにアラートをスコープしない場合、ディテクターはテスト内のすべてのトランザクションの平均メトリクス値を追跡します。

複数のトランザクションを選択した場合、ディテクターは選択した複数のトランザクションの集約メトリクス値を監視します。

テスト内の各トランザクションのメトリクス値を監視するディテクターが必要な場合は、監視するトランザクションごとに別のディテクターを作成してください。

こちらも参照してください

ブラウザテストにおける合成トランザクションの詳細については、「ブラウザテストに合成トランザクションを追加する」を参照してください。