« Systemd: rendre persistant journalctl » : différence entre les versions
(Page créée avec « La commande <code>journalctl</code> de systemd permet d'afficher les logs kernel du dernier boot. Cependant, en cas de crash/freeze du serveur, il peut être intéressant... ») |
Aucun résumé des modifications |
||
(10 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
La commande <code>journalctl</code> de systemd permet d'afficher les logs | [[category:systemd]] | ||
La commande <code>journalctl</code> de systemd permet d'afficher les logs complet du dernier boot. Cependant, en cas de crash/freeze du serveur, il peut être intéressant d'avoir accès aux logs (en particulier ceux du kernel) juste avant et lors du plantage. Pour cela, il faut rendre journalctl persistant. | |||
Éditez <code>/etc/systemd/journald.conf</code> et modifiez la ligne <code>Storage</code> comme suit : | |||
<pre> | |||
[Journal] | |||
Storage=persistent | |||
</pre> | |||
Puis : | |||
<pre> | |||
mkdir /var/log/journal | |||
systemd-tmpfiles --create --prefix /var/log/journal | |||
systemctl restart systemd-journald | |||
</pre> | |||
Note : si l'option <code>Storage=auto</code> est passée dans <code>/etc/systemd/journald.conf</code> le journal sera écrit : | |||
* dans <code>/var/log/journal/</code> si le dossier existe et est accessible en écriture | |||
* dans <code>/run/log/journal/</code> (tmpfs) sinon | |||
Pour afficher les logs du boot précédent : | |||
<pre>journalctl --boot=-1</pre> | |||
0 correspondant au boot actuel, -1 au boot précédent | |||
Vous pouvez aussi afficher les logs d'un boot spécifique, dont vous pouvez récupérer l'id avec la commande suivante : | |||
<pre>journalctl --list-boots</pre> | |||
Vous pouvez réduire la période de temps affiché avec les commandes <code>--since</code> et <code>--until</code> : | |||
<pre> | |||
journalctl --since "2019-01-10" --until "2019-01-15 03:00" | |||
journalctl --since yesterday | |||
journalctl --since "1 hour ago" | |||
</pre> | |||
Pour afficher uniquement les logs kernel : | |||
<pre>journalctl -k</pre> | |||
Pour voir les logs les plus récents (10 par défaut) : | |||
<pre> | |||
journalctl -n | |||
journalctl -n 50 | |||
</pre> | |||
Pour suivre les logs en temps réel : | |||
<pre>journalctl -f</pre> | |||
Réduire la taille du journal : | |||
<pre> | |||
journalctl --vacuum-time=14d | |||
journalctl --vacuum-size=100M | |||
</pre> |
Dernière version du 15 août 2022 à 11:04
La commande journalctl
de systemd permet d'afficher les logs complet du dernier boot. Cependant, en cas de crash/freeze du serveur, il peut être intéressant d'avoir accès aux logs (en particulier ceux du kernel) juste avant et lors du plantage. Pour cela, il faut rendre journalctl persistant.
Éditez /etc/systemd/journald.conf
et modifiez la ligne Storage
comme suit :
[Journal] Storage=persistent
Puis :
mkdir /var/log/journal systemd-tmpfiles --create --prefix /var/log/journal systemctl restart systemd-journald
Note : si l'option Storage=auto
est passée dans /etc/systemd/journald.conf
le journal sera écrit :
- dans
/var/log/journal/
si le dossier existe et est accessible en écriture - dans
/run/log/journal/
(tmpfs) sinon
Pour afficher les logs du boot précédent :
journalctl --boot=-1
0 correspondant au boot actuel, -1 au boot précédent
Vous pouvez aussi afficher les logs d'un boot spécifique, dont vous pouvez récupérer l'id avec la commande suivante :
journalctl --list-boots
Vous pouvez réduire la période de temps affiché avec les commandes --since
et --until
:
journalctl --since "2019-01-10" --until "2019-01-15 03:00" journalctl --since yesterday journalctl --since "1 hour ago"
Pour afficher uniquement les logs kernel :
journalctl -k
Pour voir les logs les plus récents (10 par défaut) :
journalctl -n journalctl -n 50
Pour suivre les logs en temps réel :
journalctl -f
Réduire la taille du journal :
journalctl --vacuum-time=14d journalctl --vacuum-size=100M