Prácticas recomendadas para la gestión de logs

Información general

Datadog Log Management recopila, procesa, archiva, explora y monitoriza tus logs para que puedas visualizar los problemas de tu sistema. Sin embargo, puede ser difícil obtener el nivel adecuado de visibilidad de tus logs y el rendimiento de los logs puede variar mucho, lo que crea un uso inesperado de los recursos.

Por tal motivo, esta guía te mostrará varias prácticas recomendadas para la gestión de logs y configuraciones de cuenta que te brindan flexibilidad para la gestión, la atribución de uso y el control del presupuesto. Más concretamente, verás cómo puedes:

Esta guía también explica cómo puedes monitorizar el uso de logs:

Si quieres transformar tus logs u ocultar datos confidenciales en tus logs antes de que abandonen tu entorno, consulta cómo puedes agregar, procesar y transformar tus datos de logs con pipelines de observabilidad.

Configuración de la cuenta de logs

Configurar varios índices para la segmentación de logs

Configura varios índices si quieres segmentar tus logs para diferentes periodos de conservación o cuotas diarias, monitorización del uso y facturación.

Por ejemplo, si tienes logs que sólo deben conservarse durante 7 días, mientras que otros deben conservarse durante 30 días, utiliza varios índices para separar los logs según los dos periodos de conservación.

Para configurar varios índices:

  1. Ve a Índices de logs.
  2. Haz clic en New Index (Nuevo índice) o en Add a new index (Añadir un nuevo índice).
  3. Introduce un nombre para el índice.
  4. Introduce la consulta de búsqueda para filtrar los logs que quieres tener en este índice.
  5. Establece la cuota diaria para limitar el número de logs que se almacenan en un índice por día.
  6. Establece el periodo durante el cual queres conservar estos logs.
  7. Haz clic en Save (Guardar).

Establecer cuotas diarias en tus índices puede ayudar a evitar excesos en la facturación cuando se añaden nuevos orígenes de logs o si un desarrollador cambia involuntariamente los niveles de gestión de logs al modo de depuración. Consulta Alerta de índices que alcanzan su cuota diaria para conocer cómo configurar una monitorización que avise cuando se alcanza un porcentaje de la cuota diaria dentro de las últimas 24 horas.

Crear varios archivos para el almacenamiento a largo plazo

Si quieres almacenar tus logs durante periodos de tiempo más prolongados, configura Archivos de logs para enviar tus logs a un sistema optimizado para el almacenamiento, como Amazon S3, Azure Storage o Google Cloud Storage. Cuando quieras utilizar Datadog para analizar esos logs, utiliza Log RehydrationTM para recuperar esos logs de nuevo en Datadog. Con varios archivos, puedes segmentar logs por motivos de cumplimiento y mantener un control sobre los costes de recuperación.

Configurar el tamaño máximo de análisis para gestionar recuperaciones costosas

Establece un límite para el volumen de logs que pueden recuperarse al mismo tiempo. Al configurar un archivo, puedes definir el volumen máximo de datos de logs que se pueden analizar para su recuperación. Para obtener más información, consulta Definir el tamaño máximo de análisis.

Configurar el control de acceso basado en roles (RBAC) para roles personalizados

Existen tres roles predeterminados de Datadog: Administrador, Estándar y Solo lectura. También puedes crear roles personalizados con conjuntos de permisos únicos. Por ejemplo, puedes crear un rol que restrinja la modificación de las políticas de conservación de índices para los usuarios, a fin de evitar picos de costes no deseados. Del mismo modo, puedes restringir quién puede modificar las configuraciones de análisis de logs para evitar cambios no deseados en formatos y estructuras bien definidos de logs.

Para configurar roles personalizados con permisos:

  1. Inicia sesión en Datadog como administrador.
  2. Ve a Organization Settings > Roles (Parámetros de organización > Roles).
  3. Para habilitar los roles personalizados, haz clic en el engranaje de la parte superior izquierda y, a continuación, en Enable (Habilitar).
  4. Una vez habilitados, haz clic en New Role (Nuevo rol).
  5. Introduce un nombre para el nuevo rol.
  6. Selecciona los permisos para el rol. Esto te permite restringir el acceso a determinadas acciones, como la recuperación de logs y la creación de métricas basadas en logs. Para obtener más información, consulta los permisos de Log Management.
  7. Haz clic en Save (Guardar).

