En una app en contenedores, ¿a dónde deben ir los logs de la aplicación?
Opciones
- A un archivo dentro del contenedor, y a ningún otro sitio
- A stdout o stderr, donde la plataforma los recoge (Opción correcta)
- A ningún sitio, porque en producción no hacen falta logs
- Por correo al equipo cada vez que ocurra un evento
Respuesta
A la salida estándar (stdout/stderr), donde la plataforma los recoge y los envía a un sistema de logs
Por qué
Los archivos dentro de un contenedor desaparecen cuando se reemplaza, y con muchos contenedores nunca los encontrarías.
Escribe los logs en stdout/stderr; Docker y Kubernetes los capturan, y un stack de logging (CloudWatch, ELK, Loki, Datadog) los reúne de forma central para buscar en todas las instancias.
Los logs estructurados (JSON con campos como request_id) son más fáciles de buscar.
Recuerda
Contenedores: logs a stdout, recogidos de forma central.