1 votes

Logrotate : comment détecter une défaillance

# logrotate -d /etc/logrotate.conf

...
lecture des informations de configuration pour /var/log/rsyncd.log
erreur: rsync:12 entrée de journal dupliquée pour /var/log/rsyncd.log
erreur: erreur trouvée dans /var/log/rsyncd.log, en sautant
suppression des dernières 1 configurations de journal
...

# echo $?
0

Étant donné que logrotate est généralement exécuté à l'aide de cron, cron se termine par OK car logrotate se termine par OK. Doit-on procéder différemment ? Est-ce un bogue ou est-ce fait ainsi pour une raison que je n'ai pas encore comprise ?

MISE À JOUR : Cette question ne concerne pas la source de l'erreur. J'ai intentionnellement mis une erreur là-dedans pour illustrer que le code de retour est toujours 0 (=OK) et je m'intéresse à la raison pour laquelle c'est le cas.

1voto

Tom Points 720

Eh bien, je suppose que les concepteurs de logcheck ont décidé que ce scénario était une erreur de configuration digne d'être signalée, mais ce n'est pas une erreur d'exécution. Dans ce scénario, logcheck est toujours capable de s'exécuter et fonctionne toujours sur /var/log/rsyncd.log. Ignorer un second fichier de configuration n'empêche pas logcheck de continuer, donc le statut signalé est 0.

Surtout avec les logiciels serveur, on suppose que vous avez vérifié vos fichiers de configuration avant de les déployer. Alors que l'avantage ici serait une alerte plus évidente au problème, l'inconvénient serait la préoccupation pour les tâches qui dépendent de logcheck.

Cela dit, vous ne pouvez pas vous fier à l'état lors du passage de -d pour être le même que lors d'un fonctionnement normal. En citant man logcheck: En mode debug, aucun changement ne sera apporté aux journaux ou au fichier d'état de logrotate.. Ainsi, le fonctionnement de lecture des éléments et leur rapport détaillé a été un succès et devrait renvoyer 0. Cela peut ne pas être lié à ce que vous obtenez avec le mode debug désactivé.

En tout cas, tout cela serait plus un débat sur la conception logicielle qu'autre chose. En tant qu'administrateur système, la vérification des fichiers de configuration en production devrait être effectuée en tant que tâche distincte.

Comparez tout cela avec le fait de mettre des absurdités non analysables dans le fichier de configuration, ce qui vous donnera certainement un code non nul dans n'importe quel logiciel décent.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X