Logging strutturato

Questo documento illustra il concetto di logging strutturato e i metodi per aggiungere struttura ai campi del payload voce di log. Quando il payload del log viene formattato come oggetto JSON e questo oggetto viene archiviato nel campo jsonPayload, la voce di log viene chiamata log strutturato. Per questi log, puoi creare query che cercano percorsi JSON specifici e puoi indicizzare campi specifici nel payload del log. Al contrario, quando il payload del log viene formattato come stringa e memorizzato nel campo textPayload, la voce di log è non strutturata. Puoi cercare nel campo di testo, ma non puoi indicizzarne i contenuti.

Per creare voci di log strutturate, esegui una delle seguenti operazioni:

  • Chiama il metodo API entries.write e fornisci un LogEntry completamente formattato.
  • Utilizza il comando gcloud logging write.
  • Utilizza una libreria client di Cloud Logging che scrive log strutturati.
  • Utilizza il servizio BindPlane.
  • Utilizza un agente per scrivere i log:

    • Alcuni Google Cloud servizi contengono un agente di logging integrato che invia i dati scritti in stdout o stderr come log a Cloud Logging. Puoi utilizzare questo approccio per Google Cloud servizi come Google Kubernetes Engine, l'ambiente flessibile di App Engine e le funzioni Cloud Run.
    • Per le macchine virtuali (VM) Compute Engine, ti consigliamo di installare e configurare Ops Agent per inviare log strutturati a Cloud Logging. Se le tue VM esistenti utilizzano l'agente Logging legacy, tieni presente che l'agente ha raggiunto la fine del supporto. Per informazioni sulle alternative di migrazione dall'agente Logging legacy, consulta la guida alla migrazione oppure l'articolo Logging strutturato con l'agente Logging legacy per informazioni sull'utilizzo dell'agente Logging legacy per scrivere log strutturati.

Per esempi di codice, vedi Scrittura di log strutturati.

Scrivere log utilizzando gcloud CLI

Puoi scrivere dati di log utilizzando gcloud CLI. L'interfaccia supporta log strutturati e non strutturati. Quando vuoi scrivere un log strutturato, fornisci al comando un oggetto JSON serializzato.

Per una guida rapida, consulta Scrivere voci di log ed eseguire query con Google Cloud CLI.

Per esempi di codice, consulta il riferimento gcloud logging write.

Scrivere log utilizzando BindPlane

Puoi utilizzare il servizio BindPlane per inviare i log a Logging. Per questi log, i payload sono in formato JSON e sono strutturati in base al sistema di origine. Per informazioni su come trovare e visualizzare i log inseriti utilizzando BindPlane, consulta la guida rapida di BindPlane.

Scrivere log utilizzando Ops Agent

Per ottenere i log dalle istanze Compute Engine, puoi utilizzare Ops Agent. L'Ops Agent combina logging e metriche in un unico agente, fornisce una configurazione basata su YAML e offre un logging a velocità effettiva elevata.

Per informazioni su come configurare Ops Agent per supportare la registrazione strutturata o per personalizzare il formato di un log strutturato, consulta Configura Ops Agent.

Risoluzione dei problemi

Per risolvere i problemi comuni riscontrati durante l'installazione o l'interazione con Ops Agent, consulta la sezione Risoluzione dei problemi dell'agente.

Passaggi successivi