Aller au contenu

« Journalctl » : différence entre les versions

De Marmits Wiki
Ligne 69 : Ligne 69 :
journalctl -u dpkg
journalctl -u dpkg
journalctl -u systemd-tmpfiles-clean.timer
journalctl -u systemd-tmpfiles-clean.timer
sudo journalctl --since "1 week ago" -u apache2.service
journalctl --since "1 week ago" -u apache2.service


</syntaxhighlight>
</syntaxhighlight>


[[Catégorie:Linux]] [[Catégorie:Debian]] [[Catégorie:Systemd]]
[[Catégorie:Linux]] [[Catégorie:Debian]] [[Catégorie:Systemd]]

Version du 1 mars 2025 à 00:26

Limiter la taille des journaux :

Dans /etc/systemd/journald.conf :

SystemMaxUse= : Définit la taille maximale que les journaux peuvent occuper sur le disque.
Par exemple, : SystemMaxUse=1G limite les journaux à 1 Go.
SystemKeepFree= : Réserve une certaine quantité d'espace libre sur le disque.
Par exemple, SystemKeepFree=500M garantit que 500 Mo restent libres.
MaxRetentionSec= : Définit la durée maximale pendant laquelle les journaux sont conservés.
Par exemple, MaxRetentionSec=1week conserve les journaux pendant une semaine.
sudo systemctl restart systemd-journald

espace OQP

sudo journalctl --disk-usage

Libérer de l'espace manuellement :

Supprimer les journaux plus anciens qu'une certaine date :

sudo journalctl --vacuum-time=1week

Limiter la taille des journaux à une certaine valeur :

sudo journalctl --vacuum-size=500M

Supprimer tous les journaux archivés :

sudo journalctl --rotate
sudo journalctl --vacuum-time=1s

Cela force la rotation des journaux et supprime immédiatement les anciens journaux archivés.

Commandes options

journalctl -f # en temps réel
journalctl -u nginx -n 5000 # Affiche les 5000 lignes de logs de nginx dans un pager en commencant par les plus anciennes
journalctl --disk-usage #  Affiche l'espace couramment utilisé par les fichiers journaux du système
journalctl --vaccum-size 1G # Nettoie les fichiers journaux pour ne garder qu'un gigaoctet d'utilisé
journalctl -eu nginx # Affiche sous forme de pager les 1000 dernières de logs du service nginx
journalctl -fu nginx # Affiche les toutes dernières lignes de log en continu
journalctl -k -p warning # Affiche seulement les messages d'alerte du kernel. L'option `p` ne fonctionne que si l'application les écrivant est compatible journald car les loglevels ne viennent pas de nul part
journalctl -p 2 # Affiche les évenements critiques propres à toutes les applications gérant les loglevel
journalctl -u nginx --until yesterday # N'affiche pas les messages nginx d'aujourd'hui
journalctl -o json #  Affiche le journal système global au format json, pratique pour découvrir toutes les champs (et leur contenu), et ainsi pouvoir scripter une analyse de logs efficace grâce à par exemple un script python
journalctl -r # pour inverser l'ordre

En temps réel :

sudo journalctl -f | grep "\[UFW BLOCK\]"
sudo journalctl -k -f | grep "\[UFW BLOCK\]" | grep 'DPT=80'

Plage de dates spécifique

# [-S DATE] : show logs Since DATE
# [-U DATE] : show logs Until DATE
journalctl -S "2024-08-07 19:00:00" -U "2024-08-07 20:00:00"

Recherche

# Afficher les journaux d'une priorité spécifique
journalctl -p err --since "1 week ago"

# Afficher les journaux qui incluent le mot spécifique [PATTERN] dans le champ [MESSAGE]
journalctl -g "apparmor"

journalctl -u cron.service
journalctl -u dpkg
journalctl -u systemd-tmpfiles-clean.timer
journalctl --since "1 week ago" -u apache2.service