Enrutar registros a destinos admitidos

En este documento se explica cómo crear y gestionar receptores de registro, que dirigen las entradas de registro que se originan en un Google Cloud proyecto a destinos compatibles.

Un receptor realiza una acción de escritura y, por lo tanto, debe tener autorización para escribir en el destino. Si el destino es un segmento de registro del mismo proyecto que el receptor, este se autoriza automáticamente. En el resto de los destinos, el sumidero debe estar asociado a una cuenta de servicio a la que se le hayan concedido los permisos necesarios para escribir datos en el destino.

Cuando se necesita una cuenta de servicio, Cloud Logging la crea y gestiona automáticamente. Sin embargo, es posible que tengas que modificar los permisos concedidos a la cuenta de servicio. No es obligatorio usar la cuenta de servicio creada por Logging. Puedes crear y gestionar una cuenta de servicio que utilicen los receptores de varios proyectos. Para obtener más información, consulta el artículo sobre cómo configurar receptores de registros con cuentas de servicio gestionadas por el usuario.

Información general

En esta página se describe cómo crear un receptor y cómo configurar las opciones que pueden aparecer al usar la consola de Google Cloud o la API.

Los receptores pertenecen a un Google Cloud recurso determinado: un Google Cloud proyecto, una cuenta de facturación, una carpeta o una organización. Cuando el recurso recibe una entrada de registro, cada receptor del recurso procesa la entrada de registro. Cuando una entrada de registro coincide con los filtros del sumidero, se dirige al destino del sumidero.

Normalmente, los receptores solo enrutan las entradas de registro que proceden de un recurso. Sin embargo, en el caso de las carpetas y las organizaciones, puedes crear receptores agregados, que dirigen las entradas de registro de la carpeta o la organización, así como los recursos que contienen. En este documento no se tratan los receptores agregados. Para obtener más información, consulta la información general sobre los receptores agregados.

Para crear y gestionar los receptores, puedes usar la Google Cloud consola, la API Cloud Logging y la CLI de Google Cloud. Te recomendamos que utilices la Google Cloud consola:

  • En la página Logs Router (Enrutador de registros) se muestran todos los receptores y se ofrecen opciones para gestionar los receptores.
  • Al crear un sumidero, puedes previsualizar qué entradas de registro coinciden con los filtros del sumidero.
  • Puede configurar los destinos de receptor al crear un receptor.
  • Algunos pasos de autorización se completan automáticamente.

Destinos admitidos

El destino de un receptor puede estar en un recurso distinto al del receptor. Por ejemplo, puedes usar un sumidero de registros para enrutar entradas de registro de un proyecto a un segmento de registros almacenado en otro proyecto.

Se admiten los siguientes destinos:

Google Cloud proyecto

Selecciona este destino si quieres que los sumideros de registros del proyecto de destino redirijan tus entradas de registro o si has creado un sumidero agregado interceptor. Los sumideros de registro del proyecto que es el destino del sumidero pueden redirigir las entradas de registro a cualquier destino admitido, excepto a un proyecto.

Segmento de registros

Selecciona este destino si quieres almacenar los datos de registro en recursos gestionados por Cloud Logging. Los datos de registro almacenados en segmentos de registro se pueden ver y analizar mediante servicios como el Explorador de registros y Analíticas de registros.

Si quieres combinar tus datos de registro con otros datos empresariales, puedes almacenar tus datos de registro en un segmento de registro 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 si quieres combinar tus datos de registro con otros datos empresariales. El conjunto de datos que especifiques debe tener habilitada la escritura. No configure el destino de un sink como un conjunto de datos de BigQuery vinculado. Los conjuntos de datos vinculados son de solo lectura.
Segmento de Cloud Storage
Selecciona este destino si quieres almacenar tus datos de registro a largo plazo. El segmento de Cloud Storage puede estar en el mismo proyecto en el que se originan las entradas de registro o en otro proyecto. Las entradas de registro se almacenan como archivos JSON.
Tema Pub/Sub
Selecciona este destino si quieres exportar tus datos de registro desde Google Cloud y, a continuación, usar integraciones de terceros como Splunk o Datadog. Las entradas de registro se formatean en JSON y, a continuación, se dirigen a un tema de Pub/Sub.

Limitaciones de los destinos

