Script pour relancer les services centengine et gorgoned de Centreon (via crontab toutes les x minutes):
#!/bin/bash
# Services à surveiller
SERVICES=(« centengine » « gorgoned »)# Fichier de log
LOG_FILE= »/var/log/check_services_centreon.log »# Dossier et fichiers de compteurs
COUNT_DIR= »/var/log/centreon_check_counts »
mkdir -p « $COUNT_DIR »# Date pour le log
DATE=$(date « +%Y-%m-%d %H:%M:%S »)for SERVICE in « ${SERVICES[@]} »; do
systemctl is-active –quiet « $SERVICE »
STATUS=$?if [ $STATUS -ne 0 ]; then
# Incrémentation du compteur
COUNT_FILE= »$COUNT_DIR/${SERVICE}_restarts.count »
if [ ! -f « $COUNT_FILE » ]; then
echo 0 > « $COUNT_FILE »
fi
COUNT=$(cat « $COUNT_FILE »)
COUNT=$((COUNT + 1))
echo « $COUNT » > « $COUNT_FILE »# Redémarrage du service
systemctl restart « $SERVICE »echo « $DATE – $SERVICE inactif -> redémarré (compteur = $COUNT) » >> « $LOG_FILE »
else
echo « $DATE – $SERVICE actif » >> « $LOG_FILE »
fi
done