Configura i bucket di log

Puoi creare, visualizzare e gestire i bucket Cloud Logging per archiviare e centralizzare i dati di log utilizzando la console Google Cloud , Google Cloud CLI o l'API Logging. Puoi anche configurare periodi di conservazione personalizzati per controllare i costi di archiviazione e la conformità.

Per informazioni concettuali, consulta Archivia le voci di log.

Prima di iniziare

Configura il progetto, i ruoli IAM e seleziona l'interfaccia che prevedi di utilizzare.

Configura il progetto e i ruoli

Per iniziare a utilizzare i bucket, segui questi passaggi:

Seleziona l'interfaccia che intendi utilizzare

Console Google Cloud

Quando utilizzi la console Google Cloud per accedere ai servizi e alle API Google Cloud , non devi configurare l'autenticazione.

gcloud

Installa Google Cloud CLI, quindi accedi a gcloud CLI con la tua identità federata. Dopo aver eseguito l'accesso, inizializza Google Cloud CLI eseguendo il comando seguente:

gcloud init

REST

Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, utilizzi le credenziali che fornisci a gcloud CLI.

    Installa Google Cloud CLI, quindi accedi a gcloud CLI con la tua identità federata.

Per saperne di più, consulta Autenticati per usare REST nella documentazione sull'autenticazione di Google Cloud .

Crea un bucket

Queste istruzioni presuppongono che tu stia utilizzando la crittografia gestita da Google. Se preferisci utilizzare le chiavi di crittografia gestite dal cliente (CMEK), consulta Configura CMEK per l'archiviazione dei log.

Puoi creare un massimo di 100 bucket per progettoGoogle Cloud . Non puoi creare bucket di log in cartelle o organizzazioni.

Per creare un bucket di log definito dall'utente per il tuo progetto Google Cloud , segui questi passaggi:

Console Google Cloud

Per creare un bucket di log nel tuo progetto Google Cloud , segui questi passaggi:

  1. Nella console Google Cloud , vai alla pagina Archiviazione dei log:

    Vai ad Archiviazione dei log

    Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Logging.

  2. Fai clic su Crea bucket di log.

  3. Inserisci un nome e una descrizione per il bucket.

  4. Per selezionare la regione di archiviazione per i log, fai clic sul menu Seleziona la regione del bucket di log e seleziona una regione.

  5. (Facoltativo) Per impostare un periodo di conservazione personalizzato per i log nel bucket, fai clic su Avanti.

    Nel campo Periodo di conservazione, inserisci il numero di giorni, tra 1 e, durante i quali vuoi che Cloud Logging conservi i log. Se non personalizzi il periodo di conservazione, il valore predefinito è 30 days.

    Puoi anche aggiornare il periodo di conservazione del bucket di log dopo averlo creato.

  6. Fai clic su Crea bucket.

    Il completamento di questi passaggi potrebbe richiedere un po' di tempo.

gcloud

Per creare un bucket di log, esegui il comando gcloud logging buckets create:

gcloud logging buckets create BUCKET_ID --location=LOCATION

Ad esempio, se vuoi creare un bucket con my-bucket BUCKET_ID nella regione global, il comando sarà simile al seguente:

gcloud logging buckets create my-bucket --location global --description "My first bucket"

REST

Per creare un bucket, utilizza il metodo projects.locations.buckets.create. Prepara gli argomenti per il metodo come segue:

  1. Imposta il parametro parent in modo che corrisponda alla risorsa in cui creare il bucket: projects/PROJECT_ID/locations/LOCATION

    La variabile LOCATION si riferisce alla regione in cui vuoi archiviare i log.

    Ad esempio, se vuoi creare un bucket per il progetto my-project nella regione global, il parametro parent sarà simile al seguente: projects/my-project/locations/global

  2. Imposta il parametro bucketId, ad esempio my-bucket.

  3. Chiama il metodo sincrono projects.locations.buckets.create per creare il bucket.

Dopo aver creato un bucket, crea un sink per instradare le voci di log al bucket e configura le visualizzazioni dei log per controllare chi può accedere ai log nel bucket e quali log può visualizzare. Puoi anche aggiornare il bucket per configurare la conservazione personalizzata.

Elenca e visualizza i dettagli dei bucket di log

Questa sezione descrive come elencare e visualizzare i dettagli dei bucket di log in un progetto, una cartella o un'organizzazione.

Elenca bucket

