J'ai un service nommé "routeur" capable de recevoir des requêtes http.
J'ai décidé d'écrire un script sh qui vérifie périodiquement la santé du service du routeur.
si quelque chose ne va pas, il le redémarre.
Le problème:
si le routeur a été démarré avec ce script, si ce script est arrêté, le service de routeur est également terminé.
Ce qui est étrange, c’est que ce simple script sh d’une ligne qui effectue simplement le "redémarrage du routeur de service" fonctionne correctement (il redémarre le service et se ferme immédiatement et tout va bien)
Je suppose que la raison est quelque part en boucle ou une bash si les choses.
code de script attaché ...
Merci pour l'aide!
#!/bin/bash
while :
do
STATUS=$(curl --silent localhost:80/test)
if [ "$STATUS" != "OK" ]
then
echo "problems: $STATUS".
service router restart
fi
sleep 5
done
continue
après service router restart
pour voir si cela fonctionne alors pour essayer d'isoler le problème. service
devrait déboucher sur la gestion du processus et revenir une fois le service redémarré, donc je ne peux que penser que vous avez écrit le /etc/init.d/router
script dans le mauvais sens. Postez également ce script pour que quiconque puisse vous aider.