Questo documento descrive come utilizzare i tag per gestire i bucket di log di Cloud Logging. I tag, creati a livello di organizzazione o progetto, ti consentono di annotare le risorse. Puoi anche concedere in modo condizionale i ruoli 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, vedi Panoramica dei tag.
Ad esempio, se utilizzi
BigQuery per analizzare i dati di fatturazione Cloud,
potresti allegare il tag project:production
ai bucket log che archiviano
i dati di log delle risorse di produzione e il tag
project:development
ai bucket log che archiviano i dati di log delle
risorse di sviluppo. Quindi, puoi interrogare
i dati di 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 dei log utilizzando i tag:
- Assicurati di aver creato un tag e configurato i relativi valori. Utilizzi Resource Manager per gestire le definizioni dei tag. Per informazioni su come creare e gestire i tag, consulta la pagina Creazione e gestione dei tag.
-
Per ottenere le autorizzazioni necessarie per gestire i bucket log utilizzando i tag, chiedi all'amministratore di concederti i seguenti ruoli IAM per il progetto o l'organizzazione:
-
Tagga utente (
roles/resourcemanager.tagUser
) -
Visualizzatore tag (
roles/resourcemanager.tagViewer
)
Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Questi ruoli predefiniti contengono le autorizzazioni necessarie per gestire i bucket log utilizzando i tag. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:
Autorizzazioni obbligatorie
Per gestire i bucket dei log utilizzando i tag sono necessarie le seguenti autorizzazioni:
-
Aggiungi o rimuovi tag dai bucket di log:
-
resourcemanager.tagValues.{get,list}
-
resourcemanager.tagKeys.{get,list}
-
resourcemanager.projects.get
-
logging.buckets.createTagbinding
-
logging.buckets.deleteTagBinding
-
-
Visualizza i tag collegati 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 di 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 Gestisci 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.
Associa tag a un bucket di log
Per collegare un tag a un bucket di log:
Google Cloud console
-
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 di 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 Inserimento manuale.
Seleziona la coppia chiave-valore appropriata, quindi fai clic su Salva.
Viene visualizzata una finestra di dialogo che conferma le modifiche. Fai clic su Conferma per finalizzare le modifiche.
gcloud
Per collegare un tag a un bucket di log, crea un binding 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 con spazio dei nomi del valore del tag. Ad esempio,
tagValues/4567890123
. Per ulteriori informazioni sugli identificatori dei tag, vedi Definizioni e identificatori dei tag.BUCKET_NAME: il nome del bucket dei log. Ad esempio,
//logging.googleapis.com/projects/BUCKET_PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID
.LOCATION: La posizione del bucket dei log.
API
Per collegare un tag a un bucket log, utilizza il metodo tagBindings.create
.
Visualizzare i tag collegati a un bucket di log
Per visualizzare i tag collegati a un bucket di log:
Google Cloud console
-
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 di 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:
BUCKET_NAME: il nome del bucket dei log. Ad esempio,
//logging.googleapis.com/projects/BUCKET_PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID
.LOCATION: La posizione del bucket dei log.
(Facoltativo) Per visualizzare i tag ereditati dal bucket dei log, aggiungi il flag --effective
. 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 collegati in modo esplicito al bucket log e non vengono ereditati 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 collegati a un bucket dei log, devi eliminare l'associazione tag collegata al bucket dei log. Per eliminare un tag, devi rimuoverlo da tutte le risorse collegate.
Google Cloud console
-
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 di log, fai clic su Altromore_vert e poi su Modifica tag.
Nella finestra di dialogo, tieni il puntatore del mouse sopra il 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 tag. Ad esempio,
tagValues/4567890123
. Per ulteriori informazioni sugli identificatori dei tag, vedi Definizioni e identificatori dei tag.BUCKET_NAME: il nome del bucket dei log. Ad esempio,
//logging.googleapis.com/projects/BUCKET_PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID
.LOCATION: La posizione del bucket dei log.
API
Per rimuovere un tag da un bucket log, utilizza il
metodo tagBindings.delete
.
Limitazioni
Non puoi utilizzare le concessioni di ruoli IAM per controllare quali bucket di log un'entità vede quando elenca i bucket di log in un progetto. Google Cloud Un preside vedrà un elenco completo o un elenco vuoto. Tuttavia, puoi utilizzare le concessioni di ruoli IAM con le condizioni IAM per limitare le azioni che un'entità può eseguire su un bucket log. Ad esempio, puoi limitare la possibilità di eliminare un bucket di log specifico per un'entità.
Se utilizzi le esportazioni dei dati di fatturazione Cloud con BigQuery, potrebbe essere necessaria fino a un'ora prima che i tag vengano utilizzati nell'esportazione. 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 collegare condizioni IAM alle concessioni di ruoli, potresti dover creare più ruoli personalizzati. Alcune autorizzazioni IAM vengono invalidate quando una condizione IAM viene associata a una concessione di ruolo.
Per Cloud Logging, le seguenti autorizzazioni IAM vengono invalidate quando una concessione di 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 che contenga altre autorizzazioni specifiche per il bucket.
Ad esempio, potresti 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 collegare 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 sui tag di utilizzo nelle esportazioni dei dati di fatturazione Cloud, consulta la documentazione sulle esportazioni dei dati di fatturazione Cloud.