Cloud Data Fusion ログを表示する

このドキュメントでは、Cloud Data Fusion のパイプライン ログとサービスログにアクセスして表示する方法について説明します。

Cloud Data Fusion バージョン 6.11 以降では、パイプライン ログとサービスログが Cloud Logging で使用できます。

ログタイプについて

Cloud Data Fusion は、データ統合プロセスのモニタリングとトラブルシューティングに役立つさまざまな種類のログを生成します。

パイプライン ログ
これらのログには、プレビュー実行を含む個々のパイプライン実行に関する詳細情報が記録されます。これらは、実行前の設定、ジョブの実行、実行後のアクティビティなど、パイプライン実行のすべてのステージを対象としています。

サービスログ
これらのログには、AppFabric や AppFabric プロセッサなどの Cloud Data Fusion システム サービスに関する詳細情報が記録されます。

監査ログ
Cloud Data Fusion は、管理アクティビティ監査ログなどの監査ログを生成します。詳細については、Cloud Data Fusion の監査ロギングをご覧ください。

高度なパイプライン ログ
これらのログには、個々のパイプライン実行に関する詳細情報が記録されます。これらのログは、Managed Service for Apache Spark クラスタのプロビジョニングが完了する前の情報もキャプチャするため、パイプラインの障害のトラブルシューティングに特に役立ちます。これにより、クラスタの問題や遅延を特定できます。詳細については、Cloud Logging で高度なパイプライン ログを表示するをご覧ください。

料金

Cloud Logging と Cloud Monitoring の使用には料金が発生します。詳細については、Google Cloud Observability の料金をご覧ください。

省略可: Cloud Data Fusion Logging ダッシュボードをインポートする

Cloud Data Fusion ロギング ダッシュボードを使用してパイプライン ログとサービスログを表示するには、ダッシュボードをインポートします。

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

    ダッシュボードに移動する

  2. [ダッシュボード テンプレートを表示] をクリックします。

  3. [Cloud Data Fusion Logging] を検索して、ダッシュボードを選択します。

  4. [ Cloud Data Fusion ロギング ダッシュボードをリストに追加] をクリックします。

パイプライン ログを表示する

パイプライン ログは、Cloud Data Fusion Logging ダッシュボードまたはログ エクスプローラで直接表示できます。

ダッシュボードを使用してパイプライン ログを表示する

  1. まだ行っていない場合は、Cloud Data Fusion Logging ダッシュボードをインポートします。

  2. [マイ ダッシュボード] セクションで、[Cloud Data Fusion Logging] をクリックします。

  3. [パイプライン ログ] セクションで、パイプライン ログのリストを表示します。ログは、重大度、フィールド名、値でフィルタできます。

    クエリを使用して検索を絞り込むには、ログ エクスプローラを使用します。

ログ エクスプローラでパイプライン ログを表示する

  1. Google Cloud コンソールで、[ログ エクスプローラ] ページに移動します。

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

  2. 次のクエリを入力します。

    resource.type="datafusion.googleapis.com/PipelineV2"
    

    パイプライン ログのリストが表示されます。フィルタを使用して結果を絞り込むことができます。

パイプライン ログをフィルタする

パイプラインログは、実行 ID、インスタンス ID、パイプライン ID、ロケーション、Namespace、カスタムラベルでフィルタできます。

Cloud Data Fusion パイプラインのすべての実行には、一意の RunID が割り当てられます。パイプラインをデプロイして実行すると、パイプラインの RunID を確認し、対応するパイプライン ログを表示できます。

RunID でパイプライン ログをフィルタするには、次の操作を行います。

  1. パイプラインの RunID を取得します

  2. Google Cloud コンソールで、[ログ エクスプローラ] ページに移動します。

  3. 次のクエリを入力します。

    resource.type="datafusion.googleapis.com/PipelineV2" resource.labels.run_id=RUN_ID
    

サービスログを表示する

サービスログは、Cloud Data Fusion Logging ダッシュボードまたはログ エクスプローラで確認できます。

ダッシュボードを使用してサービスログを表示する

  1. まだ行っていない場合は、Cloud Data Fusion Logging ダッシュボードをインポートします。

  2. [マイ ダッシュボード] セクションで、[Cloud Data Fusion Logging] をクリックします。

  3. [サービスログ] セクションで、サービスログのリストを表示します。ログは、重大度、フィールド名、値でフィルタできます。

    クエリを使用して検索を絞り込むには、ログ エクスプローラを使用します。

ログ エクスプローラでサービスログを表示する

