Descripción general de los receptores agregados

En este documento, se describen los sumideros agregados, que te permiten recopilar y enrutar entradas de registro que se originan en recursos dentro de una carpeta o organización a un destino compatible. Te recomendamos que uses sumideros agregados para enrutar tus datos de registro a una ubicación de almacenamiento central.

Información acerca de los receptores agregados

Un receptor agregado es similar a un receptor a nivel del proyecto, ya que contiene filtros y un destino. Sin embargo, el Enrutador de registros envía a un receptor agregado las siguientes entradas de registro:

  • Todas las entradas de registro que se originan en una carpeta o organización
  • Todas las entradas de registro que se originan en los recursos secundarios de la carpeta o organización.

Por ejemplo, si creas un receptor agregado a nivel de la carpeta, el Router de registros envía a ese receptor todas las entradas de registro que se originan en la carpeta o en los recursos secundarios de la carpeta.

Cuando existen receptores agregados en la jerarquía de recursos de una entrada de registro, el enrutador de registros envía la entrada de registro a esos receptores de forma inicial. Debido a que los receptores agregados pueden interceptar o no, es posible que el enrutador de registros no envíe una entrada de registro que enrute un receptor agregado enviado a los receptores a nivel del proyecto.

Interceptación del receptor agregado

Un receptor agregado de intercepción evita que las entradas de registro se enruten a los receptores en recursos secundarios, excepto los receptores _Required en los recursos donde se originan las entradas de registro. Un receptor agregado de intercepción puede ser útil para evitar que se almacenen copias duplicadas de entradas de registro en varios lugares.

Por ejemplo, supongamos que necesitas habilitar los registros de auditoría de acceso a los datos con fines de auditoría. Para simplificar tu análisis, debes almacenar estos registros en una ubicación central. Sin embargo, por motivos de seguridad y costo, también quieres evitar que estos registros se almacenen a nivel del proyecto. En este caso, puedes crear un receptor agregado de intercepción.

Receptor agregado sin intercepción

Un receptor agregado que no intercepta no afecta la forma en que se enrutan las entradas de registro a otros receptores. Es decir, incluso cuando una entrada de registro coincide con el filtro de un receptor agregado que no intercepta, esa entrada de registro se reenvía a otros receptores en la jerarquía de recursos de la entrada de registro. Un sumidero agregado que no intercepta te permite mantener la visibilidad de las entradas de registro en los recursos en los que se generaron.

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. Sin embargo, como el receptor no intercepta, el router de registros también envía entradas de registro a los receptores de registros en el recurso en el que se generaron.

Ejemplos de enrutamiento

En esta sección, se ilustra cómo una entrada de registro que se origina en un proyecto podría fluir a través de los receptores en su jerarquía de recursos.

Ejemplo: No existen receptores agregados

Cuando no existen receptores agregados en la jerarquía de recursos de la entrada de registro, esta se envía a los receptores de registro del proyecto en el que se origina. Un receptor a nivel del proyecto enruta la entrada de registro al destino del receptor cuando la entrada de registro coincide con el filtro de inclusión del receptor, pero no coincide con ninguno de los filtros de exclusión del receptor.

Ejemplo: Existe un sumidero agregado que no intercepta

Supongamos que existe un receptor agregado que no intercepta en la jerarquía de recursos para una entrada de registro. Después de que el router de registros envía la entrada de registro al sumidero agregado que no intercepta, ocurre lo siguiente:

  1. El receptor agregado sin intercepción enruta la entrada de registro al destino del receptor cuando la entrada de registro coincide con el filtro de inclusión, pero no coincide con ningún filtro de exclusión.

  2. El Enrutador de registros envía la entrada de registro a los receptores de registros en el proyecto en el que se originó la entrada de registro.

    Un receptor a nivel del proyecto enruta la entrada de registro al destino del receptor cuando la entrada de registro coincide con el filtro de inclusión del receptor, pero no coincide con ninguno de los filtros de exclusión del receptor.

Ejemplo: Existe un sumidero agregado de intercepción

