Logrotate
Logrotate et systemd avec Debian 2ème Partie
30/04/16 14:30 Classé dans: Techniques
Voici la deuxième partie sur la gestion de la rotation des logs avec Debian et logrotate version 2.8.
Après quelques essais, je me suis aperçu que j'avais un problème de droit avec les logs créés avec l'utilisateur www-data
Les logs centreon
Après quelques essais, je me suis aperçu que j'avais un problème de droit avec les logs créés avec l'utilisateur www-data
En effet, les logs sont créés avec le script /etc/cron.d/centreon soit les lignes suivantes :
Lire plus…Logrotate et Centreon avec Debian
25/04/16 14:52 Classé dans: Techniques
Depuis la version 2.8 de logrotate, le cron journalier se met en erreur avec les fichiers logrotate de Centreon. Voici une partie de ces erreurs :
Le problème est dû à la configuration du propriétaire et du groupe affectée au répertoire /var/log/centreon. Comme le propriétaire et le groupe ne font pas partie de root, logrotate considère qu'ils ne peuvent pas gérer la rotation des fichiers de logs. Pour autoriser ceux-ci, il faut donc appliquer la directive su dans la configuration de logrotate. Nous en profiterons pour simplifier cette configuration avec la suppression du service centstorage.
Tout d'abord, supprimons la configuration de centstorage et de centcore.
Ensuite nous allons simplifier la configuration de centreon, éditez le fichier
Modifiez le fichier, pour obtenir les lignes suivantes :
Voici une brève explication :
daily : une rotation tous les jours.
compress : on compresse le fichier de log.
notifempty : on ne fait pas de rotation si le fichier de log est vide
rotate 7 : on conserve 7 fichiers donc une rétention d'une semaine.
copy truncate : tronque le journal original en place après en avoir créé une copie.
missingok : l'absence de fichier de log n'est pas anormal.
size 20M : si la taille du fichier arrive à 20M, il est permuté automatiquement.
su centreon centreon : directive nécessaire lorsque le propriétaire n'est pas root.
Et ce n'est pas fini, nous verrons bientôt la problématique de Centreon-Engine avec systemd sur Debian Jessie. Cette nouvelle configuration de logrotate sera appliquée au dépôt Centreon pour Debian. Merci à Konrad de Stuttgart pour m'avoir alerté à ce sujet.
error: skipping "/var/log/centreon/centcore.log" because parent directory has insecure permissions (It's world writable or writable by group which is not "root") Set "su" directive in config file to tell logrotate which user/group should be used for rotation.
error: skipping "/var/log/centreon/centAcl.log" because parent directory has insecure permissions (It's world writable or writable by group which is not "root") Set "su" directive in config file to tell logrotate which user/group should be used for rotation.
error: skipping "/var/log/centreon/dashboardBuilder.log" because parent directory has insecure permissions (It's world writable or writable by group which is not "root") Set "su" directive in config file to tell logrotate which user/group should be used for rotation.
Le problème est dû à la configuration du propriétaire et du groupe affectée au répertoire /var/log/centreon. Comme le propriétaire et le groupe ne font pas partie de root, logrotate considère qu'ils ne peuvent pas gérer la rotation des fichiers de logs. Pour autoriser ceux-ci, il faut donc appliquer la directive su dans la configuration de logrotate. Nous en profiterons pour simplifier cette configuration avec la suppression du service centstorage.
Tout d'abord, supprimons la configuration de centstorage et de centcore.
rm /etc/logrotate.d/centstorage
rm /etc/logrotate.d/centcore
rm /etc/logrotate.d/centreontrapd
Ensuite nous allons simplifier la configuration de centreon, éditez le fichier
vi /etc/logrotate.d/centreon
Modifiez le fichier, pour obtenir les lignes suivantes :
/var/log/centreon/*.log {
daily
compress
notifempty
rotate 7
copytruncate
missingok
size 20M
su centreon centreon
}
Voici une brève explication :
daily : une rotation tous les jours.
compress : on compresse le fichier de log.
notifempty : on ne fait pas de rotation si le fichier de log est vide
rotate 7 : on conserve 7 fichiers donc une rétention d'une semaine.
copy truncate : tronque le journal original en place après en avoir créé une copie.
missingok : l'absence de fichier de log n'est pas anormal.
size 20M : si la taille du fichier arrive à 20M, il est permuté automatiquement.
su centreon centreon : directive nécessaire lorsque le propriétaire n'est pas root.
Et ce n'est pas fini, nous verrons bientôt la problématique de Centreon-Engine avec systemd sur Debian Jessie. Cette nouvelle configuration de logrotate sera appliquée au dépôt Centreon pour Debian. Merci à Konrad de Stuttgart pour m'avoir alerté à ce sujet.