Appel de Script VBS avec NRPE-NT [Résolu] - Réseaux - Systèmes & Réseaux Pro
Marsh Posté le 05-09-2008 à 09:20:57
Bon et bien je viens de trouver, il fallait tout simplement effectuer une sortie standard avec un Wscript.Echo "OK" juste avant de quitter avec la commande Wscript.Quit ().
3 jours de recherche pour ça.... je suis dégouter, mais j'ai trouvé
Merci à ceux qui ont lu mon post.
Marsh Posté le 04-09-2008 à 10:56:12
Bonjour @ tous,
J'ai installé Nagios(2.0)/Centreon(1.4) sous OpenSuse avec tout ce qu'il faut comme plugins (tout marche superbement bien^^). Mon problème est que je cherche à monitorer la date de modification d'un fichier situé sur un Windows 2003 Server. Du coup, après m'être renseigné, on me conseille de faire cela avec NRPE et un script vbs fait maison. J'ai donc installé le check_nrpe sur le serveur Nagios et j'ai installé NRPENT sous mon Windows 2003.
Depuis le serveur Nagios, lorsque je lance la commande:
/usr/local/nagios/libexec # ./check_nrpe -H IPMonServeurWindows
j'obtiens comme réponse:
NRPE_NT v0.8b/2.0
donc la communication se fait parfaitement bien entre NRPE Windows et mon serveur NAGIOS.
Voilà mon script vbs:
"
'Création de l'objet fichier
Set fso = CreateObject("Scripting.FileSystemObject" )
'Définition de la variable Time qui prend l'heure sytème
dim Time
Time = Now
Const intOK = 0
Const intWarning = 1
Const intCritical = 2
Const intUnknown = 3
'Vérification de l'existence du fichier
If fso.FileExists("C:\Test.txt" ) = True Then
Set oFile = fso.GetFile("C:\Test.txt" )
'Récupération de la date de modification du fichier
dtmCreationDate = oFile.DateLastModified
'Comparaison entre l'heure de modif du fichier et l'heure système, si elle est supérieure à 3H alors on déclanche l'erreur Critique
If Datediff("h", dtmCreationDate, Time) >= 3 Then
WScript.Quit(intCritical)
Set oFile = Nothing
Else
'si elle est comprise entre 2 et 3H alors on déclanche l'erreur Warning
If Datediff("h", dtmCreationDate, Time) >= 2 Then
WScript.Quit(intWarning)
Else
WScript.Quit(intOK)
End if
End if
Else
WScript.Quit(intUnknown)
End if
"
Pour résumer, ce script va chercher un fichier et regarde sa date de modification puis la compare avec l'heure système. Si cette différence est supérieure à 3, alors ça renvoie Critique(2) à Nagios. Si c'est entre 2H et 3H, ça renvoie un Warning(1) et si c'est moins de 2H, ça renvoie OK (0)
Si j'exécute ce script en local, ça marche très bien.
Ensuite j'ai modifié mon fichier de configuration de NRPENT: nrpe.cfg:
server_port=5666
allowed_hosts=IPServNagios,IPServWindows
dont_blame_nrpe=1
debug=1
command_timeout=30
loglevel=7
use_win_metachars=1
command[check_ModifiedDate]=C:\windows\system32\cscript.exe //nologo //T:20 C:\NRPENT\bin\Fichier.vbs
Depuis le serveur Nagios, si je lance la commande:
/usr/local/nagios/libexec # ./check_nrpe -H IPMonServeurWindows -c check_ModifiedDate
J'obtiens:
No output available from command...
Quelqu'un voit pourquoi ?? A mon avis c'est mon script vbs qui n'arrive pas à renvoyer de valeurs à Nagios, mais je suis pas sûr. HELP please
Message édité par machinehead02 le 05-09-2008 à 12:18:01