Les logs sont cruciaux pour le diagnostic. journalctl offre des filtres avancés. rsyslog centralise les logs. logrotate évite de saturer les disques.
journalctl avancé
Filtres essentiels
# Service spécifique
journalctl -u nginx.service
# Priorité (err, warning, info)
journalctl -p err
# Période
journalctl --since "2026-01-10 14:00"
journalctl --since "1 hour ago"
journalctl --until "2026-01-11"
# Kernel uniquement
journalctl -k
# Boot actuel
journalctl -b
# Dernier boot
journalctl -b -1
Suivi temps réel
journalctl -u nginx -f
journalctl -f -p err
Filtres avancés
# Par PID
journalctl _PID=1234
# Par utilisateur
journalctl _UID=1000
# Par fichier binaire
journalctl /usr/bin/nginx
# JSON
journalctl -u app -o json-pretty
rsyslog : centralisation
Configuration client
# /etc/rsyslog.d/50-remote.conf
*.* @@log-server.local:514 # TCP
*.* @log-server.local:514 # UDP
Configuration serveur
# /etc/rsyslog.conf
# Activer réception TCP
module(load="imtcp")
input(type="imtcp" port="514")
# Template pour organisation
template(name="RemoteLogs" type="string"
string="/var/log/remote/%HOSTNAME%/%PROGRAMNAME%.log")
*.* ?RemoteLogs
logrotate
Configuration basique
# /etc/logrotate.d/nginx
/var/log/nginx/*.log {
daily
rotate 14
compress
delaycompress
notifempty
missingok
sharedscripts
postrotate
systemctl reload nginx
endscript
}
Options utiles
daily/weekly/monthly: fréquencerotate X: garder X fichierssize 100M: rotation si > 100Mcompress: gzip les vieux logsdelaycompress: compresser au cycle suivantcopytruncate: copier puis vider (sans reload)
Conclusion
journalctl permet un diagnostic rapide avec filtres puissants. rsyslog centralise les logs pour analyse globale. logrotate évite la saturation disque.


