Bonjour à tous,
Je cherche pouvoir envoyer une alerte "warning" à un système de supervision, à chaque fois que stderr vaut quelque chose, différent de null
Je m'explique mieux:
J'ai cette crontab (j'en ai plusieurs) qui me logge le résultat d'un find (stdout & stderr) dans /var/log/syslog, tout à l'aide de la commande logger :
Maintenant, ce que j'aimerais faire c'est d'envoyer une alerte avec un message d'erreur à NAGIOS lorsque stderr contienne une valeur non null
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 0 7 * * * root find /SPP/data/BACKUP/ -mindepth 1 -maxdepth 1 -type d -mtime +5 -exec rm -rf {} \; 2>&1 | /usr/bin/logger -t cron.cluster-rm-backup-files -i -p user.warn
Voici donc la crontab que j'essaye d'adapter (qui ne fonctionne pas pour le moment)
Est-ce qu'il existe un moyen dans cette crontab de "refaire" passer la sortie d'erreurs STDERR (2) avec des pipes "|" ou autre, jusqu'à la commande /usr/bin/test, pour ensuite dire que si stderr est non null, j'envoie mon message d'alerte à la supervision ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 0 7 * * * root find /SPP/data/BACKUP/ -mindepth 1 -maxdepth 1 -type d -mtime +5 -exec rm -rf {} \; 2>&1 | /usr/bin/logger -t cron.cluster-rm-backup-files -i -p user.warn | /usr/bin/test -n "1>&2 2" && /usr/bin/logger -p local0.warn "[ftmms][3][1][CLUSTER-BACKUP]: Problem detected by removing the backup..."
Merci d'avance pour toute opinion,![]()
Partager