Précédent   Forum des professionnels en informatique > Systèmes > Linux > Applications > Shell
Shell Vos questions sur l'utilisation des commandes shell
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/07/2011, 12h22   #1
Candidat au titre de Membre du Club
 
Inscription : juillet 2008
Messages : 59
Détails du profil
Informations forums :
Inscription : juillet 2008
Messages : 59
Points : 11
Points : 11
Par défaut Script pour vérifier l'état d'un site

bonjour,

je cherche à écrire un petit site pour vérifier si un site fonctionne ou pas. Dans mon test, je regarde donc le code retourné par la page (200 si tout se passe bien) et le temps de réponse. Je veux relancer mon serveur si le code est différent de 200 ou le temps de réponse supérieur à 5 secondes. Je fais donc le test suivant:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
if [ $HTTP_CODE -ne 200 -o $TIME_TOTAL -gt $2 ]
then
  HOUR=`date +%Y-%m-%d\ %H:%M:%S`
  /bin/echo "$HOUR CHECK FAILED: $1 code $HTTP_CODE time $TIME_TOTAL (max $2)"
  /bin/echo "$HOUR CHECK FAILED: $1 code $HTTP_CODE time $TIME_TOTAL (max $2)" >> $LOG_FILE
  mail -s "SITE DOWN" $MAIL < $LOG_FILE
  /etc/init.d/php5-fpm restart
  exit 2
else
  HOUR=`date +%Y-%m-%d\ %H:%M:%S`
  /bin/echo "$HOUR CHECK SUCCEEDED: $1 code $HTTP_CODE time $TIME_TOTAL (max $2)"
  /bin/echo "$HOUR CHECK SUCCEEDED: $1 code $HTTP_CODE time $TIME_TOTAL (max $2)" >> $LOG_FILE
fi
avec
Code :
1
2
HTTP_CODE=`/bin/echo $CURL_RETURN | cut -d: -f1`
TIME_TOTAL=`/bin/echo $CURL_RETURN | cut -d: -f2 | sed -e s/,//`
Je ne sais pas pourquoi mon test ne fonctionne pas, je vois dans les logs des cas ou le code était 502 et malgré tout il dit que le site fonctionne.

Saez vous d'ou vient le probleme?
pausg est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 29/07/2011, 12h37   #2
Expert Confirmé Sénior
 
Avatar de Sve@r
 
Homme Frédéric
Ingénieur développement logiciels
Inscription : février 2006
Messages : 3 055
Détails du profil
Informations personnelles :
Nom : Homme Frédéric
Âge : 44
Localisation : France, Oise (Picardie)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : février 2006
Messages : 3 055
Points : 4 934
Points : 4 934
Citation:
Envoyé par pausg Voir le message
Saez vous d'ou vient le probleme?
Bonjour

Non je ne sais pas (enfin je présume que tes variables HTTP_CODE et TIME_TOTAL n'ont pas la valeur attendue ce qui présuppose que le pb vient de CURL_RETURN).
Toutefois, si tu rajoutes l'instruction set -x juste avant ton test et que tu rajoutes l'instruction set +x juste après le fi, toute la partie if...fi sera en mode debug et le shell t'affichera chaque instruction exécutée avec la valeur des variables etc. Tu pourras donc vérifier que tes variables ont bien la valeur attendue...
__________________
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
Tout ce qu'un individu reçoit sans rien faire pour l'obtenir, un autre individu a dû travailler pour le produire sans en tirer profit.
Tout Pouvoir ne peut distribuer aux uns que ce qu'il a préalablement confisqué à d'autres car on n'accroît pas les biens en les divisant.
Quand la moitié d'un peuple croit qu'il ne sert à rien de faire des efforts car l'autre moitié les fera pour elle, et quand cette dernière moitié se dit qu'il ne sert à rien d'en faire car ils bénéficieront à d'autres, cela s'appelle le déclin et la fin d'une nation.
Dr. Adrian Rogers, 1931
Sve@r est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 15h16.


 
 
 
 
Partenaires

Hébergement Web