Descripción general de Cloud Logging

En este documento, se proporciona una descripción general de Cloud Logging, que es un sistema de administración de registros en tiempo real con asistencia para almacenamiento, búsqueda, análisis y supervisión. Cloud Logging recopila automáticamente los registros de los recursos de Google Cloud. También puedes recopilar registros de tus aplicaciones, recursos locales y recursos de otros proveedores de servicios en la nube. Puedes configurar alertas para recibir notificaciones si se informan ciertos tipos de eventos en tus registros y, por motivos reglamentarios o de seguridad, puedes determinar dónde se almacenan los datos de registro.

Recopila registros de tus aplicaciones y software de terceros

Puedes recopilar registros de las aplicaciones que escribas mediante la instrumentación de tu aplicación con una biblioteca cliente. Sin embargo, no siempre es necesario instrumentar tu aplicación. Por ejemplo, para algunas configuraciones, puedes usar el agente de operaciones a fin de enviar registros que se escribieron en stdout o stderr a tu proyecto de Google Cloud.

También puedes recopilar datos de registro de tus aplicaciones de terceros, como nginx. Para ello, instala el Agente de operaciones y, luego, configúralo para que escriba registros de esa aplicación en tu proyecto de Google Cloud.

Consulta la sección ¿Cuál debes usar: el agente de Logging o la biblioteca cliente? para obtener información que puede ayudarte a decidir qué enfoque se adapta mejor a tus requisitos.

Solucionar problemas y analizar registros

Puedes ver y analizar tus datos de registro con la consola de Google Cloud, ya sea con el Explorador de registros o las páginas de Análisis de registros. Puedes consultar y ver los registros con ambas interfaces. Sin embargo, usan distintos lenguajes de consulta y capacidades diferentes.

Cuando quieras solucionar problemas y analizar el rendimiento de tus servicios y aplicaciones, te recomendamos que uses el Explorador de registros. Esta interfaz está diseñada para permitirte ver entradas de registro individuales y encontrar entradas de registro relacionadas. Por ejemplo, cuando una entrada de registro forma parte de un grupo de errores, esa entrada se anota con un menú de opciones a las que puedes acceder para obtener más información sobre el error.

Si quieres realizar operaciones agregadas en tus registros (por ejemplo, para calcular la latencia promedio de las solicitudes HTTP enviadas a una URL específica en el tiempo), usa la interfaz del Análisis de registros. Con esta interfaz, usas SQL para consultar tus datos de registro y, por lo tanto, puedes aprovechar las capacidades de SQL para comprender tus datos de registro.

Si prefieres consultar tus datos de registro de manera programática, puedes usar la API de Cloud Logging o Google Cloud CLI para exportar datos de registro desde tu proyecto de Google Cloud.

Para obtener más información, visita Descripción general de consultas y registros.

Supervisar tus registros

Puedes configurar Cloud Logging para que te notifique cuando ocurran ciertos tipos de eventos en tus registros. Estas notificaciones pueden enviarse cuando aparece un patrón particular en una entrada de registro o cuando se detecta una tendencia en tus datos de registro. Si deseas ver las tasas de error de los servicios de Google Cloud, puedes ver el panel de Cloud Logging, que está preconfigurado.

Por ejemplo, si deseas recibir una notificación cuando se produce un mensaje en particular, como un evento crítico relacionado con la seguridad, puedes crear una alerta basada en registros. Una alerta basada en registros supervisa tus registros en busca de un patrón específico y, si se encuentra ese patrón, envía una notificación y crea un incidente. Las alertas basadas en registros son adecuadas para eventos importantes pero poco frecuentes, como los siguientes:

  • Deseas recibir una notificación cuando aparezca un evento en un registro de auditoría; por ejemplo, cuando un usuario acceda a la llave de seguridad de una cuenta de servicio.
  • Tu aplicación escribe mensajes de implementación en los registros y deseas recibir una notificación cuando se registra un cambio de implementación.

