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 に送信します。各ログエントリには、オペレーションまたはジョブの詳細(ステータス、開始時刻と終了時刻、関連するリソース(データスキャンやタスクなど)、結果など)が含まれます。データ スキャン、検出、メタデータのインポート、データ処理などのさまざまなタイプのオペレーションでは、さまざまなログタイプが生成されます。これらのログタイプは、Logging の logName またはロギング クエリ言語を使用してクエリできます。

これらのログには、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 を使用します。ロギング クエリ言語を使用して、詳細なクエリを作成できます。

必要な 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. [適用]、[クエリを実行] の順にクリックします。

ログフィルタリングの例

ログ エクスプローラのクエリ エディタまたは 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 に生成します。

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

{
  "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. [保存] をクリックします。

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

次のステップ