Docs » 内蔵アラート条件 » カスタム閾値

カスタム閾値 🔗

カスタム閾値を使用すると、シグナル同士を比較したり、複数の条件を評価したりすることで、アラートをトリガーできます。以下のパターンのいずれかにマッピングするディテクターを作成する場合は、カスタム閾値を使用します:

  • あるシグナルが別のシグナルの値に基づいて条件を満たした場合にアラートを表示したい

  • 1つのシグナルの値に基づいて、AND演算子とOR演算子を使って複合条件を指定したい

  • 複数のシグナルの値に基づいて、AND演算子とOR演算子を使って複合条件を指定したい

複合条件 🔗

「アラート設定」タブで、Add another condition を選択すると、AND演算子とOR演算子を使用した複合条件を作成できます。合計10個の条件を追加できます。

複合条件を指定する場合、AND条件はOR条件の前に適用されます。条件が必要に応じて評価されるようにするには、条件の「アクション」メニュー(⋯)からオプションを選択して、適切な順序に並べることができます。また、条件の「アクション」メニュー(⋯)から条件の削除もできます。

注釈

複合条件がアラートをトリガーするためには、条件に含まれるすべての値が非Nullである必要があります。

「a AND (b OR c) AND d 「や 「a AND NOT b 「など、このアラート条件がサポートするよりも複雑な条件を作成する必要がある場合は、Splunk Observability Cloud API を使用してディテクターを作成することができます。

例:単一条件、シグナルの比較 🔗

  • 1分間の cache-misses の数が cache-hits の数より多いときにアラートを受信するとします。この場合、監視するシグナルとして cache-misses を、Alert when のオプションとして Above を、閾値として cache-hits を、そして、Trigger sensitivity のオプションとして1分間の Duration を使用します。

  • 3つのシグナルがあり、それぞれが1つのAWSアベイラビリティゾーンの最大レイテンシを測定しているとします。過去にゾーンのうちの1つに問題があり、そのシグナルが他の2つのシグナルの範囲外 にある場合にアラートを受け取りたいと考えています。この場合、問題のあるゾーンを監視するシグナルとして使用し、Alert when のオプションとして Out of range を使用し、他の2つのシグナルを閾値の下限と上限に使用します。

例:複合条件、単一シグナルの監視 🔗

次の例は、単一のシグナルの監視に複合条件を構築する方法を示しています。

2つのシグナル(AとB)があり、Aは本番環境で使用可能なメモリを測定し、Bは実験環境で使用可能なメモリを測定しているとします。この場合に、以下のようなアラートを受信したいと考えています:

  • 本番環境で使用可能なメモリが実験環境で使用可能なメモリより少ない場合、または

  • 本番環境で使用可能なメモリが50%未満の場合

この場合、1つのシグナル(A、つまり本番環境で使用可能なメモリ)を監視し、以下の条件を設定します:

  • アラートのタイミング:シグナルAがBより小さい OR

  • シグナルAが50未満

例:複合条件、複数シグナルの監視 🔗

次の例は、複数のシグナルの監視に複合条件を構築する方法を示しています。

  • 3つのシグナル(A、B、C)があり、それぞれが特定の環境(Aから順に本番環境、実験環境、開発環境)で使用可能なメモリを測定しているものとします。この場合に、以下のようなアラートを受け取りたいと考えています。

    • 本番環境で使用可能なメモリが70%未満の場合、または

    • 実験環境と開発環境の使用可能なメモリが70%未満の場合

    この場合、複数のシグナルを監視し、以下の条件を設定します:

    • アラートのタイミング:シグナルAが70未満 OR

    • シグナルBが70未満 AND

    • シグナルCが70未満

    注釈

    AND条件は常にOR条件の前に評価されます。

  • あなたの組織では、あるグループがクラスタの健全性の監視を担当し、別のグループが個々のノードの健全性を監視しているとします。この場合に、クラスタ自体が健全でないときには個々のノードのアラートをトリガーしたくないと考えています。

    Aをクラスタの健全性のメトリクス、Bをノードの健全性のメトリクスとすると、以下のように2つのディテクターを作成できます:

    • シグナルAを監視し、Aが健全でないときにアラートをトリガーするディテクターが1つ

    • 複数のシグナルを監視し、以下の条件を持つ別のディテクターが1つ:

      • アラートのタイミング:Aが健全 AND

      • Bが健全でない

設定 🔗

パラメータ

注意事項

Alert when

AboveBelowOut of RangeWithin Range

なし

Threshold, Lower threshold, Upper threshold

Static value (許容値については 静的閾値 を参照)または他のシグナル。

Static value は、Out of Range または Within Range 設定を使用する際のオプションとして使用するために設計されています。例えば、シグナルが、別のシグナルの値と静的な値80の間にあるときにアラートを受信したいことがあるかもしれません。Above または Below で静的な値を使用することは、静的閾値条件を使用することと同じです。

