Kapitola 8 · 8.4
Čtení logů pomocí journalctl a docker logs
Když něco nefunguje, příčina je téměř vždy zapsaná v logu. V Debianu a Ubuntu najdete většinu hlášení v journalu systemd.
journalctl: nejdůležitější příkazy
| Příkaz | Co uvidíte? |
|---|---|
journalctl -u caddy | Vše od jedné služby, zde Caddy |
journalctl -u ssh --since today | Všechna dnešní přihlášení přes SSH |
journalctl -p err -b | Všechny chyby od posledního restartu |
journalctl -b -1 | Co se dělo před předchozím restartem |
journalctl -f | Sledování v reálném čase (ukončíte pomocí Ctrl+C) |
journalctl -e | Okamžitý skok na konec |
Přidejte před příkaz sudo nebo se zařaďte do skupiny adm (sudo usermod -aG adm anna), pak uvidíte všechna hlášení.
Typický postup hledání, když Váš web 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 kontejnerů
anna@web1:/srv/diensten$ sudo docker compose logs --tail 100 vaultwarden
anna@web1:/srv/diensten$ sudo docker compose logs -f caddy
Další logy, které budete často potřebovat
/var/log/nginx/: návštěvníci a chyby nginx./var/log/fail2ban.log: koho fail2ban zablokoval./var/log/unattended-upgrades/: co bylo automaticky aktualizováno./var/log/apt/history.log: které balíčky byly kdy nainstalovány.
Logy, které zabírají příliš mnoho místa
anna@web1:~$ journalctl --disk-usage
anna@web1:~$ sudo journalctl --vacuum-size=500M
Journal se čistí sám, ale ve výchozím nastavení zabírá až 10 procent Vašeho disku (nejvýše 4 GB). Logy kontejnerů omezíte postupem v článku Aktualizace kontejnerů, úklid a omezení logů.
