Logs y Trazabilidad para SREs y DevOps: De la consola al conocimiento

DanDan
3 min read

Introducción

En un entorno distribuido y dinámico, los logs no son solo texto en un archivo: son el hilo conductor que te guía a través del caos.

Este artículo está diseñado para SREs y DevOps juniors y middles que desean entender cómo utilizar los logs y la trazabilidad como herramientas reales de diagnóstico, auditoría y control operativo.

Tipos de logs que verás en producción

TipoDescripciónEjemplo
AplicaciónGenerados por tu códigoapp.log, stderr.log
Sistema operativoKernel, procesos, sistema/var/log/syslog, journalctl
Red y firewallConectividad y reglasufw.log, iptables.log
AccesoAutenticaciones y sesionesauth.log, secure
ServiciosLogs de nginx, mysql, redis, etc./var/log/nginx/error.log

¿Dónde mirar cuando hay un incidente?

  • journalctl -xe para ver logs del sistema con contexto.

  • docker logs -f para contenedores en ejecución.

  • /var/log/* para servicios legacy.

  • grep, awk, sed para extraer información específica.

  • Herramientas como multitail o lnav para seguir múltiples archivos a la vez.

Comandos útiles

# Ver últimos 100 errores de nginx
grep -i "error" /var/log/nginx/error.log | tail -n 100

# Ver logs del sistema desde hace 30 minutos
journalctl --since "30 min ago"

# Ver logs de un pod en Kubernetes
kubectl logs -f pod-name

# Seguir logs con formato y colores
lnav /var/log/syslog

Introducción al tracing: más allá del log

¿Qué pasa cuando tienes cientos de servicios y los logs no son suficientes? Aquí entra el tracing distribuido.

  • Cada petición lleva un ID (trace ID).

  • Puedes seguir una petición a través de múltiples microservicios.

  • Herramientas comunes:

    • Jaeger

    • Zipkin

    • OpenTelemetry

    • Datadog / Grafana Tempo

# Ejemplo de cabecera HTTP con trace ID
curl -H "traceparent: 00-abcd1234..." https://api.servicio.com/

Buenas prácticas con logs

  • Usa formato estructurado (JSON si es posible).

  • Incluye niveles (INFO, ERROR, WARN, DEBUG).

  • No loguees contraseñas, tokens o secretos.

  • Usa una librería consistente de logging.

  • Implementa rotación y compresión (logrotate, journald).

  • Centraliza logs (ELK, Loki, Datadog, etc).

Errores comunes

  • Escribir logs a stdout sin límites en contenedores.

  • Falta de timestamps o niveles.

  • No correlacionar eventos entre servicios.

  • Logs silenciados en producción.

  • No almacenar logs por suficiente tiempo.

Logs ≠ observabilidad completa

Logs son una parte esencial de la observabilidad, pero no son todo.

Una estrategia completa incluye:

  • Logs (qué pasó)

  • Métricas (cuánto pasó)

  • Traces (dónde pasó)

Dominar los logs es aprender a leer la voz de tus sistemas. Es una herramienta de diagnóstico, auditoría, y confianza. Pero si aprendes también a trazar, verás el mapa completo.

Y así, un paso más en The Rabbit Hole.

0
Subscribe to my newsletter

Read articles from Dan directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Dan
Dan