このドキュメントでは、スヌーズについて説明します。これによって、Cloud Monitoring で特定の期間にインシデントが作成され、通知が発行されないようにできます。スヌーズは、 Google Cloud コンソール、Google Cloud CLI、Cloud Monitoring API を使用して作成および管理できます。
アラート ポリシーをスヌーズするタイミング
インシデントの作成および通知の送信を一時的に防止したい場合や、対応待ちのインシデントに対する繰り返し通知の送信を防止したい場合は、スヌーズを作成します。たとえば、次の状況でスヌーズを作成できます。
- 計画メンテナンスがある。
- サービスの停止がエスカレーションされていて、これ以上のインシデントと通知を防止したい。
スヌーズの仕組み
アラート ポリシーのスヌーズが有効になっている場合、Monitoring はスヌーズされたアラート ポリシーの通知の送信やインシデントの作成を行いません。指標ベースまたは SQL ベースのアラート ポリシーにスヌーズを適用すると、Monitoring はアラート ポリシーに関連するすべてのインシデントのクローズも行います。
スヌーズは、次のいずれかの方法で作成できます。
スヌーズを複数のアラート ポリシーに適用するには、[アラート] ページ、gcloud CLI、または Cloud Monitoring API からスヌーズを作成します。スヌーズの開始時刻の選択やスヌーズの期間の定義を行うこともできます。
スヌーズを複数のアラート ポリシーに適用すると、メンテナンスの計画があり、スヌーズを特定の時間に開始して所定の期間続行する必要がある場合に便利です。
特定のインシデントにスヌーズを適用するには、対応待ちのインシデントの [インシデントの詳細] ページからスヌーズを作成します。この場合、期間を除くすべてのスヌーズ フィールドが事前構成されています。
特定のインシデントからスヌーズを適用すると、サービスの停止がエスカレーションされていて、関連する問題が解決するまでアラート ポリシーをすぐにスヌーズする必要がある場合に役立ちます。
スヌーズのコンポーネント
スヌーズには次のコンポーネントがあります。
名前。このフィールドを使用してスヌーズの目的を記述することをおすすめします。
スヌーズがアクティブになるタイミングを決定する期間。開始時刻と期間で指定します。アクティブなスヌーズがあると、Monitoring は、そのスヌーズの条件に一致するアラート ポリシーに対してインシデントの作成や通知の発行を行えません。アクティブな期間以外は、スヌーズは非アクティブです。非アクティブなスヌーズは、インシデントの作成と通知の送信のタイミングに影響しません。
スヌーズの条件。次のものがあります。
スヌーズが適用されるアラート ポリシーのリスト。
スヌーズが 1 つのアラート ポリシーに適用される場合に使用できる、オプションのラベルベースのフィルタ。フィルタのラベルを定義すると、そのラベルに一致するインシデントをスヌーズします。たとえば、フィルタに特定の仮想マシン(VM)インスタンス ID のラベルが含まれていて、スヌーズが有効になっているとします。アラート ポリシーは、フィルタにリストされている VM を除くすべての VM に対してインシデントを作成できます。
ラベルベースのフィルタには、リソースラベルと指標ラベルを含めることができます。アラート ポリシーが PromQL ベースでない場合、フィルタにはメタデータ ラベルを含めることもできます。
スヌーズがアラート ポリシーの条件に与える影響
次の表は、単一条件のアラート ポリシー内の条件のステータスと、インシデントが作成され通知が送信されるタイミングの関係を示しています。
状態 | アクション |
---|---|
条件が満たされていない | 既存の動作 インシデントが開いている場合は、インシデントをクローズして、インシデント終了通知を送信します。 |
条件が満たされ、かつ ポリシーがアクティブなスヌーズに関連付けられていない |
既存の動作 インシデントが存在しない場合は、インシデントを作成して通知を送信します。 |
条件が満たされ、かつ ポリシーがアクティブなスヌーズに関連付けられている |
|
複数の条件を含むアラート ポリシーにスヌーズが適用されると、まず条件を組み合わせるルールが適用されます。次に、スヌーズに関連付けられたルールが適用されます。
スヌーズの作成とポリシーの無効化との違い
アラート ポリシーのコレクションから短い間隔で通知が送信されないようにするには、各アラート ポリシーを手動で無効にするか、スヌーズを作成します。
アラート ポリシーを手動で無効にすると、その期間の終了時に無効化された各ポリシーを手動で有効にする必要があります。また、これらのアクションをスケジュールできるのは、Cloud Monitoring API を使用して、特定の時間に API 呼び出しを行うように構成した場合のみです。
スヌーズを作成すると、アクティブな期間をスケジュールできます。また、スヌーズは複数のアラート ポリシーに適用できます。スヌーズが非アクティブな場合、またはアクティブなスヌーズが終了した場合、スヌーズに関連付けられているアラート ポリシーは通常どおりに動作します。つまり、これらのアラート ポリシーはインシデントを作成して通知を送信できます。
定期的なメンテナンスの時間枠がある場合は、時間枠ごとに、通知を送信しないアラート ポリシーを手動で無効または有効にできます。ただし、メンテナンスの時間枠の一つにスヌーズを作成すると、そのスヌーズをコピーして、コピーの開始時刻と期間を更新できます。つまり、1 つのスヌーズを作成してコピーすることで、同じアラート ポリシー コレクションに今後予定されている一連のスヌーズをスケジュールできます。
アラート ポリシーが無効または有効になったときの記録を表示するには、 Google Cloud プロジェクトの監査ログに対してクエリを実行する必要があります。ただし、スヌーズを作成すると、 Google Cloud プロジェクトのスヌーズの履歴にそのスヌーズが追加されます。 Google Cloud コンソールを使用して、過去のスヌーズ、アクティブなスヌーズ、今後予定されているスヌーズを示す履歴レコードを表示できます。
制限事項
スヌーズの期間は、分単位の倍数となる単一のインターバルにする必要があります。
スヌーズは 16 個のアラート ポリシーにのみ適用できます。
スヌーズの条件は変更できません。
PromQL ベースの条件でアラート ポリシーにスヌーズを適用する場合、フィルタにメタデータ ラベルを使用できません。