指標の概要

このページでは、Cloud Data Fusion インスタンスとパイプラインの健全性とパフォーマンスのモニタリングに役立つ指標について説明します。Cloud Monitoring を使用してこれらの指標をモニタリングします。指標は、パイプライン実行、インスタンスの詳細、API リクエスト、認可チェックに関する分析情報を提供します。

指標は、パイプライン指標またはインスタンス指標のいずれかに分類されます。

  • パイプライン指標は、実行ステータス、期間、レイテンシ、データ スループットなど、個々のパイプライン実行に関するデータを提供します。
  • インスタンス指標は、サービス可用性、デプロイされたパイプラインの数、API リクエスト数など、インスタンス内のパイプラインに関する集計情報を提供します。

指標ラベルとモニタリング対象リソースラベルを使用して、Monitoring で Cloud Data Fusion パイプラインとインスタンスの指標をフィルタして集計します。指標ビューをカスタマイズするときに、これらのラベルタイプのいずれかまたは両方を使用できます。

Cloud Data Fusion パイプラインの monitored-resource ラベル

次の Cloud Data Fusion パイプライン モニタリング対象リソースラベルを使用して、指標をフィルタして集計します。

ラベル名 説明
resource_container 顧客プロジェクトの ID。
org_id お客様のプロジェクトが属する組織の ID。
location インスタンスがホストされているゾーンまたはリージョン。
edition Cloud Data Fusion インスタンスのエディション。
is_private_ip_enabled インスタンスが内部 IP アドレスを使用するかどうか。
version インスタンスの Cloud Data Fusion データプレーン バージョン。
instance_id Cloud Data Fusion インスタンス ID。
namespace パイプラインの名前空間。
pipeline_id パイプライン ID。
run_id パイプラインの実行 ID。

パイプライン指標ラベル

Monitoring で次の Cloud Data Fusion 指標ラベルを使用して、指標をフィルタして集計します。

名前 指標 説明 指標ラベル
パイプラインの実行ステータス datafusion.googleapis.com/pipeline/v2/runs_completed_count 実行を完了したパイプラインの累積数。
  • complete_state
  • previous_state
  • program
  • provisioner
  • cluster_state
  • compute_profile_id
  • enable_rbac
  • private_service_connect_enabled
パイプラインの実行時間 datafusion.googleapis.com/pipeline/v2/pipeline_duration パイプラインの実行が完了するまでにかかった時間。
  • complete_state
  • program
  • provisioner
  • cluster_state
  • compute_profile_id
  • enable_rbac
  • private_service_connect_enabled
パイプライン開始のレイテンシ datafusion.googleapis.com/pipeline/v2/pipeline_start_latency パイプラインが Running 状態になるまでに要した時間。
  • program
  • provisioner
  • cluster_state
  • compute_profile_id
  • complete_state
  • enable_rbac
  • private_service_connect_enabled
プロビジョニングのレイテンシ datafusion.googleapis.com/pipeline/v2/dataproc/provisioning_latency Managed Service for Apache Spark クラスタのプロビジョニング レイテンシ。
  • provisioner
  • enable_rbac
  • private_service_connect_enabled
Dataproc API リクエスト datafusion.googleapis.com/pipeline/v2/dataproc/api_request_count Dataproc API リクエストの累積数。
  • provisioner
  • method
  • response_code
  • region
  • launch_mode
  • image_version
  • enable_rbac
  • private_service_connect_enabled
パイプラインのプレビュー実行時間 datafusion.googleapis.com/pipeline/v2/preview_duration プレビューの完了に要した時間。
  • complete_state
  • enable_rbac
  • private_service_connect_enabled
パイプラインの書き込みバイト数 datafusion.googleapis.com/pipeline/v2/write_bytes_count パイプラインによって書き込まれた累積バイト数。
  • enable_rbac
  • private_service_connect_enabled
パイプラインの読み取りバイト数 datafusion.googleapis.com/pipeline/v2/read_bytes_count パイプラインで読み取られた累積バイト数。
  • enable_rbac
  • private_service_connect_enabled
パイプラインのシャッフルされたバイト数 datafusion.googleapis.com/pipeline/v2/shuffle_bytes_count パイプラインでシャッフルされたバイト数の累積カウント。
  • enable_rbac
  • private_service_connect_enabled
処理されるプラグイン レコード数 datafusion.googleapis.com/pipeline/v2/plugin/incoming_records_count プラグインに入力されたレコードの累積数。
  • enable_rbac
  • private_service_connect_enabled
  • stage_name
処理済みのプラグイン レコード数 datafusion.googleapis.com/pipeline/v2/plugin/outgoing_records_count プラグインから終了したレコードの累積数。
  • enable_rbac
  • private_service_connect_enabled
  • stage_name

Cloud Data Fusion インスタンスの monitored-resource ラベル

