Utilizzare il logging strutturato con i log di compilazione
Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
Questo documento descrive come configurare i log di Cloud Build per l'utilizzo con i log strutturati in Cloud Logging.
La registrazione strutturata ti consente di archiviare un campo del log di compilazione in formato JSON all'interno del campo jsonPayload o di altri campi in un LogEntry.
Puoi configurare il file di configurazione di compilazione in modo che i campi specifici dei log di compilazione vengano mappati in questo modo quando invii un log di compilazione a Logging.
Ad esempio, se il log di compilazione contiene un message, il messaggio viene visualizzato in textPayload o jsonPayload.message nella voce del log risultante. Se un campo del log di compilazione non può essere mappato a un campo della voce di log specifico,
il campo del log di compilazione viene memorizzato all'interno della voce di log jsonPayload.
Mappa i campi del log di compilazione ai campi di voce di log
Per attivare la mappatura dei campi nei log di compilazione, imposta il campo enableStructuredLoggingBuildOptions su TRUE.
La tabella seguente mostra i campi del log di compilazione che mappano a un campo della voce di log:
Campo BuildLog (JSON)
Campo LogEntry
Descrizione
Note
message
textPayload o jsonPayload.message
Consente di impostare il messaggio di log
Deve essere una stringa.
Se il log di compilazione contiene solo campi mappabili, il messaggio viene visualizzato in textPayload. In caso contrario, il messaggio viene visualizzato in jsonPayload.message.
Se il log di compilazione contiene più passaggi, l'identificatore del passaggio viene visualizzato all'inizio del messaggio.
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Difficile da capire","hardToUnderstand","thumb-down"],["Informazioni o codice di esempio errati","incorrectInformationOrSampleCode","thumb-down"],["Mancano le informazioni o gli esempi di cui ho bisogno","missingTheInformationSamplesINeed","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 2025-09-04 UTC."],[[["\u003cp\u003eCloud Build logs can be configured for structured logging, allowing JSON-formatted build log fields to be stored in \u003ccode\u003eLogEntry\u003c/code\u003e fields.\u003c/p\u003e\n"],["\u003cp\u003eEnabling structured logging involves setting the \u003ccode\u003eenableStructuredLogging\u003c/code\u003e field to \u003ccode\u003eTRUE\u003c/code\u003e in your \u003ccode\u003eBuildOptions\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eSpecific build log fields like \u003ccode\u003emessage\u003c/code\u003e and \u003ccode\u003eseverity\u003c/code\u003e can be mapped to corresponding \u003ccode\u003eLogEntry\u003c/code\u003e fields, such as \u003ccode\u003etextPayload\u003c/code\u003e or \u003ccode\u003ejsonPayload.message\u003c/code\u003e, and \u003ccode\u003eseverity\u003c/code\u003e respectively.\u003c/p\u003e\n"],["\u003cp\u003eCertain build log fields, including \u003ccode\u003ehttpRequest\u003c/code\u003e and various \u003ccode\u003elogging.googleapis.com/\u003c/code\u003e fields, are dropped from the log entry if present, while all other fields are included in the \u003ccode\u003ejsonPayload\u003c/code\u003e.\u003c/p\u003e\n"]]],[],null,["# Use structured logging with build logs\n\nThis document describes how you can configure your Cloud Build\nlogs for use with [structured logging](/logging/docs/structured-logging)\nin Cloud Logging.\n\nStructured logging lets you store a JSON-formatted build log field as part of\nthe `jsonPayload` field, or as certain other fields,\nin a [`LogEntry`](/logging/docs/reference/v2/rest/v2/LogEntry).\nYou can set up your build config file so that specific build log fields\nare mapped this way when you send a build log to Logging.\n\nFor example, if your build log contains a `message`, then the message appears\nin either `textPayload` or `jsonPayload.message` in the resulting\nlog entry. If a build log field can't be mapped to a specific log entry field,\nthen the build log field is stored as part of the log entry `jsonPayload`.\n\nMap build log fields to log entry fields\n----------------------------------------\n\nTo enable field mapping on your build logs, set the\n[`BuildOptions`](/build/docs/api/reference/rest/v1/projects.builds#buildoptions)\nfield `enableStructuredLogging` to `TRUE`.\n\nThe following table shows build log fields that map to a log entry field:\n\nThe following build log fields can't be mapped and will be dropped from the\nlog entry if they appear in a build log:\n\n- `httpRequest`\n- `logging.googleapis.com/insertId`\n- `logging.googleapis.com/labels`\n- `logging.googleapis.com/operation`\n- `logging.googleapis.com/sourceLocation`\n- `logging.googleapis.com/spanId`\n- `logging.googleapis.com/trace`\n- `logging.googleapis.com/trace_sampled`\n- `time`\n- `timestamp`\n- `timestampSeconds`\n- `timestampNanos`\n\nAll other build log fields will appear as part of the log entry's `jsonPayload`."]]