Panoramica su routing e archiviazione

Questo documento spiega come Cloud Logging elabora le voci di log e descrive i componenti chiave del routing e dell'archiviazione di Logging. Il routing è il processo utilizzato da Cloud Logging per determinare quale a che fare con una voce di log appena visualizzata. Puoi indirizzare le voci di log alle destinazioni come i bucket Logging, in cui è archiviata la voce di log, oppure in Pub/Sub. Per esportare i log in destinazioni di terze parti, indirizzali a un argomento Pub/Sub e poi autorizza la destinazione di terze parti a iscriversi all'argomento Pub/Sub.

A livello generale, questo è il modo in cui Cloud Logging instrada e archivia le voci di log:

Figura che mostra come Cloud Logging instrada le voci dei log.

Esegui il routing dei log con il router dei log

Le sezioni seguenti spiegano come Il logging instrada i log con il router dei log utilizzando i sink.

Router dei log

Viene inviata una voce di log Risorsa Google Cloud specificato nel relativo campo logName durante la sua entries.write chiamata.

Cloud Logging riceve voci di log con API Cloud Logging a cui passano il router dei log. I sink nel router dei log controllano ogni voce di log in base al filtro di inclusione e ai filtri di esclusione, quindi determinano le destinazioni, inclusi i bucket Cloud Logging, a cui deve essere inviata la voce di log. Puoi utilizzare la modalità combinazioni di sink per instradare una voce di log a più destinazioni.

Il router dei log memorizza temporaneamente la voce del log. Questo comportamento si protegge da interruzioni e interruzioni temporanee che potrebbero verificarsi quando un sink instrada una voce di log a una destinazione. Il buffering non protegge dai sink di configurazione. Se il sink non è configurato correttamente, non instrada le voci di log, viene generato un log di errore e viene inviata un'email di avviso relativa a un errore di configurazione del sink. Quando non è possibile eseguire il routing delle voci di log, vengono ignorate.

Lo spazio di archiviazione temporaneo del router dei log è diverso da quello a più lungo termine fornito dai bucket di logging.

Voci di log in entrata con timestamp superiori a periodo di conservazione dei log nel passato o se sono più di 24 ore nel futuro vengono scartati.

Sink

I sink controllano il modo in cui Cloud Logging instrada i log. Utilizzando i sink, puoi inoltrare alcuni o tutti i log a destinazioni supportate. Alcuni dei per cui potresti voler controllare il routing dei log includono seguenti:

  • Archiviare i log che è improbabile che vengano letti, ma che devono essere conservati ai fini della conformità.
  • Per organizzare i log in bucket in un formato utile per te.
  • Per utilizzare strumenti di analisi dei big data sui tuoi log.
  • Per trasmettere i log ad altre applicazioni, altri repository o servizi parti. Ad esempio, se vuoi esportare i log da Google Cloud, in modo che sia possibile vederle su una piattaforma di terze parti e poi configurare un sink per eseguire il routing delle voci di log in Pub/Sub.

I sink appartengono a una determinata risorsa Google Cloud: i progetti Google Cloud, account di fatturazione, cartelle e organizzazioni. Quando la risorsa riceve un di log, instrada la voce di log in base ai sink che contiene e, se abilitato, qualsiasi sink ancestrale appartenente al gerarchia delle risorse. La voce di log viene inviata alla destinazione associata a ogni sink corrispondente.

Cloud Logging fornisce due destinazioni predefinite per ogni progetto, account di fatturazione, cartella e organizzazione Google Cloud: _Required e _Default. Tutti i log generati in una risorsa vengono elaborati automaticamente tramite questi due sink e poi archiviati nei bucket _Required o _Default con nome corrispondente.

I sink agiscono in modo indipendente l'uno dall'altro. Indipendentemente dal modo in cui i sink predefiniti elaborano le voci di log, puoi creare i tuoi sink per instradare alcuni o tutti i log a varie destinazioni supportate o per escluderli dall'archiviazione da parte di Cloud Logging.

Le voci di log che vengono instradate da un sink sono controllate configurando il filtro di inclusione e i filtri di esclusione del sink. A seconda della configurazione del sink, ogni voce di log ricevuta Cloud Logging rientra in una o più di queste categorie:

  • Archiviati in Cloud Logging e non con routing altrove.

  • Memorizzati in Cloud Logging e inoltrati a una destinazione supportata.

  • Non archiviato in Cloud Logging, ma indirizzato a una destinazione supportata.

  • Né archiviato in Cloud Logging né eseguito altrove.

