2010-10-12 13 views
3

J'ai besoin de vérifier si un serveur est en marche ou non? Si en bas alors je dois envoyer un email Et cette tâche devrait être répétée toutes les 30 minutes.Vérification de l'état d'un serveur ou de l'absence de fichier de traitement par lots

Je dois le faire en utilisant un fichier batch.

+0

Par « serveur est » voulez-vous dire la machine virtuelle ou physique est sous tension et répondre aux demandes de réseau ou quelque chose d'autres comme un serveur Web ou un serveur d'applications est en cours d'exécution? – DMKing

+0

Les deux choses. Soit physiquement, soit répondant aux demandes du réseau – Rites

Répondre

6

Ce fichier de commandes vous permettra d'obtenir la plupart du temps. Vous devrez utiliser blat ou quelque chose de similaire ou un script Windows pour envoyer l'email. Utilisez le planificateur de tâches pour appeler le fichier de commandes toutes les 30 minutes.

checkserver.bat:

@echo off 
ping -n 1 %1 > NUL 
IF ERRORLEVEL 0 (echo "Up -- Don't send email.") ELSE echo "Down -- Send email." 

appel comme si:

C:\>checkserver 127.0.0.1 
"Up -- Don't send email." 

C:\>checkserver 128.0.0.1 
"Down -- Send email." 
+0

Merci beaucoup. Pouvez-vous me suggérer un moyen de vérifier si un serveur d'applications est opérationnel ou non? Je veux dire vérifier une requête http comme http: // IP: 9001? – Rites

+1

J'utiliserais wget. Une belle version de Windows est ici http://users.ugent.be/~bpuype/wget/#download. Il renverra 0 en cas de succès et une autre valeur en cas d'échec. – DMKing

0

Vous pouvez essayer d'accéder à l'un de ses partages de système de fichiers ou l'envoyer à un ping si vous connaissez son adresse IP. Ce serait le moyen le plus facile et tous les deux possibles à partir de CMD.

+0

Je connais l'adresse IP et je peux aussi faire un ping mais comment pourrais-je savoir que le ping est réussi? – Rites

0

Pour vérifier si le serveur est actif, vous pouvez utiliser la commande ping. Pour envoyer des e-mails, vous pouvez télécharger des outils de messagerie tels que blat etc. Pour répéter toutes les 30 minutes, configurez-le à l'aide du planificateur de tâches.

+0

Si le ping a réussi, comment l'identifier? – Rites

+0

Est-ce que ping renvoie une valeur booléenne de quelque chose? – Rites

+0

Effectuez un ping manuellement sur la ligne de commande, puis vérifiez son% errorlevel%. – ghostdog74