Visualiza registros enrutados a Pub/Sub

En este documento, se explica cómo puedes encontrar las entradas de registro que enrutaste desde Cloud Logging a temas de Pub/Sub, lo que ocurre casi en tiempo real. Recomendamos usar Pub/Sub para integrar Registros de Cloud Logging con software de terceros.

Cuando enrutas entradas de registro a un tema de Pub/Sub, Registro publica cada entrada de registro como un mensaje de Pub/Sub en cuanto Logging recibe esa entrada de registro. Las entradas de registro enrutadas suelen estar disponibles en segundos después de su llegada a Logging, con un 99% de entradas de registro disponibles en menos de 60 segundos.

Antes de comenzar

Para obtener un análisis conceptual de los receptores, consulta Descripción general de los modelos de enrutamiento y almacenamiento: Receptores.

Para obtener instrucciones sobre cómo enrutar tus entradas de registro, consulta Enruta registros a destinos compatibles.

Ver registros

Para ver tus registros a medida que se transmiten a través de Pub/Sub, haz lo siguiente:

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

    Ir a Temas

    Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Pub/Sub.

  2. Encuentra o crea una suscripción al tema que se usa en el receptor de registros y extrae una entrada de registro de ella. Posiblemente tengas que esperar que se publique una nueva entrada de registro.

Organización de registros

El campo data de cada mensaje es un LogEntry codificado en base64 . Por ejemplo, un suscriptor de Pub/Sub puede extraer el siguiente objeto de un tema que recibe entradas de registro. El objeto que se muestra contiene una lista con un solo mensaje, aunque Pub/Sub podría mostrar varios mensajes si hay varias entradas de registro disponibles. El valor data (alrededor de 600 caracteres) y el valor ackId (aproximadamente 200 caracteres) se acortaron para que el ejemplo sea más fácil de leer:

{
 "receivedMessages": [
  {
   "ackId": "dR1JHlAbEGEIBERNK0EPKVgUWQYyODM...QlVWBwY9HFELH3cOAjYYFlcGICIjIg",
   "message": {
    "data": "eyJtZXRhZGF0YSI6eyJzZXZ0eSI6Il...Dk0OTU2G9nIjoiaGVsbG93b3JsZC5sb2cifQ==",
    "attributes": {
     "compute.googleapis.com/resource_type": "instance",
     "compute.googleapis.com/resource_id": "123456"
    },
    "messageId": "43913662360"
   }
  }
 ]
}

Si decodificas el campo data y lo formateas, obtienes el siguiente objeto LogEntry:

{
  "log": "helloworld.log",
  "insertId": "2015-04-15|11:41:00.577447-07|10.52.166.198|-1694494956",
  "textPayload": "Wed Apr 15 20:40:51 CEST 2015 Hello, world!",
  "timestamp": "2015-04-15T18:40:56Z",
  "labels": {
    "compute.googleapis.com\/resource_type": "instance",
    "compute.googleapis.com\/resource_id": "123456"
  },
  "severity": "WARNING"
  }
}

Integración de terceros con Pub/Sub

Debes enrutar tus entradas de registro a un tema de Pub/Sub. El tercero recibe tus entradas de registro cuando se suscribe al mismo tema. Logging admite la integración de registros con terceros, como Splunk o Datadog. Para ver una lista actual de integraciones, consulta Socios para conocer las integraciones de Google Cloud Observability.

A fin de realizar la integración, prepárate para realizar pasos como los siguientes:

  1. En el proyecto en el que se originan tus entradas de registro, crea tu tema de Pub/Sub con un suscripción predeterminada:

    1. Habilitar la API de Pub/Sub

      Enable the API

    2. En la consola de Google Cloud, ve a la página Temas:

      Ir a Temas

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

    3. Haz clic en Crear tema.

    4. En el campo ID de tema, ingresa un ID para tu tema. Por ejemplo, projects/my-project-id/topics/my-pubsub-topic

      Cada mensaje enviado al tema incluye la marca de tiempo de la entrada de registro enrutada en el mensaje de Pub/Sub attributes; por ejemplo:

      "attributes": {
        "logging.googleapis.com/timestamp": "2024-07-01T00:00:00Z"
      }
      
    5. Conserva la opción Agregar una suscripción predeterminada. No selecciones ninguna otra opción.

    6. Haz clic en Crear tema.

  2. En el proyecto en el que se originan tus entradas de registro, configura Logging para que las enrute a tu tema:

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

      Ir a Enrutador de registros

      Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Logging.

    2. Haz clic en Crear receptor, ingresa un nombre y una descripción para el receptor y, luego, haz clic en Siguiente.
    3. En el menú Servicio del receptor (Sink Service), selecciona Tema de Cloud Pub/Sub, elige el tema de Pub/Sub y, luego, haz clic en Siguiente.
    4. Selecciona las entradas de registro que deseas incluir en el receptor y, luego, haz clic en Siguiente.
    5. Opcional: Selecciona las entradas de registro que se deben excluir.
    6. Haz clic en Crear receptor.

      Aparecerá un cuadro de diálogo con el mensaje Se creó el receptor. Este mensaje indica que tu receptor se creó correctamente con permisos para enrutar futuras entradas de registro coincidentes al destino que seleccionaste.

    7. Otorga el rol de Publicador de Pub/Sub (roles/pubsub.publisher) a la identidad de escritor del receptor. Para obtener más información sobre la obtención la identidad de escritor y la asignación de un rol, consulta Configura permisos de destino.

    Cloud Logging ahora envía entradas de registro a tu en el tema.

  3. Crea la suscripción.

    Por ejemplo, si usas Dataflow para extraer los datos del tema de Pub/Sub y enviarlos Datadog, debes seguir estos dos pasos:

    1. Crea o obtén una cuenta de servicio y, luego, otórgale los roles de IAM necesarios para suscribirte a tu tema. Como mínimo, la cuenta de servicio requiere los siguientes roles:

      Para obtener más información, consulta los siguientes documentos:

    2. Crea un trabajo a partir de una plantilla y, luego, ejecútalo. En este ejemplo, usarías la plantilla de Pub/Sub a Datadog.

El tercero debería comenzar a recibir las entradas de los registros de inmediato.

Para explorar situaciones de enrutamiento de registros comunes con Pub/Sub, consulta Situaciones para exportar datos de Cloud Logging: Splunk.

Soluciona problemas

Si parece que faltan entradas de registro en el destino de tu sink o si sospechas que el sink no enruta correctamente las entradas de registro, consulta Cómo solucionar problemas de registro de enrutamiento.

Precios

Cloud Logging no cobra por enrutar registros a un destino compatible. Sin embargo, es posible que el destino aplique cargos. A excepción del bucket de registros _Required, Cloud Logging cobra por transmitir registros a buckets de registros y por más tiempo que el período de retención predeterminado del bucket de registros.

Cloud Logging no cobra por copiar registros, para definir los alcances de los registros o para consultas realizadas a través de la Páginas Explorador de registros o Análisis de registros.

Para obtener más información, consulta los siguientes documentos: