Questo documento descrive come utilizzare i tag per gestire i bucket di log di Cloud Logging. I tag, che vengono creati a livello di organizzazione o progetto, ti consentono di annotare le risorse. Puoi anche concedere in modo condizionale i ruoli di Identity and Access Management (IAM) o negare in modo condizionale le autorizzazioni IAM a seconda che una risorsa abbia un tag specifico. Per informazioni sui tag, consulta la panoramica dei tag.
Ad esempio, se utilizzi
BigQuery per analizzare i dati di fatturazione Cloud,
potresti associare il tag project:production
ai bucket di log che archiviano
i dati di log delle risorse di produzione e il tag
project:development
ai bucket di log che archiviano i dati di log delle
risorse di sviluppo. Poi, puoi eseguire query sui dati del fatturazione Cloud con i tag e visualizzare una suddivisione dei costi tra sviluppo e produzione.
I tag possono essere collegati esplicitamente ai bucket di log o ereditati dall'organizzazione, dalle cartelle e dai progetti principali.
Prima di iniziare
Per iniziare a gestire i bucket di log utilizzando i tag:
- Assicurati di aver creato un tag e di aver configurato i relativi valori. Utilizzi Resource Manager per gestire le definizioni dei tag. Per informazioni su come creare e gestire i tag, consulta Creare e gestire i tag.
-
Per ottenere le autorizzazioni necessarie per gestire i bucket di log utilizzando i tag, chiedi all'amministratore di concederti i seguenti ruoli IAM nel progetto o nell'organizzazione:
-
Tagga utente (
roles/resourcemanager.tagUser
) -
Visualizzatore di tag (
roles/resourcemanager.tagViewer
)
Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.
Questi ruoli predefiniti contengono le autorizzazioni necessarie per gestire i bucket di log utilizzando i tag. Per visualizzare le autorizzazioni esatte richieste, espandi la sezione Autorizzazioni richieste:
Autorizzazioni obbligatorie
Per gestire i bucket di log utilizzando i tag, sono necessarie le seguenti autorizzazioni:
-
Aggiungi o rimuovi tag ai bucket di log:
-
resourcemanager.tagValues.{get,list}
-
resourcemanager.tagKeys.{get,list}
-
resourcemanager.projects.get
-
logging.buckets.createTagbinding
-
logging.buckets.deleteTagBinding
-
-
Visualizza i tag associati ai bucket di log:
-
resourcemanager.tagValues.{get,list}
-
resourcemanager.tagKeys.{get,list}
-
logging.buckets.listTagBindings
-
logging.buckets.listEffectiveTags
-
Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
-
Tagga utente (
-
Per ottenere l'autorizzazione necessaria per gestire i bucket dei log, chiedi all'amministratore di concederti il ruolo IAM Logs Configuration Writer (
roles/logging.configWriter
) nel progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.Questo ruolo predefinito contiene l'autorizzazione
logging.buckets.list
necessaria per gestire i bucket di log.Potresti anche ottenere questa autorizzazione con ruoli personalizzati o altri ruoli predefiniti.
Associare tag a un bucket di log
Per associare un tag a un bucket di log:
Console Google Cloud
-
Nella console Google Cloud, vai alla pagina Archiviazione dei log:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Logging.
Individua il bucket di log a cui allegare un tag.
Nel bucket dei log, fai clic su Altromore_vert e poi su Modifica tag.
Nella finestra di dialogo, nella sezione Tag diretti, individua il tag selezionando la risorsa in cui è stato creato. Ad esempio, per utilizzare un tag creato a livello di progetto, scegli Seleziona progetto corrente come ambito.
Puoi anche cercare manualmente l'ID progetto, organizzazione o tag selezionando l'opzione Immissione manuale.
Seleziona la coppia chiave-valore appropriata e fai clic su Salva.
Viene visualizzata una finestra di dialogo che conferma le modifiche. Fai clic su Conferma per finalizzare le modifiche.
gcloud
Per associare un tag a un bucket di log, crea un'associazione di tag eseguendo il comando
gcloud resource-manager tags bindings create
:
gcloud resource-manager tags bindings create \ --tag-value=TAG_VALUE_ID \ --parent=BUCKET_NAME \ --location=LOCATION
Nel comando precedente, esegui le seguenti sostituzioni:
TAG_VALUE_ID: l'ID permanente o il nome nello spazio dei nomi del valore del tag. Ad esempio,
tagValues/4567890123
. Per ulteriori informazioni sugli identificatori dei tag, consulta Definizioni e identificatori dei tag.BUCKET_NAME: il nome del bucket di log. Ad esempio,
logging.googleapis.com/projects/BUCKET_PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID
.LOCATION: la posizione del bucket di log.
API
Per associare un tag a un bucket di log, utilizza il metodo tagBindings.create
.
Visualizzare i tag associati a un bucket di log
Per visualizzare i tag associati a un bucket di log:
Console Google Cloud
-
Nella console Google Cloud, vai alla pagina Archiviazione dei log:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Logging.
Individua il bucket dei log di cui vuoi visualizzare i tag.
Nella colonna Tag è elencato un tag associato al bucket di log. Per visualizzare tutti i tag associati al bucket dei log, fai clic sul pulsante arrow_drop_down Altro per espandere l'elenco dei tag.
gcloud
Esegui il comando gcloud resource-manager tags bindings list
:
gcloud resource-manager tags bindings list \ --parent=BUCKET_NAME \ --location=LOCATION
Nel comando precedente, esegui le seguenti sostituzioni:
TAG_VALUE_ID: l'ID permanente o il nome con spazio dei nomi del valore del tag. Ad esempio,
tagValues/4567890123
. Per ulteriori informazioni sugli identificatori dei tag, consulta Definizioni e identificatori dei tag.BUCKET_NAME: il nome del bucket di log. Ad esempio,
logging.googleapis.com/projects/BUCKET_PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID
.LOCATION: la posizione del bucket di log.
(Facoltativo) Per visualizzare i tag ereditati dal bucket dei log, aggiungi il --effective
flag. L'aggiunta di questo flag restituisce una risposta simile alla seguente:
namespacedTagKey: 961309089256/environment namespacedTagValue: 961309089256/environment/production tagKey: tagKeys/417628178507 tagValue: tagValues/247197504380 inherited: true
Se tutti i tag sono associati in modo esplicito al bucket di log e non viene ereditato alcun tag, il campo inherited
è falso e viene omesso.
API
Per ottenere un elenco di associazioni di tag per un bucket, utilizza il metodo
tagBindings.list
.
Rimuovere i tag da un bucket di log
Per rimuovere i tag associati a un bucket di log, devi eliminare il vincolo dei tag associato al bucket di log. Per eliminare un tag, devi rimuoverlo da tutte le risorse collegate.
Console Google Cloud
-
Nella console Google Cloud, vai alla pagina Archiviazione dei log:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Logging.
Individua il bucket dei log di cui vuoi rimuovere il tag.
Nel bucket dei log, fai clic su Altromore_vert e poi su Modifica tag.
Nella finestra di dialogo, posiziona il cursore del mouse sul tag da rimuovere e fai clic su
Elimina elemento. Fai clic su Salva per salvare le modifiche.Viene visualizzata una finestra di dialogo che conferma le modifiche. Fai clic su Conferma per finalizzare le modifiche.
gcloud
Esegui il comando gcloud resource-manager tags bindings delete
:
gcloud resource-manager tags bindings delete \ --tag-value=TAG_VALUE_ID \ --parent=BUCKET_NAME \ --location=LOCATION
Nel comando precedente, esegui le seguenti sostituzioni:
TAG_VALUE_ID: l'ID permanente o il nome con spazio dei nomi del valore del tag. Ad esempio,
tagValues/4567890123
. Per ulteriori informazioni sugli identificatori dei tag, consulta Definizioni e identificatori dei tag.BUCKET_NAME: il nome del bucket di log. Ad esempio,
logging.googleapis.com/projects/BUCKET_PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID
.LOCATION: la posizione del bucket di log.
API
Per rimuovere un tag da un bucket di log, utilizza il metodo
tagBindings.delete
.
Limitazioni
Non puoi utilizzare le concessioni dei ruoli IAM per controllare i bucket dei log visualizzati da un entità quando elenca i bucket dei log in un progetto Google Cloud. Un utente principale vedrà un elenco completo o uno vuoto. Tuttavia, puoi utilizzare le concessioni dei ruoli IAM con le condizioni IAM per limitare le azioni che un'entità può eseguire su un bucket di log. Ad esempio, puoi limitare la possibilità per un'entità di eliminare un determinato bucket dei log.
Se utilizzi le esportazioni dei dati di fatturazione Cloud con BigQuery, l'utilizzo dei tag nell'esportazione potrebbe richiedere fino a un'ora. Se un tag è stato aggiunto o rimosso entro un'ora o se il bucket dei log esiste da meno di un'ora, potrebbe non essere visualizzato nell'esportazione.
Ruoli personalizzati e concessioni di ruoli con condizioni IAM
Se prevedi di utilizzare ruoli IAM personalizzati e di associare condizioni IAM alle concessioni dei ruoli, potresti dover creare più ruoli personalizzati. Alcune autorizzazioni IAM vengono invalidate quando una condizione IAM è associata a una concessione del ruolo.
Per Cloud Logging, le seguenti autorizzazioni IAM vengono invalidate quando una concessione del ruolo contiene una condizione IAM:
logging.buckets.list
logging.buckets.create
Pertanto, potresti dover creare un ruolo con le autorizzazioni list
e create
e un altro ruolo contenente altre autorizzazioni specifiche per i bucket.
Ad esempio, puoi creare un ruolo che contenga le autorizzazioni logging.buckets.delete
e logging.buckets.update
.
Quando concedi il ruolo che contiene le autorizzazioni list
e create
,
non allegare una condizione IAM alla concessione del ruolo.
Quando concedi il ruolo che contiene le autorizzazioni delete
e update
, puoi aggiungere una condizione IAM che limiti la concessione alle risorse con un tag specifico.
Passaggi successivi
Scopri come impostare un criterio dell'organizzazione con i tag.
Per informazioni sull'utilizzo dei tag nelle esportazioni dei dati di fatturazione Cloud, consulta la documentazione relativa alle esportazioni dei dati di fatturazione Cloud.