Supongamos que existe un receptor agregado de intercepción en la jerarquía de recursos de una entrada de registro. Después de que el router de registros envía la entrada de registro al sumidero agregado de intercepción, ocurre una de las siguientes situaciones:

  • La entrada de registro coincide con el filtro de inclusión, pero no con ningún filtro de exclusión:

    1. La entrada de registro se enruta al destino del receptor agregado de intercepción.
    2. La entrada de registro se envía al receptor _Required en el proyecto en el que se originó.
  • La entrada de registro no coincide con el filtro de inclusión o coincide con al menos un filtro de exclusión:

    1. El receptor agregado de interceptación no enruta la entrada de registro.
    2. El Enrutador de registros envía la entrada de registro a los receptores de registros en el proyecto en el que se originó la entrada de registro.

      Un receptor a nivel del proyecto enruta la entrada de registro al destino del receptor cuando la entrada de registro coincide con el filtro de inclusión del receptor, pero no coincide con ninguno de los filtros de exclusión del receptor.

Destinos admitidos para los receptores agregados

En esta sección, se enumeran los destinos compatibles con los receptores agregados.

Interceptación de receptores

El destino de un receptor agregado interceptor debe ser un proyecto deGoogle Cloud .

Los receptores de registros del proyecto de destino redirigen las entradas de registro a sus destinos. Se admiten todos los destinos, excepto los proyectos. Por ejemplo, los sinks de registro en el proyecto de destino pueden redireccionar las entradas de registro a un bucket de registros.

Receptores que no interceptan

El destino de un receptor agregado no interceptante puede ser cualquiera de los siguientes:

El destino de un receptor puede estar en un recurso diferente al receptor. Por ejemplo, puedes usar un destino de registro para enrutar entradas de registro de un proyecto a un bucket de registros almacenado en un proyecto diferente.

Se admiten los siguientes destinos:

Google Cloud proyecto

Selecciona este destino cuando desees que los receptores de registros del proyecto de destino vuelvan a enrutar tus entradas de registro o cuando hayas creado un receptor agregado de intercepción. Los sinks de registro en el proyecto que es el destino del sink pueden redireccionar las entradas de registro a cualquier destino compatible, excepto a un proyecto.

Bucket de registros

Selecciona este destino cuando quieras almacenar tus datos de registro en recursos administrados por Cloud Logging. Los datos de registro almacenados en buckets de registro se pueden ver y analizar con servicios como el Explorador de registros y Análisis de registros.

Si deseas unir tus datos de registro con otros datos de la empresa, puedes almacenarlos en un bucket de registros y crear un conjunto de datos de BigQuery vinculado. Un conjunto de datos vinculado es un conjunto de datos de solo lectura que se puede consultar como cualquier otro conjunto de datos de BigQuery.

Conjunto de datos de BigQuery
Selecciona este destino cuando quieras unir tus datos de registro con otros datos de la empresa. El conjunto de datos que especifiques debe estar habilitado para la escritura. No configures el destino de un receptor como un conjunto de datos de BigQuery vinculado. Los conjuntos de datos vinculados son de solo lectura.
Bucket de Cloud Storage
Selecciona este destino cuando quieras almacenar tus datos de registro a largo plazo. 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.
Tema de Pub/Sub
Selecciona este destino cuando quieras exportar tus datos de registro desde Google Cloud y, luego, usa integraciones de terceros, como Splunk o Datadog. Las entradas de registro se formatean en JSON y, luego, se enrutan a un tema de Pub/Sub.

Prácticas recomendadas

Recomendamos que el destino de un receptor agregado sea un proyecto de Google Cloud . Con este destino, los receptores de registros del proyecto Google Cloud de destino redireccionan las entradas de registro. El receptor _Required solo enruta las entradas de registro que coinciden con su filtro y que se originan en el recurso en el que se define el receptor. Por lo tanto, si deseas almacenar copias adicionales de entradas de registro que coincidan con el filtro del receptor _Required, debes crear un receptor de registro personalizado o modificar el filtro del receptor de registro _Default.

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, verifica 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 verificar que se enruten las entradas de registro correctas.

Cómo interceptar sumideros agregados y métricas basadas en registros

Las métricas basadas en registros son métricas de Cloud Monitoring que se derivan del contenido de las entradas de registro. La forma en que se enruta una entrada de registro determina para qué métricas basadas en registros puede contar. Debido a que un receptor agregado de intercepción afecta la forma en que se enrutan las entradas de registro, la creación de este tipo de receptor puede provocar cambios en los valores de las métricas existentes basadas en registros.

Para obtener más información, consulta Cómo las entradas de registro de enrutamiento afectan las métricas basadas en registros.

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 con 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 ni ANY_USER_ACCOUNT como un tipo de identidad cuando usas un receptor de registros para enrutar registros a recursos de Cloud Storage. Sin embargo, puedes usar ANY_IDENTITY como el tipo de identidad.

¿Qué sigue?