Per elencare i bucket di log associati a un progetto Google Cloud e visualizzare dettagli come le impostazioni di conservazione, segui questi passaggi:

Console Google Cloud

Nella console Google Cloud , vai alla pagina Archiviazione dei log:

Vai ad Archiviazione dei log

Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Logging.

Una tabella denominata Bucket di log elenca i bucket associati al progettoGoogle Cloud attuale.

La tabella elenca i seguenti attributi per ogni bucket di log:

  • Nome: il nome del bucket di log.
  • Descrizione: la descrizione del bucket.
  • Periodo di conservazione: il numero di giorni per cui i dati del bucket verranno archiviati da Cloud Logging.
  • Regione: la posizione geografica in cui vengono archiviati i dati del bucket.
  • Stato: indica se il bucket è bloccato o sbloccato.

Se un bucket è in attesa di eliminazione da parte di Cloud Logging, la voce della tabella è annotata con un simbolo di avviso.

gcloud

Esegui il comando gcloud logging buckets list:

gcloud logging buckets list

Vengono visualizzati i seguenti attributi per i bucket di log:

  • LOCATION: la regione in cui sono archiviati i dati del bucket.
  • BUCKET_ID: il nome del bucket di log.
  • RETENTION_DAYS: il numero di giorni per cui i dati del bucket verranno archiviati da Cloud Logging.
  • LIFECYCLE_STATE: indica se il bucket è in attesa di eliminazione da parte di Cloud Logging.
  • LOCKED: indica se il bucket è bloccato o sbloccato.
  • CREATE_TIME: un timestamp che indica quando è stato creato il bucket.
  • UPDATE_TIME: un timestamp che indica l'ultima modifica del bucket.

Puoi anche visualizzare gli attributi di un solo bucket. Ad esempio, per visualizzare i dettagli del bucket di log _Default nella regione global, esegui il comando gcloud logging buckets describe:

gcloud logging buckets describe _Default --location=global

REST

Per elencare i bucket di log associati a un progetto Google Cloud , utilizza projects.locations.buckets.list nell'API Logging.

Visualizza i dettagli di un bucket

I dettagli di un bucket di log includono il nome, la descrizione, la località e il periodo di conservazione. Puoi anche visualizzare le informazioni su quando il bucket di log è stato creato e quando è stato aggiornato l'ultima volta.

Per visualizzare i dettagli di un singolo bucket di log, segui questi passaggi:

Console Google Cloud

Nella console Google Cloud , vai alla pagina Archiviazione dei log:

Vai ad Archiviazione dei log

Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Logging.

Nel bucket di log, fai clic su Altro e poi seleziona Visualizza dettagli bucket.

La finestra di dialogo elenca i seguenti attributi per il bucket di log:

  • Nome: il nome del bucket di log.
  • Descrizione: la descrizione del bucket di log.
  • Periodo di conservazione: il numero di giorni per cui i dati del bucket verranno archiviati da Cloud Logging.
  • Regione: la posizione geografica in cui vengono archiviati i dati del bucket.

gcloud

Esegui il comando gcloud logging buckets describe.

Ad esempio, il seguente comando restituisce i dettagli del bucket _Default:

gcloud logging buckets describe _Default --location=global

Vengono visualizzati i seguenti attributi per il bucket di log:

  • createTime: un timestamp che indica quando è stato creato il bucket.
  • description: la descrizione del bucket di log.
  • lifecycleState: indica se il bucket è in attesa di eliminazione da parte di Cloud Logging.
  • name: il nome del bucket di log.
  • retentionDays: il numero di giorni per cui i dati del bucket verranno archiviati da Cloud Logging.
  • updateTime: un timestamp che indica l'ultima modifica del bucket.

REST

Per visualizzare i dettagli di un singolo bucket di log, utilizza projects.locations.buckets.get nell'API Logging.

Gestisci i bucket

Questa sezione descrive come gestire i bucket di log utilizzando Google Cloud CLI o la console Google Cloud .

Aggiorna un bucket

Per aggiornare le proprietà del bucket, ad esempio la descrizione o il periodo di conservazione, segui questi passaggi:

Console Google Cloud

Per aggiornare le proprietà del bucket:

  1. Nella console Google Cloud , vai alla pagina Archiviazione dei log:

    Vai ad Archiviazione dei log

    Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Logging.

  2. Per il bucket che vuoi aggiornare, fai clic su Altro.

  3. Seleziona Modifica bucket.

  4. Modifica il bucket in base alle tue esigenze.

  5. Fai clic su Aggiorna bucket.

