2010-10-05 21 views
1

Avant de me frotter la tête contre tous les problèmes, je pensais que je devais le faire fonctionner par vous et voir si vous pouviez me pointer quelque part ou donner quelques conseils.Utilisation de wget pour faire des sondes de surveillance

J'écris un script de surveillance vraiment basique pour m'assurer que certaines de mes applications Web sont en vie et répondent. Je vais le faire sortir de cron et envoyer des emails d'alerte s'il y a un problème.

Donc, ce que je cherche sont des suggestions sur ce qu'il faut surveiller. Grepping la sortie de wget va probablement me faire passer, mais je me demandais s'il y avait un moyen plus programmatique pour obtenir des informations de statut robustes sur wget et la page Web qui en résulte.

Ceci est une sorte de question générale, je suis à la recherche de conseils de quelqu'un qui arrive à avoir fait ce genre de chose avant.

+0

en fait je viens de réaliser ce qui est plus d'un question serverfault. Y a-t-il un moyen facile de le déplacer? – stu

+0

Les modérateurs peuvent migrer des questions .. mais je crois qu'il est trop tard pour celui-ci. –

Répondre

1

Vérifier le code de sortie,

wget --timeout=10 --whatever http://example.com/mypage 
if [ $? -ne 0 ] ; then 
    there's a pproblem, mail logs, send sms, etc. 
fi 
1

Je préfère curl --head pour ce type d'utilisation:

% curl --head http://stackoverflow.com/ 
HTTP/1.1 200 OK 
Cache-Control: public, max-age=60 
Content-Length: 359440 
Content-Type: text/html; charset=utf-8 
Expires: Tue, 05 Oct 2010 19:06:52 GMT 
Last-Modified: Tue, 05 Oct 2010 19:05:52 GMT 
Vary: * 
Date: Tue, 05 Oct 2010 19:05:51 GMT 

Cela vous permettra de vérifier l'état de retour pour vous assurer qu'il est 200 (ou tout ce que vous Je m'attends à ce qu'il soit) et la longueur du contenu pour s'assurer que c'est la valeur attendue (ou au moins non nulle.) Et il sortira non-zéro s'il y a un problème avec la connexion.

Si vous voulez vérifier les modifications du contenu de la page, redirigez la sortie vers md5 puis comparer ce que vous obtenez à votre valeur connue précalculée:

wget -O - http://stackoverflow.com | md5sum