MQL を使用してクエリベースのアラートを設定する
このドキュメントでは、Monitoring Query Language(MQL)を使用して Google Cloud コンソールで指標を調べ、グラフを作成し、クエリベースのアラートを設定する方法について説明します。Cloud Monitoring API を使用する場合は、アラート ポリシーの条件の作成をご覧ください。
このドキュメントでは、次の操作を行います。
Compute Engine インスタンスを作成します。
コードエディタに移動します。
クエリを実行してグラフを作成する。
クエリベースのアラートを設定する。
始める前に
MQL を使用するには、Google Cloud プロジェクトを作成して課金を有効にする必要があります。
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
次に、権限と通知チャンネルを構成します。
-
MQL ベースの条件でアラート ポリシーを作成するために必要な権限を取得するには、管理者にプロジェクトに対するモニタリング編集者(
roles/monitoring.editor
)IAM ロールを付与するよう依頼してください。ロールの付与の詳細については、アクセス権の管理をご覧ください。必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。
Cloud Monitoring のロールの詳細については、Identity and Access Management を使用してアクセスを制御するをご覧ください。
アラート ポリシー、MQL、コードエディタの一般的なコンセプトを理解しておいてください。詳しくは次の記事をご覧ください。
Compute Engine インスタンスを作成する
Google Cloud リソースから指標を収集するには、次の手順に従って Compute Engine インスタンスを作成します。
Google Cloud コンソールのメニューで、[Compute Engine] を選択します。
[インスタンスを作成] を選択し、[作成] をクリックします。
コードエディタに移動する
MQL の使用を開始するには次の操作を行います。
-
Google Cloud コンソールで、[leaderboard Metrics Explorer] ページに移動します。
検索バーを使用してこのページを検索する場合は、小見出しが [Monitoring] である結果を選択します。
- クエリビルダー ペインのツールバーで、[codeMQL] または [codePROMQL] という名前のボタンを選択します。
- [言語] 切り替えで [MQL] が選択されていることを確認します。言語切り替えボタンは、クエリの書式設定を行うのと同じツールバーにあります。
コードエディタを使用して、MQL クエリを作成、テスト、実行します。
クエリを実行してグラフを作成する
インスタンスの CPU 使用率をグラフ化するクエリを作成します。
次のクエリをコードエディタに貼り付けます。
fetch gce_instance::compute.googleapis.com/instance/cpu/utilization | { top 1, max(val()) ; bottom 1, min(val()) } | union
このクエリは、グラフ化用に最大 CPU 使用率と最小 CPU 使用率を持つ時系列を選択します。このクエリの詳細については、選択を
union
で組み合わせるをご覧ください。[RUN QUERY] をクリックします。グラフには、インスタンスの最大と最小の CPU 使用率を示す 2 行が表示されます。
グラフを保存するには、[グラフを保存] をクリックします。グラフに名前を付けて、既存のダッシュボードまたは新しいダッシュボードに追加します。[保存] をクリックします。
グラフにアクセスするには、[モニタリングの概要] ページに移動するか、ダッシュボードに保存した場合は、ダッシュボードのページに移動します。
クエリベースのアラートを設定する
クエリの結果をモニタリングするアラート ポリシーを作成できます。このようなアラート ポリシーを作成する手順は次のとおりです。
-
Google Cloud コンソールで notifications [アラート] ページに移動します。
検索バーを使用してこのページを検索する場合は、小見出しが [Monitoring] である結果を選択します。
[アラート] ページで、[通知チャンネルの編集] をクリックします。このステップでは、アラート通知を受け取るメールアドレスを構成します。
[通知チャンネル] ページで [メール] に移動し、[新しく追加] をクリックします。
[メールアドレス] フィールドに、アラート通知の送信先のメールアドレスを入力します。
[表示名] フィールドに、このチャンネルの簡単な説明(「Alert on-call」など)を入力します。
[保存] をクリックします。
ページヘッダーの [arrow_back 戻る] をクリックして、[アラート] ページに戻ります。
[アラート] ページで、[ポリシーを作成] をクリックします。
このページでは、アラート ポリシーの作成手順について説明します。
- アラートの内容の説明。
- この問題に対処する方法に関する情報の提供。
- アラートの通知チャネルの指定。
アラートの内容を記述するには、[新しい条件] をクリックします。この操作を行うと、フォームベースの条件エディタが表示されます。
[ポリシー構成モード] で、[コードエディタ(MQL または PromQL)] を選択します。
[言語] 切り替えで [MQL] が選択されていることを確認します。言語切り替えボタンは、クエリの書式設定を行うのと同じツールバーにあります。
コードエディタで、モニタリングするデータを選択するクエリを入力します。次のクエリは、インスタンスの CPU 使用時間が 20 秒を超える状態が継続した場合にアラートをトリガーします。
fetch gce_instance::compute.googleapis.com/instance/cpu/usage_time | window 1m | condition val() > 20 's'
condition
オペレーションにより、アラートの対象となるパフォーマンスしきい値が確立されます。condition
やその他のアラート オペレーションの詳細については、MQL リファレンスのアラートをご覧ください。[自動実行] が有効になっている場合、MQL グラフには選択したデータとしきい値線が表示されます。
アラート トリガーを構成するには、[次へ] をクリックします。
[Alert trigger] メニューで、アラート ポリシーをトリガーするまでにアラート オペレーションを満たす必要がある時系列の数を選択します。次の基準から選択できます。
- 単一の時系列。
- 特定の数の時系列。
- 時系列の割合。
- すべての時系列。
省略可: [詳細オプション] メニューを開き、[この時間の長さに対して条件が満たされた場合にトリガー] フィールドで、値を入力または選択します。
このフィールドは、アラート ポリシーがトリガーされるまでに条件が満たされる必要がある期間を定義します。[再テスト ウィンドウ] は、MQL クエリで使用されるアライメント ウィンドウとは異なります。これらの値の関係について詳しくは、アライメント期間と継続時間をご覧ください。
条件の名前を入力します(「基本的な MQL 条件」など)。
通知、ドキュメント、アラート ポリシー名を設定するには、[次へ] をクリックします。
先ほど作成した通知チャンネルを選択します。
重大度レベルを選択します。
[ドキュメント] フィールドに、アラート通知とともに送信されるテキストを入力します。このテキストは通常、問題に対処するために役立つ情報とともに通知を示します。この演習では、「Your CPU usage has exceeded 20 seconds」と入力します。
[アラート ポリシー名] フィールドにアラート ポリシーの名前を入力します。この値により、さまざまなアラート ポリシーからの通知を区別できます。
[ポリシーを作成] をクリックしてポリシーを保存します。
クリーンアップ
このページで使用したリソースについて、Google Cloud アカウントに課金されないようにするには、次の手順を行います。
Google Cloud Console の Identity and Access Management ページに移動します。
[Shut down]
をクリックし、手順に従います。
次のステップ
- 詳しくは、コードエディタの使用方法をご覧ください。
- 一連の MQL の例を確認する。
- MQL ベースのアラート ポリシーについて確認する。
- Cloud Monitoring API から MQL クエリを呼び出す方法を確認する。
- MQL リファレンスで MQL の詳細を確認する。
- DevOps に関するリソースをお読みください。また、DORA 研究プログラムをご確認ください。