Pattern di progettazione per l'esportazione dei dati di logging

Questo articolo presenta una serie di articoli che esplorano i modelli di progettazione e le best practice per i comuni scenari di esportazione dei log.

Cloud Logging fornisce un datastore operativo per i log e grandi funzionalità di esportazione. I log potrebbero essere esportati per diversi motivi, ad esempio la conservazione dei log per l'archiviazione a lungo termine (mesi o anni) per soddisfare i requisiti di conformità o per l'esecuzione dell'analisi dei dati a fronte delle metriche estratte dai log. Cloud Logging può essere esportato in Cloud Storage, BigQuery e Pub/Sub, ma anche in Elasticsearch.

Esportazione dei log

Cloud Logging può esportare tutti i log per un'organizzazione utilizzando i sink aggregati o un progetto Google Cloud specifico tramite i sink di log. Utilizzando i filtri di logging, puoi includere o escludere progetti o risorse cloud specifici. Ad esempio, puoi esportare tutti i log di Compute Engine, ma escludere i log ad alto volume da Cloud Load Balancing. Questo approccio offre la flessibilità necessaria per esportare tutti i log o log specifici.

Utilizzando i sink aggregati, la tua organizzazione può esportare i log da tutti i progetti o da una singola cartella. Con questa funzionalità puoi applicare i criteri di esportazione dei log a tutti i progetti della tua organizzazione. Puoi utilizzare i controlli IAM a livello di organizzazione per limitare l'accesso degli utenti alla sola modifica della configurazione di esportazione dei log.

In alternativa ai sink aggregati, l'esportazione dei log è abilitata per progetto anziché per l'intera organizzazione. L'esportazione dei log è altrimenti identica ai sink aggregati.

Modalità di esportazione

Esistono tre modi per esportare i log da Cloud Logging:

  • Per i file: file JSON archiviati in Cloud Storage.
  • A BigQuery: tabelle di logging create in un set di dati BigQuery.
  • A Pub/Sub: messaggi JSON recapitati a un argomento Pub/Sub.

Che cosa viene esportato

Per informazioni sui tipi di log disponibili in Cloud Logging, consulta Log disponibili.

Formati di logging

A seconda del tipo di log, esistono tre diversi formati di payload di logging.

textPayload
I contenuti sono rappresentati da una singola stringa. I log segnalati dall'agente Cloud Logging (incluso syslog) e dai log Cloud SQL sono entrambi esempi di log che utilizzano questo formato.
protoPayload
I contenuti sono rappresentati come buffer di protocollo e variano a seconda dei contenuti specifici registrati. Gli audit log Attività di amministrazione e Accesso ai dati vengono esportati in questo formato. Questi log hanno JSON e strutture di tabelle diverse in BigQuery in base al tipo di voce esportato.
jsonPayload
I contenuti sono rappresentati come un oggetto JSON e variano a seconda dei contenuti specifici registrati. I log delle attività di Compute Engine e del gestore della scalabilità automatica di Compute Engine sono esempi che utilizzano questo formato.

La documentazione relativa a schemi e campi fornisce informazioni dettagliate sulla mappatura dei formati dei log alla tabella di BigQuery e alle strutture dei file di esportazione JSON. Considera il formato del payload di logging quando scrivi le query su BigQuery Export o quando analizzi i file JSON o di esportazione Pub/Sub. Il formato dettagliato del log è elencato nella definizione API per LogEntry.

Scenari di esportazione dei log

Gli articoli di questa serie descrivono gli scenari per cui potresti voler esportare i log. Ogni scenario elenca i requisiti, la configurazione e l'utilizzo e mostra come condividere le esportazioni.

Passaggi successivi