wiki/HowtoLogrotate.md

42 lines
1.3 KiB
Markdown

**Cette page a été importée automatiquement de notre ancien wiki mais n'a pas encore été révisée.**
Logrotate est un programme qui permetde gérer la croissance et l'historique des fichiers de logs.
# Principe général
Le programme est exécuté régulièrement, avec un fichier de configuration en paramètre.
Par défaut, c'est `/etc/logrotate.conf` qui habituellement charge toutes les configurations présentes dans `/etc/logrotate.d/`
Les paquets des progammes qui génèrent des logs (par exemple Apache, Postfix, ...) fournissent généralement une configuration pour logrotate.
# Stratégie de gestion
Il y a de très nombreuses stratégies de gestion des logs, en voici quelques unes illustrées.
cf. <https://manpages.debian.org/cgi-bin/man.cgi?query=logrotate>
## Applications Ruby
Pour les serveurs d'application comme Puma, Unicorn, ... :
~~~
/home/USER/apps/production/*/shared/log/*.log {
su USER GROUP
weekly
missingok
rotate 52
compress
delaycompress
notifempty
dateext
dateformat .%Y-%m-%d
dateyesterday
copytruncate
}
~~~
Cette stratégie va faire une rotation hebdomadaire, conserver 52 semaines (1 an), compresser les logs passés après les avoir datés.
L'instruction `copytruncate` est importante car le descripteur de fichier ouvert par l'application ne va pas changer.