gcloud

Per aggiornare le proprietà del bucket, esegui il comando gcloud logging buckets update:

gcloud logging buckets update BUCKET_ID --location=LOCATION UPDATED_ATTRIBUTES

Ad esempio:

gcloud logging buckets update my-bucket --location=global --description "Updated description"

REST

Per aggiornare le proprietà del bucket, utilizza projects.locations.buckets.patch nell'API Logging.

Configura la conservazione personalizzata

Quando crei un bucket di log, puoi personalizzare il periodo di archiviazione dei log nel bucket da parte di Cloud Logging. Puoi anche configurare il periodo di conservazione per il bucket di log _Default quando questo si trova in un progetto.

Non puoi modificare il periodo di conservazione del bucket di log _Required. Inoltre, non puoi estendere il periodo di conservazione di un bucket di log che si trova in una cartella o in un'organizzazione. Tuttavia, puoi creare un sink di log per instradare le voci di log a livello di cartella o organizzazione a un bucket di log che si trova in un progetto, quindi configurare il periodo di conservazione di quel bucket di log.

Se riduci il periodo di conservazione di un bucket di log, viene applicato un periodo di tolleranza di 7 giorni durante il quale i log scaduti non vengono eliminati. Non puoi eseguire query o visualizzare i log scaduti. Tuttavia, durante questo periodo di 7 giorni, puoi ripristinare l'accesso completo estendendo il periodo di conservazione del bucket. I log archiviati durante il periodo di tolleranza vengono conteggiati ai fini dei costi di conservazione.

L'applicazione della conservazione è un processo a coerenza finale. Se scrivi voci di log in un bucket di log quando le voci di log sono più vecchie del periodo di conservazione del bucket, potresti riuscire a visualizzarle brevemente. Ad esempio, se invii voci di log risalenti a 10 giorni prima a un bucket di log con un periodo di conservazione di 7 giorni, queste voci di log vengono archiviate e poi eliminate definitivamente. Queste voci di log non contribuiscono ai costi di conservazione. Contribuiscono ai costi di archiviazione. Per ridurre al minimo i costi di archiviazione, non scrivere voci di log più vecchie del periodo di conservazione del bucket.

Per aggiornare il periodo di conservazione di un bucket di log personalizzato o del bucket di log _Default che si trova in un progetto, segui questi passaggi:

Console Google Cloud

Per aggiornare il periodo di conservazione di un bucket di log, segui questi passaggi:

  1. Nella console Google Cloud , vai alla pagina Archiviazione dei log:

    Vai ad Archiviazione dei log

    Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Logging.

  2. Per il bucket che vuoi aggiornare, fai clic su Altro e poi seleziona Modifica bucket.

  3. Nel campo Conservazione, inserisci il numero di giorni, tra 1 e, durante i quali vuoi che Cloud Logging conservi i log.

  4. Fai clic su Aggiorna bucket. Il nuovo periodo di conservazione viene visualizzato nell'elenco Bucket di log.

gcloud

Per aggiornare il periodo di conservazione per un bucket di log definito dall'utente o per il bucket di log _Default che si trova in un progetto, esegui il comando gcloud logging buckets update, dopo aver impostato un valore per RETENTION_DAYS:

gcloud logging buckets update BUCKET_ID  --location=LOCATION --retention-days=RETENTION_DAYS

Ad esempio, per conservare i log nel bucket _Default nella località global per un anno, il comando sarà il seguente:

gcloud logging buckets update _Default --location=global --retention-days=365

Se estendi il periodo di conservazione di un bucket, le regole di conservazione si applicano in futuro e non retroattivamente. I log non possono essere recuperati dopo la scadenza del periodo di conservazione applicabile.

Blocca un bucket

Quando blocchi un bucket per impedire gli aggiornamenti, blocchi anche la policy di conservazione del bucket. Una volta bloccata una policy di conservazione, non puoi eliminare il bucket finché ogni voce di log nel bucket non ha soddisfatto il periodo di conservazione del bucket. Se vuoi evitare l'eliminazione accidentale di un progetto che contiene un bucket di log bloccato, aggiungi un blocco al progetto. Per scoprire di più, consulta l'articolo Protezione dei progetti con blocchi.

Per impedire a chiunque di aggiornare o eliminare un bucket di log, blocca il bucket. Per bloccare il bucket, segui questi passaggi:

