¿Te resulta más fácil leer con fondo crema, un tono de color, más contraste o un texto más grande? Elige tus colores y tu texto una sola vez, para todas las páginas.

Lección gratuita

Logs, métricas y alertas

La lección completa está aquí para leer. Crea una cuenta gratuita para ejecutar sus comandos en un laboratorio y hacer sus cuestionarios y tareas.

Lección de 50 minSin comandos

Los clientes se enteran primero

Una cadena de supermercados tiene tienda online. Un martes a las nueve de la noche, los pagos empiezan a fallar.

El equipo técnico no lo sabe. Se entera a las diez, por las quejas en redes sociales.

En esa hora se pierden cientos de pedidos. Esta lección enseña cómo el sistema avisa antes que los clientes.

Al final de esta lección

Nota

Puedo usar logs, métricas y alertas para ver la salud de un sistema.

Palabras clave

PalabraQué significaEjemplo
Loguna línea de texto que el programa escribe al hacer algo
Métricaun número medido cada cierto tiempoerrores por minuto
Latenciael tiempo que tarda una respuesta
Umbralel valor a partir del cual algo va mal
Alertaun aviso a una persona cuando se pasa un umbral
Paneluna pantalla con gráficos de las métricas

Las celdas que rellenan los estudiantes quedan en blanco en esta vista previa.

Un log cuenta qué pasó

Un log es una línea que el programa escribe cada vez que hace algo: un pedido pagado, un error, una respuesta lenta.

Cada línea lleva la hora y un nivel: INFO para lo normal, WARN para lo raro y ERROR para lo que ha fallado.

Con miles de líneas, nadie las lee una a una. Se buscan. Ejecuta el bloque y haz el cambio del final.

Buscar errores en un log

Código: bash
mkdir -p super && cd super
cat > app.log <<'FIN'
21:00:02 INFO  pedido 5120 pagado 64,30 EUR
21:00:05 INFO  pedido 5121 pagado 12,99 EUR
21:00:09 ERROR pago rechazado: la pasarela no responde
21:00:11 INFO  pedido 5122 pagado 41,75 EUR
21:00:14 ERROR pago rechazado: la pasarela no responde
21:00:15 WARN  respuesta lenta: 2900 ms
21:00:18 ERROR pago rechazado: la pasarela no responde
FIN

# Solo las líneas de error
grep ERROR app.log
# Cuántas hay
grep -c ERROR app.log

# Cambia ERROR por WARN en las dos órdenes y ejecuta otra vez.

Una métrica dice cuánto y con qué tendencia

Un log cuenta un hecho. Una métrica es un número medido cada minuto: pedidos, errores, latencia.

Las métricas se dibujan en un panel. Así se ve de un vistazo si algo sube o baja.

La tabla muestra cinco minutos de la tienda del supermercado. Mira cómo cambian las columnas.

Cinco minutos de la tienda online

HoraPeticionesErroresTasa de erroresLatencia media
20:5840020,5 %180 ms
20:5942020,5 %190 ms
21:00410256,1 %900 ms
21:013805715 %2400 ms
21:023009030 %2900 ms

Las celdas que rellenan los estudiantes quedan en blanco en esta vista previa.

Una alerta despierta a una persona

Nadie mira un panel toda la noche. Por eso se define un umbral: por ejemplo, más de un 5 % de errores durante dos minutos.

Cuando se pasa, salta una alerta. Llega al móvil de la persona de guardia.

Con esa alerta, el supermercado se habría enterado a las 21:01, no a las diez.

Un error frecuente

Advertencia

Mucha gente cree que cuantas más alertas, más seguro está el sistema. Ocurre lo contrario. Si el móvil suena por cosas sin importancia, la gente deja de hacer caso. Una alerta solo debe saltar cuando los clientes lo notan y alguien tiene que actuar.

¿Enseñas a una clase? Asigna este módulo a tus alumnos con guía del profesor, tareas con corrección automática y un laboratorio para cada alumno.