メトリックアラートの設定
メトリクス・アラートは、 Event2Metrics を使用して IBM® Cloud Logs によって記録されたメトリクスの計算に基づくアラートです。
メトリック・アラートは、 IBM Cloud Logs ダッシュボードの特定のメトリックについて、事前に定義されたしきい値に達した、または超過した場合にトリガーされる通知です。
メトリック・アラートは、インフラやその他のメトリクスを取り巻く重要なパフォーマンス指標を監視するために設計されています。 特定のしきい値や条件を超えた場合、これらのアラートは早期警告システムとして機能し、早急な対応が必要な潜在的な問題をチームに通知する。 例えば、クラウド環境におけるサーバーのCPU使用率、応答時間、エラー率、リソース使用率の監視に役立つ。
前提条件
- アラートについてはIBM Cloud Logsを参照してください。 詳細については、アラート を参照してください。
- Event Notificationsインスタンスが IBM Cloud Logsインスタンスと同じアカウントにあり、Event Notificationsインスタンスにリソースを設定する権限があることを確認してください。
- IBM Cloud LogsインスタンスとEvent Notificationsインスタンス間のアウトバウンド統合が構成されていることを確認する。 詳細については、接続するアウトバウンドインテグレーションを設定する を参照してください。
起動アラート管理
以下のステップを実行します。
- コンソールで、 ナビゲーション・メニュー・アイコン
> Resource list をクリックする。
- IBM Cloud Logs のインスタンスを選択します。
- IBM Cloud Logsナビゲーションで、アラートアイコン
>アラー管理をトクリックします。
- 新しいアラートをクリックします。
設定するアラートの種類を選択する
以下のステップを実行します。
-
アラートの種類を選択します。 詳細については、 「アラートの種類」 を参照してください。
-
Details セクションで、以下のステップを完了する:
-
名前を入力します。
- 名前の最大長は4096文字。
-
[オプション]説明文を入力します。
- 説明文の最大長は4096文字です。
-
[オプション] 1つ以上のラベルを追加する。
ラベルは、後で簡単に検索するために使用できるキーと値のペアです。
-
メトリクス・クエリを指定する
PromQL, を使用して、 IBM® Cloud Logs インスタンスに保存されているメトリクスに対するクエリを入力します。
PromQL クエリを入力すると、オートコンプリート候補が表示されます。
例えば、アプリケーション、サブシステム、マシン ID、またはその他のデータなどです。 たとえば、すべてのアプリケーションについて単一のメトリックで総例外件数を追跡し、新しいコード領域を表すメトリックラベルを追加したい場合があります。 例外カウンタが application_error_count と呼ばれ、コード領域 x をカバーしていた場合、対応するメトリックラベルを追加することができる。
application_error_count{area="x"}
by 集計演算子を使用して、集計に使用するディメンション(メトリック ラベル)とアラート通知グループを分割する方法を選択します。 例えば、クエリ sum by(instance) (node_filesystem_size_bytes) は、各インスタンスの合計 node_filesystem_size_bytes を返す。
トリガー条件の指定
クエリーから返されたデータに対して評価されるトリガー条件を指定します。
-
Isの場合は、いつアラートを発動させたいかを指定する。 例えば、メトリクスのクエリーが通常より多く発生した場合。
-
Value には、クエリがアラートをトリガーするマッチを返す回数を指定します。
-
For overには、 Ofで指定した時間内にクエリがマッチする割合を指定します。
データには欠損値がある場合がある。 欠損値をゼロで置き換えず、空のままにしておくと、持っているデータが100%とみなされる。
例えば、10分の時間枠でクエリーを実行したとします。6つのデータポイントには値があり、4つのデータポイントには値がありません。 欠損値を0に置き換えていない場合、値のある6分間は時間枠の100%とみなされる。 これは誤った引き金になりかねない。
詳細設定では、欠損値を0に置き換えることができます。
詳細設定] で、 このアラートをトリガーするには、タイムフレームの少なくとも%に値を設定する必要があります。
-
パーセント値の設定は、アラートの信頼性を考慮するのに十分なデータポイントがない場合にアラートを無効にするように設計されています。 データ量が設定されたパーセンテージ以下の場合、実際のメトリック値や閾値の過不足にかかわらず、アラートはトリガーされない。
-
パーセンテージが0に設定され、クエリが一度でも閾値を超えると、アラートがトリガーされる。
-
パーセンテージが100に設定されている場合、これはすべての時間窓値がしきい値を超えることを意味する。 もし、ある時点で、ある値がそうでない場合、アラートが発動される。
欠損値をゼロで置き換える 」が選択されている場合、パーセント値の設定は表示されません。 欠損値をゼロに置き換えれば、100%のデータが存在することが保証される。
しきい値未満の条件を使用している場合、未検出の値を管理するオプションがあります。
未検出値は、 Less than アラートの順列が送信されなくなり、アラートが複数回トリガーされた場合に発生する。
未検出の値を含むアラートを表示する場合、これらの値を手動で消去するか、または未検出の値が自動的に消去される期間を選択するオプションがあります。 また、未検出値のトリガーを無効にして、未検出値が発生したときにアラートの送信を即座に停止することもできます。
異常検知のカスタマイズ
異常検知は、入ってくるメトリクスを分析します。 過去24時間のデータを用いて、 IBM Cloud Logs、今後24時間の予想行動を予測する。 予測モデルは、予想される行動の上限と下限のしきい値を設定し、そのしきい値を境界線として設定する。 データがこれらのしきい値を超えると、アラートがトリガーされる。 平均行動と各閾値の間のベースラインが計算される。 この基準値に対する偏差パーセンテージを指定して、アラート・トリガーの感度を調整することができます。
いつもより多い 」または「 いつもより少ない」という条件を設定する際、 偏差のパーセンテージがそのパーセンテージを超えた場合にのみ警告を発するよう、詳細設定を行うことができます。
例えば、基準値が50で、上限しきい値が150、 パーセント偏差が 10%の場合、アラートは値が155を超えた場合にのみトリガーされる。
例
例えば、ある値より小さい場合、 小さいか等しい場合、ある値より大きい場合、 大きいか等しい場合、最小しきい値に対して通常より大きい場合、 通常より小さい場合にアラートをトリガーするかどうかを選択することができます。 クエリが条件に設定された値またはしきい値を通過すると、アラートがトリガーされる。
パーセンテージ (x %以上 )とタイムフレーム (過去x分 )を指定することで、アラートがトリガーされるために、タイムフレームのどの程度がしきい値を超えるかを決定します。 アラートをトリガーするために値が必要なタイムフレームのパーセンテージ (少なくとも x %)を選択します。
例えば、アラートを発動させるためには、10分足時間枠の50%以上が設定値である必要があると判断します。 10個のデータポイントのうち5個でこの値に達したとしても、50%を超えていないので、アラートを発するには十分ではない。 10個のデータポイントのうち6個がこの値に達した場合、アラートが発動される。
Group By では、最大2つのJSONフィールドを設定でき、その値が集計され、アラートがトリガーされるタイミングを決定します。
-
集計された値のいずれかが、指定された時間枠内にフィルタリング条件セクションで設定されたしきい値を超えて表示された場合、アラートがトリガーされます。
-
アラートは、指定された時間枠内で特定の集計値について条件しきい値を満たした場合にトリガーされます。
-
2つの値を設定すると、一致するログはまず親フィールドで集計され、次に子フィールドで集計されます。 アラートは、しきい値が親と子の両方のユニークな組み合わせを満たしたときに発せられる。
通知の詳細を設定する
以下のステップを実行します。
-
Notify every を設定して、アラートがトリガーされた後のイベント取得頻度を定義します。 デフォルトでは0時間10分に設定されている。
-
Resolve automaticallyを有効にすると、イベントが解決されたときにイベントを取得します。
アラートの条件がイベントのトリガーとならなくなった場合、最初にトリガーされたイベントは「解決済み」としてマークされます。
-
Enableファントムモードを有効にして、このアラートがファントムアラートであることを示す。
ファントムアラートは、フローアラートのビルディングブロックとして機能する。
ファントムアラートは、独立したイベント通知をトリガーしない。
このオプションを有効にすると、アラート定義から通知セクションが削除されます。
-
統合を追加する。
統合を追加するには、送信統合が定義されている必要があります。 詳細については、Event Notificationsサービスとの統合を設定する を参照してください。
スケジュールと含めるログの内容を設定する
以下のステップを実行します。
-
*スケジュール]*セクションで、このアラートを有効にするタイミングを制御するスケジュールを設定します。 特定の曜日と時間を選ぶことができる。
-
*Notification Content(通知内容)*セクションでは、トリガーされたイベントにログ行のサンプルを含めるか、一部のフィールドのみを含めるかを定義します。
アラート通知に含める特定のJSONキーを選択するか、アラートメッセージにログテキスト全体を含めるには空白のままにします:
-
オプション1:アラートのフィルタリング条件に一致するログ行を1行含めるには、空白のままにします。
-
オプション2:JSONキーを指定し、key:valueのペアの形式で選択したフィールドを含める。 フィールドを追加するには、ログ記録がJSON形式でなければならないことに注意してください。
名前に
.を含む JSON キーは、選択フィールドとして使用できません。 -
オプション3:フィルターとしてJSONパスを指定する。
-
アラートがトリガーされると、イベントに含まれるデータ量には制限がある。 これらの制限の詳細については、データサイズ を参照。
アラート設定を保存する
以下のステップを実行します。
-
警告を確認する。
Verify(検証)」をクリックしてデータを評価し、過去24時間にアラートが何回条件に一致したかを調べます。
Verifyは優先順位の洞察パイプラインのデータのみを評価する。 アラートが分析とアラートパイプラインで利用可能なデータでトリガーされるように構成されている場合、この機能は利用できないことに注意してください。
-
**「アラートの作成」**をクリックします。
アラートの確認
アラートを作動させる。 アラートがトリガーされ処理されると、システムは、電子メール、Slack、SMS、または統合されたインシデント管理プラットフォームなどのさまざまなチャネルを通じて、指定されたユーザーまたはチームに通知を送信します。 その後、*「インシデント」*ページに移動し、トリガーされたアラートに関する情報を見ることができます。 詳細については、IBM Cloud Logsのトリガーされたアラートの管理 を参照してください。
ダイナミック・アラート制限
ダイナミックアラートとは、「 通常より多い 」または「 通常より少ない」という条件を持つアラートである。 各ダイナミック・アラートには500の順列が割り当てられ、どの IBM Cloud Logs インスタンスに対しても最大10,000の順列が許可される。
並べ替えの制限は、 IBM Cloud Logs インスタンスに対して最大20のダイナミック・アラートを設定できることを意味する。
動的アラートが20件に達した場合でも、他の非動的アラートを作成することができます。