Capitolo 8 · 8.4
Leggere i log con journalctl e docker logs
Quando qualcosa non funziona, il motivo si trova quasi sempre in un log. Su Debian e Ubuntu la maggior parte dei messaggi si trova nel journal di systemd.
journalctl: i comandi più importanti
| Comando | Che cosa vede? |
|---|---|
journalctl -u caddy | Tutto ciò che riguarda un servizio, in questo caso Caddy |
journalctl -u ssh --since today | Tutti gli accessi SSH di oggi |
journalctl -p err -b | Tutti gli errori dall'ultimo riavvio |
journalctl -b -1 | Che cosa è successo prima del riavvio precedente |
journalctl -f | Seguire in tempo reale (interrompere con Ctrl+C) |
journalctl -e | Passare subito alla fine |
Anteponga sudo, oppure si aggiunga al gruppo adm (sudo usermod -aG adm anna): così vedrà tutti i messaggi.
Una ricerca tipica quando il Suo sito web non funziona:
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
Log dei container
anna@web1:/srv/diensten$ sudo docker compose logs --tail 100 vaultwarden
anna@web1:/srv/diensten$ sudo docker compose logs -f caddy
Altri log che servono spesso
/var/log/nginx/: visitatori ed errori di nginx./var/log/fail2ban.log: chi è stato bloccato da fail2ban./var/log/unattended-upgrades/: che cosa è stato aggiornato automaticamente./var/log/apt/history.log: quali pacchetti sono stati installati e quando.
Log che occupano troppo spazio
anna@web1:~$ journalctl --disk-usage
anna@web1:~$ sudo journalctl --vacuum-size=500M
Il journal si ripulisce da solo, ma per impostazione predefinita occupa fino al 10 percento del Suo disco (al massimo 4 GB). Può limitare i log dei container come descritto in Aggiornare i container, fare pulizia e limitare i log.
