Files
Domoticz/check.sh
2025-03-06 11:09:58 +01:00

46 lines
1.6 KiB
Bash
Executable File

#!/bin/bash
# Script qui vérifie l'état de domoticz et qui relance si off
PATH=/opt/domoticz/:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin
now=$(date) #récupération de la date et heure pour les logs
echo $now
#Récupération du retour de la commande de status
domoticz=$(/usr/sbin/service domoticz.sh status |egrep "inactive|failed" |wc -l)
echo "statut domoticz" $domoticz
#grep "Error: RFLink: TX time out..." /var/log/domoticz.log |tail -n 1|cut -c 1-16
#status=$(/usr/sbin/service domoticz.sh status) #On le lance
#echo $domoticz $status
rflink=$(tail -n5000 /var/log/domoticz.log|grep -y "RFXCOM: Unhandled switch command" |wc -l)
rflink2=$(tail -n5000 /var/log/domoticz.log|grep -y "RFXCOM: TX time out..." |wc -l)
#rflink2=$(grep -y "Error: RFLink: TX time out..." /var/log/domoticz.log |wc -l)
echo "Unhandled switch" $rflink
echo "Time out" $rflink2
if [ "$domoticz" -ge "1" ] # Si le service n'est pas lancé
then
relance=$(/usr/sbin/service domoticz.sh restart) #On le lance
echo "$now >> relance : $relance" #On log la lancement
else
echo "$now >> Domoticz lancé" #On log l'état normal
fi
if [ "$rflink" -ge "1" ] # Si le service n'est pas lancé
then
cat /dev/null > /var/log/domoticz.log
relance=$(/usr/sbin/service domoticz.sh restart) #On le lance
echo "$now >> relance : $relance" #On log la lancement
fi
if [ "$rflink2" -ge "1" ] # Si le service n'est pas lancé
then
cat /dev/null > /var/log/domoticz.log
relance=$(/usr/sbin/service domoticz.sh restart) #On le lance
echo "$now >> relance rflink : $relance" #On log la lancement
fi
exit 0