Unidad 6 / 11

Monitoreo y observabilidad: reglas de métricas, registros, rastreos y alarmas

Ganancias:

  • Capacidad para comprender los tres pilares de la observabilidad (métrica, registro, seguimiento) y las cuatro señales doradas y hacer que la inteligencia artificial genere consultas PromQL, reglas de alarma y paneles.
  • Capacidad para prevenir la fatiga de las alarmas manteniendo las alarmas orientadas a la acción y con la urgencia adecuada y probando umbrales con los datos históricos de su propio sistema.
  • Capacidad para evitar la privacidad y la filtración de secretos enmascarando áreas sensibles antes de entregar los registros a la inteligencia artificial.

Si bien un sistema puede parecer estar funcionando, puede estar muriendo por dentro: la memoria se llena lentamente, los tiempos de respuesta aumentan y la tasa de errores aumenta. La única forma de darse cuenta de esto es monitorear constantemente el sistema. Un concepto más avanzado es la observabilidad: la capacidad de comprender lo que sucede dentro del sistema observando sus señales externas. Hay tres pilares de observabilidad y el profesional de DevOps utiliza los tres:

  • Métrica: valores numéricos medidos a lo largo del tiempo: uso de CPU, número de solicitudes, tiempo de respuesta, tasa de error. "¿Cuánto cuesta?" responde la pregunta.
  • Registro: registros de eventos de texto producidos por el sistema: "usuario que inició sesión", "se perdió la conexión a la base de datos". "¿Qué pasó exactamente?" responde la pregunta.
  • Seguimiento: la ruta que sigue una solicitud mientras pasa de un servicio a otro dentro del sistema y la duración de cada paso. "¿Dónde está la lentitud?" responde la pregunta.

Herramientas más comunes: Prometheus para métricas, Grafana para visualización, Loki/ELK para registros, Jaeger/OpenTelemetry para seguimiento. La IA es muy hábil para escribir lenguajes de consulta (especialmente PromQL de Prometheus), reglas de alarma y configuraciones de paneles para estas herramientas. También es donde la IA es más fuerte: resumir grandes cantidades de registros y métricas y señalar anomalías.

Aclaremos la diferencia entre monitoreo y observabilidad en una oración: monitorear consiste en hacer preguntas que ya conoce (“¿La CPU ha superado el 90 %?”); La observabilidad es poder hacer preguntas que aún no sabía ("¿por qué esta extraña lentitud solo le ocurre a un determinado cliente en un momento determinado?"). Los sistemas modernos son tan complejos que no se pueden predecir todos los modos de falla; Por lo tanto, la capacidad de recopilar métricas, registros y seguimientos enriquecidos y luego consultarlos en profundidad (es decir, la observabilidad) se vuelve fundamental. Aquí es donde la IA entra en juego al responder la "pregunta previamente desconocida": escanea rápidamente los datos sin procesar que tienes, sugiere patrones y anomalías, y llegas a la causa raíz verificando estas pistas.

Paso a paso: ¿qué y cómo monitorear?

  1. Elija las métricas correctas. En la industria se toman como base las "cuatro señales de oro": latencia, tráfico, errores, saturación: qué tan lleno está el recurso. Estos resumen la salud de la mayoría de los servicios.
  2. Recoger métricas. Deje que la aplicación presente un punto final que Prometheus pueda leer.
  3. Configurar paneles de control. Visualice estas métricas en Grafana.
  4. Escribe reglas de alarma. ¿A quién se le avisará cuando se supere un umbral y cómo?
  5. Centralizar registros. Haga que todos los registros de servicios se puedan buscar en un solo lugar.
  6. Reducir el ruido. Demasiada alarma crea “fatiga de alerta”; La alarma importante desaparece.
Consejo: una buena alarma cumple dos cosas: es procesable y tiene la urgencia adecuada. Una alarma que despierta a alguien a las 3 de la madrugada debe ser algo que realmente requiera intervención nocturna. No despiertes a nadie por algo que no requiere acción por sí solo, como "CPU 70%"; exponerlo en el tablero.

¿Cómo escribir una regla de alarma?

Una alerta consta de tres componentes: condición (qué métrica supera qué umbral y durante cuánto tiempo), duración (“durante 5 minutos” para evitar desencadenar fluctuaciones momentáneas) e importancia/acción (para quién, a través de qué canal). La IA establece magistralmente estos tres en el contexto adecuado. Por ejemplo, traducir una regla como "alarma crítica si la tasa de error excede el 5% durante 5 minutos" a PromQL es una tarea de una fracción de segundo para la IA, pero usted decide si el umbral es adecuado para su sistema.

Precaución: Los umbrales de alarma sugeridos por la IA son suposiciones generales. La carga normal, la tolerancia y el impacto del trabajo de su sistema son diferentes. Antes de establecer un umbral directamente en la producción, observa sus datos históricos y pregunta "¿cuántas veces se ha activado este umbral en el pasado, cuántas de ellas fueron problemas reales?" Responde la pregunta.

Privacidad de registros: advertencia crítica

Los registros son la fuente de fugas que con mayor frecuencia se pasa por alto. Una línea de registro puede contener accidentalmente una contraseña, un número de tarjeta de crédito o datos personales (según KVKK/GDPR). Al pegar registros en una IA para su análisis:

  1. Enmascare las zonas sensibles. Reemplace valores como token, contraseña, correo electrónico, número de identificación con <CENSURADO>.
  2. Dé ejemplos, no todos. En lugar de un millón de líneas, a menudo bastan unos cientos de líneas representativas.
  3. Elija un vehículo aprobado por la institución. Especialmente para los registros de producción, utilice una herramienta cuyos datos no vayan a la capacitación.

Cuatro señales doradas y tablas de alarma.

señal

medido por

