ダッシュボードにイベントを表示する

このドキュメントでは、イベント アノテーションを表示するようにダッシュボードを構成する方法について説明します。イベントは、システムのオペレーションに影響するデプロイやクラッシュなどのアクティビティです。イベント アノテーションを表示すると、問題のトラブルシューティングでさまざまなソースのデータを関連付けることができます。

イベント アノテーションについて

Google Cloud コンソールの [ダッシュボード] ページに一覧表示されているほとんどのダッシュボードでイベントを表示できます。同様に、Compute Engine や Google Kubernetes Engine などのサービス固有の [オブザーバビリティ] タブを構成して、イベントを表示できます。ダッシュボードまたは [オブザーバビリティ] タブに表示されるイベントタイプを構成するには、Google Cloud コンソールを使用します。作成したダッシュボード(カスタム ダッシュボードと分類)で Cloud Monitoring API を使用することもできます。

Cloud Monitoring API を使用するか、イベントタイプの選択を保存するアクションを実行しない限り、選択は現在のセッションにのみ適用されます。Google Cloud コンソールを使用する場合は、選択した項目を固定すると保存されます。

イベントタイプのリスト、トラブルシューティングのリファレンスなどの情報については、イベントタイプのページをご覧ください。

イベントタイプを選択していない場合でも、ダッシュボードまたは [オブザーバビリティ] タブに次のイベントタイプが表示されることがあります。

自動的に追加されたイベントタイプは、推奨イベントタイプになります。これらのイベントタイプを推奨状態のままにするか、ダッシュボード JSON に保存するか、却下して推奨事項を削除します。保存されているイベントタイプを確認するには、[アノテーション] メニューを開き、[固定] セクションを表示します。

イベントの識別方法

ダッシュボードでは、さまざまなデータのソースに対してクエリを実行し、ダッシュボードに表示するイベントを特定します。

  • アラート イベントは Monitoring によって識別されます。アラート イベントは、インシデントが開かれた日時に関する情報を提供します。

  • Personalized Service Health イベントは、Monitoring が Service Health API に送信するクエリによって識別されます。 これらのイベントは、Google Cloud サービスの停止が発生したことを示します。

  • 他のすべてのイベントタイプは、Google Cloud プロジェクトで Cloud Logging シンクを通過するログエントリを分析することで特定されます。これらのログエントリには、プロジェクトによって生成されたログエントリと、プロジェクトにルーティングされたログエントリが含まれます。これらのイベントのいずれかが発生したときに通知を受け取るには、ログベースのアラート ポリシーを作成します。アラート ポリシーで、[イベントの種類] ページに表示されているクエリを使用します。

イベントの表示方法

すべてのイベントについて、それらのイベントが発生すると、ダッシュボードのグラフにアノテーションが付けられます。ログエントリの分析によって特定されたイベントは、1 つの時間参照で表示されます。 一方、Service Health イベントは開始時間とともに表示され、イベントの期間中はグラフの背景が変更されます。これらのイベントにはハート形アイコンも表示されます。

次のスクリーンショットは、ログエントリを分析して特定された複数のイベントと 1 つの Service Health イベントを示すグラフを示しています。

警告イベントと情報イベントのアノテーションを示すグラフ。

上のスクリーンショットに示すように、イベントのツールチップには次のような情報が含まれています。

  • イベント名。
  • イベントの日付と開始時刻。
  • Service Health イベントの場合、影響を受けるプロダクトとロケーションの数を示すチップ。影響を受けるプロダクトまたはロケーションを一覧参照するには、対応するチップの上にポインタを置きます。
  • [表示] ボタンを選択すると、イベントに関する詳細情報を表示するページが開きます。たとえば、ログ エクスプローラを開いてログエントリを表示できるようにする、または Service Health イベントの詳細ページを開きます。

ダッシュボード フィルタは、ダッシュボードに表示されるデータを制限します。通常、時系列データとイベントの両方がフィルタリングされます。

始める前に

  • ダッシュボードでイベントを表示および表示するために必要な権限を取得し、アラート ポリシーを作成するには、プロジェクトに対する次の IAM ロールの付与を管理者に依頼してください。

    • ダッシュボードとアラート ポリシーを表示および作成するには: モニタリング編集者(roles/monitoring.editor)。
    • Google Cloud プロジェクトで作成されたデータアクセス以外のログエントリから識別されたイベントを確認または表示する: ログビューア(roles/logging.viewer)。
    • Google Cloud プロジェクトで作成されたログエントリから識別されたイベントを確認または表示する: プライベート ログビューア(roles/logging.privateLogViewer)。
    • Service Health イベントを表示する: Personalized Service Health 閲覧者roles/servicehealth.viewer

    ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。

    必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。

  • ダッシュボードに Service Health イベントを表示するには、Service Health API を有効にします。

    Enable the API

