Des journaux texte sans limite peuvent épuiser un système de fichiers, tandis qu'une suppression trop agressive peut retirer des preuves nécessaires à l'exploitation ou à la conformité. logrotate applique aux journaux fondés sur des fichiers les règles configurées de taille, temps, compression, propriété et conservation.
Journalisation · Leçon 6
Gérer les fichiers de journaux
Découvrez comment configurer, tester et vérifier une rotation sûre des journaux texte avec logrotate.
Comprendre la rotation
Une rotation typique renomme le fichier actif, crée son remplaçant, demande éventuellement à l'application de le rouvrir, compresse les anciennes générations et supprime les fichiers qui dépassent la durée de conservation. Ces étapes dépendent de la configuration ; la rotation n'est pas une sauvegarde, car les copies conservées peuvent toujours être supprimées, corrompues ou perdues avec le même hôte.
Pourquoi la rotation des journaux ne remplace-t-elle pas une sauvegarde ou un archivage ?
Trouver la configuration
Le fichier principal est généralement /etc/logrotate.conf, avec des fragments de paquets ou d'applications sous /etc/logrotate.d/. Une règle simplifiée peut ressembler à ceci :
/var/log/example/app.log {
daily
rotate 7
compress
delaycompress
missingok
notifempty
create 0640 example adm
}
Cette règle demande une évaluation quotidienne, la conservation de sept rotations, une compression retardée d'une génération, la tolérance d'un journal absent ou vide et la création d'un nouveau fichier avec un mode et des propriétaires explicites. La rotation réelle dépend aussi de l'état enregistré et de la manière dont l'ordonnanceur appelle logrotate.
Que précise rotate 7 ?
Coordonner avec le processus d'écriture
Après le renommage d'un journal, un démon peut continuer à écrire par son descripteur de fichier encore ouvert. Un script postrotate envoie souvent un signal documenté de rechargement ou de réouverture. Validez le comportement exact de l'application et limitez étroitement la portée du script.
copytruncate copie un fichier puis tronque l'original sur place lorsqu'une application ne peut pas rouvrir ses journaux. Des écritures peuvent être perdues ou dupliquées pendant cette fenêtre ; il s'agit donc d'un compromis et non d'un réglage universellement sûr.
Pourquoi une application peut-elle avoir besoin d'un signal de réouverture après la rotation ?
Tester avant l'activation
Employez le mode de débogage pour examiner les décisions sans faire tourner les fichiers :
$ sudo logrotate -d /etc/logrotate.conf
La sortie de débogage ne prouve pas que les permissions, scripts, l'espace libre ou la réouverture par l'application réussiront pendant une véritable exécution. Testez une nouvelle règle dans un environnement contrôlé, puis examinez le fichier actif, la génération tournée, la propriété, la compression, la sortie de l'application et l'état de logrotate après l'exécution. -f force une rotation et modifie l'état ; ne le confondez pas avec une simulation.
Que fournit logrotate -d ?
Tenir compte des autres stockages
Logrotate gère les fichiers nommés par ses règles. Le journal systemd possède sa propre configuration de taille et de conservation, tandis que les bases de données et services distants disposent de contrôles distincts de cycle de vie. Surveillez la capacité du système de fichiers et la santé de la journalisation afin de détecter un processus d'écriture bloqué ou une rotation en échec avant l'épuisement de l'espace.
Une règle logrotate applique-t-elle automatiquement la conservation du journal systemd ?
Leçon terminée
Vous avez terminé Gérer les fichiers de journaux
Vous savez maintenant concevoir et vérifier une règle de rotation sans la confondre avec un archivage.
Équilibrer les besoins d'espace, d'exploitation et de conservation.
Définir générations, compression, propriété et comportement face aux fichiers vides.
Se coordonner sans risque avec les applications qui gardent des descripteurs ouverts.
Déboguer la configuration avant une véritable rotation contrôlée.
Gérer séparément la conservation du journal et des stockages externes.
Conservez votre progression
Créez un compte gratuit pour enregistrer cette leçon et continuer sur n'importe quel appareil.
Créer un compte gratuit