J'ai le sentiment que je manque l'évidence, mais je n'ai pas réussi avec man [curl|wget]
ou google ("http" fait un si mauvais terme de recherche). Je cherche une solution rapide et sale à l'un de nos serveurs Web qui échoue fréquemment, renvoyant le code d'état 500 avec un message d'erreur. Une fois que cela se produit, il doit être redémarré.
Comme la cause première semble difficile à trouver, nous visons une solution rapide, en espérant qu'elle suffira à combler le temps jusqu'à ce que nous puissions vraiment la résoudre (le service n'a pas besoin de haute disponibilité)
La solution proposée consiste à créer un travail cron qui s'exécute toutes les 5 minutes, en vérifiant http: // localhost: 8080 / . Si cela revient avec le code d'état 500, le serveur Web sera redémarré. Le serveur redémarrera dans moins d'une minute, il n'est donc pas nécessaire de vérifier les redémarrages déjà en cours d'exécution.
Le serveur en question est une installation minimale ubuntu 8.04 avec juste assez de packages installés pour exécuter ce dont il a besoin actuellement. Il n'y a aucune exigence difficile pour effectuer la tâche dans bash, mais j'aimerais qu'elle s'exécute dans un environnement aussi minimal sans installer plus d'interprètes.
(Je suis suffisamment familier avec les scripts pour que la commande / options pour attribuer le code de statut http à une variable d'environnement soit suffisante - c'est ce que j'ai cherché et que je n'ai pas pu trouver.)