Pages : 1
#1 Le 13/10/2015, à 22:39
- light86
question sur logrotate apache
Bonsoir a tous le monde
dans cet exemple du man
"/var/log/httpd/access.log" {
rotate 5
mail www@my.org
errors www@my.org
size=100k
postrotate
/sbin/killall -HUP httpd
endscript
}
J'aimerais savoir pourquoi il ya cette instruction /sbin/killall -HUP httpd et aussi je ne voit pas la commande new pour créer un nouveau fichier access.log
Pourriez vous m'expliquer
merci
Hors ligne
#2 Le 14/10/2015, à 12:16
- bruno
Re : question sur logrotate apache
Bonjour,
Lire les pages de man c'est bien, mais il faut savoir que les exemples ne sont pas forcément à jour ni adaptés à ta distribution.
Pour exemple regardons le fichier d'Ubuntu /etc/logrotate.d/apache2
/var/log/apache2/*.log {
daily
missingok
rotate 14
compress
delaycompress
notifempty
create 640 root adm
sharedscripts
postrotate
if /etc/init.d/apache2 status > /dev/null ; then \
/etc/init.d/apache2 reload > /dev/null; \
fi;
endscript
prerotate
if [ -d /etc/logrotate.d/httpd-prerotate ]; then \
run-parts /etc/logrotate.d/httpd-prerotate; \
fi; \
endscript
}
Après la « rotation » des logs il est toujours nécessaire de relancer le service. C'est la raison des lignes dans le bloc « postrotate », qui dans ce cas rechargent proprement la configuration d'Apache (et non avec des une commande bourrin sur un service qui n'existe pas sous Ubuntu, comme dans ton exemple). Les fichiers *.log sont recréés automatiquement.
Pages : 1