Kapitel 8 · 8.4
Logs lesen mit journalctl und docker logs
Wenn etwas nicht funktioniert, steht der Grund fast immer in einem Log. Unter Debian und Ubuntu landen die meisten Meldungen im Journal von systemd.
journalctl: die wichtigsten Befehle
| Befehl | Was sehen Sie? |
|---|---|
journalctl -u caddy | Alles von einem Dienst, hier Caddy |
journalctl -u ssh --since today | Alle SSH-Anmeldungen von heute |
journalctl -p err -b | Alle Fehler seit dem letzten Neustart |
journalctl -b -1 | Was vor dem vorherigen Neustart passiert ist |
journalctl -f | Live mitlesen (beenden mit Strg+C) |
journalctl -e | Direkt ans Ende springen |
Setzen Sie sudo davor oder nehmen Sie sich selbst in die Gruppe adm auf (sudo usermod -aG adm anna), dann sehen Sie alle Meldungen.
Eine typische Fehlersuche, wenn Ihre Website nicht funktioniert:
anna@web1:~$ systemctl status nginx
anna@web1:~$ sudo journalctl -u nginx -p err --since "1 hour ago"
anna@web1:~$ sudo tail -n 50 /var/log/nginx/error.log
Logs von Containern
anna@web1:/srv/diensten$ sudo docker compose logs --tail 100 vaultwarden
anna@web1:/srv/diensten$ sudo docker compose logs -f caddy
Weitere Logs, die Sie häufig brauchen
/var/log/nginx/: Besucher und Fehler von nginx./var/log/fail2ban.log: wen fail2ban gesperrt hat./var/log/unattended-upgrades/: was automatisch aktualisiert wurde./var/log/apt/history.log: welche Pakete wann installiert wurden.
Logs, die zu viel Platz belegen
anna@web1:~$ journalctl --disk-usage
anna@web1:~$ sudo journalctl --vacuum-size=500M
Das Journal räumt sich selbst auf, belegt standardmäßig aber bis zu 10 Prozent Ihrer Festplatte (höchstens 4 GB). Containerlogs begrenzen Sie wie in Container aktualisieren, aufräumen und Logs begrenzen beschrieben.