Ejemplo de umbral de alarma

urgencia

latencia

tiempo de respuesta

p95 > 800ms, 5min

alto

trafico

Solicitud/seg

Aumento/disminución repentina del 300%

medio

error

Tasa de solicitudes fallidas

> 5%, 5 minutos

crítico

Saturación

ocupación de recursos

Disco > 85%

alto

tres mini casos

Caso 1: 400 líneas de registro resumidas en 30 segundos. Un servicio se había ralentizado. El ingeniero entregó las 400 líneas de registro enmascaradas a la IA y dijo: "Resuma los patrones de error recurrentes y la intensidad del tiempo". La IA demostró que una determinada llamada API externa se agota cada 30 segundos. Causa raíz encontrada en 30 segundos; Escanear registros manualmente llevaría media hora.

Caso 2: fatiga de alarma resuelta. Un equipo recibía 200 alarmas por día y las ignoraba todas, hasta que también se pasó por alto una alarma de apagón real. Déle a la IA todas las reglas de alerta y pregúntele "¿cuáles no son procesables y cuáles se pueden combinar?". preguntaron. El número de alarmas disminuyó a 12 por día; Ahora todas las alarmas se tomaban en serio.

Caso 3: umbral incorrecto detectado tempranamente. YZ sugirió "Advertir cuando esté lleno al 95%" para el disco. El ingeniero miró datos históricos: una vez que el disco alcanzó el 95% había poco tiempo para intervenir. Bajó el umbral al 80% y agregó una segunda alarma basada en la "tasa de crecimiento". La verificación evitó un apagón real a medianoche.

Cuatro plantillas copiables

1) Resumen de registros (enmascarado):

Analice el ejemplo de registro a continuación (enmascaré los valores confidenciales con <CENSURADO>). Dame: (1) patrones de error recurrentes, (2) concentración a lo largo del tiempo, (3) causa raíz más probable y (4) 3 métricas que examinaré para verificar. Registro: [LÍNEAS]

2) Generación de reglas de alarma:

Escriba una regla de alarma para Prometheus/Alertmanager: genere una alarma de [SEVERIDAD] si [UMBRAL] excede [MÉTRICA] [DURACIÓN]. La regla debe estar orientada a la acción e incluir una anotación y un campo de vínculo al runbook. Explique PromQL y escriba por qué este umbral es razonable.

3) Escribir/declarar una consulta PromQL:

Escriba una consulta PromQL que mida: [EX. 5xxporcentaje de tasa de error en los últimos 5 minutos]. Explique la consulta paso a paso. Entonces dime cuál debería ser el rango saludable para este valor.

4) Diseño del tablero:

Diseñar un panel de Grafana para [SERVICIO]: ¿con qué paneles debo mostrar las cuatro señales doradas (latencia, tráfico, error, saturación)? Sugiera métrica, tipo de visualización y umbral razonable para cada panel. Propósito: ver el estado de salud de un guardia en 10 segundos.

Aviso débil / Aviso fuerte

Débil: "¿Qué hay en ese registro?" (seguido de 5000 líneas de registro sin procesar, tokens en él)

Resultado: filtras secretos y la IA te ofrece un resumen superficial y no específico.

Fuerte: "Encuentre patrones de errores recurrentes e intensidad de tiempo en el siguiente ejemplo de registro enmascarado de 300 líneas; dígame la causa raíz más probable y las métricas que miraré para verificar. Hice los tokens <CENSURADOS>".

Diferencia: el segundo mensaje ofrece un ejemplo enmascarado y enfocado, solicitando un resultado de análisis claro; Es seguro y útil.

Errores comunes

  • Pegar el registro en AI sin enmascararlo. La filtración de datos personales/secretos más común.
  • Poner alarmas para todo. La fatiga de la alarma entierra la alarma real.
  • Alarma no accionable. Es un ruido de advertencia sobre el que nadie puede hacer nada.
  • Aceptar el umbral de la IA sin lugar a dudas. El umbral debe establecerse según el historial de su sistema.
  • Solo mirando la métrica. Sin registro y seguimiento, la causa raíz no se puede encontrar la mayor parte del tiempo.
  • No configurar una hora de alarma (para). Las fluctuaciones momentáneas producen falsas alarmas.

En resumen

Observabilidad; Es la capacidad de comprender el interior del sistema desde el exterior con métricas, registros y seguimientos. Las cuatro señales de oro (latencia, tráfico, error, saturación) resumen la salud de la mayoría de los servicios. La IA es muy poderosa para escribir consultas PromQL, reglas de alarma y paneles de control, y para resumir grandes fragmentos de registros y encontrar anomalías. Pero es su responsabilidad verificar los umbrales de alarma con el historial de su propio sistema, mantener las alarmas orientadas a la acción y nunca compartir registros sin enmascararlos.

Tarea de aplicación

Para un servicio (o un servicio de muestra): (1) Generar una regla de alarma para la tasa de error con la plantilla "Generación de reglas de alarma" y establecer el umbral sugerido en "¿cuántas veces se ha activado en el pasado?" Pruébelo con la pregunta; (2) enmascare una muestra de registro que tenga y analícela con la plantilla "Resumen de registros"; (3) tenga en cuenta qué métrica observará para confirmar la causa raíz más probable.

lista de verificación

  • [] Elegí las métricas a seguir en función de cuatro señales doradas.
  • [] Oculté todos los registros que le di a la IA en términos de áreas sensibles.
  • [ ] Verifiqué que cada alarma estuviera orientada a la acción y tuviera la urgencia correcta.
  • [] Probé los umbrales de alarma con los datos históricos de mi sistema.
  • [] Filtré las fluctuaciones instantáneas agregando for (duración) a las alarmas.
  • [] Utilicé métrica + registro + seguimiento juntos para la causa raíz.