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 que admite el almacenamiento, la búsqueda, el análisis y la supervisión. Cloud Logging recopila los registros de los recursos de Google Cloud automáticamente. También puedes recopilar registros de tus aplicaciones, recursos locales y recursos de otros proveedores de servicios en la nube. También puedes configurar políticas de alertas para que Cloud Monitoring te notifique si ciertos tipos de eventos se informan en tus registros. Por motivos regulatorios o de seguridad, puedes determinar dónde se almacenan los datos de registros.

Recopila registros de tus aplicaciones y software de terceros

Puedes recopilar registros de las aplicaciones que escribes si instrumentas tu aplicación con una biblioteca cliente. Sin embargo, no siempre es necesario instrumentar tu aplicación. Por ejemplo, para algunas opciones de configuración, puedes usar el Agente de operaciones y enviar los 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 escribir registros de esa aplicación en tu proyecto de Google Cloud.

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

Soluciona problemas y analiza los registros

Puedes ver y analizar tus datos de registro mediante 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 registros con ambas interfaces. Sin embargo, usan diferentes lenguajes de consulta y tienen 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 es parte de un grupo de errores, esa entrada se anota con un menú de opciones que te permiten acceder a más información sobre el error.

Cuando quieras realizar operaciones agregadas en tus registros, por ejemplo, para calcular la latencia promedio de las solicitudes HTTP emitidas a una URL específica a lo largo del tiempo, usa la interfaz del Análisis de registros. Con esta interfaz, utilizas SQL para consultar tus datos de registro y, por lo tanto, puedes usar las capacidades de SQL para ayudarte a comprender los datos de registro.

Si prefieres consultar los 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, consulta Descripción general de los registros de consultas y vistas.

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 te interesa ver las tasas de error de tus servicios de Google Cloud, puedes consultar el panel de Cloud Logging, que está preconfigurado.

Por ejemplo, si deseas recibir una notificación cuando ocurra un mensaje en particular, como un evento crítico relacionado con la seguridad, puedes crear una política de alertas basada en registros. Una política de alertas basada en registros supervisa tus registros en busca de un patrón específico. Si se encuentra ese patrón, Monitoring envía una notificación y crea un incidente. Las políticas de alertas basadas en registros son útiles 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 accede 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, puedes supervisar las tendencias o los casos de eventos a lo largo del tiempo. Para 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 políticas de alertas que te notifiquen cuando se producen cambios de rendimiento, por ejemplo, el tiempo de respuesta aumenta a un nivel inaceptable. Las métricas basadas en registros son adecuadas cuando deseas realizar cualquiera de las siguientes acciones:

  • Cuenta los casos de un mensaje, como una advertencia o un error, en tus registros y recibe una notificación cuando la cantidad de casos supera 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 es necesario que configures la ubicación en la que se almacenan los registros. De forma predeterminada, el proyecto de Google Cloud almacena de forma automática 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 de forma automática. Sin embargo, si lo necesitas, puedes configurar varios aspectos sobre el 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:

  • Bucket de Cloud Logging: Proporciona almacenamiento en Cloud Logging. Un bucket de registros puede almacenar entradas de registro que reciben varios proyectos de Google Cloud. Si deseas combinar tus datos de Cloud Logging con otros datos, actualiza un bucket de registros para usar Análisis de registros y, luego, crea un conjunto de datos de BigQuery vinculado. Si quieres obtener información para ver las entradas de registro almacenadas en buckets de registros, consulta Descripción general de consulta y visualización de registros y Visualiza los registros enrutados a buckets de Cloud Logging.
  • Conjunto 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 las entradas de registro almacenadas. Para combinar los datos de Cloud Logging con otras fuentes de datos, te recomendamos que actualices los 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 las entradas de registro enrutadas a BigQuery, consulta Visualiza los registros enrutados a BigQuery.
  • Bucket de Cloud Storage: Proporciona almacenamiento de entradas de registro en Cloud Storage. Las entradas de registro se almacenan como archivos JSON. Para obtener información sobre cómo ver las entradas de registro enrutadas a Cloud Storage, consulta Visualiza los registros enrutados a Cloud Storage.
  • Tema de Pub/Sub: Proporciona compatibilidad con integraciones de terceros. 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 las entradas de registro enrutadas a Pub/Sub, consulta Visualiza los registros enrutados a Pub/Sub.
  • Splunk: Proporciona compatibilidad con Splunk. Debes enrutar tus entradas de registro a un tema de Pub/Sub y, luego, suscribirte a ese tema con Splunk.
  • Proyecto de Google Cloud: Enruta las entradas de registro a un proyecto de Google Cloud diferente. Cuando enrutas entradas de registro a un proyecto de Google Cloud diferente, el Enrutador de registros del proyecto de destino recibe las entradas de registro y las procesa. Los receptores en el proyecto de destino determinan cómo se enrutan las entradas de registro recibidas. Error Reporting puede analizar entradas de registro cuando el proyecto de destino las enruta a un bucket de registros que pertenece al proyecto de destino.
  • Otros recursos: Enruta tus entradas de registro a un destino compatible que se encuentre en un proyecto diferente. Para obtener información sobre las rutas que se deben usar, consulta Formatos de las rutas de destino.

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

Categorías de registros

Las categorías de registro están destinadas a ayudarte 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 siguientes preguntas: "¿Quién hizo qué, dónde y cuándo?":

    • Los registros de auditoría de Cloud proporcionan información sobre las actividades administrativas y los 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 en busca de posibles vulnerabilidades o el uso inadecuado de 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 realiza 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 regulatorios 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 se refieren 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 consultar esos datos. 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. De manera similar, como cada registro está compuesto por entradas de registro con formato de objetos LogEntry, puedes escribir consultas que recuperen solo las entradas de registro en las que el valor de un campo LogEntry coincida con algunos criterios. Por ejemplo, solo puedes mostrar las 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 consta, como mínimo, de lo siguiente:

  • Una marca de tiempo que indica cuándo ocurrió el evento o cuándo Cloud Logging lo recibió.
  • Información sobre el origen de la entrada de registro. Esta fuente se denomina recurso supervisado. Algunos ejemplos de recursos supervisados son las instancias de VM de Compute Engine y los 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, se proporciona como datos de texto no estructurados o como datos de texto estructurados en formato JSON.
  • El nombre del registro al que pertenece. El nombre de un registro incluye la ruta 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 de 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 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 deseas ver estrategias para reducir los costos de Logging, consulta Controles de costos de Logging.