En este documento se describe cómo usar las etiquetas para gestionar los cubos de registro de Cloud Logging. Las etiquetas, que se crean a nivel de organización o de proyecto, te permiten anotar tus recursos. También puedes conceder roles de gestión de identidades y accesos (IAM) de forma condicional o denegar permisos de IAM de forma condicional en función de si un recurso tiene una etiqueta específica. Para obtener información sobre las etiquetas, consulta el artículo Descripción general de las etiquetas.
Por ejemplo, si usas BigQuery para analizar tus datos de Facturación de Cloud, puedes adjuntar la etiqueta project:production
a los contenedores de registro que almacenan datos de registro de recursos de producción y la etiqueta project:development
a los contenedores de registro que almacenan datos de registro de recursos de desarrollo. Después, puedes consultar datos de facturación de Cloud con etiquetas y ver un desglose de tus costes de desarrollo y producción.
Las etiquetas se pueden adjuntar explícitamente a los segmentos de registro o se pueden heredar de la organización, las carpetas y los proyectos principales.
Antes de empezar
Para empezar a gestionar sus contenedores de registro mediante etiquetas, siga estos pasos:
- Compruebe que ha creado una etiqueta y ha configurado sus valores. Usa Resource Manager para gestionar las definiciones de etiquetas. Para obtener información sobre cómo crear y gestionar etiquetas, consulta el artículo Crear y gestionar etiquetas.
-
Para obtener los permisos que necesitas para gestionar tus segmentos de registro mediante etiquetas, pide a tu administrador que te conceda los siguientes roles de gestión de identidades y accesos en el proyecto o la organización:
-
Etiquetar usuario (
roles/resourcemanager.tagUser
) -
Tag Viewer (
roles/resourcemanager.tagViewer
)
Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar el acceso a proyectos, carpetas y organizaciones.
Estos roles predefinidos contienen los permisos necesarios para gestionar tus cubos de registro mediante etiquetas. Para ver los permisos exactos que se necesitan, despliega la sección Permisos necesarios:
Permisos obligatorios
Para gestionar tus cubos de registro mediante etiquetas, necesitas los siguientes permisos:
-
Añade o quita etiquetas de los contenedores de registro:
-
resourcemanager.tagValues.{get,list}
-
resourcemanager.tagKeys.{get,list}
-
resourcemanager.projects.get
-
logging.buckets.createTagbinding
-
logging.buckets.deleteTagBinding
-
-
Para ver las etiquetas asociadas a los contenedores de registro, sigue estos pasos:
-
resourcemanager.tagValues.{get,list}
-
resourcemanager.tagKeys.{get,list}
-
logging.buckets.listTagBindings
-
logging.buckets.listEffectiveTags
-
También puedes obtener estos permisos con roles personalizados u otros roles predefinidos.
-
Etiquetar usuario (
-
Para obtener el permiso que necesitas para gestionar los segmentos de registro, pide a tu administrador que te conceda el rol de gestión de identidades y accesos Escritor de configuración de registros (
roles/logging.configWriter
) en tu proyecto. Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar el acceso a proyectos, carpetas y organizaciones.Este rol predefinido contiene el permiso
logging.buckets.list
, que es necesario para gestionar los contenedores de registro.También puedes obtener este permiso con roles personalizados u otros roles predefinidos.
Adjuntar etiquetas a un segmento de registro
Para adjuntar una etiqueta a un contenedor de registro, sigue estos pasos:
Google Cloud consola
-
En la Google Cloud consola, ve a la página Almacenamiento de registros:
Ve a Almacenamiento de registros.
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuya sección sea Registro.
Busca el bucket de registro al que quieras adjuntar una etiqueta.
En el bucket de registro, haga clic en Másmore_vert y, a continuación, en Editar etiquetas.
En el cuadro de diálogo, en la sección Etiquetas directas, busque la etiqueta seleccionando el recurso en el que se creó. Por ejemplo, para usar una etiqueta que se haya creado a nivel de proyecto, elige Seleccionar proyecto actual como ámbito.
También puedes buscar manualmente el ID del proyecto, la organización o la etiqueta seleccionando la opción Entrada manual.
Seleccione el par clave-valor adecuado y, a continuación, haga clic en Guardar.
Aparecerá un cuadro de diálogo para confirmar los cambios. Haz clic en Confirmar para finalizar los cambios.
gcloud
Para adjuntar una etiqueta a un segmento de registro, crea un enlace de etiqueta ejecutando el comando
gcloud resource-manager tags bindings create
:
gcloud resource-manager tags bindings create \ --tag-value=TAG_VALUE_ID \ --parent=BUCKET_NAME \ --location=LOCATION
En el comando anterior, haz las siguientes sustituciones:
TAG_VALUE_ID: el ID permanente o el nombre con espacio de nombres de la etiqueta value. Por ejemplo,
tagValues/4567890123
. Para obtener más información sobre los identificadores de etiquetas, consulte Definiciones e identificadores de etiquetas.BUCKET_NAME: el nombre del segmento de registro. Por ejemplo,
//logging.googleapis.com/projects/BUCKET_PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID
.LOCATION: la ubicación del segmento de registro.
API
Para adjuntar una etiqueta a un segmento de registro, usa el método tagBindings.create
.
Terraform
Para adjuntar una etiqueta a un contenedor de registro mediante Terraform, siga uno de estos pasos:
- Para los segmentos de registro de la ubicación
global
, crea un recurso de vinculación de etiquetas mediantegoogle_tags_tag_binding
. - En el caso de los segmentos de registro regionales, cree un recurso de vinculación de etiquetas mediante
google_tags_location_tag_binding
.
A continuación, ejecuta terraform apply
para aplicar los cambios.
Ver las etiquetas asociadas a un segmento de registro
Para ver las etiquetas asociadas a un contenedor de registro, sigue estos pasos:
Google Cloud consola
-
En la Google Cloud consola, ve a la página Almacenamiento de registros:
Ve a Almacenamiento de registros.
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuya sección sea Registro.
Busca el segmento de registro cuyas etiquetas quieras ver.
En la columna Etiquetas, se muestra una etiqueta asociada al contenedor de registro. Para ver todas las etiquetas asociadas al contenedor de registro, haz clic en el botón arrow_drop_down Más para ampliar la lista de etiquetas.
gcloud
Ejecuta el comando gcloud resource-manager tags bindings list
:
gcloud resource-manager tags bindings list \ --parent=BUCKET_NAME \ --location=LOCATION
En el comando anterior, haz las siguientes sustituciones:
BUCKET_NAME: el nombre del segmento de registro. Por ejemplo,
//logging.googleapis.com/projects/BUCKET_PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID
.LOCATION: la ubicación del segmento de registro.
Opcional: Para ver las etiquetas heredadas por el registro, añade la marca --effective
Al añadir esta marca, se devuelve una respuesta similar a la siguiente:
namespacedTagKey: 961309089256/environment namespacedTagValue: 961309089256/environment/production tagKey: tagKeys/417628178507 tagValue: tagValues/247197504380 inherited: true
Si todas las etiquetas se adjuntan explícitamente al contenedor de registro y no se hereda ninguna, el campo inherited
es falso y se omite.
API
Para obtener una lista de enlaces de etiquetas de un segmento, usa el método tagBindings.list
.
Terraform
Puedes usar Terraform para adjuntar una etiqueta a un contenedor de registro. Sin embargo, no puedes usar Terraform para enumerar las etiquetas.
Quitar etiquetas de un segmento de registro
Para quitar las etiquetas asociadas a un contenedor de registro, debes eliminar la asociación de etiquetas asociada al contenedor de registro. Para eliminar una etiqueta, debes quitarla de todos los recursos asociados.
Google Cloud consola
-
En la Google Cloud consola, ve a la página Almacenamiento de registros:
Ve a Almacenamiento de registros.
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuya sección sea Registro.
Busca el segmento de registro cuya etiqueta quieras quitar.
En el bucket de registro, haga clic en Másmore_vert y, a continuación, en Editar etiquetas.
En el cuadro de diálogo, coloca el cursor sobre la etiqueta que quieras quitar y haz clic en
Eliminar elemento. Haz clic en Guardar para guardar los cambios.Aparecerá un cuadro de diálogo para confirmar los cambios. Haz clic en Confirmar para finalizar los cambios.
gcloud
Ejecuta el comando gcloud resource-manager tags bindings delete
:
gcloud resource-manager tags bindings delete \ --tag-value=TAG_VALUE_ID \ --parent=BUCKET_NAME \ --location=LOCATION
En el comando anterior, haz las siguientes sustituciones:
TAG_VALUE_ID: el ID permanente o el nombre en espacio de nombres del valor de la etiqueta. Por ejemplo,
tagValues/4567890123
. Para obtener más información sobre los identificadores de etiquetas, consulte Definiciones e identificadores de etiquetas.BUCKET_NAME: el nombre del segmento de registro. Por ejemplo,
//logging.googleapis.com/projects/BUCKET_PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID
.LOCATION: la ubicación del segmento de registro.
API
Para quitar una etiqueta de un contenedor de registro, usa el método tagBindings.delete
.
Terraform
Para quitar una etiqueta de un contenedor de registro con Terraform, elimina el recurso de vinculación de etiquetas de tu configuración y, a continuación, ejecuta terraform apply
para aplicar los cambios.
Limitaciones
No puedes usar las concesiones de roles de gestión de identidades y accesos para controlar qué cubos de registro ve una entidad cuando enumera los cubos de registro de un Google Cloud proyecto. Un centro verá una lista completa o una lista vacía. Sin embargo, puedes usar concesiones de roles de gestión de identidades y accesos con condiciones de gestión de identidades y accesos para restringir las acciones que puede realizar un principal en un bucket de registro. Por ejemplo, puedes restringir si una entidad de seguridad puede eliminar un segmento de registro específico.
Si usas las exportaciones de datos de Facturación de Cloud con BigQuery, las etiquetas pueden tardar hasta una hora en usarse en la exportación. Si se ha añadido o quitado una etiqueta en el plazo de una hora, o si el contenedor de registro se ha creado hace menos de una hora, es posible que no aparezca en la exportación.
Roles personalizados y concesiones de roles con condiciones de gestión de identidades y accesos
Si tienes previsto usar roles de gestión de identidades y accesos personalizados y adjuntar condiciones de gestión de identidades y accesos a las concesiones de roles, puede que tengas que crear varios roles personalizados. Algunos permisos de gestión de identidades y accesos se invalidan cuando se adjunta una condición de gestión de identidades y accesos a una concesión de rol.
En Cloud Logging, los siguientes permisos de gestión de identidades y accesos se invalidan cuando una concesión de rol contiene una condición de gestión de identidades y accesos:
logging.buckets.list
logging.buckets.create
Por lo tanto, es posible que tengas que crear un rol con los permisos list
y create
y otro rol que contenga otros permisos específicos del contenedor.
Por ejemplo, puedes crear un rol que contenga los permisos logging.buckets.delete
y logging.buckets.update
.
Cuando asignes el rol que contiene los permisos list
y create
, no adjuntes una condición de gestión de identidades y accesos a la asignación del rol.
Cuando asignas el rol que contiene los permisos delete
y update
, puedes añadir una condición de gestión de identidades y accesos que restrinja la concesión a los recursos con una etiqueta específica.
Siguientes pasos
Consulta cómo configurar una política de organización con etiquetas.
Para obtener información sobre las etiquetas de uso en las exportaciones de datos de Facturación de Cloud, consulta la documentación sobre exportaciones de datos de Facturación de Cloud.