イベントを表示

このセクションでは、イベントを表示するためにダッシュボードまたは [オブザーバビリティ] タブを構成する方法について説明します。

イベントを表示するようにダッシュボードを構成する

このセクションでは、Google Cloud コンソールの [ダッシュボード] ページに表示される、イベントを表示するダッシュボードを構成する方法について説明します。

ログ エクスプローラまたはログベースのアラート ポリシーで使用できるイベントタイプ、トラブルシューティングのリファレンス、クエリのリストについては、イベントタイプのページをご覧ください。

Console

ダッシュボードにイベントを表示する方法は次のとおりです。

  1. Google Cloud コンソールで [ダッシュボード] ページに移動します。

    [ダッシュボード] に移動

    検索バーを使用してこのページを検索する場合は、小見出しが [Monitoring] である結果を選択します。

  2. 表示するダッシュボードを選択します。
  3. ダッシュボードのツールバーで [アノテーション] をクリックし、ダッシュボードに表示するイベントタイプを選択します。
  4. 次のいずれかを行います。

    • 選択内容を保存して、ダッシュボードを再読み込みしたときにイベントが表示されるようにするには、[選択内容を固定] をクリックします。ダッシュボードで自動保存を無効にしている場合は、ダッシュボードのツールバーに移動して [保存] をクリックします。

      選択内容を固定すると、ダッシュボードの JSON 定義が変更されます。そのため、ダッシュボードを再び開くと、選択内容が読み込まれ、対応するイベントタイプのアノテーションがダッシュボードに表示されます。

    • 現在のセッションのイベントタイプのみを表示するには、[適用] をクリックします。

    表示するイベントタイプのリストを更新すると、Cloud Monitoring がクエリを発行します。これには少し時間がかかります。その後、ダッシュボードのグラフにアノテーションが追加されます。

  5. イベントの概要を表示するか、またはログエントリへのリンクにアクセスするには、ポインタを使用してツールチップを有効にします。

API

イベントを表示するようにカスタム ダッシュボードを構成するには、Dashboard オブジェクトに annotations フィールドを含めます。annotations フィールドには、DashboardAnnotations オブジェクトのインスタンスが含まれており、次の 2 つのフィールドが含まれています。

  • defaultResourceName フィールドには、イベントを検索する Google Cloud プロジェクトのダッシュボード レベルのデフォルトが表示されます。このフィールドを指定しない場合は、選択したプロジェクトが検索されます。

  • EventAnnotation オブジェクトの配列。各オブジェクトには次が含まれます。

    • displayName フィールド。イベント固有の切り替えでラベルを定義できます。このフィールドが指定されていない場合、またはこのフィールドの値が空の文字列の場合は、イベントのデフォルト名が表示されます。
    • enabled フィールド。イベントの切り替え値を制御します。 true の場合、切り替えは on の位置にあり、イベントがダッシュボードに表示されます。false の場合、切り替えは off の位置にあります。
    • eventType フィールド。EventType 列挙型の値が含まれます。
    • filter フィールド。イベント固有のクエリに追加するクエリを指定できます。このフィールドの値が空の文字列の場合、イベント固有のクエリが使用されます。
    • resourceNames フィールド。イベントを検索する Google Cloud プロジェクトのリストを定義できます。このフィールドが空の配列の場合は、選択したプロジェクトが検索されます。

以下は、クラスタ更新イベントの annotations オブジェクトの例です。この例の filter フィールドは、イベントを特定のクラスタに制限します。

"annotations": {
  "defaultResourceNames": [],
  "eventAnnotations": [
    {
      "displayName": "",
      "enabled": true,
      "eventType": "GKE_CLUSTER_UPDATE",
      "filter": "resource.labels.cluster_name=my-cluster",
      "resourceNames": []
    }
  ]
}

Cloud Monitoring API を使用してダッシュボードを作成する方法の詳細については、API を使用してダッシュボードを作成、管理する例: ダッシュボードでイベントを有効にするをご覧ください。

[オブザーバビリティ] タブを構成してイベントを表示する