Como alternativa, es posible que desees supervisar las tendencias o los casos de eventos a lo largo del tiempo. En estas situaciones, puedes crear una métrica basada en registros. Una métrica basada en registros puede contar la cantidad de entradas de registro que coinciden con algún criterio, o puede extraer y organizar información como los tiempos de respuesta en histogramas. También puedes configurar alertas que te notifiquen cuando se producen cambios en el rendimiento, por ejemplo, cuando el tiempo de respuesta aumenta a un nivel inaceptable. Las métricas basadas en registros son adecuadas si deseas llevar a cabo alguna de las siguientes acciones:

  • Registrar las apariciones de un mensaje, como una advertencia o un error, en tus registros y recibir una notificación cuando la cantidad de casos supere un umbral
  • Observa las tendencias en tus datos, como los valores de latencia en tus registros, y recibe una notificación si los valores cambian de una manera inaceptable.
  • Crear gráficos para mostrar los datos numéricos extraídos de tus registros.

Para obtener más información, consulta Supervisa tus registros.

Almacenamiento de registros

No tienes que configurar la ubicación en la que se almacenan los registros. De forma predeterminada, tu proyecto de Google Cloud almacena automáticamente todos los registros que recibe en un bucket de registros de Cloud Logging. Por ejemplo, si tu proyecto de Google Cloud contiene una instancia de Compute Engine, todos los registros que genera se almacenan automáticamente para ti. Sin embargo, si lo necesitas, puedes configurar varios aspectos sobre tu almacenamiento de registros, como qué registros se almacenan, cuáles se descartan y dónde se almacenan.

Puedes enrutar o reenviar entradas de registro a los siguientes destinos, que pueden estar en el mismo proyecto de Google Cloud o en uno diferente:

  • Buckets de registros de Cloud Logging: Proporcionan almacenamiento en Cloud Logging. Un bucket de registros puede almacenar registros que reciben varios proyectos de Google Cloud. Puedes combinar tus datos de Cloud Logging con otros si actualizas un bucket de registros para usar el Análisis de registros y, luego, crees un conjunto de datos de BigQuery vinculado. Para obtener información sobre cómo ver los registros almacenados en los buckets de registros, consulta Descripción general de la consulta y visualización de los registros y Visualiza los registros enrutados a los buckets de Cloud Logging.
  • Proyectos de Google Cloud: Enruta las entradas de registro a un proyecto de Google Cloud diferente. Cuando enrutas los registros a un proyecto de Google Cloud diferente, el enrutador de registros del proyecto de destino recibe los registros y los procesa. Los receptores en el proyecto de destino determinan cómo se enrutan las entradas de registro recibidas. Error Reporting no puede analizar las entradas de registro que los buckets de registros enrutan a un proyecto de Google Cloud diferente.
  • Temas de Pub/Sub: Proporciona compatibilidad con integraciones de terceros, como Splunk. Las entradas de registro se formatean en JSON y, luego, se enrutan a un tema de Pub/Sub. Para obtener información sobre cómo ver los registros enrutados a Pub/Sub, consulta Visualiza los registros enrutados a Pub/Sub.
  • Conjuntos de datos de BigQuery: proporciona almacenamiento de entradas de registro en conjuntos de datos de BigQuery. Puedes usar capacidades de análisis de macrodatos en los registros almacenados. Para combinar tus datos de Cloud Logging con otras fuentes de datos, te recomendamos que actualices tus buckets de registros para usar el Análisis de registros y, luego, crees un conjunto de datos de BigQuery vinculado. Para obtener información sobre cómo ver los registros enrutados a BigQuery, consulta Visualiza los registros enrutados a BigQuery.
  • Buckets de Cloud Storage: Ofrecen almacenamiento de datos de registro en Cloud Storage. Las entradas de registro se almacenan como archivos JSON. Para obtener información sobre cómo ver los registros enrutados a Cloud Storage, consulta Visualiza los registros enrutados a Cloud Storage.

Para obtener más información, incluida la compatibilidad con la regionalidad de los datos, consulta Descripción general del enrutamiento y el almacenamiento.

Categorías de registros

