Knowledge Catalog ログをモニタリングする

このドキュメントでは、Cloud Logging を使用して Knowledge Catalog(旧 Dataplex Universal Catalog)ログにアクセス、クエリ、解釈する方法について説明します。Knowledge Catalog のジョブとサービスログにアクセスすると、問題のトラブルシューティングや、AI によるデータ検出やデータ品質スキャンなどのデータ マネジメント アクティビティのモニタリングを行うことができます。

Logging でログを一元化することで、ジョブのパフォーマンスを分析し、障害や異常のアラートを設定できます。また、長期的な保持と分析のために、BigQuery などの他の Google Cloudサービスにログを転送できます。

費用については、Google Cloud Observability の料金をご覧ください。

ロギングの保持の詳細については、ログの保持期間をご覧ください。

すべてのログを無効にするか、Logging からログを除外するには、除外フィルタをご覧ください。

Logging から Cloud Storage、BigQuery、Pub/Sub にログを転送するには、ルーティングとストレージの概要をご覧ください。

ユースケース

Knowledge Catalog のロギングは、さまざまな業界のユースケースをサポートしています。

  • データ パイプラインの失敗のトラブルシューティング: データ処理の Knowledge Catalog タスクが失敗すると、process ログに詳細なエラー メッセージが記録されます。これにより、データ エンジニアは Spark ジョブまたはカスタムタスクの問題を特定して解決できます。
  • データ品質をモニタリングする: 金融サービス企業は、data_quality_scan_rule_result ログをモニタリングして、データ品質の傾向を時系列で追跡し、重要なデータアセットの品質低下に関するアラートを受け取り、規制遵守のためのデータ品質チェックの証拠を監査人に提供できます。
  • メタデータの拡充を追跡する: メタデータ インポート ジョブを使用してカタログを拡充している小売企業は、metadata_job ログを使用して、インポートが正常に完了し、すべてのメタデータ項目が正しく処理されていることを確認できます。
  • データ検出の監査: 組織は discovery ログを使用して、Knowledge Catalog 内で新しいデータソースがどのように検出され、登録されているかをモニタリングし、データ オンボーディング プロセスの監査証跡を提供できます。

Knowledge Catalog のロギングの仕組み

Knowledge Catalog は、サービス オペレーションとジョブ実行のログを Cloud Logging に送信します。各ログエントリには、ステータス、開始時間と終了時間、関連するリソース(データスキャンやタスクなど)、結果など、オペレーションまたはジョブに関する詳細が含まれます。データ スキャン、検出、メタデータのインポート、データ処理など、さまざまな種類のオペレーションで、さまざまな種類のログが生成されます。これらのログは、logName または Logging のロギング クエリ言語を使用してクエリできます。

これらのログにアクセスして分析するには、Google Cloud コンソールのログ エクスプローラを使用するか、Cloud Storage バケットや BigQuery テーブルなどの他の宛先に転送してさらに分析します。

Knowledge Catalog のログタイプ

Knowledge Catalog は、次のサービスログを Cloud Logging に公開します。

ログタイプ ログ名 logName クエリ ログの説明
データスキャンのイベントログ dataplex.googleapis.com/data_scan logName=(projects/PROJECT_ID/logs/dataplex.googleapis.com%2Fdata_scan) ジョブの状態、結果、統計情報を示すデータスキャン ジョブ(データ品質、データ プロファイル、データ インサイトのスキャン)のジョブレベルのイベントログ
データ品質スキャンルールの結果ログ dataplex.googleapis.com/data_quality_scan_rule_result logName=(projects/PROJECT_ID/logs/dataplex.googleapis.com%2Fdata_quality_scan_rule_result) データ品質スキャンジョブで評価された各ルールの詳細なルールレベルの評価結果
検出ログ dataplex.googleapis.com/discovery logName=(projects/PROJECT_ID/logs/dataplex.googleapis.com%2Fdiscovery) ゾーン内のアセットの検出進行状況と更新情報
メタデータ ジョブのログ dataplex.googleapis.com/metadata_job logName=(projects/PROJECT_ID/logs/dataplex.googleapis.com%2Fmetadata_job) メタデータのインポート ジョブとメタデータのインポート ファイル内のインポート アイテムに関するログ
プロセスログ dataplex.googleapis.com/process logName=(projects/PROJECT_ID/logs/dataplex.googleapis.com%2Fprocess) データ処理タスクの結果、ジョブを実行する

Knowledge Catalog サービスログにアクセスする

