Rotation des logs avec logrotate
Publiée le 26 Juin 2013
La gestion des logs est très importante. La problématique qui se pose très souvent à un admin est de gérer ses logs pour que celles-ci soient disponibles le plus longtemps possible sans saturer le stockage.
Logrotate est la solution idéal pour gérer les logs de vos service UNIX.
Logrotate permet d'archiver vos logs, de les compresser et d'effectuer des purges automatiques. La puissance de logrotate réside dans le fait qu'il peut archiver vos logs même quand celles ci sont en cours d'écriture!
Pour configurer logrotate allez dans le répertoire /etc/logrotate.d
Ce répertoire contient la configuration de la rotation des logs pour chaque service.
Admettons que nous voulons gérer les logs du service "toto":
- Créer un fichier toto dans le répertoire /etc/logrotate.d
-Editez le et ajoutez la configuration suivante:
# Indiquez le chemin de votre log
<chemin de votre fichier log> {
#Ne supprime pas le fichier mais vide le fichier log après en avoir fait une copie
copytruncate
# Logrotate analysera l'état de vos logs de manière journalière (vous pouvez spécifier weekly ou monthly pour chaque semaine ou chaque mois)
daily
# Logrotate conservera 7 archives
rotate 7
#Les logs seront compressées
compress
#Ne produit pas d'erreur si votre log n'existe pas
missingok
# Logrotate archivera votre log uniquement si la taille dépasse les 100M
size 100M
}
Enjoy 🙂