Console Google Cloud

La console Google Cloud non supporta il blocco di un bucket di log.

gcloud

Per bloccare il bucket, esegui il comando gcloud logging buckets update con il flag --locked:

gcloud logging buckets update BUCKET_ID --location=LOCATION --locked

Ad esempio:

gcloud logging buckets update my-bucket --location=global --locked

REST

Per bloccare gli attributi del bucket, utilizza projects.locations.buckets.patch nell'API Logging. Imposta il parametro locked su true.

Elimina un bucket

Puoi eliminare i bucket di log che soddisfano una delle seguenti condizioni:

  • Il bucket di log è sbloccato.
  • Il bucket di log è bloccato e tutte le voci di log nel bucket di log hanno soddisfatto il periodo di conservazione del bucket.

Non puoi eliminare un bucket di log in nessuna delle seguenti situazioni:

  • Il bucket di log è bloccato per gli aggiornamenti e memorizza le voci di log che non hanno soddisfatto il periodo di conservazione del bucket.

Dopo aver eseguito il comando di eliminazione, il bucket di log passa allo stato DELETE_REQUESTED e rimane in questo stato per 7 giorni. Durante questo periodo di tempo, Logging continua a instradare i log al bucket di log. Puoi interrompere il routing dei log al bucket di log eliminando o modificando i sink di log che eseguono il routing delle voci di log al bucket.

Non puoi creare un nuovo bucket di log che utilizza lo stesso nome di un bucket di log che si trova nello stato DELETE_REQUESTED.

Per eliminare un bucket di log, segui questi passaggi:

Console Google Cloud

