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

Derniers Articles