Data Boost-Nutzung überwachen

Auf dieser Seite wird beschrieben, wie Sie Cloud Monitoring und die Spanner-Prüfung verwenden Logs zum Überwachen und Analysieren der Spanner Data Boost-Nutzung.

Cloud Monitoring bietet die Möglichkeit, die Gesamtnutzung im Zeitverlauf zu verfolgen die Nutzung nach Nutzer*in aufgeschlüsselt werden. Spanner-Audit-Logs ermöglichen mehr flexible Nutzungsanalysen, einschließlich der Bereitstellung von Metriken nach Nutzer oder BigQuery-Job-ID.

Data Boost-Nutzung mit Cloud Monitoring im Blick behalten

Führen Sie die folgenden Schritte aus, um die gesamte Data Boost-Nutzung zu verfolgen:

  1. Wechseln Sie in der Google Cloud Console zu Monitoring:
    Zu „Monitoring“
  2. Wenn im Navigationsmenü der Metrics Explorer angezeigt wird, wählen Sie ihn aus. Klicken Sie andernfalls auf Ressourcen und dann auf Metrics Explorer.
  3. Wählen Sie oben auf der Seite ein Zeitintervall aus.
  4. In der Dropdown-Liste Messwert in der Dropdown-Liste Nach Ressource oder Messwert filtern Name spanner eingeben und Enter drücken, um die Suche einzugrenzen.
  5. Wählen Sie in der Liste Messwert die Option Cloud Spanner-Instanz > Instanz > Verarbeitungseinheit pro Sekunde aus und klicken Sie dann auf Übernehmen.

    Dadurch wird ein Liniendiagramm der aggregierten Data Boost-Nutzung für alle Spanner-Instanzen.

  6. So rufen Sie die Nutzung für eine bestimmte Instanz auf:

    1. Verwenden Sie das Feld Filter, um Filter hinzuzufügen, z. B. die Instanz-ID.
    2. Klicken Sie auf +, um weitere Attribute hinzuzufügen.
  7. So rufen Sie eine Aufschlüsselung der Nutzung nach allen Instanzen auf:

    1. Wenn Sie alle Filter entfernen möchten, klicken Sie neben den Filterfeldern auf das Symbol X.
    2. Wählen Sie in der Drop-down-Liste Aggregation die Option Summe und dann instance_id aus.
  8. Wenn Sie die Nutzung nach Hauptbenutzer aufschlüsseln möchten, wählen Sie im Drop-down-Menü für den Operator Aggregation die Option Summe und dann credential_id aus.

Data Boost-Nutzung mithilfe von Audit-Logs analysieren

Spanner-Audit-Logs ermöglichen eine flexiblere Analyse Data Boost-Nutzung. Zusätzlich zur Aufschlüsselung der Nutzung im Zeitverlauf nach Instanz oder Hauptbenutzer wie bei Cloud Monitoring können Sie mit Spanner-Audit-Logs, sofern aktiviert und verfügbar, die Nutzung im Zeitverlauf nach Datenbank oder BigQuery-Job-ID aufschlüsseln.

Wenn Sie Audit-Logs aktivieren, können zusätzliche Kosten anfallen. Informationen zu den Preisen für Logging finden Sie unter Preise für Google Cloud Observability: Cloud Logging.

Audit-Logs zur Nutzung von Data Boost aktivieren

Sie müssen zuerst Audit-Logs zum Datenzugriff für Spanner aktivieren Nutzungsdaten für Data Boost erheben. Führen Sie dazu die folgenden Schritte aus:

  1. Folgen Sie dazu der Anleitung unter Konfigurieren Sie Audit-Logs zum Datenzugriff mit der Google Cloud Console.
  2. Aktivieren Sie den Logtyp Datenlesevorgang für den Dienst Spanner API.
  3. Wenn Sie die Nutzung von Data Boost durch den SQL-Text eines BigQuery-Jobs abrufen möchten, müssen auch die Prüfprotokolle für BigQuery aktiviert sein.

Nutzung nach Hauptkonto ansehen

So rufen Sie die Audit-Logs ab, um die Nutzung des Daten-Boosts nach Nutzer aufzurufen:

  1. Rufen Sie in der Google Cloud Console den Log-Explorer auf.

    Zum Log-Explorer

  2. Klicken Sie im Navigationsmenü auf Log Analytics.

  3. Führen Sie folgenden Befehl aus, um die Nutzung nach Nutzer und Datenbank in den letzten 7 Tagen anzuzeigen Abfrage. Wenn Sie den Zeitraum ändern möchten, für den die Nutzung angezeigt wird, ändern Sie den timestamp-Ausdruck in der WHERE-Klausel.

    SELECT
      SUM(CAST(JSON_VALUE(labels.data_boost_usage) AS INT64)) AS usage,
      REGEXP_EXTRACT(
        proto_payload.audit_log.resource_name,
        'projects/[^/]+/instances/[^/]+/databases/[^/]+') AS database,
      proto_payload.audit_log.authentication_info.principal_email AS principal_email
    FROM `PROJECT_NAME.global._Default._AllLogs`
    WHERE
      timestamp > TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 7 DAY)
      AND resource.type = 'spanner_instance' AND operation.last IS NULL
      AND JSON_VALUE(labels.data_boost_usage) != ''
    GROUP BY database, principal_email;
    

    Ersetzen Sie PROJECT_NAME durch Ihren Projektnamen.