Las categorías de registro están diseñadas para ayudar a describir la información de registro disponible para ti; las categorías no son mutuamente excluyentes:

  • Los registros de plataforma son registros que escriben tus servicios de Google Cloud. Estos registros pueden ayudarte a depurar y solucionar problemas, además de ayudarte a comprender mejor los servicios de Google Cloud que usas. Por ejemplo, los registros de flujo de VPC registran una muestra de flujos de red enviados y recibidos por instancias de VM.

  • Los registros de componentes son similares a los registros de plataforma, pero los generan componentes de software proporcionados por Google que se ejecutan en tus sistemas. Por ejemplo, GKE proporciona componentes de software que los usuarios pueden ejecutar en su VM o en su centro de datos. Los registros se generan a partir de las instancias de GKE del usuario y se envían al proyecto de Google Cloud de un usuario. GKE usa los registros o sus metadatos para brindar asistencia al usuario.

  • Los registros de seguridad te ayudan a responder las preguntas “¿Quién hizo qué, dónde y cuándo?”:

    • Los registros de auditoría de Cloud proporcionan información sobre actividades administrativas y accesos a tus recursos de Google Cloud. Habilitar los registros de auditoría ayuda a las entidades de seguridad, auditoría y cumplimiento a supervisar los datos y sistemas de Google Cloud para detectar posibles vulnerabilidades o uso inadecuado de los datos externos. Para obtener una lista de los servicios compatibles con Google Cloud, consulta Servicios de Google con registros de auditoría.

    • La Transparencia de acceso te proporciona registros de las acciones que lleva a cabo el personal de Google cuando accede a tu contenido de Google Cloud. Los registros de Transparencia de acceso pueden ayudarte a hacer un seguimiento del cumplimiento de los requisitos legales y reglamentarios de tu organización. Para obtener una lista de los servicios compatibles con Google Cloud, consulta Servicios de Google con registros de Transparencia de acceso.

  • Los registros escritos por usuarios los escriben las aplicaciones y los servicios personalizados. Por lo general, estos registros se escriben en Cloud Logging mediante uno de los siguientes métodos:

  • Los registros de múltiples nubes y los registros de nubes híbridas hacen referencia a los registros de otros proveedores de servicios en la nube, como Microsoft Azure, y a los registros de la infraestructura local.

Modelo de datos para registros

El modelo de datos que usa Cloud Logging para organizar tus datos de registro determina las dimensiones sobre las que puedes consultarlos. Por ejemplo, debido a que un registro es una colección con nombre de entradas individuales, puedes consultar tus datos por el nombre del registro. Del mismo modo, debido a que cada registro se compone de entradas de registro que tienen el formato de objetos LogEntry, puedes escribir consultas que recuperen solo esas entradas de registro en las que el valor de un campo LogEntry coincida con algunos criterios. Por ejemplo, solo puedes mostrar esas entradas de registro cuyo campo severity tiene el valor de ERROR.

Cada entrada de registro registra el estado o describe un evento específico, como la creación de una instancia de VM, y mínimamente consta de lo siguiente:

  • Una marca de tiempo que indica cuándo ocurrió el evento o cuándo Cloud Logging lo recibió.
  • Información sobre la fuente de la entrada de registro. Esta fuente se denomina recurso supervisado. Algunos ejemplos de recursos supervisados incluyen instancias de VM de Compute Engine individuales y contenedores de Google Kubernetes Engine. Para obtener una lista completa de los tipos de recurso supervisado, consulta Recursos y servicios supervisados.
  • Una carga útil, también conocida como mensaje, que se proporciona como datos textuales no estructurados o como datos textuales estructurados en formato JSON
  • El nombre del registro al que pertenece. El nombre de un registro incluye la ruta de acceso completa del recurso al que pertenecen las entradas de registro, seguida de un identificador. Los siguientes son ejemplos de nombres de registro:

    • projects/my-project/logs/stderr
    • projects/my-project/logs/stdout
    • projects/my-project/compute.googleapis.com/activity

Control de acceso

Los roles de Identity and Access Management controlan la capacidad de una principal para acceder a los registros. Puedes otorgar roles predefinidos a principales o crear roles personalizados. Para obtener más información sobre los permisos obligatorios, consulta Control de acceso.

Retención

Las entradas de registro se almacenan en buckets de registros durante un período específico y, luego, se borran. Para obtener más información, consulta la Descripción general del enrutamiento y el almacenamiento: retención.

Controles de precios y costos

Para obtener información sobre los precios, consulta Precios de Cloud Logging.

Si quieres ver estrategias para reducir los costos de Logging, consulta Controles de costos de Logging.