カスタム閾値
このアラート条件を使用すると、シグナル同士を比較したり、複数の条件を評価したりすることによって、アラートをトリガーできます。
カスタムしきい値を使用すると、シグナル同士の比較や、複数の条件の評価によってアラートをトリガーできます。以下のパターンのいずれかにマッピングするディテクタを作成する場合は、カスタムしきい値を使用します。
-
あるシグナルが別のシグナルの値に基づいて条件を満たした場合にアラートを表示したい
-
1つのシグナルの値に基づいて、AND演算子とOR演算子を使って複合条件を指定したい
-
複数のシグナルの値に基づいて、AND演算子とOR演算子を使って複合条件を指定したい
複合条件
[Alert Settings] タブで [Add another condition] を選択すると、AND 演算子と OR 演算子を使用した複合条件を作成できます。合計で 10 個の条件を追加できます。
複合条件を指定する場合、AND 条件は OR 条件より先に適用されます。条件が必要に応じて確実に評価されるように、条件の [Actions] メニュー(⋯)からオプションを選択し、適切な順序に並べ替えることができます。条件の [Actions] メニュー(⋯)から条件を削除することもできます。
「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 つのシグナルがありますが、それぞれが単一の AWS 可用性ゾーンの最大遅延を測定します。過去に 1 つのゾーンで問題が発生しており、そのシグナルが他の 2 つのシグナルの範囲外になったときにアラートを受信したいとします。この場合、トラブルシューティング ゾーンを問題のあるゾーンを監視するシグナルとして、
Out of rangeを [Alert when] のオプションとして、他の 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 |
|
なし |
|
Threshold, Lower threshold, Upper threshold |
|
|
|
Trigger sensitivity |
|
|
|
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 Sensitivity] として Immediately を選択すると、シグナルがしきい値を満たした直後にアラートがトリガーされることになります。これは、3 つのトリガー感度オプションの中で最も高い感度です(最も多くのアラートをトリガーする可能性がある)。
シグナルの性質によっては、即座にアラートをトリガーするとフラッピングが発生することがあります。このような場合は、[Duration] または [Percent of duration] のいずれかのオプションを選択できます。
Duration オプションを使用すると、シグナルがしきい値状態を満たし、その状態が指定された期間(10 分間など) 継続した場合にアラートがトリガーされます。したがって、このオプションを使用すると、Immediately オプションよりも感度が低くなります(トリガーされるアラートが減少する可能性がある)。このオプションを使用すると、受信したすべてのデータポイントがしきい値の条件を満たしていても、データポイントが遅延した、またはその時間範囲内にまったく到着しないという場合、アラートはトリガーされません。遅延または欠落しているデータポイントの詳細については、「Handle delayed or missing data points」を参照してください。
一部のデータポイントが時間通りに到着しない場合でもアラートをトリガーするオプションが必要な場合は、Percent of duration を(100 未満のパーセンテージを指定して)使用します。
Percent of duration オプションを使用すると、期間内にしきい値を満たしたデータポイントの数と、到着が予想されていたデータポイントの数の比に基づいてアラートがトリガーされます。このオプションは、しきい値を満たすデータポイントの割合に基づいてアラートをトリガーするため、一部のデータポイントが時間どおりに到着しなかった場合でもアラートをトリガーすることがあります。したがって、100 未満のパーセンテージでこのオプションを使用すると、Duration オプションよりも感度が高くなります(トリガーされるアラートが増える可能性がある)。
以下の例は、様々な状況でアラートがどのようにトリガーされるかを示したものです。
例1
-
[Trigger Sensitivity] に指定するオプション:[Duration] = 3 分
-
シグナルの解像度:5秒
-
3 分間に予想されるデータポイント数:12/分 * 3 分(36)
-
アラートをトリガーするまでの異常データポイント数(閾値を満たす必要がある回数):36
予想されるデータポイントの総数
受信したデータポイントの総数
必要な異常データポイント数
受信した異常データポイント数
アラートはトリガーされるか?
36
36
36
36
はい
36
36
36
35以下
いいえ
36
35
36
35以下
いいえ
例2
-
[Trigger Sensitivity] に指定するオプション:[Percent of Duration] = 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)の異常なデータポイントは到着していません。したがって、アラートはトリガーされません。指定するパーセンテージは、予想されるデータポイント数に対するパーセンテージを示すものであり、受信データポイント数に対するパーセンテージではありません。