Atlasingeniería

Incidentes en un servidor propioFallas que no avisanTema 2

Alertas que se leen: qué avisar y qué ignorar

Una alerta que suena todos los días deja de ser una alerta en una semana. Cómo se elige qué avisar, por qué canal y con qué contenido para que el aviso siga sirviendo dentro de seis meses.

El primer sistema de alertas que uno arma avisa de todo: uso de CPU, memoria, cada error, cada reinicio. A la semana llegan veinte mensajes por día y uno deja de mirarlos.

Ahí el sistema está peor que antes: hay una falsa sensación de cobertura y las alertas que importan llegan mezcladas con las que no.

El criterio para decidir qué avisar

La pregunta que filtra casi todo es una: ¿hay algo que hacer al recibirla, ahora? Si la respuesta es no, eso no es una alerta: es una métrica que se mira cuando uno quiere.

Señal¿Alerta?Por qué
Un sitio no respondeAfecta al usuario y hay algo que hacer
El disco pasó el 85%Sí, con margenTodavía no molesta, y hay tiempo de actuar antes de que sí
Pico de CPU de dos minutosNoSe resolvió solo y no hay acción posible
Un error aislado en una aplicaciónNoVa al seguimiento de errores, no a un canal de urgencia
Un respaldo que no corrióNo se nota hasta que se necesita, que es tarde
Lo que no tiene acción asociada va a un tablero o a un resumen, no a un canal que interrumpe.

De ahí sale una regla que ordena todo: alertar por síntoma, no por causa. “El sitio no responde” es útil aunque no se sepa por qué; “la memoria está al 90%” puede no significar nada si el sistema sigue sirviendo.

Qué tiene que decir

Una alerta que dice “error en el servidor” obliga a entrar a averiguar todo desde cero, y eso se paga en minutos justo cuando importan.

Cuatro elementos

  1. Qué: el servicio y el síntoma concreto.
  2. Desde cuándo, para distinguir un parpadeo de algo sostenido.
  3. El dato que permite decidir: el código de respuesta, el porcentaje, el mensaje.
  4. Qué mirar primero, aunque sea un enlace al procedimiento. En un servidor con varias aplicaciones, la memoria del que responde no siempre está disponible a las tres de la mañana.

Cómo se baja el ruido sin perder cobertura

Cinco ajustes que casi siempre alcanzan

  1. Umbral con duración. No “responde lento” sino “responde lento sostenido durante cinco minutos”. Elimina los parpadeos.
  2. Agrupar. Si se cae el servidor, una alerta —no una por cada servicio que dejó de responder—.
  3. Silencio programado durante los despliegues previstos, para que el recreado no despierte a nadie.
  4. Aviso de recuperación. Saber que se resolvió solo evita entrar a investigar algo que ya pasó.
  5. Revisar las que se ignoran. Si una alerta se viene ignorando hace un mes, o se ajusta o se borra. Dejarla es peor que las dos opciones.

Antes de seguir, predecí

Llegan cinco alertas por día de un servicio que se reinicia solo y se recupera. ¿Qué conviene?

El conjunto mínimo que cubre lo importante

Para un servidor con varias aplicaciones operado por una persona, alcanza con pocas alertas bien elegidas.

Las que sí

  1. Cada sitio público no responde durante más de unos minutos.
  2. Disco por encima de un umbral con margen, que es la falla que más seguido tira todo abajo.
  3. Un respaldo que no se ejecutó en el plazo esperado.
  4. Certificado próximo a vencer, medido sobre lo que se sirve.
  5. Un contenedor que no vuelve después de un despliegue.
Más a fondo · nivel seniorProbar las alertas es parte de tenerlas

Una alerta que nunca se disparó es una hipótesis. Vale la pena forzarla al menos una vez —parar un servicio a propósito, llenar un disco de prueba— para confirmar que llega, que llega al canal correcto y que dice algo útil. Es exactamente el mismo argumento que con los respaldos: lo que no se ejercita, no se sabe si funciona.

Una noche de alertas

Buscá en el log

Doce alertas en una noche y nadie miró ninguna. ¿Cuál era la única que había que atender?

debug 0info 2warn 7error 312 de 12

Cómo se mantiene sana la lista

Cierre

Autoevaluación

¿Lo entendiste?

¿Cuál es el filtro principal para decidir si algo merece una alerta?
¿Por qué conviene alertar por síntoma y no por causa?