Das folgende Beispiel zeigt die Nutzung in Verarbeitungseinheiten für 4 Hauptbenutzer.

Data Boost-Nutzung durch Nutzer aus Audit-Logs

Nutzung nach BigQuery-Job-ID ansehen

So rufen Sie die Prüfprotokolle ab, um die Nutzung von Data Boost nach Datenbank, Nutzer und BigQuery-Job-ID aufzuschlüsseln:

  1. Rufen Sie in der Google Cloud Console den Log-Explorer auf.

    Zum Log-Explorer

  2. Klicken Sie im Navigationsmenü auf Loganalysen.

  3. Führen Sie die folgende Abfrage aus:

    SELECT
      SUM(CAST(JSON_VALUE(labels.data_boost_usage) AS INT64)) AS usage,
      REGEXP_EXTRACT(
        proto_payload.audit_log.resource_name,
        'projects/[^/]+/instances/[^/]+/databases/[^/]+') AS database,
      proto_payload.audit_log.authentication_info.principal_email AS principal_email,
      IFNULL(JSON_VALUE(labels.data_boost_workload_id), 'not from BQ') AS job_id
    FROM `PROJECT_NAME.global._Default._AllLogs`
    WHERE
      timestamp > TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 7 DAY)
      AND resource.type = 'spanner_instance' AND operation.last IS NULL
      AND JSON_VALUE(labels.data_boost_usage) != ''
    GROUP BY database, principal_email, job_id;
    

    Ersetzen Sie PROJECT_NAME durch Ihren Projektnamen.

Im folgenden Beispiel wird die Nutzung nach BigQuery-Job-ID dargestellt.

Data Boost-Nutzung nach Job-ID

Nutzung nach BigQuery-SQL-Text ansehen

So rufen Sie die Nutzung von Data Boost für mehrere BigQuery-Jobs auf, die nach dem SQL-Text dieser Jobs zusammengefasst sind:

  1. Rufen Sie in der Google Cloud Console den Log-Explorer auf.

    Zum Log-Explorer

  2. Klicken Sie im Navigationsmenü auf Log Analytics.

  3. Führen Sie die folgende Abfrage aus:

    SELECT
      SUM(
        CAST(
          JSON_VALUE(db.labels.data_boost_usage)
          AS INT64)) AS usage,
      JSON_VALUE(
        bq.proto_payload.audit_log.metadata.jobInsertion.job.jobConfig.queryConfig.query)
        AS bq_query
    FROM
      `PROJECT_NAME.global._Default._AllLogs` db,
      `PROJECT_NAME.global._Default._AllLogs` bq
    WHERE
      db.timestamp > TIMESTAMP_SUB(
        CURRENT_TIMESTAMP(), INTERVAL 7 DAY)
      AND db.resource.type = 'spanner_instance'
      AND JSON_VALUE(db.labels.data_boost_usage) != ''
      AND db.operation.last IS NULL
      AND bq.timestamp > TIMESTAMP_SUB(
        CURRENT_TIMESTAMP(), INTERVAL 7 DAY)
      AND bq.proto_payload.audit_log.method_name
        = 'google.cloud.bigquery.v2.JobService.InsertJob'
      AND bq.resource.type = 'bigquery_project'
      AND JSON_VALUE(
        bq.proto_payload.audit_log.metadata.jobInsertion.job.jobConfig.queryConfig.query)
        IS NOT NULL
      AND JSON_VALUE(db.labels.data_boost_workload_id)
        = REGEXP_EXTRACT(bq.proto_payload.audit_log.resource_name, '[^/]*$')
    GROUP BY bq_query
    ORDER BY usage DESC
    

    Ersetzen Sie PROJECT_NAME durch Ihren Projektnamen.

Das folgende Beispiel zeigt die Verwendung von Data Boost durch SQL-Text.

Nutzung von Data Boost nach SQL-Text

Data Boost-Benachrichtigung erstellen

Eine Benachrichtigung zu erstellen, die ausgegeben wird, wenn die Data Boost-Nutzung einen vordefinierten Grenzwert überschreitet, wird unter Benachrichtigung für die Data Boost-Nutzung festlegen beschrieben.

Nächste Schritte