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.writee fornisci unLogEntrycompletamente 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
stdoutostderrcome 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.
- Alcuni Google Cloud servizi contengono un agente di logging integrato che invia
i dati scritti in
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
Per eseguire query e visualizzare le voci di log, vedi Visualizza i log utilizzando Esplora log.
Per leggere le voci di log utilizzando Google Cloud CLI, consulta Lettura delle voci di log.
Per leggere le voci di log utilizzando l'API Logging, consulta il metodo
entries.list.