Logging にアクセスするには、Google Cloud コンソールのログ エクスプローラ、gcloud logging コマンド、または Logging API を使用します。Logging のクエリ言語を使用して、詳細なクエリを作成できます。

必要な IAM 権限

ログを表示してクエリを実行するには、ログビューア(roles/logging.viewer)ロール、またはプロジェクトに対する同等の権限が必要です。

Google Cloud コンソールでログを表示する

  1. Google Cloud コンソールで、[オブザーバビリティ] > [ロギング] > [ログ エクスプローラ] ページに移動します。

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

  2. 次の表に基づいて、[リソース] フィルタと [ログ名] フィルタを構成します。

    ログタイプ リソース セレクション ログ名の選択
    データスキャン イベント 監査対象リソース > サービス: Cloud Dataplex dataplex.googleapis.com/data_scan
    データ品質スキャンルールの結果 監査対象リソース > サービス: Cloud Dataplex dataplex.googleapis.com/data_quality_scan_rule_result
    検出ログ Cloud Dataplex ゾーン dataplex.googleapis.com/discovery
    メタデータ ジョブのログ Cloud Dataplex メタデータ ジョブ dataplex.googleapis.com/metadata_job
    プロセスログ Cloud Dataplex タスク dataplex.googleapis.com/process
  3. (省略可)特定のサブフィルタ(特定のタスク ID など)を選択して、クエリを絞り込みます。

  4. [適用]、[クエリを実行] の順にクリックします。

ログのフィルタリングの例

Logging のクエリ言語は、ログ エクスプローラのクエリエディタまたは Google Cloud CLI で使用できます。次の例は、gcloud CLI を使用してログを読み取る方法を示しています。

例: データスキャン イベントを読み取る

データ品質スキャンまたはデータ プロファイル スキャンのイベントログ エントリを読み取るには、次のクエリで gcloud logging read コマンドを使用します。

gcloud logging read \
    'resource.type="dataplex.googleapis.com/DataScan" AND
    logName=projects/PROJECT_ID/logs/dataplex.googleapis.com%2Fdata_scan AND
    resource.labels.location=LOCATION AND
    resource.labels.datascan_id=DATA_SCAN_ID'
    --limit 10

例: プロセス ログエントリを読み取る

プロセス ログエントリを読み取るには、次のクエリで gcloud logging read コマンドを使用します。

gcloud logging read \
    'resource.type="dataplex.googleapis.com/Task" AND
    logName=projects/PROJECT_ID/logs/dataplex.googleapis.com%2Fprocess AND
    resource.labels.location=LOCATION AND
    resource.labels.lake_id=LAKE_ID AND
    resource.labels.task_id=TASK_ID'
    --limit 10

サンプル ログペイロード

次の例は、さまざまなタイプの Knowledge Catalog ログの JSON ペイロード構造を示しています。これらの例を使用して、ログの構造を理解し、ログフィルタを作成できます。

データスキャンのイベントログ

Knowledge Catalog では、データスキャンにはデータ品質スキャン、データ プロファイル スキャン、データ分析情報スキャンが含まれます。データスキャン ジョブを実行すると、Knowledge Catalog は、ジョブの実行全体を要約した data_scan イベントログを Logging に書き込みます。成功したデータ分析情報スキャン(jsonPayload.type="DATA_DOCUMENTATION")の場合、イベントログには billableTokenUsage ブロックも含まれます。データ インサイト トークンの消費量をクエリしてグラフ化する方法については、データ インサイト トークンの使用状況をモニタリングするをご覧ください。

次の例は、データ品質スキャンのイベントログ ペイロードを示しています。

{
  "insertId": "123456abcdef",
  "jsonPayload": {
    "dataQuality": {
      "passed": false,
      "rowsAnalyzed": "5000"
    },
    "dataSource": "//bigquery.googleapis.com/projects/my-project/datasets/my_dataset/tables/my_table"
  },
  "resource": {
    "type": "dataplex.googleapis.com/DataScan",
    "labels": {
      "datascan_id": "my-data-quality-scan",
      "location": "us-central1",
      "resource_container": "projects/1234567890"
    }
  },
  "severity": "INFO"
}

データ品質スキャンルールの結果ログ

データ品質スキャンが実行されると、Knowledge Catalog は、ジョブで評価された個々のルールごとに、データスキャン イベントログと個別のデータ品質スキャンルール結果ログを生成します。

各 data_quality_scan_rule_result ログエントリには、ルール構成、評価ディメンション、ステータス、行数など、特定のルールに関する情報が含まれます。

