Monitora l'utilizzo di Data Boost

Questa pagina descrive come utilizzare gli audit log di Cloud Monitoring e Spanner per monitorare e analizzare l'utilizzo di Spanner Data Boost.

Cloud Monitoring consente di tenere traccia dell'utilizzo totale nel tempo e di suddividerlo per utente. Gli audit log di Spanner consentono un'analisi dell'utilizzo più flessibile, ad esempio fornendo metriche per utente o per ID job BigQuery.

Utilizza Cloud Monitoring per monitorare l'utilizzo di Data Boost

Segui questi passaggi per monitorare l'utilizzo complessivo di Data Boost:

  1. Nella console Google Cloud, vai a Monitoring.
    Vai a Monitoring
  2. Se nel menu di navigazione è visualizzato Metrics Explorer, selezionalo. In caso contrario, fai clic su Risorse e poi seleziona Metrics Explorer.
  3. Nella parte superiore della pagina, seleziona un intervallo di tempo.
  4. Nell'elenco a discesa Metrica, nel campo Filtra per nome risorsa o metrica, inserisci spanner e premi Enter per restringere la ricerca.
  5. Nell'elenco Metrica, seleziona Istanza Cloud Spanner > Istanza > Seconda unità di elaborazione, quindi fai clic su Applica.

    Viene creato un grafico a linee dell'utilizzo aggregato di Data Boost in tutte le istanze Spanner.

  6. Per visualizzare l'utilizzo per una determinata istanza:

    1. Fai clic su + AGGIUNGI FILTRO per creare un filtro.
    2. Nell'elenco a discesa Etichetta 1, seleziona instance_id.
    3. Nel campo di testo Valore 1, inserisci o seleziona l'ID dell'istanza di cui visualizzare l'utilizzo.
  7. Per visualizzare un'analisi dettagliata dell'utilizzo in base a tutte le istanze:

    1. Cancella tutti i filtri facendo clic sull'icona del cestino accanto ai campi Filtri.
    2. In Raggruppa per, nell'elenco a discesa Etichette, seleziona instance_id, quindi seleziona Somma nell'elenco Funzione di raggruppamento.
  8. Per suddividere l'utilizzo in base all'entità, in Raggruppa per, seleziona credential_id nell'elenco Etichette e Somma nell'elenco Funzione di raggruppamento.

L'esempio seguente mostra i secondi delle unità di elaborazione per entità.

Secondi PU per utente

Utilizza gli audit log per analizzare l'utilizzo di Data Boost

Gli audit log di Spanner consentono un'analisi più flessibile dell'utilizzo di Data Boost. Oltre alla possibilità di suddividere l'utilizzo nel tempo per istanza o entità come con Cloud Monitoring, gli audit log di Spanner, se abilitati e disponibili, consentono di suddividere l'utilizzo nel tempo in base al database o all'ID job BigQuery.

L'abilitazione degli audit log può comportare costi aggiuntivi. Per informazioni sui prezzi di Logging, consulta Prezzi relativi all'osservabilità di Google Cloud: Cloud Logging.

Abilita gli audit log sull'utilizzo di Data Boost

Prima di poter raccogliere dati sull'utilizzo per Data Boost, devi abilitare gli audit log di accesso ai dati per Spanner. Per farlo, segui questi passaggi:

  1. Segui le istruzioni in Configurare gli audit log di accesso ai dati con la console Google Cloud.
  2. Attiva il tipo di log Lettura dati per il servizio API Spanner.
  3. Per ottenere l'utilizzo di Data Boost in base al testo SQL del job BigQuery, assicurati che siano abilitati anche gli audit log per BigQuery.

Visualizza utilizzo per entità

Per eseguire una query sugli audit log per visualizzare l'utilizzo di Data Boost per utente, segui questi passaggi:

  1. Vai a Esplora log nella console Google Cloud.

    Vai a Esplora log

  2. Nel menu di navigazione, fai clic su Analisi dei log.

  3. Per visualizzare l'utilizzo per utente e database negli ultimi 7 giorni, esegui la seguente query. Per modificare l'intervallo di tempo per il quale viene visualizzato l'utilizzo, modifica l'espressione timestamp nella clausola WHERE.

    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;
    

    Sostituisci PROJECT_NAME con il nome del tuo progetto.

L'esempio seguente mostra l'utilizzo nelle unità di elaborazione per quattro entità.

Utilizzo di Data Boost per utente dai log di controllo

Visualizza l'utilizzo in base all'ID job BigQuery

Per eseguire una query sugli audit log per visualizzare l'utilizzo di Data Boost suddiviso per database, utente e ID job BigQuery, segui questi passaggi:

  1. Vai a Esplora log nella console Google Cloud.

    Vai a Esplora log

  2. Nel menu di navigazione, fai clic su Analisi dei log.

  3. Esegui questa query:

    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;
    

    Sostituisci PROJECT_NAME con il nome del tuo progetto.

L'esempio seguente mostra l'utilizzo in base all'ID job BigQuery.

Utilizzo di Data Boost per ID job

Visualizza l'utilizzo per testo BigQuery SQL

Per visualizzare l'utilizzo di Data Boost per più job BigQuery aggregati in base al testo SQL di questi job, segui questi passaggi:

  1. Vai a Esplora log nella console Google Cloud.

    Vai a Esplora log

  2. Nel menu di navigazione, fai clic su Analisi dei log.

  3. Esegui questa query:

    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
    

    Sostituisci PROJECT_NAME con il nome del tuo progetto.

L'esempio seguente mostra l'utilizzo di Data Boost per testo SQL.

Utilizzo di Data Boost per testo SQL

Crea un avviso Data Boost

Per creare un avviso che viene emesso quando l'utilizzo di Data Boost supera una soglia predefinita, consulta Impostare un avviso per l'utilizzo di Data Boost.

Passaggi successivi