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. Te recomendamos usar Pub/Sub para integrar los registros de Cloud Logging con software de terceros.
Cuando enrutas entradas de registro a un tema de Pub/Sub, Logging publica cada entrada de registro como un mensaje de Pub/Sub ni bien las recibe. 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.
Visualiza registros
Para ver tus registros mientras se transmiten a través de Pub/Sub, haz lo siguiente:
-
En la consola de Google Cloud, ve a la página Temas:
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Pub/Sub.
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 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
(alrededor de 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
Enrutas 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:
En el proyecto en el que se originan tus entradas de registro, crea tu tema de Pub/Sub con una suscripción predeterminada:
Habilita la API de Pub/Sub.
-
En la consola de Google Cloud, ve a la página Temas:
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Pub/Sub.
Haz clic en Crear tema.
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" }
Mantén la opción Agregar una suscripción predeterminada. No selecciones ninguna otra opción.
Haz clic en Crear tema.
En el proyecto en el que se originan tus entradas de registro, configura Logging para que las enrute a tu tema:
-
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.
- Haz clic en Crear receptor, ingresa un nombre y una descripción para el receptor y, luego, haz clic en Siguiente.
- 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.
- Selecciona las entradas de registro que deseas incluir en el receptor y, luego, haz clic en Siguiente.
- Opcional: Selecciona las entradas de registro que se deben excluir.
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.
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 cómo obtener la identidad del escritor y otorgar un rol, consulta Configura permisos de destino.
Cloud Logging ahora envía entradas de registro a tu tema de Pub/Sub.
-
Crea la suscripción.
Por ejemplo, si usas Dataflow para extraer los datos de tu tema de Pub/Sub y enviarlos a Datadog, debes realizar dos pasos:
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:
- Suscriptor de Pub/Sub (
roles/pubsub.subscriber
) - Administrador de Dataflow (
roles/dataflow.admin
) - Trabajador de Dataflow (
roles/dataflow.worker
)
Para obtener más información, consulta los siguientes documentos:
- Suscriptor de Pub/Sub (
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.
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 entradas de registro en el destino de tu sink o sospechas que este 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.
Con la excepción del bucket de registros _Required
,
Cloud Logging cobra por transmitir registros a buckets de registros y
por almacenarlos durante más tiempo que el período de retención predeterminado del bucket de registros.
Cloud Logging no cobra por copiar registros, definir alcances de registros ni ejecutar consultas a través de las páginas Explorador de registros o Análisis de registros.
Para obtener más información, consulta los siguientes documentos:
- Resumen de precios de Cloud Logging
Costos de destino:
- Los cargos de generación de registros de flujo de VPC se aplican cuando envías y, luego, excluyes los registros de flujo de la nube privada virtual de Cloud Logging.