次の例は、データ品質スキャンルールの結果ログのペイロードを示しています。

{
  "insertId": "123456abcdef",
  "jsonPayload": {
    "jobId": "my-data-quality-scan-job-123",
    "dataSource": "//bigquery.googleapis.com/projects/my-project/datasets/my_dataset/tables/my_table",
    "column": "user_id",
    "ruleName": "user-id-not-null",
    "ruleType": "NON_NULL_EXPECTATION",
    "ruleDimension": "COMPLETENESS",
    "thresholdPercent": 100,
    "result": "PASSED",
    "evaluatedRowCount": "5000",
    "passedRowCount": "5000",
    "nullRowCount": "0"
  },
  "resource": {
    "type": "dataplex.googleapis.com/DataScan",
    "labels": {
      "datascan_id": "my-data-quality-scan",
      "location": "us-central1",
      "resource_container": "projects/1234567890"
    }
  },
  "severity": "INFO"
}

検出ログ

次の例は、検出ログのペイロードを示しています。

{
  "insertId": "123456abcdef",
  "jsonPayload": {
    "message": "BigQuery table published successfully.",
    "lakeId": "my-lake",
    "zoneId": "my-zone",
    "assetId": "my-asset",
    "dataLocation": "gs://my-bucket/path/to/data",
    "type": "TABLE_PUBLISHED",
    "table": {
      "table": "projects/my-project/datasets/my_dataset/tables/my_table",
      "type": "EXTERNAL_TABLE"
    }
  },
  "resource": {
    "type": "dataplex.googleapis.com/Zone",
    "labels": {
      "lake_id": "my-lake",
      "zone_id": "my-zone",
      "location": "us-central1",
      "resource_container": "projects/1234567890"
    }
  },
  "severity": "INFO"
}

メタデータ ジョブのログ

次の例は、メタデータ ジョブのログペイロードを示しています。

{
  "insertId": "123456abcdef",
  "jsonPayload": {
    "resource": "projects/my-project/locations/us-central1/metadataJobs/my-metadata-job",
    "message": "Metadata import job completed successfully.",
    "type": "IMPORT",
    "importResult": {
      "state": "SUCCEEDED",
      "stage": "INGESTION",
      "mutatedEntryGroups": "1",
      "createdEntries": "50",
      "updatedEntries": "10",
      "deletedEntries": "5"
    }
  },
  "resource": {
    "type": "dataplex.googleapis.com/MetadataJob",
    "labels": {
      "metadata_job_id": "my-metadata-job",
      "location": "us-central1",
      "resource_container": "projects/1234567890"
    }
  },
  "severity": "INFO"
}

プロセスログ

次の例は、プロセスログのペイロードを示しています。

{
  "insertId": "123456abcdef",
  "jsonPayload": {
    "message": "Spark job completed successfully.",
    "jobId": "my-task-job-123",
    "startTime": "2026-08-13T10:00:00Z",
    "endTime": "2026-08-13T10:05:00Z",
    "state": "SUCCEEDED",
    "type": "SPARK",
    "service": "DATAPROC",
    "serviceJob": "projects/my-project/regions/us-central1/jobs/dataproc-job-123",
    "executionTrigger": "TASK_CONFIG"
  },
  "resource": {
    "type": "dataplex.googleapis.com/Task",
    "labels": {
      "task_id": "my-task",
      "lake_id": "my-lake",
      "location": "us-central1",
      "resource_container": "projects/1234567890"
    }
  },
  "severity": "INFO"
}

ログベースのアラートを設定する

ログベースのアラートを設定すると、特定の Knowledge Catalog イベント(データ品質スキャンの失敗など)が発生するたびに通知を受け取ることができます。

ログベースのアラートを作成するには、ログ構成書き込み(roles/logging.configWriter)と Monitoring AlertPolicy 編集者(roles/monitoring.alertPolicyEditor)のロール、または同等の権限が必要です。

  1. ログ エクスプローラで、障害条件(resource.type="dataplex.googleapis.com/DataScan" AND NOT jsonPayload.dataQuality.passed=true など)をターゲットとするクエリを実行します。
  2. [クエリ結果] ペインの上にある [アラートを作成] をクリックします。
  3. [ログベースのアラートを作成] パネルで、アラート ポリシーの名前と説明を入力します。
  4. [次へ] をクリックして、通知チャネルを構成します。
  5. [保存] をクリックします。

詳細については、ログベースのアラートを作成するをご覧ください。

次のステップ