In genere crei sink a livello di progetto Google Cloud, ma se vuoi combinare e instradare i log dalle risorse contenute in un'organizzazione o una cartella Google Cloud, puoi creare sink aggregati.

I sink solo per le voci di log che arrivano dopo la creazione del sink il routing avviene quando i log passano attraverso l'API Logging. Se devi eseguire il routing delle voci di log in modo retroattivo, consulta Copiare i log.

Filtri di inclusione

Quando un sink non specifica filtri, tutte le voci di log corrispondono e vengono inoltrate alla destinazione del sink. Puoi configurare l'emissario in modo da selezionare voci di log specifiche impostando un filtro di inclusione. Puoi anche impostare uno o più filtri di esclusione per escludere il routing delle voci di log.

Quando configuri un sink, e specificare i propri filtri mediante il linguaggio di query di Logging.

Una voce di log viene indirizzata da un sink in base a queste regole:

  • Se la voce di log non corrisponde al filtro di inclusione, non viene inoltrata. Quando un sink non specifica un filtro di inclusione, ogni voce di log corrisponde a quel filtro.

  • Se la voce di log corrisponde al filtro di inclusione e ad almeno un filtro di esclusione, non viene inoltrata.

  • Se la voce di log corrisponde al filtro di inclusione e non corrisponde a nessun filtro di esclusione, viene indirizzata alla destinazione del sink.

Filtri di esclusione

Quando crei un sink, puoi impostare più filtri di esclusione. I filtri di esclusione ti consentono di escludere la destinazione delle voci di log corrispondenti al filtro di inclusione o la loro memorizzazione in un bucket di log. Per definire i filtri di esclusione, utilizza il Linguaggio di query di Logging.

Le voci di log escluse utilizzano il consumo entries.write quota API perché sono esclusi dopo che sono stati ricevuti dall'API Logging. Non puoi ridurre il numero di chiamate API entries.write escludendo le voci di log.

Le voci di log escluse non sono disponibili in Esplora log.

Anche le voci di log che non vengono inoltrate ad almeno un bucket di log, esplicitamente con filtri di esclusione o perché non corrispondono a nessun sink con una destinazione di archiviazione dei log, sono escluse da Error Reporting. Pertanto, queste voci di log non sono disponibili per risolvere gli errori. Le metriche basate su log definite dall'utente vengono calcolate dalle voci di log incluse e escluse. Per ulteriori informazioni, vedi Monitora i log.

Destinazioni supportate

Puoi utilizzare il router del log per inoltrare determinate voci di log a destinazioni supportate in qualsiasi progetto Google Cloud. Logging supporta le seguenti destinazioni sink:

  • Bucket Cloud Logging: fornisce spazio di archiviazione in Cloud Logging. Un bucket di log può memorizzare le voci di log ricevute da più progetti Google Cloud. Il bucket di log può trovarsi nello stesso progetto in cui hanno origine le voci di log. in un altro progetto. Per informazioni sulla visualizzazione delle voci di log archiviate nei bucket di log, consulta Panoramica delle query e delle visualizzazioni dei log e visualizzare i log con routing ai bucket Cloud Logging.

    Puoi combinare i dati di Cloud Logging con altri dati eseguendo l'upgrade di un bucket di log per l'utilizzo di Log Analytics e poi creando un set di dati collegato, ovvero un set di dati di sola lettura su cui è possibile eseguire query dalle pagine BigQuery Studio e Looker Studio.

  • Set di dati BigQuery: fornisce l'archiviazione delle voci di log in un set di dati BigQuery scrivibile. Il set di dati BigQuery possono trovarsi nello stesso progetto in cui hanno origine le voci di log o in un progetto. Puoi utilizzare le funzionalità di analisi dei big data sulle voci di log archiviate. Per informazioni su come visualizzare le voci di log inviate a BigQuery, consulta Visualizzare i log inviati a BigQuery.

  • Bucket Cloud Storage: fornisce lo spazio di archiviazione delle voci di log in Cloud Storage. Il bucket Cloud Storage può trovarsi nello stesso progetto in cui hanno origine le voci di log o in un progetto diverso. Le voci di log vengono archiviate come file JSON. Per informazioni sulla visualizzazione delle voci di log indirizzate a Cloud Storage: consulta Visualizzare i log con routing a Cloud Storage.
  • Argomento Pub/Sub: fornisce il supporto per le integrazioni di terze parti. Le voci di log vengono formattate in JSON e quindi instradate a un Pub/Sub per ogni argomento. L'argomento può trovarsi nello stesso progetto in cui si trovano le voci di log o in un altro progetto. Per informazioni sulla visualizzazione delle voci di log indirizzate a vedi Pub/Sub, Visualizza i log con routing a Pub/Sub.

  • Progetto Google Cloud: inoltra le voci di log a un altro progetto Google Cloud. Nella configurazione, i sink nel progetto di destinazione elaborano le voci di log.

