Splunk Observability Cloudのアラートとディテクターの概要
Splunk Observability Cloud は、ディテクタ、イベント、アラート、および通知を使用して、特定の基準が満たされたときに通知します。ディテクタ条件が満たされると、ディテクタはイベントを生成し、アラートをトリガーし、1 つまたは複数の通知を送信します。
Splunk Observability Cloud は、ディテクタ、イベント、アラート、および通知を使用して、特定の基準が満たされたときに通知します。アクティブなアラートと既存のディテクタは、[Alerts] ページのタブで確認できます。イベントは、任意のダッシュボード内から利用できる [Events] サイドバーで確認できます。
アラートとディテクタのシナリオの例
-
CPU使用率が95パーセンタイルに達したときに、OpsチームのSlackチャンネルまたはメールアドレスにメッセージを送信したいという場合
-
同時ユーザー数が限界に近づき、追加のAWSインスタンスをスピンアップする必要が生じる可能性があるときに通知を受けたいという場合
その他のシナリオの例については、「アラートとディテクタを使用してインフラストラクチャの問題を発見し解決する例」を参照してください。
ディテクター
ディテクタは、チャート上と同様に、プロットライン上のシグナルを監視し、ルールで定義した条件に基づいてアラートイベントや解除イベントをトリガーします。概念上、ディテクタは、シグナル値がアラートルールで定義された指定のしきい値を超えたときにアラートをトリガーできるチャートと考えることができます。
ルールの条件が満たされると、アラートがトリガーされます。ディテクタの個々のルールは、重大度(情報、警告、マイナー、重要、重大)に従ってラベル付けされます。たとえば、API コールの遅延を監視するディテクタがある場合、ディテクタルールで定義されている標準値よりも遅延が著しく高いと「重大」の状態になります。
また、ディテクタは一定期間にわたり特定の条件を基準にしてストリームを評価します。分析をメトリック時系列(MTS)に適用すると、SignalFlow クエリ言語のオブジェクトであるストリームが生成されます。MTS には raw データまたは分析関数の出力を含めることができます。
ディテクターのメタデータ
MTSに関連するメタデータを使用することで、ディテクターの定義をよりシンプルに、よりコンパクトに、よりしなやかにすることができます。
たとえば、Kafkaのようなクラスタ化されたサービスを提供するために使用される30台の仮想マシンのグループがある場合、通常はこれらの仮想マシンから来るすべてのメトリクスを service:kafka というディメンションとあわせて含めます。
これらの各仮想マシンの CPU 使用率が 80 未満を維持しているかどうかを追跡するには、service:kafka ディメンションを含む CPU 使用率メトリックを照会する単一のディテクタを作成し、それらのメトリックをしきい値 80 に基づいて評価します。この単一のディテクタは、30 個の個別のディテクタがある場合と同様に、CPU 使用率がしきい値を超える仮想マシンごとに個別のアラートをトリガーします。30 台の仮想マシンをそれぞれ監視するために 30 個の個別のディテクタを作成する必要はありません。
クラスターの拡大により仮想マシンが 40 台となったなどの理由で母集団が変更される場合は、クラスターレベルまたはサービスレベルのディテクタを作成できます。新しく追加された仮想マシンに service:kafka ディメンションを含めると、既存のディテクタのクエリでは、クラスター内のすべての新しい仮想マシンがしきい値の評価に含まれます。
動的閾値条件
ディテクタの条件に静的な値を設定すると、あるサービスや特定の時間帯にとって適切な値が、別のサービスや別の時間帯には適していないために頻繁にアラートが発生する可能性があります。たとえば、アプリケーションやサービスに Docker コンテナや EC2 オートスケーリングのような柔軟なインフラストラクチャが含まれている場合、アラートの値が時間帯によって異なる可能性があります。
この場合、ストリーミングデータの変化に対応するための動的しきい値を定義できます。たとえば、メトリックが周期的な動作を示す場合、同じメトリックを 1 週間のタイムシフト版しきい値として定義できます。データの比較の関連基準が、クラスター化されたサービスなどの母集団の動作であるとします。その場合、その動作を反映する値としてしきい値を定義できます(移動する 15 分の時間枠内におけるクラスター全体のメトリックの 90 パーセンタイル値など)。
詳細については、「Built-in alert conditions」を参照してください。
アラート
入力 MTS のデータが条件に一致すると、ディテクタがトリガーイベントと特定の重大度レベルを持つアラートを生成します。Splunk On-Call を使用して通知を送信するようにアラートを設定できます。詳細については、「How to get started with Splunk On-Call」を参照してください。
アラートルールでは、組み込みのアラート条件に指定する設定を使用して、アラートをトリガーするしきい値を定義します。ディテクタはルールの条件が満たされていると判断すると、アラートをトリガーし、イベントを作成して、指定されている場合は通知を送信します。ディテクタは、電子メール、Slack などの他のシステム、またはウェブフックを使用して通知を送信することができます。
ディテクター、イベント、アラート、通知間の相互関係
ディテクター、イベント、アラート、通知間の相互関係は以下の通りです:
-
ディテクタには、以下を指定するルールが含まれます。
-
ディテクタの信号に関連する条件に基づいてディテクタがトリガーされるタイミング。
-
ディテクタによって生成されるアラートの重大度。
-
通知 の送信先。
-
-
ディテクターがトリガーされると、次のような動作をします:
-
イベントを生成します。これは、チャートや [Events] サイドバーで確認できます。
-
アラートをトリガーする。このアラートは、Splunk Observability Cloudのさまざまな場所で確認できます。
-
1つまたは複数の通知を送信する。これにより、現在ダッシュボードを閲覧していないメンバーにも、アラートに関する通知が届きます。
-
-
条件が解除されると、ディテクターは2つ目のイベントを生成し、2つ目の通知セットを送信します。
次の図に、ディテクタとアラートの関係を示します。四角形はディテクタに関連するオブジェクトを、菱形はディテクタに関連するプロセスを表しています。
アラートとディテクターに関して可能な操作(行動)
次の表は、ディテクター、イベント、アラート、および通知でできることを示したものです:
|
手順 |
ドキュメントへのリンク |
|---|---|
|
組織用に設定されたディテクターに基づいてアラートを表示する | |
|
ディテクターを変更できる人を制限する | |
|
アラート通知の送信先を指定する | |
|
通知を一時的にミュートにする(送信を停止する) | |
|
アラート情報を補足するイベントを作成および表示する | |
|
監視要件を満たすイベント、アラート、通知を生成するディテクターを作成する | |
|
内蔵アラート条件を操作する | |
|
レポートを停止したメトリクスによって生成されたアラートを自動的に解除するデフォルト設定を参照する | |
|
ディテクタがアラートをトリガーしない原因、または予期せずアラートをトリガーする原因を判断する | |
|
ディテクターをチャートにリンクする |