samedi 24 novembre 2012

Script MS-DOS PING serveurs

 ps: si quelqu'un à une alimentation pour ce Bull Micral 15, je suis preneur... merci!

Suite aux précédents articles proposant de recycler un vieux PC en une station de backup et une station de monitoring serveurs, on m’a posé une question amusante par e-mail.

Les séquences de backup étant entièrement réalisées sous DOS, ne serait-il pas possible d’effectuer un monitoring serveur entièrement sous MS-DOS et de créer un fichier de LOG accessible en ligne ?

La réponse est évidement oui.

Nous allons donc réaliser un script MS-DOS qui grâce à la commande PING, va surveiller la présence en ligne de vos serveurs.
Ce script va lire un fichier texte contenant la liste des URL/IP à surveiller (server.txt), va afficher le résultat de ses requêtes à l’écran et alimenter un fichier de log nommé log_ping.txt

Il vous suffira ensuite d’uploadé le fichier log_ping.txt sur un serveur FTP comme déjà expliqué dans les précédents articles.

Le code est simple et commenté pour vous permettre d’en comprendre le fonctionnement. C’est un outil de base, efficace et très peu gourmand en ressource.



echo off

REM -- Script de monitoring serveur sous DOS par http://brice-cornet.blogspot.com

REM -- On affiche ça façon terminal DOS Noir et Vert :)
color 0a

REM -- Vous ignoriez que l'on pouvait faire de joli cadre sous MS-DOS ?
@echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
@echo º PING SERVER DOS º
@echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ

REM -- Les choses sérieuses peuvent commencer: voici le bloc de fonction PING
:ping_srv

REM -- Le script fait deux choses:
REM -- il affiche les résultats du PING et
REM -- effectue ensuite une deuxième séquence de PING dont les résultats sont stockés
REM -- dans un fichier de LOG

REM -- Affichage de la date et de l'heure

@echo %date% %time%

REM -- Le script PING toutes les URL/IP présentes dans le fichier server.txt
REM -- N'oubliez donc pas de créer un fichier server.txt :)
REM -- Vous devez écrire une URL/IP par ligne

for /F %%i IN (server.txt) DO (PING -n 10 -w 4 %%i)

REM -- Une fois que l'on a affiché les résultats à l'écran
REM -- on passe à l'alimentation du fichier de LOG

@echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
@echo º  Alimentation du LOG  º
@echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ

REM -- On indique la date et l'heure dans le fichier de LOG
@echo %date% %time% >> log_ping.txt

REM -- On lance les séquences de PING

for /F %%i IN (server.txt) DO (PING -n 10 -w 4 %%i >> log_ping.txt)

REM -- On retourne au début de la fonction pour recommencer la boucle
goto ping_srv

Aucun commentaire:

Publier un commentaire