En esta sección se describen las limitaciones específicas de cada destino:

  • Si enruta las entradas de registro a un contenedor de registro de otro Google Cloud proyecto, Error Reporting no analizará esas entradas de registro. Para obtener más información, consulta la descripción general de los informes de errores.
  • Si enruta entradas de registro a un conjunto de datos de BigQuery, este debe tener habilitada la escritura. No puedes enrutar entradas de registro a conjuntos de datos vinculados, que son de solo lectura.
  • Los nuevos receptores que dirigen los datos de registro a segmentos de Cloud Storage pueden tardar varias horas en empezar a enrutar las entradas de registro. Estos receptores se procesan cada hora.
  • Se aplican las siguientes limitaciones cuando el destino de un receptor de registro es un proyecto de Google Cloud :

    • Hay un límite de un salto.
    • Las entradas de registro que coinciden con el filtro del _Requiredsumidero de registros solo se enrutan al _Requiredsegmento de registros del proyecto de destino cuando proceden de él.
    • Solo los receptores agregados que se encuentran en la jerarquía de recursos de una entrada de registro procesan la entrada de registro.

    Por ejemplo, supongamos que el destino de un receptor de registro del proyecto A es el proyecto B. Entonces, se cumplen las siguientes condiciones:

    • Debido al límite de un salto, los receptores de registro del proyecto B no pueden redirigir las entradas de registro a un proyecto Google Cloud .
    • El segmento de registros _Required del proyecto B solo almacena entradas de registro que proceden del proyecto B. Este segmento de registro no almacena ninguna entrada de registro que proceda de ningún otro recurso, incluidas las que proceden del proyecto A.
    • Si la jerarquía de recursos del proyecto A y del proyecto B son diferentes, una entrada de registro que un receptor de registro del proyecto A enruta al proyecto B no se envía a los receptores agregados de la jerarquía de recursos del proyecto B.
    • Si el proyecto A y el proyecto B tienen la misma jerarquía de recursos, las entradas de registro se envían a los receptores agregados de esa jerarquía. Si una entrada de registro no se intercepta mediante un receptor agregado, el enrutador de registros envía la entrada de registro a los receptores del proyecto A.

Antes de empezar

Las instrucciones de este documento describen cómo crear y gestionar sumideros a nivel deGoogle Cloud proyecto. Puedes usar el mismo procedimiento para crear un receptor que dirija las entradas de registro que procedan de una organización, una carpeta o una cuenta de facturación.