Per eliminare un bucket di log, segui questi passaggi:

  1. Nella console Google Cloud , vai alla pagina Archiviazione dei log:

    Vai ad Archiviazione dei log

    Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Logging.

  2. Individua il bucket che vuoi eliminare e fai clic su Altro.

    1. Seleziona Elimina bucket.

    2. Nel riquadro di conferma, fai clic su Elimina.

    3. Nella pagina Archiviazione log, il bucket ha un indicatore che indica che è in attesa di eliminazione. Il bucket, inclusi tutti i log al suo interno, viene eliminato dopo 7 giorni.

    gcloud

    Per eliminare un bucket di log, esegui il comando gcloud logging buckets delete:

    gcloud logging buckets delete BUCKET_ID --location=LOCATION

    REST

    Per eliminare un bucket, utilizza projects.locations.buckets.delete nell'API Logging.

    Ripristina un bucket eliminato

    Puoi ripristinare o annullare l'eliminazione di un bucket di log che si trova nello stato di eliminazione in attesa. Per ripristinare un bucket di log, segui questi passaggi:

    Console Google Cloud

    Per ripristinare un bucket di log in attesa di eliminazione, segui questi passaggi:

    1. Nella console Google Cloud , vai alla pagina Archiviazione dei log:

      Vai ad Archiviazione dei log

      Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Logging.

    2. Per il bucket che vuoi ripristinare, fai clic su Altro, quindi seleziona Ripristina bucket eliminato.

    3. Nel riquadro di conferma, fai clic su Ripristina.

    4. Nella pagina Archiviazione log, l'indicatore di eliminazione in attesa viene rimosso dal bucket di log.

    gcloud

    Per ripristinare un bucket di log in attesa di eliminazione, esegui il comando gcloud logging buckets undelete:

    gcloud logging buckets undelete BUCKET_ID --location=LOCATION

    REST

    Per ripristinare un bucket in attesa di eliminazione, utilizza projects.locations.buckets.undelete nell'API Logging.

    Leggi e scrivi voci di log

    Non scrivi direttamente i log in un bucket di log. Invece, scrivi i log in una risorsaGoogle Cloud : un progetto, una cartella o un'organizzazione Google Cloud . I sink nella risorsa principale indirizzano quindi i log alle destinazioni, inclusi i bucket di log. Un sink esegue il routing dei log a una destinazione del bucket di log quando i log corrispondono al filtro del sink e il sink dispone dell'autorizzazione per eseguire il routing dei log al bucket di log. Per saperne di più, consulta Voci di log delle route.

    Ogni bucket di log ha un insieme di visualizzazioni di log. Per leggere i log da un bucket di log, devi avere accesso a una visualizzazione di log nel bucket di log. Le visualizzazioni dei log ti consentono di concedere a un utente l'accesso solo a un sottoinsieme dei log archiviati in un bucket di log. Per scoprire di più sulle visualizzazioni dei log, consulta Archivia le voci di log e Configura le visualizzazioni dei log su un bucket di log.

    Per leggere i log da un bucket di log, segui questi passaggi:

    Console Google Cloud

    1. Nella console Google Cloud , vai alla pagina Esplora log:

      Vai a Esplora log

      Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Logging.

    2. Per personalizzare i log visualizzati in Esplora log, fai clic su Perfeziona ambito e seleziona un'opzione. Ad esempio, puoi visualizzare i log archiviati in un progetto o per visualizzazione log.

    3. Fai clic su Applica. Il riquadro Risultati delle query viene ricaricato con i log che corrispondono all'opzione selezionata.

    Per saperne di più, consulta Panoramica di Esplora log: perfeziona l'ambito.

    gcloud

    Per leggere i log da un bucket di log, utilizza il comando gcloud logging read e aggiungi un LOG_FILTER per selezionare i dati:

    gcloud logging read LOG_FILTER --bucket=BUCKET_ID --location=LOCATION --view=LOG_VIEW_ID

    REST

    Per leggere i log da un bucket di log, utilizza il metodo entries.list. Imposta resourceNames per specificare il bucket e la visualizzazione log appropriati e imposta filter per selezionare i dati.

    Per informazioni dettagliate sulla sintassi di filtro, consulta Linguaggio di query di Logging.

    Risolvere i problemi comuni

    Se riscontri problemi durante l'utilizzo dei bucket di log, consulta i seguenti passaggi per la risoluzione dei problemi e le risposte alle domande più comuni.

    Perché non riesco a eliminare questo bucket?

    Se stai tentando di eliminare un bucket, procedi nel seguente modo:

    • Verifica di disporre delle autorizzazioni corrette per eliminare il bucket. Per l'elenco delle autorizzazioni necessarie, consulta Controllo dell'accesso con IAM.

    • Determina se il bucket è bloccato elencando gli attributi del bucket. Se il bucket è bloccato, controlla il periodo di conservazione del bucket. Non puoi eliminare un bucket bloccato finché tutti i log al suo interno non hanno raggiunto il periodo di conservazione del bucket.

    Quali service account eseguono il routing dei log al mio bucket?

    Per determinare se i service account dispongono delle autorizzazioni IAM per instradare i log al tuo bucket, segui questi passaggi:

    1. Nella console Google Cloud , vai alla pagina IAM:

      Vai a IAM

      Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo IAM e amministrazione.

    2. Nella scheda Autorizzazioni, visualizza per Ruoli. Viene visualizzata una tabella con tutti i ruoli e le entità IAM associati al tuo progettoGoogle Cloud .

    3. Nella casella di testo Filtro della tabella, inserisci Writer bucket di log.

      Vengono visualizzate tutte le entità con il ruolo Writer bucket di log. Se un'entità è un account di servizio, il suo ID contiene la stringa .

    4. (Facoltativo) Se vuoi rimuovere un account di servizio per impedirgli di instradare i log al tuo progetto Google Cloud , seleziona la casella di controllo per il account di servizio e fai clic su Rimuovi.

    Perché vedo i log di un progetto Google Cloud anche se li ho esclusi dal mio sink _Default?

    Potresti visualizzare i log in un bucket di log in un progetto Google Cloud centralizzato, che aggrega i log di tutta l'organizzazione.

    Se utilizzi Esplora log per accedere a questi log e visualizzi log che hai escluso dal sink _Default, la visualizzazione potrebbe essere impostata sul livello di progettoGoogle Cloud .

    Per risolvere il problema, seleziona Visualizzazione log nel menu Perfeziona ambito, quindi seleziona la visualizzazione log associata al bucket _Default nel tuo progettoGoogle Cloud . Non dovresti più vedere i log esclusi.

    Passaggi successivi

    Per informazioni sui metodi API dei bucket di log, consulta la documentazione di riferimento di LogBucket.

    Se gestisci un'organizzazione o una cartella, puoi specificare la località dei bucket di log _Default e _Required delle risorse secondarie. Puoi anche configurare se i bucket di log utilizzano CMEK e il comportamento del sink di log _Default. Per ulteriori informazioni, consulta la pagina Configura le impostazioni predefinite per organizzazioni e cartelle.

    Per informazioni su come gestire i casi d'uso comuni con i bucket di log, consulta i seguenti argomenti: