Integra con Cloud Logging

Questo documento descrive come associare una traccia a una voce di log di Cloud Logging. Utilizzando i campi traccia nella struttura LogEntry (spanId, trace e traceSampled), puoi correlare log e tracce per consentire una risoluzione dei problemi più distribuita.

Associare manualmente una voce di log a una traccia o a un intervallo

Se utilizzi l'API Cloud Logging per scrivere dati di log o se scrivi dati di log strutturati, puoi associare una voce di log a una traccia o a uno span. La voce di log può anche registrare se la traccia è stata campionata. Per informazioni su come Ops Agent converte i dati dei log strutturati in campi in un LogEntry, consulta Campi speciali nei payload strutturati.

Per associare una voce di log a una traccia, imposta il campo trace nell'oggetto LogEntry. Il campo trace deve essere impostato su una stringa con il seguente formato:

   projects/PROJECT_ID/traces/TRACE_ID

dove PROJECT_ID è l'ID progetto Google Cloud e TRACE_ID è l'identificatore della traccia

Per associare una voce di log a uno span quando utilizzi l'API Cloud Logging, imposta il campo spanId nell'oggetto LogEntry sulla codifica esadecimale di 16 caratteri dell'ID dello span. Ad esempio, per associare una voce di log a un intervallo con ID 74, imposta l'ID intervallo su 000000000000004a.

Per indicare che utilizzi il campionamento delle tracce e che la traccia è stata campionata per lo stoccaggio quando è stata scritta la voce di log, imposta il campo traceSampled nell'oggetto LogEntry. Quando utilizzi il campionamento delle tracce, è possibile che venga creata una voce di log quando la traccia stessa non viene acquisita.

Associare automaticamente una voce di log a una traccia o a un intervallo

Quando utilizzi le librerie client di Cloud Logging, in alcuni casi i campi traccia in una voce di log possono essere impostati automaticamente. I valori impostati manualmente hanno la precedenza sui valori impostati automaticamente.

Ad esempio, se utilizzi OpenTelemetry e registri da uno span OpenTelemetry attivo, i campi traccia nella voce di log vengono compilati dal contesto OpenTelemetry.

In alternativa, in alcuni casi, quando è presente una richiesta HTTP, i campi della traccia possono essere impostati dal campo W3C traceparent o dal valore X-Cloud-Trace-Context nella richiesta HTTP.

Per ulteriori informazioni sul completamento automatico dei campi traccia nelle voci di log, consulta la seguente documentazione della libreria client specifica per lingua:

Visualizzazione dei log

Puoi visualizzare la voce di log di una traccia accanto al grafico a cascata o in Esplora log. Quando utilizzi Esplora log, l'intervallo di timestamp della traccia viene limitato automaticamente. Se non sono presenti voci di log da visualizzare, in Esplora log viene visualizzato il messaggio No entries found matching current filter.

Nel riquadro Dettagli traccia, per visualizzare la voce di log relativa alla traccia, esegui una delle seguenti operazioni:

  • Per visualizzare le voci dei log di traccia insieme al grafico a cascata, vai al grafico a cascata e fai clic su Mostra log. Se l'opzione Mostra log non è visualizzata, significa che non sono disponibili voci di log.

  • Per visualizzare la voce di log in Esplora log, fai clic su Visualizza accanto all'etichetta Log nella sezione Dettagli. Tieni presente che, quando hai una traccia di Cloud Load Balancing, fai clic su Visualizza accanto all'etichetta Log VM.

Per ulteriori informazioni sulla visualizzazione delle voci di log in Cloud Logging, consulta Utilizzo di Esplora log.

Autorizzazioni di visualizzazione dei log

Per visualizzare le voci di log, devi disporre dell'autorizzazione logging.logEntries.list nel tuo progetto. Questa autorizzazione è fornita dai ruoli IAM (Identity and Access Management) Visualizzatore di log e Visualizzatore di progetti.

Per visualizzare i log delle istanze VM, devi disporre dell'autorizzazione compute.instances.get nel tuo progetto. Questa autorizzazione è fornita dai ruoli IAM Visualizzatore reti Compute Engine e Visualizzatore progetto.