このセクションでは、イベントを表示するように [オブザーバビリティ] タブを構成する方法について説明します。Compute Engine や Google Kubernetes Engine などの一部のサービスでは、指標とログデータを表示する [オブザーバビリティ] タブを備えています。

Console

イベントを表示するように [オブザーバビリティ] タブを構成する手順は次のとおりです。

  1. サービスまたはプロダクトの [オブザーバビリティ] タブに移動します。

    たとえば、[Kubernetes クラスタ] ページに移動して、[オブザーバビリティ] タブを選択します。同様に、[Kubernetes ワークロード] ページまたは仮想マシン(VM)インスタンスの詳細ページに移動し、[オブザーバビリティ] タブを選択します。

  2. [ダッシュボード] メニューが [事前定義] に設定されていることを確認します。 イベントはカスタム ダッシュボードに表示できません。

  3. ツールバーで [アノテーション] をクリックし、ダイアログを完了します。

    表示するイベントのリストを更新すると、イベントデータの取得のためにクエリが発行され、ダッシュボードが更新されます。

    [アノテーション] メニューが表示されない場合、タブはイベントを表示するように構成できません。

API

利用できません。

イベントの詳細を表示する

イベントのアノテーションが表示されているグラフを表示している場合、ツールチップ内のリンクを使用して追加情報にアクセスできます。

特定のイベントの詳細を表示するには、[表示] をクリックします。

[表示] ボタンによって開かれる Google Cloud コンソール ページは、イベントタイプによって決まります。たとえば、稼働時間チェック イベントの場合、このボタンを押すと、稼働時間チェックのダッシュボードが開きます。イベントの種類によっては、ログ エクスプローラが開く場合があります。

アラート ポリシーを作成する

Google Cloud プロジェクトで Cloud Logging シンクを通過するログエントリを分析してイベントが識別されると、それらのイベントが発生したときにログベースのアラートの設定] をタップすることで通知を受け取ることができます。ログベースのアラート ポリシーは、ログエントリを受け取るとクエリを実行します。クエリで空でない結果が返されると、インシデントが作成され、通知が送信されます。

Console

ログベースのアラートを作成するには、次の操作を行います。

  1. 通知チャンネルを構成していない場合は、次の手順を行います。

    1. Google Cloud コンソールで、 [アラート] ページに移動します。

      [アラート] に移動

      検索バーを使用してこのページを検索する場合は、小見出しが [Monitoring] である結果を選択します。

    2. [通知チャネルを編集] をクリックします。
    3. 構成する通知チャネルの種類に移動し、[Add new] をクリックして、ダイアログを完了します。
  2. Google Cloud コンソールで、[ログ エクスプローラ] ページに移動します。

    [ログ エクスプローラ] に移動

    検索バーを使用してこのページを検索する場合は、小見出しが [Logging] である結果を選択します。

  3. ツールバーで [アラートを作成] を選択します。

  4. アラート ポリシーの名前を入力し、[Next] をクリックします。

  5. [Define log entries to alert on] セクションでクエリを入力するか、[Create Alert] を選択したときに [Query] ペインからコピーしたクエリを更新します。

    イベントタイプのページには、イベントタイプごとに、ログベースのアラート ポリシーで使用するのに適したクエリが一覧表示されます。

  6. ダイアログの項目を入力し、[保存] をクリックします。

API

Cloud Monitoring API を使用してログベースのアラート ポリシーを作成するには、次の操作を行います。

  1. アラート ポリシーの条件に含めるクエリを特定します。イベントタイプのページには、イベントタイプごとに、ログベースのアラート ポリシーで使用するのに適したクエリが一覧表示されます。

  2. アラート ポリシーの表現を含む JSON ファイルを作成します。この手順と例の詳細については、アラート ポリシーの設計をご覧ください。

  3. alertPolicies.create API メソッドを呼び出します。 たとえば、gcloud alpha monitoring policies create コマンドを実行します。

イベントを非表示

Console

すべてのイベントを非表示にするには、ダッシュボード ツールバーで [アノテーション] をクリックし、[消去]、[適用] の順に選択します。

1 つのタイプのイベントを非表示にするには、 [アノテーション] をクリックし、そのイベントタイプの選択を解除して、[適用] を選択します。

API

カスタム ダッシュボードで 1 種類のイベントを非表示にするには、イベントタイプの EventAnnotation オブジェクトを見つけてから、enabled フィールドを false に設定します。

Cloud Monitoring API の使用方法の詳細については、API を使用してダッシュボードを作成、管理するをご覧ください。

次のステップ