Ver registros enrutados a Pub/Sub

En este documento, se explica cómo puedes encontrar 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 los registros de Cloud Logging en software de terceros.

Cuando enrutas registros a un tema de Pub/Sub, Logging publica cada entrada de registro como un mensaje de Pub/Sub ni bien las recibe. Por lo general, los registros enrutados están disponibles segundos después de su llegada a Logging, con el 99% de los registros 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.

Si deseas obtener instrucciones para enrutar tus registros, 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 sea Pub/Sub.

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

Organización de registros

El campo data de cada mensaje es un objeto 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 (aproximadamente 600 caracteres) y el valor ackId (alrededor de 200 caracteres) se acortaron para facilitar la lectura del ejemplo:

{
 "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

Logging admite la integración de registros con terceros, como Splunk. Si quieres ver una lista actual de integraciones, consulta Socios para las integraciones de Google Cloud Observability.

Enruta tus registros a través de un tema de Pub/Sub y el tercero los recibe cuando se suscribe al mismo tema.

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

  1. Obtén del tercero un nombre de cuenta de servicio de Google Cloud creado a partir de su proyecto de Google Cloud. Por ejemplo, 12345-xyz@developer.gserviceaccount.com. Usarás este nombre para darle permiso al tercero de recibir tus registros.

  2. En el proyecto que contiene los registros, habilita la API de Pub/Sub.

  3. Habilita la API de Pub/Sub.

    Habilita la API

  4. Cree un tema de Pub/Sub. Puedes crear un tema cuando configuras un receptor de registros o si sigues estos pasos:

    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 sea Pub/Sub.

    2. Selecciona Crear tema y, a continuación, ingresa un nombre de tema. Por ejemplo, projects/my-project-id/topics/my-pubsub-topic Debes enrutar tus registros a este tema.

      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": "2018-10-01T00:00:00Z"
      }
      
    3. Haz clic en Crear tema.

    4. Autoriza a Logging para enrutar los registros al tema. Para obtener instrucciones, consulta Configura permisos de destino.

  5. Autoriza al tercero a suscribirse a tu tema:

    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 sea Pub/Sub.

    2. Selecciona un tema.
    3. Selecciona Permisos.
    4. Selecciona Agregar permiso y, luego, ingresa el nombre de la cuenta de servicio del tercero.
    5. En el menú Selecciona una función, selecciona Suscriptor de Pub/Sub.
    6. Haz clic en Guardar.
  6. Proporciona al tercero el nombre de tu tema de Pub/Sub por ejemplo, projects/my-project-number/topics/my-pubsub-topic. Debe suscribirse al tema antes de que tú comiences la enrutación.

  7. Comienza a enrutar los registros después de que el tercero se haya suscrito al 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. En el proyecto que contiene los registros que deseas enrutar, haz clic en Crear un receptor.
    3. Ingresa un Nombre y una Descripción para tu receptor y haz clic en Siguiente.
    4. En el menú Servicio del receptor, selecciona Tema de Cloud Pub/Sub.
    5. En el menú Tema de Cloud Pub/Sub, selecciona el tema de Pub/Sub al que está suscrito el tercero y, luego, haz clic en Siguiente.
    6. Selecciona los registros que deseas incluir en el receptor y haz clic en Siguiente.
    7. Opcional: Selecciona los registros que deseas excluir.
    8. Haz clic en Crear un receptor.

      Aparecerá un diálogo con el mensaje Se creó el receptor. Este mensaje indica que tu receptor se creó de manera correcta con permisos para escribir futuros registros coincidentes con el destino que seleccionaste.

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

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

Soluciona problemas

Si parece que faltan registros en el destino de tu receptor o sospechas que este no enruta los registros de forma correcta, consulta Soluciona problemas de registros de enrutamiento.

Precios

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

Cloud Logging no cobra por copiar registros ni por las consultas emitidas a través de la página Explorador de registros o la página Análisis de registros.

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