Per ulteriori informazioni, vedi Esegui il routing dei log alle destinazioni supportate.

Archiviazione, visualizzazione e gestione dei log

La sezione seguente descrive in dettaglio come vengono archiviati i log in Cloud Logging e come puoi visualizzarle e gestirle.

Bucket di log

Cloud Logging usa i bucket di log come container nei tuoi progetti Google Cloud, account di fatturazione, cartelle e organizzazioni per archiviare e organizzare i log e i dati di Google Cloud. Le voci di log archiviate in Cloud Logging vengono indicizzate, ottimizzate e inviate per consentirti di analizzarle in tempo reale. Bucket Cloud Logging sono entità di archiviazione diverse rispetto ai bucket Cloud Storage con nomi simili.

Per ogni progetto, account di fatturazione, cartella e organizzazione Google Cloud, Logging crea automaticamente due bucket di log: _Required e _Default. Logging crea automaticamente i sink denominati _Required e _Default che, nella configurazione predefinita, indirizzano le voci di log ai bucket con nome corrispondente.

Puoi disattivare il sink _Default, che inoltra le voci di log al bucket di log _Default. Puoi anche modificare il comportamento dei sink _Default creati per qualsiasi nuovo progetto o nuova cartella Google Cloud. Per ulteriori informazioni, consulta la pagina Configura le impostazioni predefinite per organizzazioni e cartelle.

Non puoi modificare le regole di routing per il bucket _Required.

Inoltre, puoi creare bucket definiti dall'utente per qualsiasi progetto Google Cloud.

Creando i sink, puoi instradare tutte le voci di log o solo un sottoinsieme in qualsiasi secchia di log. Questa flessibilità ti consente di scegliere il progetto Google Cloud in cui vengono archiviate le voci di log e di archiviare le voci di log di più risorse in un'unica posizione.

Per ulteriori informazioni, vedi Configura bucket di log.

_Required bucket di log

Cloud Logging invia automaticamente i seguenti tipi di voci di log al _Required bucket:

Cloud Logging conserva le voci di log nel bucket _Required per 400 giorni; non puoi modificare questo periodo di conservazione.

Non puoi modificare o eliminare il bucket _Required. Non puoi disabilitare il sink _Required, che indirizza le voci di log al bucket _Required.

_Default bucket di log

Eventuali voci di log non archiviate nel bucket _Required vengono instradate dal sink _Default al bucket _Default, a meno che non disattivi o modifichi in altro modo il sink _Default. Per istruzioni su come modificare i sink, consulta Gestisci i sink.

Ad esempio, Cloud Logging instrada automaticamente i seguenti tipi di voci di log nel bucket _Default:

Cloud Logging conserva le voci di log nel bucket _Default per 30 giorni, a meno che non configuri la conservazione personalizzata per il bucket.

Non puoi eliminare il bucket _Default.

Bucket di log definiti dall'utente

Puoi anche crea bucket di log definiti dall'utente in qualsiasi progetto Google Cloud. Applicando i sink ai bucket di log definiti dall'utente, puoi instradare qualsiasi sottoinsieme delle tue voci di log a qualsiasi bucket di log, scegli il progetto Google Cloud che consente di archiviare le voci di log di più risorse in un'unica posizione.

Ad esempio, per qualsiasi log generato nel progetto A, puoi configurare un sink per indirizzare le relative voci di log a un bucket definito dall'utente nel progetto A o a un bucket di log nel progetto A.

Puoi configurare la conservazione personalizzata per il bucket.

Per informazioni sulla gestione dei bucket di log definiti dall'utente, inclusa l'eliminazione o l'aggiornamento, consulta Configurare e gestire i bucket di log.

Aree geografiche

I bucket di log sono risorse a livello di regione. L'infrastruttura che archivia, indicizza e esegue ricerche nelle voci dei log si trova in una località geografica specifica. Google Cloud gestisce l'infrastruttura in modo che le applicazioni siano disponibili in modo ridondante nelle varie zone all'interno della regione.

Quando crei un bucket di log o imposti un criterio regionale a livello di organizzazione, puoi scegliere di archiviare le voci di log in una delle seguenti regioni:

Africa

Nome regione Descrizione della regione
africa-south1 Johannesburg

Americhe

Nome regione Descrizione della regione
northamerica-northeast1 Montréal
northamerica-northeast2 Toronto
southamerica-east1 San Paolo
southamerica-west1 Santiago
us-central1 Iowa
us-east1 Carolina del Sud
us-east4 Virginia del Nord
us-east5 Columbus
us-south1 Dallas
us-west1 Oregon
us-west2 Los Angeles
us-west3 Salt Lake City
us-west4 Las Vegas

Asia Pacifico

Nome regione Descrizione della regione
asia-east1 Taiwan
asia-east2 Hong Kong
asia-northeast1 Tokyo
asia-northeast2 Osaka
asia-northeast3 Seul
asia-south1 Mumbai
asia-south2 Delhi
asia-southeast1 Singapore
asia-southeast2 Giacarta
australia-southeast1 Sydney
australia-southeast2 Melbourne

Europa

Nome regione Descrizione regione
europe-central2 Varsavia
europe-north1 Finlandia
europe-southwest1 Madrid
europe-west1 Belgio
europe-west2 Londra
europe-west3 Francoforte
europe-west4 Paesi Bassi
europe-west6 Zurigo
europe-west8 Milano
europe-west9 Parigi
europe-west10 Berlino
europe-west12 Torino

Medio Oriente

Nome regione Descrizione della regione
me-central1 Doha
me-central2 Dammam
me-west1 Tel Aviv

Altro

Nome regione Descrizione regione
eu Log archiviati in data center all'interno dell'Unione Europea; nessuna garanzia di ridondanza aggiuntiva
us Log archiviati in data center all'interno degli Stati Uniti; nessuna garanzia di ridondanza aggiuntiva
global i log archiviati in qualsiasi data center del mondo. nessuna ridondanza aggiuntiva garanzie

Quando imposti la posizione su global, non devi specificare dove vengono archiviate fisicamente le voci di log.

Puoi applicare automaticamente una determinata regione di archiviazione a _Default e _Required bucket creati in un'organizzazione o in una cartella. Per ulteriori informazioni, vedi Configura le impostazioni predefinite per organizzazioni e cartelle.

Per saperne di più sulla regionalità dei dati e su dove puoi archiviare i dati dei log, consulta Informazioni sulle regioni di dati.

Criteri dell'organizzazione

Puoi creare un criterio dell'organizzazione per assicurarti che la tua organizzazione soddisfi le tue esigenze di conformità e normative. Con un criterio dell'organizzazione, puoi specificare in quali regioni la tua organizzazione può creare nuovi bucket di log. Puoi anche impedire alla tua organizzazione di creare nei nuovi bucket di log in determinate regioni.

Cloud Logging non applica il criterio dell'organizzazione appena creato su bucket di log esistenti; applica il criterio solo ai nuovi bucket di log.

Per informazioni sulla creazione di un criterio dell'organizzazione basato sulla località, consulta Limita le località delle risorse.

Inoltre, puoi configurare una posizione di archiviazione predefinita per i bucket _Default e _Required in un'organizzazione o in una cartella. Se configuri un criterio dell'organizzazione che vincola la posizione in cui i dati possono essere devi assicurarti che la posizione di archiviazione predefinita specificata sia coerente con quel vincolo. Per ulteriori informazioni, vedi Configura le impostazioni predefinite per organizzazioni e cartelle.

Conservazione

Cloud Logging conserva i log in base alle regole di conservazione applicabili al log. un tipo di bucket in cui sono conservati i log. Per informazioni sui periodi di conservazione per i diversi tipi di log, consulta Quote e limiti.

Puoi configurare Cloud Logging in modo che i log vengano conservati per un periodo compreso tra 1 giorno e 3650 giorni. Le regole di conservazione personalizzate si applicano a tutti i log di un bucket, indipendentemente dal tipo di log o dal fatto che il log sia stato copiato da un'altra posizione.

Per informazioni su come impostare le regole di conservazione per un bucket di log, consulta Configurare la conservazione personalizzata.

Visualizzazioni log

Le visualizzazioni dei log ti consentono di concedere a un utente l'accesso solo a un sottoinsieme di voci di log memorizzate in un bucket di log. Per informazioni su come configurare le visualizzazioni dei log e su come concedere l'accesso a viste log specifiche, consulta Configura le visualizzazioni dei log su un bucket di log.

Per ogni bucket di log, Cloud Logging crea automaticamente la visualizzazione _AllLogs, che mostra tutti i log archiviati in quel bucket. Cloud Logging crea anche una vista del bucket _Default denominata _Default. La vista _Default per il _Default bucket mostra tutti i log, ad eccezione degli audit log di accesso ai dati. Le visualizzazioni _AllLogs e _Default non sono modificabili e non puoi eliminare la visualizzazione dei log _Default.