Para empezar, haz lo siguiente:

  1. Enable the Cloud Logging API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  2. Asegúrate de que tu proyecto de Google Cloud contiene entradas de registro que puedes ver en el Explorador de registros.

  3. Para obtener los permisos que necesitas para crear, modificar o eliminar un receptor, 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.

    También puedes conseguir los permisos necesarios a través de roles personalizados u otros roles predefinidos.

    Para obtener información sobre cómo conceder roles de gestión de identidades y accesos, consulta la guía de control de acceso de Logging.

  4. Tienes un recurso en un destino admitido o puedes crear uno.

    Para enrutar entradas de registro a un destino, este debe existir antes de crear el receptor. Puede crear el destino en cualquier Google Cloud proyecto de cualquier organización.

  5. Antes de crear un receptor, consulta las limitaciones que se aplican al destino del receptor. Para obtener más información, consulta la sección Limitaciones de los destinos de este documento.

  6. 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.

    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 REST de esta página en un entorno de desarrollo local, debes usar las credenciales que proporciones a la CLI de gcloud.

      Instala Google Cloud CLI. Después de la instalación, inicializa la CLI de Google Cloud ejecutando el siguiente comando:

      gcloud init

      Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.

    Para obtener más información, consulta el artículo Autenticarse para usar REST de la documentación sobre autenticación de Google Cloud .

    Crear un sumidero

    En esta sección se describe cómo crear un receptor en un proyecto de Google Cloud . Puede crear hasta 200 receptores por proyecto. Google Cloud Para ver el número y el volumen de entradas de registro que se han enrutado, consulta las métricas logging.googleapis.com/exports/.

    Utiliza el lenguaje de consultas de registro para crear una expresión de filtro que coincida con las entradas de registro que quieras incluir. No incluyas información sensible en los filtros de receptor. Los filtros de receptor se tratan como datos de servicio.

    Cuando una consulta contiene varias instrucciones, puedes especificar cómo se combinan esas instrucciones o dejar que Cloud Logging añada implícitamente la restricción conjuntiva, AND, entre las instrucciones. Por ejemplo, supongamos que un cuadro de diálogo de consulta o filtro contiene dos instrucciones: resource.type = "gce_instance" y severity >= "ERROR". La consulta real es resource.type = "gce_instance" AND severity >= "ERROR". Cloud Logging admite restricciones disyuntivas (OR) y conjuntivas (AND). Cuando utilices instrucciones OR, te recomendamos que agrupes las cláusulas con paréntesis.

    Para crear un receptor, siga estos pasos:

    Consola

    1. En la Google Cloud consola, ve a la página Enrutador de registros:

      Ve a Enrutador de registros.

      Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuya sección sea Registro.

    2. Selecciona el Google Cloud proyecto en el que se originan las entradas de registro que quieres enrutar.

      Por ejemplo, si quieres enrutar las entradas de registro de acceso a los datos del proyecto Project-A a un segmento de registro del proyecto Project-B, selecciona Project-A.

    3. Selecciona Crear sumidero.

    4. En el panel Detalles del receptor, introduce los siguientes datos:

      • Nombre del receptor: proporciona un identificador para el receptor. Ten en cuenta que, una vez que lo hayas creado, no podrás cambiarle el nombre, pero sí eliminarlo y crear uno nuevo.

      • Descripción del receptor (opcional): describe el objetivo o el caso práctico del receptor.

    5. En el panel Destino del sumidero, selecciona el servicio y el destino del sumidero en el menú Seleccionar servicio del sumidero. Realiza una de las siguientes acciones:

      • Para enrutar entradas de registro a un servicio que esté en el mismo proyecto, selecciona una de las siguientes opciones:Google Cloud

        • Conjunto de datos de BigQuery: selecciona o crea el conjunto de datos en el que se pueden escribir para recibir las entradas de registro enrutadas. También puedes usar tablas con particiones.
        • Segmento de Cloud Storage: selecciona o crea el segmento de Cloud Storage concreto que recibirá las entradas de registro enrutadas.
        • Tema de Pub/Sub: selecciona o crea el tema concreto para recibir las entradas de registro enrutadas.
        • Splunk: selecciona el tema de Pub/Sub de tu servicio Splunk.
      • Para enrutar entradas de registro a otro Google Cloud proyecto, seleccione Google Cloud proyecto y, a continuación, introduzca el nombre completo del destino:

        logging.googleapis.com/projects/DESTINATION_PROJECT_ID
        
      • Para enrutar entradas de registro a un servicio que esté en otro proyecto, haz lo siguiente:Google Cloud

        1. Selecciona Otro recurso.
        2. Introduce el nombre completo del destino. Para obtener información sobre la sintaxis, consulta los formatos de ruta de destino.
    6. Especifica las entradas de registro que quieres incluir:

      1. Ve al panel Seleccionar los registros que se incluirán en el sumidero.

      2. En el campo Crear filtro de inclusión, introduce una expresión de filtro que coincida con las entradas de registro que quieras incluir. Para obtener más información sobre la sintaxis para escribir filtros, consulta el artículo Lenguaje de consultas de registro.

        Si no defines ningún filtro, todas las entradas de registro del recurso seleccionado se dirigirán al destino.

        Por ejemplo, para enrutar todas las entradas del registro de acceso a datos a un segmento de Logging, puede usar el siguiente filtro:

        log_id("cloudaudit.googleapis.com/data_access") OR log_id("externalaudit.googleapis.com/data_access")
        

        La longitud de un filtro no puede superar los 20.000 caracteres.

      3. Para comprobar que has introducido el filtro correcto, selecciona Vista previa de los registros. El Explorador de registros se abre en una pestaña nueva con el filtro rellenado automáticamente.

    7. (Opcional) Configura un filtro de exclusión para eliminar algunas de las entradas de registro incluidas:

      1. Ve al panel Seleccionar los registros que se excluirán del sumidero.

      2. En el campo Nombre del filtro de exclusión, introduce un nombre.

      3. En el campo Crear filtro de exclusión, introduce una expresión de filtro que coincida con las entradas de registro que quieras excluir. También puedes usar la función sample para seleccionar una parte de las entradas de registro que quieras excluir.

      Puede 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.

    8. Selecciona Crear sumidero.

    9. Concede a la cuenta de servicio del sumidero el permiso para escribir entradas de registro en el destino del sumidero. Para obtener más información, consulta Definir permisos de destino.

    gcloud

    Para crear un receptor, siga estos pasos:

    1. Ejecuta el siguiente comando gcloud logging sinks create:

      gcloud logging sinks create SINK_NAME SINK_DESTINATION
      

      Antes de ejecutar el comando, haz las siguientes sustituciones:

      • SINK_NAME: el nombre del sumidero de registros. No puedes cambiar el nombre de un receptor después de crearlo.
      • SINK_DESTINATION: el servicio o proyecto al que quieres dirigir las entradas de registro. Define SINK_DESTINATION con la ruta adecuada, tal como se describe en la sección Formatos de ruta de destino.

        Por ejemplo, si el destino de su receptor es un tema de Pub/Sub, SINK_DESTINATION tendrá el siguiente aspecto:

        pubsub.googleapis.com/projects/PROJECT_ID/topics/TOPIC_ID
        

      También puedes proporcionar las siguientes opciones:

      • --log-filter : usa esta opción para definir un filtro que coincida con las entradas de registro que quieras incluir en el sumidero. Si no proporciona un valor para el filtro de inclusión, este filtro coincidirá con todas las entradas de registro.
      • --exclusion: usa esta opción para definir un filtro de exclusión para las entradas de registro que quieras excluir del enrutamiento de tu sumidero. También puedes usar la función sample para seleccionar una parte de las entradas de registro que quieras excluir. Esta opción se puede repetir. Puedes crear hasta 50 filtros de exclusión por receptor.
      • --description: usa esta opción para describir el propósito o el caso práctico del receptor.

      Por ejemplo, para crear un receptor en un bucket de Logging, el comando podría ser el siguiente:

      gcloud logging sinks create my-sink logging.googleapis.com/projects/myproject123/locations/global/buckets/my-bucket \
       --log-filter='logName="projects/myproject123/logs/matched"' --description="My first sink"
      

      Para obtener más información sobre cómo crear receptores con Google Cloud CLI, consulta la referencia de gcloud logging sinks.

    2. Si la respuesta del comando contiene una clave JSON etiquetada como "writerIdentity", concede a la cuenta de servicio del receptor el permiso para escribir en el destino del receptor. Para obtener más información, consulta Definir permisos de destino.

      No es necesario definir permisos de destino cuando la respuesta no contiene una clave JSON denominada "writerIdentity".

    REST

    1. Para crear un receptor de registro en tu Google Cloud proyecto, usa projects.sinks.create en la API Logging. En el objeto LogSink, proporcione los valores obligatorios adecuados en el cuerpo de la solicitud del método:

      • name: identificador del receptor. Ten en cuenta que, después de crear el receptor, no podrás cambiarle el nombre, pero sí eliminarlo y crear otro.
      • destination: el servicio y el destino a los que quiere que se dirijan sus entradas de registro. Para enrutar entradas de registro a otro proyecto o a un destino que se encuentre en otro proyecto, define el campo destination con la ruta adecuada, tal como se describe en Formatos de ruta de destino.

        Por ejemplo, si el destino de su receptor es un tema de Pub/Sub, el destination tendrá el siguiente aspecto:

        pubsub.googleapis.com/projects/PROJECT_ID/topics/TOPIC_ID
        
    2. En el objeto LogSink, proporcione la información opcional adecuada:

      • filter : asigna al campo filter el valor que coincida con las entradas de registro que quieras incluir en el sumidero. Si no defines ningún filtro, todas las entradas de registro de tu proyectoGoogle Cloud se dirigirán al destino. Ten en cuenta que la longitud de un filtro no puede superar los 20.000 caracteres.
      • exclusions: asigna a este campo el valor de las entradas de registro que quieras excluir del receptor. También puedes usar la función sample para seleccionar una parte de las entradas de registro que quieras excluir. Puede crear hasta 50 filtros de exclusión por receptor.
      • description: define este campo para describir el propósito o el caso de uso del receptor.
    3. Llama a projects.sinks.create para crear el sumidero.

    4. Si la respuesta de la API contiene una clave JSON etiquetada como "writerIdentity", concede a la cuenta de servicio del receptor el permiso para escribir en el destino del receptor. Para obtener más información, consulta Definir permisos de destino.

      No es necesario definir permisos de destino cuando la respuesta de la API no contenga una clave JSON denominada "writerIdentity".

    Para obtener más información sobre cómo crear receptores con la API Logging, consulta la referencia de LogSink.

    Si recibes notificaciones de error, consulta Solucionar problemas de enrutamiento y de sinks.

    Formatos de ruta de destino

    Si enruta entradas de registro a un servicio que está en otro proyecto, debe proporcionar al receptor el nombre completo del servicio. Del mismo modo, si enruta entradas de registro a otro proyecto, debe proporcionar al receptor el nombre completo del proyecto de destino: Google Cloud

    • Segmento de registro de Cloud Logging:

      logging.googleapis.com/projects/DESTINATION_PROJECT_ID/locations/LOCATION/buckets/BUCKET_NAME
      
    • Otro Google Cloud proyecto:

      logging.googleapis.com/projects/DESTINATION_PROJECT_ID
      
    • Conjunto de datos de BigQuery:

      bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID
      
    • Cloud Storage:

      storage.googleapis.com/BUCKET_NAME
      
    • Tema de Pub/Sub:

      pubsub.googleapis.com/projects/PROJECT_ID/topics/TOPIC_ID
      

    Definir permisos de destino

    En esta sección se describe cómo conceder a Logging los permisos de gestión de identidades y accesos para escribir entradas de registro en el destino de tu receptor. Para ver la lista completa de roles y permisos de Logging, consulta Control de acceso.

    Cloud Logging crea una cuenta de servicio compartida para un recurso cuando se crea un receptor, a menos que ya exista la cuenta de servicio necesaria. Es posible que la cuenta de servicio exista porque se usa la misma cuenta de servicio para todos los receptores del recurso subyacente. Los recursos pueden ser un Google Cloud proyecto, una organización, una carpeta o una cuenta de facturación.

    La identidad de escritura de un receptor es el identificador de la cuenta de servicio asociada a ese receptor. Todos los sumideros tienen una identidad de escritor, excepto los que escriben en un contenedor de registros del mismo Google Cloud proyecto en el que se origina la entrada de registro. En este caso, no se necesita una cuenta de servicio, por lo que el campo writerIdentity del sumidero aparece como None en la consola. La API y los comandos de Google Cloud CLI no informan de la identidad del escritor.

    Las siguientes instrucciones se aplican a proyectos, carpetas, organizaciones y cuentas de facturación:

    Consola

    1. Asegúrate de que tienes acceso de propietario alGoogle Cloud proyecto que contiene el destino. Si no tienes acceso de propietario al destino del receptor, pide a un propietario del proyecto que añada la identidad de escritura como principal.

    2. Para obtener la identidad del escritor del receptor (una dirección de correo electrónico) del nuevo receptor, haz lo siguiente:

      1. En la Google Cloud consola, ve a la página Enrutador de registros:

        Ve a Enrutador de registros.

        Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuya sección sea Registro.

      2. En la barra de herramientas, selecciona el proyecto que contiene el receptor.
      3. Selecciona Menú y, a continuación, Ver detalles del receptor. La identidad del escritor aparece en el panel Detalles del receptor.
    3. Si el valor del campo writerIdentity contiene una dirección de correo electrónico, vaya al paso siguiente. Si el valor es None, no es necesario configurar los permisos de destino del receptor.

    4. Copia la identidad de escritura del receptor en el portapapeles.

      La dirección de correo identifica a la entidad. El prefijo serviceAccount: especifica el tipo de cuenta.

    5. Concede al principal especificado en la identidad de escritura del sumidero el permiso para escribir datos de registro en el destino:

      1. En la Google Cloud consola, ve a la página Gestión de identidades y accesos:

        Ve a Gestión de identidades y accesos.

        Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo sea IAM y administrador.

      2. En la barra de herramientas, asegúrate de que el proyecto seleccionado sea el que almacena el destino o el destino del receptor. Por ejemplo, si el destino es un segmento de registro, asegúrese de que la barra de herramientas muestre el proyecto que almacena el segmento de registro.

      3. Haz clic en Conceder acceso.

      4. Concede a la entidad principal especificada en la identidad de escritura del sumidero un rol de gestión de identidades y accesos en función del destino del sumidero de registros:

    gcloud

    1. Asegúrate de que tienes acceso de propietario alGoogle Cloud proyecto que contiene el destino. Si no tienes acceso de propietario al destino del receptor, pide a un propietario del proyecto que añada la identidad de escritura como principal.

    2. Obtén la cuenta de servicio del campo writerIdentity de tu sumidero:

      gcloud logging sinks describe SINK_NAME
      
    3. Busca el receptor cuyos permisos quieras modificar y, si los detalles del receptor contienen una línea con writerIdentity, ve al paso siguiente. Si los detalles no incluyen un campo writerIdentity, no es necesario que configures los permisos de destino del receptor.

      La identidad de escritura de la cuenta de servicio tiene un aspecto similar al siguiente:

      serviceAccount:service-123456789012@gcp-sa-logging.iam.gserviceaccount.com
      
    4. Concede a la identidad de escritura del sumidero el permiso para escribir datos de registro en el destino llamando al comando gcloud projects add-iam-policy-binding.

      Antes de usar el siguiente comando, haz las sustituciones que se indican a continuación:

      • PROJECT_ID: identificador del proyecto. Especifica el proyecto que almacena el destino del receptor de registro. Si el destino es un proyecto, especifícalo.
      • PRINCIPAL: identificador de la cuenta principal a la que quieres asignar el rol. Los identificadores principales suelen tener el siguiente formato: PRINCIPAL-TYPE:ID. Por ejemplo, user:my-user@example.com. Para ver una lista completa de los formatos que puede tener PRINCIPAL, consulta Identificadores principales.
      • ROLE: un rol de gestión de identidades y accesos. Concede a la identidad de escritura del sumidero un rol de gestión de identidades y accesos en función del destino del sumidero de registro:

      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 Google Cloud consola o la CLI de Google Cloud para asignar un rol a una cuenta de servicio.

    Gestionar sumideros

    Una vez creados los receptores, puede realizar las siguientes acciones en ellos. Los cambios que se hagan en un receptor pueden tardar unos minutos en aplicarse:

    • Ver detalles
    • Actualizar
    • Inhabilitar

      • No puedes inhabilitar el sumidero _Required.
      • Puedes inhabilitar el sumidero _Default para evitar que enrute entradas de registro al segmento _Default de Logging.
      • Si quieres inhabilitar el _Default para los proyectos o las carpetas que se creen en tu organización, te recomendamos que configures los ajustes de recursos predeterminados.Google Cloud
    • Eliminar

      • No puedes eliminar los sumideros _Default ni _Required.
      • Cuando eliminas un receptor, deja de enrutar entradas de registro.
      • Si el receptor tiene una cuenta de servicio específica, al eliminarlo también se eliminará la cuenta de servicio. Los receptores creados antes del 22 de mayo del 2023 tienen cuentas de servicio específicas. Los receptores creados a partir del 22 de mayo del 2023 tienen una cuenta de servicio compartida. Si eliminas el receptor, no se eliminará la cuenta de servicio compartida.
    • Solucionar errores

    • Ver el volumen de registros y las tasas de errores

    A continuación, se indican las instrucciones para gestionar un receptor en un proyecto de Google Cloud . En lugar de un Google Cloud proyecto, puedes especificar una cuenta de facturación, una carpeta o una organización:

    Consola

    1. En la Google Cloud consola, ve a la página Enrutador de registros:

      Ve a Enrutador de registros.

      Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuya sección sea Registro.

    2. En la barra de herramientas, selecciona el recurso que contiene el receptor. El recurso puede ser un proyecto, una carpeta, una organización o una cuenta de facturación.

    En la página Log Router (Enrutador de registros) se muestran los receptores del recurso seleccionado. Cada fila de la tabla contiene información sobre las propiedades de un receptor:

    • Habilitado: indica si el estado del receptor está habilitado o inhabilitado.
    • Tipo: el servicio de destino del sumidero. Por ejemplo, Cloud Logging bucket.
    • Nombre: el identificador del receptor, tal como se proporcionó cuando se creó. Por ejemplo, _Default.
    • Descripción: descripción del sumidero, tal como se proporcionó cuando se creó.
    • Destino: nombre completo del destino al que se envían las entradas de registro enrutadas.
    • Creado: la fecha y la hora en las que se creó el receptor.
    • Última actualización: fecha y hora en las que se modificó el receptor por última vez.
    • Volumen: informa del volumen total de registros enrutados al receptor de registros. El valor incluye el volumen enrutado a segmentos de registros, proyectos u otros destinos.

    En cada fila de la tabla, el menú Más acciones ofrece las siguientes opciones:

    • Ver detalles del receptor: muestra el nombre, la descripción, el servicio de destino, el destino y los filtros de inclusión y exclusión del receptor. Si selecciona Editar, se abrirá el panel Editar receptor.
    • Editar sumidero: abre el panel Editar sumidero, donde puedes actualizar los parámetros del sumidero.
    • Inhabilitar sumidero: te permite inhabilitar el sumidero y dejar de enrutar entradas de registro al destino del sumidero. Para obtener más información sobre cómo inhabilitar sumideros, consulta el artículo Dejar de almacenar registros en segmentos de registro.
    • Habilitar sumidero: permite habilitar un sumidero inhabilitado y reiniciar el enrutamiento de las entradas de registro al destino del sumidero.
    • Eliminar el receptor: permite eliminar el receptor y dejar de enrutar entradas de registro al destino del receptor.
    • Solucionar problemas del receptor: abre el Explorador de registros, donde puede solucionar problemas del receptor.
    • Ver el volumen de registros del receptor y las tasas de errores: abre el explorador de métricas, donde puede ver y analizar los datos del receptor.

    Para ordenar la tabla por una columna, selecciona el nombre de la columna.

    gcloud

    • Para ver la lista de receptores de tu proyecto Google Cloud , usa el comando gcloud logging sinks list, que corresponde al método projects.sinks.list de la API Logging:

      gcloud logging sinks list
      

      Para ver la lista de receptores agregados, usa la opción adecuada para especificar el recurso que contiene el receptor. Por ejemplo, si has creado el receptor a nivel de organización, usa la opción --organization=ORGANIZATION_ID para enumerar los receptores de la organización.

    • Para describir un receptor, usa el comando gcloud logging sinks describe, que corresponde al método projects.sinks.get de la API Logging:

      gcloud logging sinks describe SINK_NAME
      
    • Para actualizar un receptor, usa el comando gcloud logging sinks update, que corresponde al método de la API projects.sink.update.

      Puedes actualizar un sumidero para cambiar el destino, los filtros y la descripción, o para inhabilitarlo o volver a habilitarlo:

      gcloud logging sinks update SINK_NAME NEW_DESTINATION --log-filter=NEW_FILTER

      Omite NEW_DESTINATION o --log-filter si esas partes no cambian.

      Por ejemplo, para actualizar el destino de tu receptor llamado my-project-sink a un nuevo destino de segmento de Cloud Storage llamado my-second-gcs-bucket, el comando sería el siguiente:

      gcloud logging sinks update  my-project-sink storage.googleapis.com/my-second-gcs-bucket
      
    • Para inhabilitar un receptor, usa el comando gcloud logging sinks update , que corresponde al método de la API projects.sink.update e incluye la opción --disabled:

      gcloud logging sinks update SINK_NAME --disabled
      

      Para volver a habilitar el receptor, usa el comando gcloud logging sinks update quita la opción --disabled e incluye la opción --no-disabled:

      gcloud logging sinks update SINK_NAME --no-disabled
      
    • Para eliminar un receptor, usa el comando gcloud logging sinks delete, que corresponde al método de la API projects.sinks.delete:

      gcloud logging sinks delete SINK_NAME
      

      Para obtener más información sobre cómo gestionar los receptores con Google Cloud CLI, consulta la referencia de gcloud logging sinks.

    REST

    • Para ver los receptores de tu Google Cloud proyecto, llama a projects.sinks.list.

    • Para ver los detalles de un receptor, llama a projects.sinks.get.

    • Para actualizar un sumidero, llama a projects.sink.update.

      Puedes actualizar el destino, los filtros y la descripción de un receptor. También puedes inhabilitar o volver a habilitar el sumidero.

    • Para inhabilitar un receptor, asigna el valor true al campo disabled del objeto LogSink y, a continuación, llama a projects.sink.update.

      Para volver a habilitar el receptor, asigna el valor false al campo disabled del objeto LogSink y, a continuación, llama a projects.sink.update.

    • Para eliminar un receptor, llama a projects.sinks.delete.

      Para obtener más información sobre cómo gestionar los receptores mediante la API Logging, consulta la referencia de LogSink.

    Dejar de almacenar entradas de registro en segmentos de registros

    Puedes inhabilitar el receptor _Default y cualquier receptor definido por el usuario. Si inhabilitas un sumidero, este dejará de enrutar las entradas de registro a su destino. Por ejemplo, si inhabilitas el sumidero _Default, no se enrutará ninguna entrada de registro al segmento _Default. El segmento _Default se vacía cuando todas las entradas de registro almacenadas anteriormente han cumplido el periodo de conservación del segmento.

    En las siguientes instrucciones se explica cómo inhabilitar los receptores de proyectos de Google Cloud que dirigen entradas de registro a los contenedores de registro de _Default:

    Consola

    1. En la Google Cloud consola, ve a la página Enrutador de registros:

      Ve a Enrutador de registros.

      Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuya sección sea Registro.

    2. Para encontrar todos los sumideros que enrutan entradas de registro al _Default, filtra los sumideros por destino y, a continuación, introduce _Default.
    3. En cada receptor, selecciona Menú y, a continuación, Inhabilitar receptor.

      Los receptores ahora están inhabilitados y los receptores de tu proyecto Google Cloud ya no dirigen las entradas de registro al segmento _Default.

    Para volver a habilitar un sumidero inhabilitado y reiniciar el enrutamiento de entradas de registro al destino del sumidero, haz lo siguiente:

    1. En la Google Cloud consola, ve a la página Enrutador de registros:

      Ve a Enrutador de registros.

      Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuya sección sea Registro.

    2. Para encontrar todos los sumideros que enrutan entradas de registro al _Default, filtra los sumideros por destino y, a continuación, introduce _Default.
    3. En cada receptor, selecciona Menú y, a continuación, Habilitar receptor.

    gcloud

    1. Para ver la lista de receptores de tu proyecto Google Cloud , usa el comando gcloud logging sinks list, que corresponde al método projects.sinks.list de la API Logging:

      gcloud logging sinks list
      
    2. Identifica los sumideros que enrutan al contenedor de registros _Default. Para describir un receptor, incluido el nombre del destino, usa el comando gcloud logging sinks describe, que corresponde al método de la API Logging projects.sinks.get:

      gcloud logging sinks describe SINK_NAME
      
    3. Ejecuta el comando gcloud logging sinks update e incluye la opción --disabled. Por ejemplo, para inhabilitar el receptor _Default, usa el siguiente comando:

      gcloud logging sinks update _Default  --disabled
      

      El receptor _Default ahora está inhabilitado y ya no dirige las entradas de registro al segmento de registro _Default.

    Para inhabilitar los demás receptores de tu proyecto de Google Cloud que estén enrutando al contenedor _Default, repite los pasos anteriores.

    Para volver a habilitar un receptor, usa el comando gcloud logging sinks update quita la opción --disabled e incluye la opción --no-disabled:

    gcloud logging sinks update _Default  --no-disabled
    

    REST

    1. Para ver los receptores de tu proyecto Google Cloud , llama al método de la API Logging projects.sinks.list.

      Identifica los receptores que están enrutando al segmento _Default.

    2. Por ejemplo, para inhabilitar el receptor _Default, asigna el valor true al campo disabled del objeto LogSink y, a continuación, llama a projects.sink.update.

      El receptor _Default ahora está inhabilitado y ya no dirige las entradas de registro al segmento _Default.

    Para inhabilitar los demás receptores de tu proyecto de Google Cloud que estén enrutando al contenedor _Default, repite los pasos anteriores.

    Para volver a habilitar un receptor, asigna el valor false al campo disabled del objeto LogSink y, a continuación, llama a projects.sink.update.

    Códigos de ejemplo

    Para usar el código de la biblioteca de cliente para configurar los receptores en los lenguajes que elijas, consulta Bibliotecas de cliente de Logging: receptores de registro.

    Ejemplos de filtros

    A continuación, se muestran algunos ejemplos de filtros que son especialmente útiles al crear receptores. Para ver más ejemplos que pueden resultarte útiles al crear filtros de inclusión y exclusión, consulta Consultas de ejemplo.

    Restaurar el filtro de _Default

    Si has editado el filtro del receptor _Default, puede que quieras restaurar este receptor a su configuración original. Cuando se crea, el receptor _Default se configura con el siguiente filtro de inclusión y un filtro de exclusión vacío:

      NOT log_id("cloudaudit.googleapis.com/activity") AND NOT \
      log_id("externalaudit.googleapis.com/activity") AND NOT \
      log_id("cloudaudit.googleapis.com/system_event") AND NOT \
      log_id("externalaudit.googleapis.com/system_event") AND NOT \
      log_id("cloudaudit.googleapis.com/access_transparency") AND NOT \
      log_id("externalaudit.googleapis.com/access_transparency")
    

    Excluir registros de contenedores y pods de Google Kubernetes Engine

    Para excluir las entradas de registro de contenedores y pods de Google Kubernetes Engine del sistema GKE namespaces, usa el siguiente filtro:

    resource.type = ("k8s_container" OR "k8s_pod")
    resource.labels.namespace_name = (
    "cnrm-system" OR
    "config-management-system" OR
    "gatekeeper-system" OR
    "gke-connect" OR
    "gke-system" OR
    "istio-system" OR
    "knative-serving" OR
    "monitoring-system" OR
    "kube-system")
    

    Para excluir las entradas de registro de nodos de Google Kubernetes Engine del sistema logNames de GKE, usa el siguiente filtro:

    resource.type = "k8s_node"
    logName:( "logs/container-runtime" OR
    "logs/docker" OR
    "logs/kube-container-runtime-monitor" OR
    "logs/kube-logrotate" OR
    "logs/kube-node-configuration" OR
    "logs/kube-node-installation" OR
    "logs/kubelet" OR
    "logs/kubelet-monitor" OR
    "logs/node-journal" OR
    "logs/node-problem-detector")
    

    Para ver el volumen de entradas de registro de nodos, pods y contenedores de Google Kubernetes Engine almacenadas en los buckets de registro, usa el Explorador de métricas:

    Excluir los registros de Dataflow que no sean necesarios para la asistencia

    Para excluir las entradas de registro de Dataflow que no sean necesarias para la asistencia, usa el siguiente filtro:

    resource.type="dataflow_step"
    labels."dataflow.googleapis.com/log_type"!="system" AND labels."dataflow.googleapis.com/log_type"!="supportability"
    

    Para ver el volumen de registros de Dataflow almacenados en segmentos de registros, usa el explorador de métricas.

    Compatibilidad

    Aunque Cloud Logging te permite excluir entradas de registro e impedir que se almacenen en un segmento de registro, te recomendamos que conserves las entradas de registro que te ayuden con la asistencia. Usar estas entradas de registro puede ayudarte a solucionar problemas e identificar errores en tus aplicaciones.

    Por ejemplo, las entradas de registro del sistema de GKE son útiles para solucionar problemas de tus aplicaciones y clústeres de GKE, ya que se generan para los eventos que se producen en tu clúster. Estas entradas de registro pueden ayudarte a determinar si el error de la aplicación se debe al código de la aplicación o al clúster de GKE subyacente. Los registros del sistema de GKE también incluyen el registro de auditoría de Kubernetes generado por el componente del servidor de la API de Kubernetes, que incluye los cambios realizados con el comando kubectl y los eventos de Kubernetes.

    En el caso de Dataflow, le recomendamos que, como mínimo, escriba los registros del sistema (labels."dataflow.googleapis.com/log_type"="system") y los registros de asistencia (labels."dataflow.googleapis.com/log_type"="supportability") en los contenedores de registros. Estos registros son esenciales para que los desarrolladores observen y solucionen problemas de sus canalizaciones de Dataflow, y es posible que los usuarios no puedan usar la página Detalles del trabajo de Dataflow para ver los registros de trabajos.

    Siguientes pasos