Consulta Cómo configurar el control de acceso basado en roles (RBAC) para logs para obtener una guía paso a paso sobre cómo configurar y asignar un rol con permisos específicos para un ejemplo de caso de uso.

Monitorizar el uso de logs

Puedes monitorizar el uso de logs configurando lo siguiente:

Alertas para picos inesperados de tráfico de logs

Métricas de uso de logs

Por defecto, las métricas de uso de logs están disponibles para realizar un seguimiento del número de logs consumidos, bytes consumidos y logs indexados. Estas métricas son gratuitas y se conservan durante 15 meses:

  • datadog.estimated_usage.logs.ingested_bytes
  • datadog.estimated_usage.logs.ingested_events

Consulta Monitores para la detección de anomalías para conocer cómo puedes crear monitores de anomalías utilizando métricas de uso.

Nota: Datadog recomienda establecer la unidad en byte para datadog.estimated_usage.logs.ingested_bytes en la página de resumen de métricas:

La página de resumen de métricas muestra el panel lateral de uso estimado de logs y bytes consumidos de Datadog

Monitores de detección de anomalías

Crea un monitor para la detección de anomalías a fin de alertar sobre cualquier pico inesperado de indexación de logs:

  1. Ve a Monitors > New Monitor (Monitores > Nuevo monitor) y selecciona Anomaly (Anomalía).
  2. En la sección Define the metric (Definir la métrica), selecciona la métrica datadog.estimated_usage.logs.ingested_events.
  3. En el campo from (de), añade la etiqueta (tag) datadog_is_excluded:false para monitorizar los logs indexados y no los consumidos.
  4. En el campo sum by (sumar por), añade las etiquetas (tags) service y datadog_index para recibir una notificación si un servicio específico se dispara o deja de enviar logs en cualquier índice.
  5. Configura las condiciones de alerta para que coincidan con tu caso de uso. Por ejemplo, configura el monitor para que alerte si los valores evaluados están fuera de un rango esperado.
  6. Añade un título para la notificación y un mensaje con instrucciones para actuar. Por ejemplo, esta es una notificación con enlaces contextuales:
    An unexpected amount of logs has been indexed in the index: {{datadog_index.name}}
    
    1. [Check Log patterns for this service](https://app.datadoghq.com/logs/patterns?from_ts=1582549794112&live=true&to_ts=1582550694112&query=service%3A{{service.name}})
    2. [Add an exclusion filter on the noisy pattern](https://app.datadoghq.com/logs/pipelines/indexes)
    
  7. Haz clic en Create (Crear).

Alerta cuando un volumen de logs indexados supera un umbral especificado

Configura un monitor para alertar si un volumen de logs indexados en cualquier contexto de tu infraestructura (por ejemplo, service, availability-zone, etc.) está aumentando inesperadamente.

  1. Ve al Explorador de logs.
  2. Introduce una consulta de búsqueda que incluya el nombre del índice (por ejemplo, index:main) para capturar el volumen de logs que deseas monitorizar.
  3. Haz clic en la flecha hacia abajo situada junto a Download as CSV (Descargar como CSV) y selecciona Create monitor (Crear monitor).
  4. Añade etiquetas (tags) (por ejemplo, servicios host, , etc.) al campo group by (agrupar por).
  5. Completa Alert threshold (Umbral de alerta) para tu caso de uso. Opcionalmente, completa Warning threshold (Umbral de alerta).
  6. Añade un título para la notificación, por ejemplo:
    Unexpected spike on indexed logs for service {{service.name}}
    
  7. Añade un mensaje, por ejemplo:
    The volume on this service exceeded the threshold. Define an additional exclusion filter or increase the sampling rate to reduce the volume.
    
  8. Haz clic en Create (Crear).

Alerta sobre el volumen de logs indexados desde principios de mes

Aprovecha la métrica datadog.estimated_usage.logs.ingested_events filtrada en datadog_is_excluded:false para contar sólo los logs indexados y el intervalo acumulativo del monitor de métricas para monitorizar el recuento desde principios de mes.

Configurar un monitor para alertar del recuento de logs indexados desde principios de mes

Alertas de índices que alcanzan su cuota diaria

Establece una cuota diaria en los índices para evitar indexar más de un número determinado de logs al día. Si un índice tiene una cuota diaria, Datadog recomienda que se configure el monitor que notifica sobre el volumen de ese índice para alertar cuando se alcance el 80% de esta cuota en las últimas 24 horas.

Se genera un evento cuando se alcanza la cuota diaria. Por defecto, estos eventos tienen la etiqueta (tag) datadog_index con el nombre del índice. Por lo tanto, cuando se genere este evento, puedes crear una faceta en la etiqueta (tag) datadog_index, de modo que puedas utilizar datadog_index en el paso group by para configurar un monitor de alerta múltiple.

Para configurar un monitor que alerte cuando se alcanza la cuota diaria para un índice:

  1. Ve a Monitors > New Monitor (Monitores > Nuevo monitor) y selecciona Event (Evento).
  2. Introduce source:datadog "daily quota reached" en la sección Define the search query (Definir la consulta de búsqueda).
  3. Añade datadog_index al campo group by (agrupar por). Se actualiza automáticamente a datadog_index(datadog_index). La etiqueta (tag) datadog_index(datadog_index) sólo está disponible cuando ya se ha generado un evento.
  4. En la sección Set alert conditions (Establecer condiciones de alerta), selecciona above or equal to e introduce 1 para Alert threshold (Umbral de alerta).
  5. Añade un título de notificación y un mensaje en la sección Configure notifications and automations (Configurar notificaciones y automatizaciones). El botón Multi Alert (Alerta múltiple) se selecciona automáticamente porque el monitor está agrupado por datadog_index(datadog_index).
  6. Haz clic en Save (Guardar).

Este es un ejemplo del aspecto de la notificación en Slack:

Una notificación de Slack sobre la cuota diaria alcanzada en datadog_index:retention-7

Revisar el dashboard de uso estimado

Una vez que empieces a consumir logs, se instalará automáticamente en tu cuenta un dashboard listo para utilizar que resume las métricas del uso de logs.

El dashboard de uso estimado de logs que muestra el desglose de logs indexados y consumidos en diferentes widgets

Nota: Las métricas utilizadas en este dashboard son estimaciones y pueden diferir de las cifras de facturación oficiales.

Para encontrar este dashboard, ve a Dashboards > Dashboards List (Dashboards > Listas de dashboards) y busca Log Management - Estimated Usage (Log Management - Uso estimado).

Establecer filtros de exclusión en logs de gran volumen

Cuando haya alertas de los monitores de uso, puedes configurar filtros de exclusión y aumentar la frecuencia de muestreo para reducir el volumen. Consulta Filtros de exclusión para saber cómo configurarlos. También puedes utilizar Patrones de logs para agrupar e identificar logs de gran volumen. A continuación, en el panel lateral del patrón de logs, haz clic en Add Exclusion Filter (Añadir filtro de exclusión) para añadir un filtro que impida la indexación de esos logs.

La página del explorador de logs muestra los detalles del panel lateral de un patrón con el botón para añadir filtros de exclusión en la parte superior

Incluso si utilizas filtros de exclusión, puedes visualizar tendencias y anomalías sobre todos tus datos de logs, utilizando las métricas basadas en logs. Para obtener más información, consulta Generar métricas a partir de logs consumidos.

Habilitar Sensitive Data Scanner para la detección de información de identificación personal (PII)

Si quieres evitar fugas de datos y limitar los riesgos de incumplimiento, utiliza Sensitive Data Scanner para identificar, etiquetar y, opcionalmente, ocultar o aplicar hash a los datos confidenciales. Por ejemplo, puedes buscar números de tarjetas de crédito, números de cuentas bancarias y claves de API en tus logs, tramos (spans) APM y eventos RUM. Consulta Sensitive Data Scanner para conocer cómo configurar las reglas de escaneo a fin de determinar qué datos se analizarán.

Nota: Sensitive Data Scanner es un producto que se factura por separado.

Habilitar Audit Trail para ver las actividades de los usuarios

Si quieres ver las actividades de los usuarios, como quién ha cambiado las opciones de conservación de un índice o quién ha modificado un filtro de exclusión, habilita Audit Trail para ver estos eventos. Consulta Eventos de Audit Trail para obtener una lista de los eventos específicos de plataformas y productos que están disponibles. Para habilitar y configurar Audit Trail, sigue los pasos que se indican en la documentación de Audit Trail.

Nota: Audit Trail es un producto que se factura por separado.

Leer más