Cloud Data Fusion バージョン 6.11.1.1 以降では、システム サービスログでデフォルトで InstanceV3 モニタリング対象リソース(datafusion.googleapis.com/InstanceV3)が使用されます。これらのログは services-v3 ログ名の接尾辞を使用し、以前のバージョンにあった org_id ラベルや namespace ラベルは含まれていません。新規インスタンスとアップグレードされたインスタンスでは InstanceV2 ログの出力はデフォルトで無効になっていますが、オペレーションが以前のラベルに依存している場合は、Cloud Data Fusion REST API を使用して InstanceV2 ロギングを再度有効にできます。

ログ エクスプローラでサービスログを表示する手順は次のとおりです。

  1. Google Cloud コンソールで、[ログ エクスプローラ] ページに移動します。

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

  2. サービス固有のクエリを入力して、サービスログを見つけます。

    サービス名 InstanceV2 のログクエリ InstanceV3 のログクエリ
    Appfabric
    resource.type="datafusion.googleapis.com/InstanceV2"
    labels.".serviceId"="appfabric"
    
    resource.type="datafusion.googleapis.com/InstanceV3"
    labels.".serviceId"="appfabric"
    
    AppFabric プロセッサ
    resource.type="datafusion.googleapis.com/InstanceV2"
    labels.".serviceId"="appfabric.processor"
    
    resource.type="datafusion.googleapis.com/InstanceV3"
    labels.".serviceId"="appfabric.processor"
    
    データセット エグゼキュータ
    resource.type="datafusion.googleapis.com/InstanceV2"
    labels.".serviceId"="dataset.executor"
    
    resource.type="datafusion.googleapis.com/InstanceV3"
    labels.".serviceId"="dataset.executor"
    
    ログの保存
    resource.type="datafusion.googleapis.com/InstanceV2"
    labels.".serviceId"="log.saver"
    
    resource.type="datafusion.googleapis.com/InstanceV3"
    labels.".serviceId"="log.saver"
    
    メタデータ サービス
    resource.type="datafusion.googleapis.com/InstanceV2"
    labels.".serviceId"="metadata.service"
    
    resource.type="datafusion.googleapis.com/InstanceV3"
    labels.".serviceId"="metadata.service"
    
    指標
    resource.type="datafusion.googleapis.com/InstanceV2"
    labels.".serviceId"="metrics"
    
    resource.type="datafusion.googleapis.com/InstanceV3"
    labels.".serviceId"="metrics"
    
    Pipeline Studio
    resource.type="datafusion.googleapis.com/InstanceV2" 
    resource.labels.namespace="system"
    labels.".userserviceid"="studio"
    
    resource.type="datafusion.googleapis.com/InstanceV3"
    labels.".userserviceid"="studio"
    
    ランタイム
    resource.type="datafusion.googleapis.com/InstanceV2"
    labels.".serviceId"="runtime"
    
    resource.type="datafusion.googleapis.com/InstanceV3"
    labels.".serviceId"="runtime"
    
    Wrangler サービス
    resource.type="datafusion.googleapis.com/InstanceV2"
    resource.labels.namespace="system"
    labels.".applicationId"="dataprep"
    labels.".userserviceid"="service"
    
    resource.type="datafusion.googleapis.com/InstanceV3"
    labels.".applicationId"="dataprep"
    labels.".userserviceid"="service"
    

InstanceV2 ログを有効にする

デフォルトでは、バージョン 6.11.1.1 以降を実行している Cloud Data Fusion インスタンスでは InstanceV2 ロギングが無効になっています。オペレーションで以前のロギング形式が必要な場合(org_id ラベルまたは namespace ラベルに依存している場合など)、Cloud Data Fusion REST API を使用して InstanceV2 ログを再度有効にできます。

InstanceV2 ログを有効にするには、enable_instance_v2_logstrue に設定して instances.patch メソッドを使用します。この設定では、InstanceV2 ログと InstanceV3 ログの両方が出力されます。

   curl -X PATCH \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
  -H "X-GFE-SSL: yes" \
  -H "Host: datafusion.googleapis.com" \
  -d '{"loggingConfig": {"enable_instance_v2_logs": true}}' \
  "https://datafusion.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID?updateMask=loggingConfig"

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

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

Cloud Data Fusion で構成可能なロギング

Cloud Data Fusion 6.11.0 では、構成可能なロギングが提供され、Cloud Logging がデフォルトで有効になっています。Cloud Logging を無効にすることは可能ですが、重要なパイプラインとインスタンスのログにアクセスできるように、有効にしておくことを強くおすすめします。

Cloud Logging を無効にするには、次のコマンドを実行します。

echo '{ "loggingConfig": {"instance_cloud_logging_disabled": "true"}}' | curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    --data @- \
    "https://datafusion.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances?instanceId=$INSTANCE_ID?updateMask=logging_config"

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

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

次のステップ