Kapitel 8 · 8.4
Läs loggar med journalctl och docker logs
När något inte fungerar står orsaken nästan alltid i en logg. På Debian och Ubuntu hamnar de flesta meddelanden i systemd:s journal.
journalctl: de viktigaste kommandona
| Kommando | Vad ser du? |
|---|---|
journalctl -u caddy | Allt från en tjänst, här Caddy |
journalctl -u ssh --since today | Alla SSH-inloggningar i dag |
journalctl -p err -b | Alla fel sedan den senaste omstarten |
journalctl -b -1 | Vad som hände före den förra omstarten |
journalctl -f | Följ loggen live (avsluta med Ctrl+C) |
journalctl -e | Hoppa direkt till slutet |
Sätt sudo framför, eller lägg till dig själv i gruppen adm (sudo usermod -aG adm anna), så ser du alla meddelanden.
Så här kan en typisk felsökning se ut när din webbplats inte fungerar:
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
Loggar från containrar
anna@web1:/srv/diensten$ sudo docker compose logs --tail 100 vaultwarden
anna@web1:/srv/diensten$ sudo docker compose logs -f caddy
Andra loggar som du ofta behöver
/var/log/nginx/: besökare och fel i nginx./var/log/fail2ban.log: vem fail2ban har blockerat./var/log/unattended-upgrades/: vad som har uppdaterats automatiskt./var/log/apt/history.log: vilka paket som installerades och när.
Loggar som tar för mycket utrymme
anna@web1:~$ journalctl --disk-usage
anna@web1:~$ sudo journalctl --vacuum-size=500M
Journalen rensar sig själv, men tar som standard upp till 10 procent av din disk (högst 4 GB). Containerloggar begränsar du så som beskrivs i Uppdatera containrar, städa upp och begränsa loggar.