Le visualizzazioni di log personalizzate offrono un modo avanzato e granulare per controllare l'accesso ai dati dei log. Ad esempio, considera uno scenario in cui archivi tutti i log della tua organizzazione in un progetto Google Cloud centrale. Poiché i bucket di log possono contenere log di diversi progetti Google Cloud, ti consigliamo di controllare da quali progetti Google Cloud i diversi utenti possono visualizzare i log. Utilizzo del log personalizzato viste, puoi concedere a un utente l'accesso ai log solo da un a un singolo progetto Google Cloud, mentre concedi a un altro utente l'accesso ai log per tutti i progetti Google Cloud.

Utilizzo dei log nell'ecosistema Google Cloud

La sezione seguente fornisce informazioni su come utilizzare i log in Google Cloud.

Metriche basate su log

Le metriche basate su log sono metriche di Cloud Monitoring ricavate dal contenuto delle voci di log. Ad esempio, se Cloud Logging riceve una voce di log per un progetto Google Cloud che corrisponde ai filtri di una delle metriche del progetto Google Cloud, la voce di log viene conteggiata nei dati delle metriche.

Le metriche basate su log interagiscono con il routing in modo diverso, a seconda che le metriche basate su log sono definite dal sistema o da te. Le seguenti sezioni descrivono queste differenze.

Metriche basate su log e filtri di esclusione

I filtri di esclusione sink si applicano alle metriche basate su log definite dal sistema, che contano solo i log archiviati nei bucket di log.

I filtri di esclusione del sink non si applicano alle metriche basate su log definite dall'utente. Anche se escludi l'archiviazione dei log in bucket di Logging, potresti vedere i log conteggiati in queste metriche.

Ambito delle metriche basate su log

Le metriche definite dal sistema basate su log si applicano a livello di progetto Google Cloud. Queste metriche vengono calcolate dal router dei log e si applicano ai log solo nel progetto Google Cloud in cui vengono ricevute.

Le metriche definite dall'utente basate su log possono essere applicate in entrambi i casi al progetto Google Cloud o a livello di un bucket di log specifico:

  • Le metriche a livello di progetto sono calcolate come metriche definite dal sistema basate su log; queste metriche basate su log definite dall'utente si applicano solo ai log nel progetto Google Cloud in cui vengono ricevuti.
  • Le metriche con ambito bucket si applicano ai log nel bucket di log in cui vengono ricevuti, indipendentemente dal progetto Google Cloud in cui hanno avuto origine le voci di log.

    Con le metriche basate su log a livello di bucket, puoi creare metriche basate su log che possono valutare i log nei seguenti casi:

    • Log con routing da un progetto a un bucket in un altro progetto.
    • Log con routing a un bucket tramite un sink aggregato.

Per saperne di più, consulta Panoramica delle metriche basate su log.

Trovare i log nelle destinazioni supportate

Per informazioni sul formato delle voci di log instradate e su come i log sono organizzati nelle destinazioni, consulta Visualizza i log nelle destinazioni sink.

Casi d'uso comuni

Per risolvere i casi d'uso comuni relativi al routing e all'archiviazione dei log, consulta quanto segue documenti e tutorial:

Esigenze di conformità

Per le best practice sull'utilizzo del routing per la governance dei dati, vedi quanto segue documenti:

Controllo dell'accesso con IAM

Per informazioni su come utilizzi I ruoli e le autorizzazioni di Identity and Access Management (IAM) per controllare l'accesso ai dati di Cloud Logging, Controllo dell'accesso con IAM.

Prezzi

Cloud Logging non addebita alcun costo per il routing dei log a una destinazione supportata. Tuttavia, la destinazione potrebbe applicare dei costi. Ad eccezione del bucket di log _Required, Cloud Logging addebita lo streaming dei log nei bucket di log e per l'archiviazione per un periodo di tempo superiore al periodo di conservazione predefinito del bucket di log.

Cloud Logging non addebita alcun costo per la copia dei log, per la definizione degli ambiti di log, o per le query inviate tramite Pagine Esplora log o Analisi dei log.

Per ulteriori informazioni, consulta i seguenti documenti:

Passaggi successivi

Per aiutarti a indirizzare e archiviare i dati di Cloud Logging, consulta i seguenti documenti:

  • Error Reporting può analizzare le voci di log e segnalarti gli errori. Per ulteriori informazioni su questo servizio, incluse informazioni su quando è possibile analizzare le voci di log, Panoramica di Error Reporting.