Monitorare lo stato dei job utilizzando le notifiche Pub/Sub e BigQuery

Questo documento spiega come monitorare le modifiche dello stato dei job tramite le notifiche Pub/Sub e come inviare le notifiche in streaming a BigQuery.

Prima di iniziare

Ruoli obbligatori

Utilizzare le notifiche Pub/Sub con Batch

Batch supporta le notifiche Pub/Sub sugli stati di job e attività per avvisi, osservabilità o per l'utilizzo con BigQuery.

Puoi ricevere notifiche ogni volta che viene modificato lo stato di un job o di un'attività oppure puoi applicare filtri in base agli stati specificati per job o attività. Gli attributi delle notifiche sullo stato delle attività vengono applicati a tutte le attività in un job, non ad attività specifiche all'interno di un job. Per ulteriori informazioni sugli stati dei job e delle attività, consulta Ciclo di vita dei job.

Abilitare le notifiche per un job

Per abilitare le notifiche Pub/Sub per un job, segui questi passaggi:

  1. Crea un argomento Pub/Sub nello stesso progetto in cui vuoi eseguire il job batch.
  2. (Facoltativo) Configura Pub/Sub per lo streaming delle notifiche in BigQuery.
  3. Crea un job che invii notifiche Pub/Sub.

Configura Pub/Sub per trasmettere le notifiche in BigQuery

Se vuoi conservare la cronologia delle modifiche dello stato di job e attività ed eseguire query su tali modifiche, puoi trasmettere le notifiche Pub/Sub in BigQuery seguendo questi passaggi:

  1. Se non lo hai già fatto, attiva le notifiche per un lavoro.

  2. Se non ne hai già uno, crea un set di dati BigQuery.

  3. Crea una tabella BigQuery con la seguente definizione di schema:

    [
      {
        "name": "data",
        "type": "STRING"
      },
      {
        "name": "subscription_name",
        "type": "STRING"
      },
      {
        "name": "message_id",
        "type": "STRING"
      },
      {
        "name": "attributes",
        "type": "JSON"
      },
      {
        "name": "publish_time",
        "type": "TIMESTAMP",
        "mode": "NULLABLE"
      }
    ]
    
  4. Crea una sottoscrizione Pub/Sub con flussi di dati in BigQuery e specifica quanto segue:

    • Argomento: seleziona l'argomento Pub/Sub creato in precedenza.
    • Progetto: seleziona il progetto che contiene la tabella BigQuery.
    • Set di dati: seleziona il set di dati contenente la tabella BigQuery.
    • Tabella: seleziona la tabella creata nel passaggio precedente.
    • Seleziona Utilizza schema argomento.
    • Seleziona Scrivi metadati.

Durante l'esecuzione del job batch, Pub/Sub invia le notifiche a BigQuery.

Analizza le notifiche in BigQuery

Analizza le notifiche Pub/Sub in BigQuery eseguendo una query sulla colonna attributes della tabella BigQuery. Gli attributi su cui puoi eseguire query dipendono dalla configurazione delle notifiche per le attività o i job.

Puoi eseguire query sui seguenti attributi delle notifiche delle attività:

  • JobUID
  • NewTaskState
  • Region
  • TaskName
  • TaskUID
  • Type

Puoi eseguire query sui seguenti attributi delle notifiche di job:

  • JobUID
  • JobName
  • NewJobState
  • Region
  • Type

Ad esempio, la seguente query mostra l'elemento JobUID associato a ogni notifica:

select attributes.JobUID from `example-table`

Passaggi successivi