Trigger sensitivity

ImmediatelyDurationPercent of duration

Immediately を使用すると、閾値に達するとすぐにアラートがトリガーされます。

Duration を使用すると、シグナルが閾値条件を満たし、指定した期間(例:10分)にわたってその状態を継続した場合にアラートがトリガーされます。シグナルが急激に上下することが通常である場合には、このオプションを使用すると、フラッピング が軽減されます。このオプションを使ってアラートをトリガーする場合、指定した期間中のデータポイントの欠落は許容されません。詳細は、アラートをトリガーするための継続期間 を参照してください。

Percent of duration を使用すると、指定した期間中に閾値を満たしたデータポイントの数に基づいてアラートがトリガーされます。詳細は アラートをトリガーするための継続期間 を参照してください。

Duration

>= 1の整数の後に時間を表す指標(s、m、h、d、w)を付す。例:30s、10m、2h、5d、1w

シグナルが閾値の条件を満たす必要のある期間。指定期間を長くすると感度が低下し、アラートの数が潜在的に少なくなります。

Percent of duration

パーセンテージ:1~100の整数。継続期間:>= 1の整数の後に時間を表す指標(s、m、h、d、w)を付す。例:30s、10m、2h、5d、1w

指定した期間中に閾値を満たした回数のパーセンテージ。

アラートをトリガーするための継続期間 🔗

ご想像の通り、Trigger SensitivityImmediately を選択すると、シグナルが閾値に達するとすぐにアラートがトリガーされます。このオプションは、トリガー感度の3つのオプションの中で最も感度が高いものです(最も多数のアラートをトリガーする可能性があります)。

シグナルの性質によっては、アラートをすぐにトリガーすると フラッピング につながることがあります。このような場合は、他のオプションである 継続期間 または 継続期間のパーセンテージ のいずれかを選択できます。

Duration オプションを使用すると、シグナルが閾値条件を満たし、指定した期間(例:10分)にわたってその状態を継続した場合にアラートがトリガーされます。したがって、このオプションを使用すると、Immediately オプションよりも感度は低くなります(アラートのトリガー回数が少なくなる可能性があります)。このオプションを使用すると、たとえ受信したすべてのデータポイントが閾値条件を 満たしていても、指定した期間中にデータポイントが遅延したり、まったく到着しなかったりすれば、アラートはトリガーされません。データポイントの遅延や欠落について、詳細は 遅延または欠落したデータポイントの処理 を参照してください。

一部のデータポイントが時間通りに到着しなくてもアラートをトリガーするオプションが必要な場合は、Percent of duration を(100未満の値のパーセンテージを指定して)使用します。

Percent of duration オプションを使用すると、指定した時間窓の間に閾値を満たしたデータポイントの数に基づいてアラートがトリガーされます。このオプションは、閾値を満たしたデータ ポイント数のパーセンテージに基づいてアラートをトリガーするため、一部のデータポイントが時間通りに到着しなかった場合でもアラートをトリガーすることがあります。したがって、100未満のパーセンテージでこのオプションを使用すると、Duration オプションを使用した場合よりも感度は高くなります(より多くのアラートがトリガーされる可能性があります)。

以下の例は、様々な状況でアラートがどのようにトリガーされるかを示したものです。

例1 🔗

  • トリガー感度 に指定するオプション:継続期間=3分

  • シグナルの解像度:5秒

  • 3分間に予想されるデータポイント数:12/分* 3分(36)

  • アラートをトリガーするまでの異常データポイント数(閾値を満たす必要がある回数):36

    予想されるデータポイントの総数

    受信したデータポイントの総数

    必要な異常データポイント数

    受信した異常データポイント数

    アラートはトリガーされるか?

    36

    36

    36

    36

    はい

    36

    36

    36

    35以下

    いいえ

    36

    35

    36

    35以下

    いいえ

例2 🔗

  • トリガー感度 に指定するオプション:継続期間のパーセンテージ=3分の75%

  • シグナルの解像度:5秒

  • 3分間に予想されるデータポイント数:12/分* 3分(36)

  • アラートをトリガーするまでの異常データポイント数(閾値を満たす必要がある回数):36の75%(27)

    予想されるデータポイントの総数

    受信したデータポイントの総数

    必要な異常データポイント数

    受信した異常データポイント数

    アラートはトリガーされるか?

    36

    36

    27

    27-36

    はい

    36

    30

    27

    27-30

    はい

    36

    30

    27

    26以下

    いいえ

    上記の後の方の例では、26個の異常データポイントが到着し、26/30が指定した「75%」より大きくても、必要な異常データポイント数(27個)が到着していないことに注意してください。したがって、アラートはトリガーされません。指定するパーセンテージは、予想 データポイント数に対するパーセンテージを示すものであり、受信 データポイント数に対するパーセンテージではありません。

This page was last updated on 2023年05月16日.