📘 Cómo ver los logs de un servicio en Linux usando journalctl

Shared post

Cuando trabajamos con servidores Linux que utilizan systemd, una de las tareas más comunes (y críticas) es revisar los logs de los servicios para diagnosticar errores, analizar comportamientos o simplemente monitorizar la actividad.
Para ello, journalctl es nuestra herramienta principal.

En esta entrada te explico cómo ver los logs de un servicio específico, cómo filtrarlos por fecha, seguirlos en tiempo real y otras variantes muy útiles.


🔍 Ver el log completo de un servicio

Para consultar el log completo de un servicio concreto:

journalctl -u nombre-del-servicio.service

Por ejemplo:

journalctl -u nginx.service

🚀 Ver logs desde el último arranque

Si solo quieres los registros desde que el sistema se inició:

journalctl -u nombre-del-servicio.service -b

📡 Seguir logs en tiempo real (como tail -f)

journalctl permite seguir los logs en vivo:

journalctl -u nombre-del-servicio.service -f

📅 Ver logs desde una fecha específica

Aquí es donde journalctl destaca. Puedes filtrar desde una fecha concreta:

journalctl -u nombre-del-servicio.service --since "YYYY-MM-DD"

Por ejemplo:

journalctl -u php8.2-fpm.service --since "2025-01-15"

Si además quieres incluir la hora:

journalctl -u nombre-del-servicio.service --since "2025-01-15 14:30"

🕰️ Ver logs en un rango de fechas

También puedes ver un intervalo completo:

journalctl -u nombre-del-servicio.service --since "2025-01-15 00:00" --until "2025-01-16 23:59"

Esto es ideal para investigar incidentes en un periodo concreto.


💡 Formatos válidos para fechas

Systemd acepta varios formatos muy útiles:

  • "2025-01-15"
  • "2025-01-15 14:00"
  • "yesterday"
  • "2 hours ago"
  • "10 minutes ago"

Esto te da mucha flexibilidad a la hora de consultar registros.


📏 Limitar la cantidad de líneas

Si solo quieres ver, por ejemplo, las últimas 100 entradas:

journalctl -u nombre-del-servicio.service -n 100

📁 Cuando el servicio usa sus propios logs

Algunos servicios no solo dependen de journalctl, sino que escriben sus archivos en /var/log.
Ejemplos comunes:

tail -f /var/log/nginx/error.log
tail -f /var/log/mysql/error.log

📝 Conclusión

journalctl es una herramienta potentísima para gestionar logs en sistemas con systemd.
Permite revisar, filtrar, seguir y analizar el comportamiento de cualquier servicio de forma sencilla y flexible.

Con los comandos anteriores, ya tienes una guía completa para trabajar con logs de forma eficiente en tus sistemas Linux.


Shared post