En este documento, se describe cómo crear sumideros agregados. Los receptores agregados te permiten combinar y enrutar los registros que generan los recursos de Google Cloud en tu organización o carpeta a una ubicación centralizada.
Descripción general
Los receptores agregados combinan y enrutan las entradas de registro de los recursos que contiene una organización o una carpeta a un destino.
Si deseas controlar qué entradas de registro se pueden consultar en estos recursos o enrutar a través de los sumideros en estos recursos, puedes configurar un sumidero agregado para que no intercepte o intercepte:
Un receptor agregado que no intercepta enruta las entradas de registro a través de receptores en recursos secundarios. Con este sink, mantienes la visibilidad de las entradas de registro en los recursos en los que se generaron. Los receptores que no interceptan no son visibles para los recursos secundarios.
Por ejemplo, puedes crear un receptor agregado que no intercepte y que enrute todas las entradas de registro generadas a partir de las carpetas que contiene una organización a un bucket de registros central. Las entradas de registro se almacenan en el bucket de registros central y también en los recursos en los que se generaron las entradas de registro.
Un receptor agregado de interceptación evita que las entradas de registro se enruten a través de los receptores en recursos secundarios, excepto los receptores
_Required
. Este receptor puede ser útil para evitar que se almacenen copias duplicadas de las entradas de registro en varios lugares.Por ejemplo, considera los registros de auditoría de acceso a los datos, que pueden ser grandes en volumen y costosos para almacenar varias copias. Si habilitaste los registros de auditoría de acceso a los datos, puedes crear un receptor de intercepción a nivel de la carpeta que dirija todos los registros de auditoría de acceso a los datos a un proyecto central para su análisis. Este receptor de interceptación también evita que los receptores en los recursos secundarios enruten copias de los registros a otro lugar.
Los receptores de interceptación evitan que los registros se pasen a través del enrutador de registros de los recursos secundarios, a menos que los registros también coincidan con el receptor
_Required
. Debido a que los registros se interceptan, no se registran en las métricas basadas en registros ni en las políticas de alertas basadas en registros en los recursos secundarios. Puedes ver los sumideros de intercepción en la página Enrutador de registros de los recursos secundarios.
Para obtener información sobre cómo administrar receptores, consulta Enruta registros a destinos compatibles: Administra receptores.
Puedes crear hasta 200 receptores por carpeta o organización.
Destinos admitidos
Puedes usar receptores agregados sin intercepción para enrutar entradas de registro dentro o entre las mismas organizaciones y carpetas a los siguientes destinos:
Bucket de Cloud Logging: Proporciona almacenamiento en Cloud Logging. Un bucket de registro puede almacenar entradas de registro que reciben varios proyectos de Google Cloud. El bucket de registros puede estar en el mismo proyecto en el que se originan las entradas de registro o en un proyecto diferente. Para obtener información sobre cómo ver las entradas de registros almacenadas en buckets de registros, consulta Descripción general de consultas y visualización de registros y Visualiza los registros enrutados a buckets de Cloud Logging.
Puedes combinar tus datos de registro de Cloud con otros datos. Para ello, actualiza un bucket de registros para usar el Análisis de registros y, luego, crea un conjunto de datos vinculado, que es un conjunto de datos de solo lectura que se puede consultar en las páginas de BigQuery Studio y Looker Studio.
Conjunto de datos de BigQuery: Proporciona el almacenamiento de entradas de registro en un conjunto de datos de BigQuery que se puede escribir. El conjunto de datos de BigQuery puede estar en el mismo proyecto en el que se originan las entradas de registro o en uno diferente. Puedes usar las funciones de análisis de macrodatos en las entradas de registro almacenadas. Para obtener información sobre cómo ver las entradas de registro que se enrutan a BigQuery, consulta Cómo ver los registros que se enrutan a BigQuery.
- Bucket de Cloud Storage: Proporciona almacenamiento de entradas de registro en Cloud Storage. El bucket de Cloud Storage puede estar en el mismo proyecto en el que se originan las entradas de registro o en un proyecto diferente. Las entradas de registro se almacenan como archivos JSON. Para obtener información sobre cómo ver las entradas de registro enrutadas a Cloud Storage, consulta Cómo ver los registros enrutados a Cloud Storage.
Tema de Pub/Sub: Proporciona compatibilidad con integraciones de terceros. Las entradas de registro se formatean en JSON y, luego, se enrutan a un tema de Pub/Sub. El tema puede estar en el mismo proyecto en el que se originan las entradas de registro o en un proyecto diferente. Para obtener información sobre cómo ver las entradas de registro enrutadas a Pub/Sub, consulta Visualiza los registros enrutados a Pub/Sub.
Proyecto de Google Cloud: Envía las entradas de registro a otro proyecto de Google Cloud. En esta configuración, los receptores del proyecto de destino procesan las entradas de registro.
Prácticas recomendadas para interceptar sumideros
Cuando crees un sink de intercepción, te recomendamos que hagas lo siguiente:
Considera si los recursos secundarios necesitan un control independiente para enrutar sus entradas de registro. Si un recurso secundario necesita un control independiente de ciertas entradas de registro, asegúrate de que tu sink de intercepción no las enrute.
Agrega información de contacto a la descripción de un sumidero de intercepción. Esto podría ser útil si quienes administran el sumidero de intercepción son diferentes de quienes administran los proyectos cuyas entradas de registro se interceptan.
Para probar la configuración del receptor, primero crea un receptor agregado que no intercepte para asegurarte de que se enruten las entradas de registro correctas.
Sinks agregados y Controles del servicio de VPC
Las siguientes limitaciones se aplican cuando usas los controles del servicio de VPC y los sumideros agregados:
Los receptores agregados pueden acceder a los datos de los proyectos dentro de un perímetro de servicio. Para restringir el acceso de los receptores agregados a los datos dentro de un perímetro, recomendamos usar IAM para administrar los permisos de Logging.
Los Controles del servicio de VPC no admiten la adición de recursos de carpetas o de organizaciones a los perímetros de servicio. Por lo tanto, no puedes usar los Controles del servicio de VPC para proteger los registros a nivel de carpeta y de organización, incluidos los registros agregados. Para administrar los permisos de Logging a nivel de carpeta o de la organización, te recomendamos usar IAM.
Si enrutas registros mediante un receptor a nivel de la carpeta o de la organización a un recurso que protege un perímetro de servicio, debes agregar una regla de entrada al perímetro de servicio. La regla de entrada debe permitir el acceso al recurso desde la cuenta de servicio que usa el receptor agregado. Para obtener más información, consulta las siguientes páginas:
Cuando especificas una política de entrada o salida para un perímetro de servicio, no puedes usar
ANY_SERVICE_ACCOUNT
niANY_USER_ACCOUNT
como un tipo de identidad cuando usas un receptor de registros para enrutar registros a recursos de Cloud Storage. Sin embargo, puedes usarANY_IDENTITY
como el tipo de identidad.
Antes de comenzar
Antes de crear un sumidero, asegúrate de lo siguiente:
Tienes una carpeta o una organización de Google Cloud con entradas de registro que puedes ver en el Explorador de registros.
Tienes uno de los siguientes roles de IAM para la organización o carpeta de Google Cloud desde la que enrutas las entradas de registro.
- Propietario (
roles/owner
) - Administrador de Logging (
roles/logging.admin
) - Escritor de configuración de registros (
roles/logging.configWriter
)
Los permisos contenidos en estos roles te permiten crear, borrar o modificar receptores. Para obtener información sobre cómo configurar roles de IAM, consulta la Guía de control de acceso de Logging.
- Propietario (
Tienes un recurso en un destino admitido o tienes la capacidad de crear uno.
El destino se debe crear antes que el receptor mediante Google Cloud CLI, la consola de Google Cloud o las APIs de Google Cloud. Puedes crear el destino en cualquier proyecto de Google Cloud en cualquier organización, pero debes asegurarte de que la cuenta de servicio del receptor tenga permisos para escribir en el destino.
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
REST
Para usar las muestras de la API de REST en esta página en un entorno de desarrollo local, debes usar las credenciales que proporcionas a la CLI de gcloud.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Si deseas obtener más información, consulta Autentica para usar REST en la documentación de autenticación de Google Cloud.
Crea un receptor agregado
Console
Para crear un receptor agregado para tu carpeta o organización, haz lo siguiente:
-
En la consola de Google Cloud, ve a la página Enrutador de registros:
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Logging.
Selecciona una organización o carpeta existente.
Selecciona Crear receptor.
En el panel Detalles del receptor, ingresa los siguientes detalles:
Nombre del receptor: Proporciona un identificador para el receptor. Ten en cuenta que, después de crearlo, no podrás cambiarle el nombre, pero sí borrarlo y crear uno nuevo.
Descripción del sumidero (opcional): Describe el propósito o el caso de uso del sumidero.
Realiza una de las siguientes acciones:
Para crear un receptor de intercepción, en el menú Select sink service, selecciona Google Cloud project y, luego, ingresa el nombre cualificado del destino. Para obtener información sobre la sintaxis, consulta Formatos de ruta de destino.
Para crear un receptor que no intercepte, ve al menú Seleccionar servicio de receptor y haz una de las siguientes acciones:
Para enrutar entradas de registro a un proyecto de Google Cloud diferente, selecciona Proyecto de Google Cloud y, luego, ingresa el nombre cualificado completo del destino. Para obtener información sobre la sintaxis, consulta Formatos de ruta de destino.
Para enrutar entradas de registro a un servicio que se encuentra en el mismo proyecto de Google Cloud, selecciona una de las siguientes opciones:
- Bucket de Cloud Logging: Selecciona o crea un bucket de registro.
- Conjunto de datos de BigQuery: Selecciona o crea el conjunto de datos particular para recibir las entradas de registro enrutadas. También tienes la opción de usar tablas particionadas.
- Bucket de Cloud Storage: Selecciona o crea el bucket de Cloud Storage en particular para recibir las entradas de registro enrutadas.
- Tema de Pub/Sub: Selecciona o crea el tema específico para recibir las entradas de registro enrutadas.
- Splunk: Selecciona el tema de Pub/Sub para tu servicio de Splunk.
Para enrutar entradas de registro a un servicio que se encuentra en un proyecto de Google Cloud diferente, haz lo siguiente:
- Selecciona Otro recurso.
Ingresa el nombre completamente calificado del destino. Para obtener información sobre la sintaxis, consulta los formatos de ruta de destino.
Por ejemplo, si el destino del receptor es un tema de Pub/Sub,
destination
se verá de la siguiente manera:pubsub.googleapis.com/projects/PROJECT_ID/topics/TOPIC_ID
En el panel Elige registros para incluirlos en el receptor, realiza una de las siguientes acciones:
Para crear un receptor de interceptación, selecciona Interceptar los registros transferidos por esta organización y todos los recursos secundarios.
Para crear un receptor agregado que no intercepte, selecciona Incluir los registros transferidos por este recurso y todos los recursos secundarios.
Para completar el diálogo, ingresa una expresión de filtro en el campo Build inclusion filter que coincida con las entradas de registro que deseas incluir. Si no configuras un filtro, todas las entradas de registro del recurso seleccionado se enrutan al destino.
Por ejemplo, te recomendamos que compiles un filtro para enrutar todos los registros de auditoría de acceso a los datos a un solo bucket de registro. Este filtro se ve de la siguiente manera:
LOG_ID("cloudaudit.googleapis.com/data_access") OR LOG_ID("externalaudit.googleapis.com/data_access")
Para ver ejemplos de filtros, consulta Cómo crear filtros para sumideros agregados.
Ten en cuenta que la longitud de un filtro no puede superar los 20,000 caracteres.
Opcional: Para verificar que ingresaste el filtro correcto, selecciona Obtener vista previa de los registros. Se abrirá el Explorador de registros en una pestaña nueva con el filtro prepropagado.
Opcional: En el panel Elige registros para excluir del receptor, haz lo siguiente:
En el campo Nombre de filtro de exclusión, ingresa un nombre.
En el campo Crea un filtro de exclusión, ingresa una expresión de filtro que coincida con las entradas de registro que deseas excluir. También puedes usar la función
sample
para seleccionar una parte de las entradas de registro que deseas excluir.Por ejemplo, para excluir las entradas de registro de un proyecto específico de la planificación al destino, agrega el siguiente filtro de exclusión:
logName:projects/PROJECT_ID
Para excluir entradas de registro de varios proyectos, usa el operador lógico O para unir cláusulas
logName
.
Puedes crear hasta 50 filtros de exclusión por receptor. Ten en cuenta que la longitud de un filtro no puede superar los 20,000 caracteres.
Selecciona Crear receptor.
Otorga a la cuenta de servicio del receptor el permiso para escribir entradas de registro en el destino del receptor. Para obtener más información, consulta Configura los permisos de destino.
gcloud
Para crear un receptor agregado, usa el comando
logging sinks create
:Para crear un receptor, llama al comando
gcloud logging sinks create
y asegúrate de incluir la opción--include-children
.Antes de usar el siguiente comando, realiza los siguientes reemplazos:
- SINK_NAME: Es el nombre del receptor de registros. No puedes cambiar el nombre de un sumidero después de crearlo.
- SINK_DESTINATION: Es el servicio o proyecto al que deseas que se enruten tus entradas de registro.
- INCLUSION_FILTER: Es el filtro de inclusión de un receptor. Para ver ejemplos de filtros, consulta Cómo crear filtros para sumideros agregados.
- FOLDER_ID: Es el ID de la carpeta. Si quieres crear un receptor a nivel de la organización, reemplaza
--folder=FOLDER_ID
por-- organization=ORGANIZATION_ID
.
Ejecuta el comando
gcloud logging sinks create
:gcloud logging sinks create SINK_NAME \ SINK_DESTINATION --include-children \ --folder=FOLDER_ID --log-filter="INCLUSION_FILTER"
También puedes proporcionar las siguientes opciones:
- Para crear un receptor de intercepción, incluye la opción
--intercept-children
.
Por ejemplo, si creas un receptor agregado a nivel de la carpeta cuyo destino es un tema de Pub/Sub, tu comando podría verse de la siguiente manera:
gcloud logging sinks create SINK_NAME \ pubsub.googleapis.com/projects/PROJECT_ID/topics/TOPIC_ID --include-children \ --folder=FOLDER_ID --log-filter="logName:activity"
Otorga a la cuenta de servicio del receptor permiso para escribir en el destino del receptor. Para obtener más información, consulta Configura los permisos de destino.
REST
Para crear un receptor agregado, usa el método de la API de Logging
organizations.sinks.create
ofolders.sinks.create
. Prepara los argumentos del método de la siguiente manera:Establece el campo
parent
para que sea la organización o la carpeta de Google Cloud en la que deseas crear el receptor. El superior debe ser uno de los siguientes:organizations/ORGANIZATION_ID
folders/FOLDER_ID
En el objeto
LogSink
del cuerpo de la solicitud del método, haz una de las siguientes acciones:Establece
includeChildren
enTrue
.Para crear un receptor de intercepción, también establece el campo
interceptChildren
enTrue
.
Establece el campo
filter
para que coincida con las entradas de registro que deseas incluir.Para ver ejemplos de filtros, consulta Cómo crear filtros para sumideros agregados.
La longitud de un filtro no puede superar los 20,000 caracteres.
Establece los campos
LogSink
restantes como lo harías para cualquier otro receptor. Para obtener más información, consulta Enruta registros a destinos compatibles.Llama a
organizations.sinks.create
ofolders.sinks.create
para crear el receptor.Otorga a la cuenta de servicio del receptor permiso para escribir en el destino del receptor. Para obtener más información, consulta Configura los permisos de destino.
Los cambios que se realicen en un sumidero pueden tardar unos minutos en aplicarse.
Crea filtros para receptores agregados
Como cualquier receptor, tu receptor agregado posee un filtro que selecciona entradas de registro individuales. Para ver ejemplos de filtros que puedes usar para crear tu sumidero agregado, consulta Consultas de muestra con el Explorador de registros.
A continuación, se presentan algunos ejemplos de comparaciones de consultas que son útiles cuando se usa la función de receptores agregados. Algunos ejemplos usan la siguiente notación:
:
es el operador de la substring. No sustituyas el operador=
....
… representa cualquier comparación de filtro adicional.- Las variables se indican con texto de color. Reemplázalas por valores válidos.
Ten en cuenta que la longitud de un filtro no puede superar los 20,000 caracteres.
Para obtener más detalles sobre la sintaxis de filtrado, consulta Lenguaje de consulta de Logging.
Selecciona la fuente de registro
En el caso de un receptor agregado, para cada recurso secundario de la organización o la carpeta, los filtros de inclusión y exclusión del receptor se aplican a cada entrada de registro que se envía al recurso secundario. Se enruta una entrada de registro que coincide con el filtro de inclusión y que no está excluida.
Si deseas que tu receptor enrute las entradas de registro de todos los recursos secundarios, no especifiques un proyecto, una carpeta ni una organización en los filtros de inclusión y exclusión del receptor. Por ejemplo, supongamos que configuras un receptor agregado para una organización con el siguiente filtro:
resource.type="gce_instance"
Con el filtro anterior, el sumidero agregado enruta las entradas de registro con un tipo de recurso de instancias de Compute Engine que se escriben en cualquier elemento secundario de esa organización al destino.
Sin embargo, puede haber situaciones en las que quieras usar un receptor agregado para enrutar entradas de registro solo desde recursos secundarios específicos. Por ejemplo, por motivos de cumplimiento, es posible que desees almacenar los registros de auditoría de carpetas o proyectos específicos en su propio bucket de Cloud Storage. En estas situaciones, configura tu filtro de inclusión para especificar cada recurso secundario cuyas entradas de registro deseas enrutar. Si deseas enrutar entradas de registro de una carpeta y todos los proyectos dentro de esta, el filtro debe enumerar la carpeta y cada uno de los proyectos que contiene esta, y también unir las sentencias con una cláusula
OR
.Los siguientes filtros restringen las entradas de registro a proyectos, carpetas o organizaciones de Google Cloud específicos:
logName:"projects/PROJECT_ID/logs/" AND ...
logName:("projects/PROJECT_A_ID/logs/" OR "projects/PROJECT_B_ID/logs/") AND ...
logName:"folders/FOLDER_ID/logs/" AND ...
logName:"organizations/ORGANIZATION_ID/logs/" AND ...
Por ejemplo, para enrutar solo las entradas de registro escritas en instancias de Compute Engine que se escribieron en la carpeta
my-folder
, usa el siguiente filtro:logName:"folders/my-folder/logs/" AND resource.type="gce_instance"
Con el filtro anterior, las entradas de registro que se escriben en cualquier recurso que no sea
my-folder
, incluidas las entradas de registro que se escriben en proyectos de Google Cloud que son hijos demy-folder
, no se enrutan al destino.Selecciona el recurso supervisado
Para enrutar entradas de registro de solo un recurso supervisado específico en un proyecto de Google Cloud, usa varias comparaciones para especificar el recurso de manera exacta:
logName:"projects/PROJECT_ID/logs" AND resource.type=RESOURCE_TYPE AND resource.labels.instance_id=INSTANCE_ID
Para obtener una lista de tipos de recursos, consulta Tipos de recursos supervisados.
Selecciona una muestra de entradas de registro
Para enrutar una muestra aleatoria de entradas de registro, agrega la función integrada
sample
. Por ejemplo, para enrutar solo el diez por ciento de las entradas de registro que coincidan con tu filtro actual, usa esta adición:sample(insertId, 0.10) AND ...
Para obtener más información, consulta la función
sample
.Para obtener más información sobre los filtros de Cloud Logging, consulta Lenguaje de consulta de Logging.
Configura los permisos de destino
En esta sección, se describe cómo otorgar a Logging los permisos de Identity and Access Management para escribir entradas de registro en el destino de tu receptor. Para obtener la lista completa de las funciones y los permisos de Logging, consulta Control de acceso.
Cuando creas o actualizas un receptor que enruta entradas de registro a cualquier destino que no sea un bucket de registros en el proyecto actual, se requiere una cuenta de servicio para ese receptor. El registro crea y administra automáticamente la cuenta de servicio por ti:
- A partir del 22 de mayo de 2023, cuando crees un receptor y no exista una cuenta de servicio para el recurso subyacente, Logging creará la cuenta de servicio. El registro usa la misma cuenta de servicio para todos los destinos en el recurso subyacente. Los recursos pueden ser un proyecto de Google Cloud, una organización, una carpeta o una cuenta de facturación.
- Antes del 22 de mayo de 2023, Logging creaba una cuenta de servicio para cada receptor. A partir del 22 de mayo de 2023, el registro usa una cuenta de servicio compartida para todos los sumideros en el recurso subyacente.
La identidad del escritor de un sumidero es el identificador de la cuenta de servicio asociada con ese sumidero. Todos los receptores tienen una identidad de escritor, a menos que escriban en un bucket de registros en el proyecto actual de Google Cloud.
Para enrutar entradas de registro a un recurso protegido por un perímetro de servicio, debes agregar la cuenta de servicio para ese receptor a un nivel de acceso y, luego, asignarla al perímetro de servicio de destino. Esto no es necesario para los receptores no agregados. Para obtener más detalles, consulta Controles del servicio de VPC: Cloud Logging.
Para establecer permisos para que tu receptor se enrute a su destino, haz lo siguiente:
Console
Para obtener información sobre la cuenta de servicio de tu sink, haz lo siguiente:
-
En la consola de Google Cloud, ve a la página Enrutador de registros:
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Logging.
Selecciona more_vert Menú y, luego, Ver detalles del receptor. La identidad de escritor aparece en el panel Detalles del receptor.
Si el valor del campo
writerIdentity
contiene una dirección de correo electrónico, continúa con el siguiente paso. Cuando el valor esNone
, no necesitas configurar los permisos de destino.Copia la identidad de escritor del receptor en el portapapeles. La cadena
serviceAccount:
forma parte de la identidad de la cuenta de servicio. Por ejemplo:serviceAccount:service-123456789012@gcp-sa-logging.iam.gserviceaccount.com
Agrega la cuenta de servicio como principal de IAM en el proyecto de destino:
-
En la consola de Google Cloud, ve a la página IAM:
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es IAM y administrador.
Selecciona el proyecto de destino.
Haz clic en
Grant access.Otorga a la cuenta de servicio el rol de IAM necesario:
- Para los destinos de Cloud Storage, agrega la identidad de escritor del receptor
como principal con IAM y, luego, asígnale el
rol de creador de objetos de almacenamiento
(
roles/storage.objectCreator
). - Para los destinos de BigQuery, agrega la identidad de escritor del receptor como principal con IAM y, luego, asígnale el rol de editor de datos de BigQuery (
roles/bigquery.dataEditor
). - En el caso de los destinos de Pub/Sub, incluido Splunk, agrega la identidad de escritor del receptor como principal con IAM y, luego, asígnale el rol de publicador de Pub/Sub (
roles/pubsub.publisher
). - Para los destinos del bucket de Logging en diferentes proyectos de Google Cloud, agrega la identidad de escritor del receptor como principal con IAM y, luego, otórgale el rol de escritor del bucket de registros (
roles/logging.bucketWriter
). - Para los destinos de proyectos de Google Cloud, agrega la identidad de escritor del sink como principal con IAM y, luego, bríndale el rol de escritor de registros (
roles/logging.logWriter
). Específicamente, un principal necesita el permisologging.logEntries.route
.
- Para los destinos de Cloud Storage, agrega la identidad de escritor del receptor
como principal con IAM y, luego, asígnale el
rol de creador de objetos de almacenamiento
(
-
-
gcloud
Asegúrate de tener acceso de propietario en el proyecto de Google Cloud que contiene el destino. Si no tienes acceso de Propietario al destino del sumidero, pídele al propietario del proyecto que agregue la identidad del escritor como principal.
Para obtener información sobre la cuenta de servicio de tu sink, llama al método
gcloud logging sinks describe
.Antes de usar el siguiente comando, realiza los siguientes reemplazos:
- SINK_NAME: Es el nombre del receptor de registros. No puedes cambiar el nombre de un sumidero después de crearlo.
Ejecuta el comando
gcloud logging sinks describe
:gcloud logging sinks describe SINK_NAME
Si los detalles del sumidero contienen un campo etiquetado como
writerIdentity
, continúa con el siguiente paso. Cuando los detalles no incluyen un campowriterIdentity
, no es necesario que configures los permisos de destino para el receptor.Copia la identidad de escritor del receptor en el portapapeles. La cadena
serviceAccount:
forma parte de la identidad de la cuenta de servicio.La identidad del escritor de la cuenta de servicio se ve de la siguiente manera:
serviceAccount:service-123456789012@gcp-sa-logging.iam.gserviceaccount.com
Para agregar la cuenta de servicio como principal de IAM en el proyecto de destino, llama al comando
gcloud projects add-iam-policy-binding
.Antes de usar el siguiente comando, realiza los siguientes reemplazos:
- PROJECT_ID: Es el identificador del proyecto.
- PRINCIPAL: Es un identificador para la principal a la que deseas otorgar el rol. Los identificadores principales suelen tener el siguiente formato:
PRINCIPAL-TYPE:ID
. Por ejemplo,user:my-user@example.com
. Para obtener una lista completa de los formatos que puede tenerPRINCIPAL
, consulta Identificadores de principal. ROLE: Es un rol de IAM.
- Para los destinos de Cloud Storage, agrega la identidad de escritor del receptor
como principal con IAM y, luego, asígnale el
rol de creador de objetos de almacenamiento
(
roles/storage.objectCreator
). - Para los destinos de BigQuery, agrega la identidad de escritor del receptor como principal con IAM y, luego, asígnale el rol de editor de datos de BigQuery (
roles/bigquery.dataEditor
). - En el caso de los destinos de Pub/Sub, incluido Splunk, agrega la identidad de escritor del receptor como principal con IAM y, luego, asígnale el rol de publicador de Pub/Sub (
roles/pubsub.publisher
). - Para los destinos del bucket de Logging en diferentes proyectos de Google Cloud, agrega la identidad de escritor del receptor como principal con IAM y, luego, otórgale el rol de escritor del bucket de registros (
roles/logging.bucketWriter
). - Para los destinos de proyectos de Google Cloud, agrega la identidad de escritor del sink como principal con IAM y, luego, bríndale el rol de escritor de registros (
roles/logging.logWriter
). Específicamente, un principal necesita el permisologging.logEntries.route
.
- Para los destinos de Cloud Storage, agrega la identidad de escritor del receptor
como principal con IAM y, luego, asígnale el
rol de creador de objetos de almacenamiento
(
Ejecuta el comando
gcloud projects add-iam-policy-binding
:gcloud projects add-iam-policy-binding PROJECT_ID --member=PRINCIPAL --role=ROLE
REST
Te recomendamos que uses la consola de Google Cloud o Google Cloud CLI para otorgar un rol a la cuenta de servicio.
¿Qué sigue?
Obtén información para crear vistas de registro en un bucket de registro. Las vistas de registro te permiten otorgar acceso de lectura a los principales a un subconjunto de las entradas de registro almacenadas en un bucket de registros.
Para obtener información sobre cómo administrar receptores existentes, consulta Enruta registros a destinos compatibles: Administra receptores.
Si tienes problemas cuando usas receptores para enrutar registros, consulta Solución de problemas de enrutamiento y receptores.
Para obtener información sobre cómo ver tus registros en sus destinos, así como sobre cómo se les da formato y se organizan, consulta Visualiza los registros en los destinos de los receptores.
Salvo que se indique lo contrario, el contenido de esta página está sujeto a la licencia Atribución 4.0 de Creative Commons, y los ejemplos de código están sujetos a la licencia Apache 2.0. Para obtener más información, consulta las políticas del sitio de Google Developers. Java es una marca registrada de Oracle o sus afiliados.
Última actualización: 2024-12-22 (UTC)
-