Cloud Data Fusion バージョン 6.11.1.1 以降、InstanceV3datafusion.googleapis.com/InstanceV3)モニタリング対象リソースは、インスタンス レベルの指標のデフォルトのリソースタイプです。バージョン 6.11.1.1 以降にアップグレードされたすべての新しいインスタンスとインスタンスは、InstanceV3 を使用して指標とログを自動的に出力します。InstanceV3 リソース構造は、org_id ラベルと namespace ラベルが削除されているため、以前のバージョンとは異なります。

デフォルトでは、Cloud Data Fusion バージョン 6.11.1.1 以降では InstanceV2 指標の出力が無効になっています。ただし、既存のダッシュボードやクエリとの下位互換性が必要な場合は、Cloud Data Fusion REST API を使用して InstanceV3 とともに InstanceV2 の排出を再度有効にできます。

次の Cloud Data Fusion インスタンスのモニタリング対象リソースラベルを使用して、指標をフィルタリングして集計できます。

InstanceV3 モニタリング対象リソースのラベル

ラベル名 説明
resource_container 顧客プロジェクトの ID。
location インスタンスがホストされているゾーンまたはリージョン。
edition インスタンスのエディション。
is_private_ip_enabled インスタンスが内部 IP アドレスを使用するかどうか。
version インスタンスの Cloud Data Fusion データプレーン バージョン。
instance_id Cloud Data Fusion インスタンス ID。

InstanceV2 モニタリング対象リソースのラベル

ラベル名 説明
resource_container 顧客プロジェクトの ID。
org_id お客様のプロジェクトが属する組織の ID。
location インスタンスがホストされているゾーンまたはリージョン。
edition インスタンスのエディション。
is_private_ip_enabled インスタンスが内部 IP アドレスを使用するかどうか。
version インスタンスの Cloud Data Fusion データプレーン バージョン。
instance_id Cloud Data Fusion インスタンス ID。
namespace 名前空間名。

インスタンス指標ラベル

Monitoring で、次の Cloud Data Fusion 指標ラベルを使用して指標をフィルタして集計します。

InstanceV3 指標ラベル

名前 指標 説明 指標ラベル
サービスのステータス datafusion.googleapis.com/instance/v3/service_available Cloud Data Fusion サービスの可用性。
  • service
  • enable_rbac
  • private_service_connect_enabled
デプロイしたパイプライン数 datafusion.googleapis.com/instance/v3/pipelines デプロイされたパイプラインの数。
  • enable_rbac
  • private_service_connect_enabled
  • maintenance_window_enabled
同時実行中のパイプライン数 datafusion.googleapis.com/instance/v3/concurrent_pipelines_running 同時に実行されているパイプラインの数。
  • enable_rbac
  • private_service_connect_enabled
同時実行パイプラインの起動数 datafusion.googleapis.com/instance/v3/concurrent_pipelines_launched プロビジョニング中または開始中の状態のパイプラインの数。
  • enable_rbac
  • private_service_connect_enabled
受信した CDAP REST API リクエスト数 datafusion.googleapis.com/instance/v3/api_request_count バックエンドのサービスが受信した REST API リクエストの累積数。
  • service
  • handler
  • method
  • enable_rbac
  • private_service_connect_enabled
送信された CDAP REST API レスポンス datafusion.googleapis.com/instance/v3/api_response_count バックエンドのサービスによって送信された REST API レスポンスの累積数。
  • service
  • handler
  • method
  • response_code
  • enable_rbac
  • private_service_connect_enabled
承認チェック数 datafusion.googleapis.com/instance/v3/authorization_check_count アクセス エンフォーサーによって行われた承認チェックの累積数。
  • enable_rbac
  • type
  • private_service_connect_enabled
承認チェック時間 datafusion.googleapis.com/instance/v3/authorization_check_time アクセス エンフォーサーによって行われた認可チェックのレイテンシ。
  • enable_rbac
  • type
  • private_service_connect_enabled
ドラフト パイプラインの数 datafusion.googleapis.com/instance/v3/draft_pipelines 下書きパイプラインの数。
  • enable_rbac
  • private_service_connect_enabled
名前空間の数 datafusion.googleapis.com/instance/v3/namespaces Namespace の数。
  • enable_rbac
  • private_service_connect_enabled

InstanceV2 指標ラベル

名前 指標 説明 指標ラベル
サービスのステータス datafusion.googleapis.com/instance/v2/service_available Cloud Data Fusion サービスの可用性。
  • service
  • enable_rbac
  • private_service_connect_enabled
デプロイしたパイプライン数 datafusion.googleapis.com/instance/v2/pipelines デプロイされたパイプラインの数。
  • enable_rbac
  • private_service_connect_enabled
  • maintenance_window_enabled
同時実行中のパイプライン数 datafusion.googleapis.com/instance/v2/concurrent_pipelines_running 同時に実行されているパイプラインの数。
  • enable_rbac
  • private_service_connect_enabled
