このドキュメントでは、Google Cloud コンソールを使用して、通知を送信し、指標の値が特定の期間時間枠のしきい値より小さい場合、または大きい場合にインシデント(または同等のインシデント)を生成する指標ベースのアラート ポリシーを作成する方法について説明します。たとえば、少なくとも 5 分間で CPU 使用率が 80% を超えるとポリシーがトリガーされます。
このコンテンツは、ログベースのアラート ポリシーには適用されません。ログに特定のメッセージが表示されたときに通知する、ログベースのアラート ポリシーの詳細については、ログのモニタリングをご覧ください。
このドキュメントでは、以下については説明しません。
- データの受信が停止したときに通知を受け取る方法。このトピックの詳細については、指標の不在アラート ポリシーを作成するをご覧ください。
- 指標の予測値に基づいて通知する方法。このトピックについては、予測指標値のアラート ポリシーの作成をご覧ください。
Cloud Monitoring API を使用してアラート ポリシーを作成する方法。このトピックの詳細については、API を使用してアラート ポリシーを作成するをご覧ください。
Monitoring Query Language(MQL)クエリを含む条件のアラート ポリシーを作成する方法。これらのポリシーでは、静的または動的しきい値を使用できます。詳細については、次のドキュメントをご覧ください。
始める前に
-
Google Cloud コンソールを使用してアラート ポリシーを作成および変更するために必要な権限を取得するには、プロジェクトに対するモニタリング編集者(
roles/monitoring.editor
)の IAM ロールの付与を管理者に依頼してください。ロールの付与の詳細については、アクセスの管理をご覧ください。必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。
Cloud Monitoring のロールの詳細については、Identity and Access Management を使用してアクセスを制御するをご覧ください。
アラート ポリシーの一般的なコンセプトに精通していることを確認してください。 このトピックについては、アラートの概要をご覧ください。
アラートの受信に使用する通知チャンネルを構成します。冗長性を確保するために、複数種類の通知チャンネルを作成することをおすすめします。詳細については、通知チャンネルを作成して管理するをご覧ください。
通知ポリシーの作成
その指標の値と静的なしきい値を比較するアラート ポリシーを作成するには、次の手順を行います。
Google Cloud コンソールで [Monitoring] を選択するか、次のボタンをクリックします。
[Monitoring] に移動ナビゲーション パネルで notifications [アラート] を選択し、[ポリシーを作成] をクリックします。
モニタリング対象の時系列を選択します。
[指標の選択] をクリックし、メニューを移動してリソースタイプと指標タイプを選択し、[適用] をクリックします。
メニューのオプションを減らすには、フィルタバーに目的の指標タイプまたはリソースタイプの名前を入力します。たとえば、フィルタバーに「VM instance」と入力すると、VM インスタンスの指標タイプのみが表示されます。「CPU」と入力すると、名前に「CPU」が含まれる指標タイプのみがメニューに表示されます。
組み込み指標またはユーザー定義指標をモニタリングできます。
メニューにない指標のモニタリング方法については、メニューにない指標をご覧ください。
省略可: 前の手順で選択した指標とリソースタイプに一致する時系列のサブセットをモニタリングするには、[フィルタを追加] をクリックします。フィルタ ダイアログで、フィルタに使用するラベル、コンパレータ、フィルタ値を選択します。たとえば、フィルタ
zone =~ ^us.*.a$
はゾーン名がus
で始まりa
で終わるすべての時系列データに一致する正規表現を使用します。 詳細は、選択した時系列をフィルタするをご覧ください。省略可: 時系列のポイントの配置方法を変更するには、データの変換セクションで、ローリング ウィンドウおよび ローリング ウィンドウ関数を設定します。
これらのフィールドは、ウィンドウに記録されるポイントの組み合わせ方を指定します。たとえば、ウィンドウが 15 分でウィンドウ関数が
max
であるとします。アライメントされたポイントは、直近 15 分間のすべてのポイントの最大値です。詳細については、アライメント: 系列内の正則化をご覧ください。[ローリング ウィンドウ関数] フィールドを使用して [percent change] を使用して、指標値の変化率をモニタリングすることもできます。詳細については、変化率をモニタリングするをご覧ください。
省略可: ポリシーによってモニタリング対象の時系列の数を減らす場合や、時系列のコレクションのみをモニタリングする場合は、時系列を結合します。たとえば、各 VM インスタンスの CPU 使用率をモニタリングする代わりに、ゾーン内のすべての VM の CPU 使用率の平均を計算し、その平均値をモニタリングすることもできます。デフォルトでは、時系列は結合されません。 一般的なことについては、縮小: 時系列の結合をご覧ください。
すべての時系列を結合するには、次の操作を行います。
- [時系列間] セクションで、expand_more [開く] をクリックします。
- [時系列集計] フィールドを
none
以外の値に設定します。 たとえば、時系列の平均値を表示するには、mean
を選択します。 - [時系列のグループ化の基準] フィールドが空であることを確認します。
ラベル値で時系列を結合またはグループ化するには、次の操作を行います。
- [時系列間] セクションで、expand_more [開く] をクリックします。
- [時系列集計] フィールドを
none
以外の値に設定します。 - [時系列のグループ化の基準] フィールドで、グループ化するラベルを選択します。
たとえば、
zone
ラベルでグループ化し、集計フィールドをmean
に設定すると、グラフには、データが存在するゾーンごとに 1 つの時系列が表示されます。特定のゾーンに表示される時系列は、そのゾーンを含むすべての時系列の平均です。[Next(次へ)] をクリックします。
条件のトリガーを構成します。
[条件タイプ] フィールドはデフォルト値の [しきい値] のままにします。
[Alert trigger] メニューの値を選択します。このメニューを使用すると、条件をトリガーする前にしきい値に違反する必要がある時系列のサブセットを指定できます。
[しきい値の位置] と [しきい値] を使用して、指標の値がしきい値に違反するタイミングを入力します。たとえば、これらの値を [しきい値より上] と [
0.3
] に設定すると、0.3
より高い測定値はしきい値に違反します。省略可: 測定値がしきい値に違反してアラートがインシデントを生成するまでの期間を選択するには、[詳細オプション] を開いて [再テスト ウィンドウ] メニューを使用します。
デフォルト値は [再テストなし] です。この設定では、1 回の測定で通知を行えます。詳細と例については、アライメント期間と期間の設定をご覧ください。
省略可: データの受信が停止したときに Monitoring が条件を評価する方法を指定するには、[詳細オプション] を開いて [Evaluation missing data] メニューを使用します。
[再テスト ウィンドウ] の値が [再テストなし] の場合は、[評価の欠落データ] メニューが無効になります。
Google Cloud コンソール
[欠落データの評価] フィールドSummary 詳細 欠落データがない 対応待ちのインシデントはオープンのままです。
新しいインシデントはオープンされません。条件が満たされている場合、データが到着しなくなっても、条件は引き続き満たされます。この条件でインシデントが対応待ちの場合、インシデントは対応待ちのままになります。インシデントが対応待ちで、データが送られてこない場合、自動クローズ タイマーは 15 分以上の時間をおいて開始されます。タイマーの期限が切れると、インシデントはクローズされます。
条件が満たされていない場合、データが到着しなくなっても、条件は引き続き満たされません。
欠落データポイントが、ポリシーに違反する値として扱われる 対応待ちのインシデントはオープンのままです。
新しいインシデントをオープンできます。条件が満たされている場合、データが到着しなくなっても、条件は引き続き満たされます。この条件でインシデントが対応待ちの場合、インシデントは対応待ちのままになります。インシデントが対応待ちで、自動クローズ期間に 24 時間を加えた期間にデータが到着しない場合、インシデントはクローズされます。
条件が満たされない場合は、この設定により、指標しきい値の条件が
metric-absence condition
のように動作します。再テストの時間枠で指定された時間内にデータを受信しない場合は、条件が満たされたと評価されます。条件が 1 つのアラート ポリシーでは、条件が満たされるとインシデントが開始されます。欠落データポイントが、ポリシーに違反しない値として扱われる 対応待ちのインシデントはクローズされます。
新しいインシデントはオープンされません。条件が満たされている場合、データの受信が停止すると、その条件は満たされなくなります。この条件のインシデントが対応待ちの場合、インシデントはクローズされます。
条件が満たされていない場合、データが到着しなくなっても、条件は引き続き満たされません。
[Next(次へ)] をクリックします。
省略可: 複数の条件を持つアラート ポリシーを作成します。
ほとんどのポリシーは、1 つの指標タイプをモニタリングします。たとえば、ポリシーで VM インスタンスに書き込まれたバイト数をモニタリングする場合があります。複数の指標タイプをモニタリングする場合は、複数の条件を持つポリシーを作成します。各条件では 1 つの指標タイプがモニタリングされます。条件を作成したら、条件を組み合わせる方法を指定します。詳細については、複数の条件を持つポリシーをご覧ください。
複数の条件を持つアラート ポリシーを作成するには、次の操作を行います。
- 追加する条件ごとに、[条件を追加] をクリックして条件を構成します。
- [次へ] をクリックし、条件を組み合わせる方法を構成します。
- [次へ] をクリックして通知とドキュメントの設定に進みます。
通知とドキュメントを構成します。
[通知チャネル] メニューを開いて通知チャネルを選択します。 冗長性を確保するために、複数のタイプの通知チャンネルをアラート ポリシーに追加することをおすすめします。詳細については、通知チャンネルを管理するをご覧ください。
インシデントがクローズされたときに通知を受け取るには、[Notify on incident closure] を選択します。 デフォルトでは、Google Cloud コンソールでアラート ポリシーを作成すると、インシデントが作成されたときにのみ通知が送信されます。
省略可: データの受信が停止してからインシデントがクローズされるまでの Monitoring の待機時間を変更するには、[インシデントの自動クローズ期間] メニューからオプションを選択します。 デフォルトでは、データの受信が停止すると、Monitoring は対応待ちのインシデントがクローズされるまで 7 日間待機します。
省略可: アラート ポリシーにカスタムラベルを追加するには、[Policy user labels] セクションで、次の操作を行います。
- [ラベルを追加] をクリックして、[キー] フィールドにラベルの名前を入力します。ラベル名の先頭は小文字にする必要があり、小文字、数字、アンダースコア、ダッシュを使用できます。たとえば、「
severity
」と入力します。 - [値] をクリックし、ラベルの値を入力します。ラベルの値には、英小文字、数字、アンダースコア、ダッシュを使用できます。たとえば、「
critical
」と入力します。
ポリシーラベルを使用してアラートを管理する方法については、アラートにラベルでアノテーションを付けるをご覧ください。
- [ラベルを追加] をクリックして、[キー] フィールドにラベルの名前を入力します。ラベル名の先頭は小文字にする必要があり、小文字、数字、アンダースコア、ダッシュを使用できます。たとえば、「
省略可: 通知付きのカスタム ドキュメントを指定する場合は、その内容を [ドキュメント] セクションに入力します。ドキュメントのフォーマットには Markdown を使用できます。ポリシー自体から情報を pull してドキュメントの内容を調整するには、変数を使用できます。 たとえば、
Addressing High CPU Usage
などのタイトルと、プロジェクトを識別する詳細をドキュメントに含めることができます。## Addressing High CPU Usage This note contains information about high CPU Usage. You can include variables in the documentation. For example: This alert originated from the project ${project}, using the variable $${project}.
通知が作成されると、Monitoring によって変数が通知の値に置き換えられます。この値は通知でのみ変数に置き換えられます。プレビュー ペインと Google Cloud コンソールの他の場所では、マークダウンの書式のみが表示されます。
詳細については、ユーザー定義のドキュメントでアラートにアノテーションを付けるとチャネル コントロールの使用をご覧ください。
[アラート名] をクリックして、アラート ポリシーの名前を入力します。
[ポリシーを作成] をクリックします。
選択した時系列をフィルタする
モニタリング対象となっているデータの量を減らすには、フィルタ条件を指定するか、集計を適用します。フィルタにより、一定の条件を満たす時系列のみが使用されるようになります。フィルタを適用すると、評価する時系列が少なくなり、アラートのパフォーマンスが向上します。
複数のフィルタ条件を指定すると、すべての条件を満たす時系列のみがモニタリングされます。
フィルタを追加するには、[フィルタを追加] をクリックし、ダイアログの項目を入力し、[完了] をクリックします。ダイアログで、[Filter] フィールドを使用してフィルタ条件を選択します。たとえば、リソース グループ、名前、リソースラベル、ゾーン、指標ラベルでフィルタリングできます。フィルタ条件を選択したら、比較演算子と値を選択してフィルタを完了します。次の表に、比較演算子、その意味、例を示します。
演算子 | 意味 | 例 |
---|---|---|
= |
平等 | resource.labels.zone = "us-central1-a |
!= |
等しくない | resource.labels.zone != "us-central1-a" |
=~ |
正規表現 2 等式 | monitoring.regex.full_match("^us.*") |
!=~ |
正規表現 2 に一致しない | monitoring.regex.full_match("^us.*") |
starts_with |
値の先頭に次の項目が配置されている | resource.labels.zone = starts_with("us") |
ends_with |
値の末尾に次の項目が配置されている | resource.labels.zone = ends_with("b") |
has_substring |
値が次の項目を含む | resource.labels.zone = has_substring("east") |
one_of |
次のいずれか | resource.labels.zone = one_of("asia-east1-b", "europe-north1-a") |
!starts_with |
値の先頭に次の項目が配置されていない | resource.labels.zone != starts_with("us") |
!ends_with |
値が次の項目で終わらない | resource.labels.zone != ends_with("b") |
!has_substring |
値が次の項目を含まない | resource.labels.zone != has_substring("east") |
!one_of |
値が次の項目のいずれにも一致しない | resource.labels.zone != one_of("asia-east1-b", "europe-north1-a") |
トラブルシューティング
このセクションでは、トラブルシューティングのヒントを紹介します。
利用可能な指標のメニューに指標が表示されない
[指標の選択] メニューにない指標をモニタリングするには、次のいずれかを行います。
Google Cloud 指標をモニタリングするアラート ポリシーを作成するには、[指標の選択] メニューを開いて、[有効なリソースと指標のみを表示] をオフに切り替えます。無効にすると、Google Cloud サービスのすべての指標とデータのあるすべての指標がメニューに表示されます。
カスタム指標タイプのアラートを、カスタム指標タイプによってデータが生成される前に構成するには、Monitoring フィルタを使用して指標タイプを指定する必要があります。
- [?] を選択して[指標の選択] ヘッダーをクリックして、ツールチップの [ダイレクト フィルタモード] を選択します。
モニタリング フィルタまたは時系列セレクタを入力します。構文については、次のドキュメントをご覧ください。
変化率をモニタリングする
指標値の変化率をモニタリングするには、[ローリング ウィンドウ関数] フィールドを [percent change] に設定すると、Monitoring により指標の変化率がしきい値と比較されます。[percent change] 関数を選択すると、Monitoring は次の処理を行います。
- 時系列に
DELTA
またはCUMULATIVE
の指標の種類がある場合、その時系列はGAUGE
の指標の種類を持つ時系列に変換されます。変換の詳細については、種類、タイプ、コンバージョンをご覧ください。 - 直近 10 分間のウィンドウの平均値を、再テストの前の 10 分間のウィンドウの平均値と比較することで変化率を計算します。
10 分間のルックバック ウィンドウは固定値です。変更はできません。ただし、条件を作成するときに再テスト ウィンドウを指定できます。
次のステップ
- 時系列の値を動的しきい値と比較するポリシーを作成するには、MQL を使用する必要があります。詳細については、MQL を使用して動的重大度を作成するをご覧ください。
このページの手順は、すべてのアラート ポリシーに適用されます。次のドキュメントでは、特定の構成に関するガイダンスを提供しています。