Kapitola 8 · 8.4
Čítanie logov pomocou journalctl a docker logs
Keď niečo nefunguje, príčina je takmer vždy zapísaná v logu. Na Debian a Ubuntu sa väčšina hlásení nachádza v journal systému systemd.
journalctl: najdôležitejšie príkazy
| Príkaz | Čo uvidíte? |
|---|---|
journalctl -u caddy | Všetko z jednej služby, tu Caddy |
journalctl -u ssh --since today | Všetky prihlásenia cez SSH za dnešok |
journalctl -p err -b | Všetky chyby od posledného reštartu |
journalctl -b -1 | Čo sa dialo pred predchádzajúcim reštartom |
journalctl -f | Sledovanie naživo (ukončíte pomocou Ctrl+C) |
journalctl -e | Okamžitý skok na koniec |
Pred príkaz dajte sudo alebo sa pridajte do skupiny adm (sudo usermod -aG adm anna), potom uvidíte všetky hlásenia.
Typický postup hľadania, keď vaša webová stránka nefunguje:
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
Logy kontajnerov
anna@web1:/srv/diensten$ sudo docker compose logs --tail 100 vaultwarden
anna@web1:/srv/diensten$ sudo docker compose logs -f caddy
Ďalšie logy, ktoré často potrebujete
/var/log/nginx/: návštevníci a chyby nginx./var/log/fail2ban.log: koho fail2ban zablokoval./var/log/unattended-upgrades/: čo sa automaticky aktualizovalo./var/log/apt/history.log: ktoré balíky boli nainštalované a kedy.
Logy, ktoré zaberajú príliš veľa miesta
anna@web1:~$ journalctl --disk-usage
anna@web1:~$ sudo journalctl --vacuum-size=500M
Journal sa čistí sám, ale štandardne zaberá až 10 percent vášho disku (najviac 4 GB). Logy kontajnerov obmedzíte podľa postupu v Aktualizácia kontajnerov, upratovanie a obmedzenie logov.