同時実行パイプラインの起動数 datafusion.googleapis.com/instance/v2/concurrent_pipelines_launched プロビジョニング中または開始中の状態のパイプラインの数。
  • enable_rbac
  • private_service_connect_enabled
受信した CDAP REST API リクエスト数 datafusion.googleapis.com/instance/v2/api_request_count バックエンドのサービスが受信した REST API リクエストの累積数。
  • service
  • handler
  • method
  • enable_rbac
  • private_service_connect_enabled
送信された CDAP REST API レスポンス datafusion.googleapis.com/instance/v2/api_response_count バックエンドのサービスによって送信された REST API レスポンスの累積数。
  • service
  • handler
  • method
  • response_code
  • enable_rbac
  • private_service_connect_enabled
承認チェック数 datafusion.googleapis.com/instance/v2/authorization_check_count アクセス エンフォーサーによって行われた承認チェックの累積数。
  • enable_rbac
  • type
  • private_service_connect_enabled
承認チェック時間 datafusion.googleapis.com/instance/v2/authorization_check_time アクセス エンフォーサーによって行われた認可チェックのレイテンシ。
  • enable_rbac
  • type
  • private_service_connect_enabled
ドラフト パイプラインの数 datafusion.googleapis.com/instance/v2/draft_pipelines 下書きパイプラインの数。
  • enable_rbac
  • private_service_connect_enabled
名前空間の数 datafusion.googleapis.com/instance/v2/namespaces Namespace の数。
  • enable_rbac
  • private_service_connect_enabled

InstanceV2 指標の排出を管理する

バージョン 6.11.1.1 以降を実行している Cloud Data Fusion インスタンスでは、InstanceV2 指標の出力はデフォルトで無効になっています。古い形式を使用するダッシュボードまたはアラートとの下位互換性を維持する必要がある場合は、Cloud Data Fusion REST API を使用して InstanceV2 指標を再度有効にできます。

InstanceV2 指標を有効にする

InstanceV2 指標の出力の有効化するには、enable_instance_v2_metricstrue に設定して instances.patch メソッドを使用します。

  curl -X PATCH \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
  "https://datafusion.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID?updateMask=monitoring_config" \
  --data '{"monitoringConfig": {"enable_instance_v2_metrics": true}}'

次のように置き換えます。

  • PROJECT_ID: Google Cloud プロジェクト ID
  • LOCATION: インスタンスのロケーション
  • INSTANCE_ID: Cloud Data Fusion インスタンスの ID。

InstanceV2 指標を無効にする

InstanceV2 指標を無効にしてデフォルトの動作(InstanceV3 指標のみを生成)に戻すには、enable_instance_v2_metricsfalse に設定して instances.patch メソッドを使用します。

  curl -X PATCH \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
  "https://datafusion.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID?updateMask=monitoring_config" \
  --data '{"monitoringConfig": {"enable_instance_v2_metrics": false}}'

次のように置き換えます。

  • PROJECT_ID: Google Cloud プロジェクト ID
  • LOCATION: インスタンスのロケーション
  • INSTANCE_ID: Cloud Data Fusion インスタンスの ID。

Cloud Monitoring のクエリを InstanceV2 から InstanceV3 に移行する

Cloud Data Fusion バージョン 6.11.1.1 以降、InstanceV3datafusion.googleapis.com/InstanceV3)モニタリング対象リソースは、インスタンス レベルの指標のデフォルトのリソースタイプです。InstanceV2 をターゲットとする既存の Monitoring ダッシュボード、グラフ、アラート ポリシーがある場合は、InstanceV3 リソースタイプと指標パスを使用するように更新できます。

クエリを移行する手順は次のとおりです。

  1. リソースタイプの変更: resource.typedatafusion.googleapis.com/InstanceV2 から datafusion.googleapis.com/InstanceV3 に更新します。

  2. 指標名を更新する: 指標パスを .../instance/v2/... から .../instance/v3/... に変更します。

  3. ラベルを削除する: resource.labels.org_id または resource.labels.namespace に基づくフィルタまたは集計を削除します。これらのラベルは InstanceV3 に存在しないためです。

たとえば、既存の InstanceV2 クエリが次のようになっているとします。

fetch datafusion.googleapis.com/InstanceV2
| metric 'datafusion.googleapis.com/instance/v2/pipelines'
| filter resource.labels.instance_id == 'my-instance'
| group_by 1m, [value_pipelines_mean: mean(value.pipelines)]
| every 1m

次のように更新します。

fetch datafusion.googleapis.com/InstanceV3
| metric 'datafusion.googleapis.com/instance/v3/pipelines'
| filter resource.labels.instance_id == 'my-instance'
| group_by 1m, [value_pipelines_mean: mean(value.pipelines)]
| every 1m

次のステップ