Flux rss
Rechercher : dans
Par : Mots clés Nom d'utilisateur
Messages sans réponse

Surveillance des disque en Vbscript et Wmi

lameche007, le jeudi 16 juin 2005 à 10:34:26 
 Signaler ce message aux modérateurs

Bonjour a tous je debute en vbScript et donc comme tout debutant j ai un probleme que vois ci :
Je doit faire un script pemettant la surveillance d espace disque sur des seveurs j ai donc fai un script qui permet de recuperer l espace disque total ainsi que l espace libre sur celui ci en pour centage !!

Maintenant je souhaiterais pouvoir spécifier une liste de serveurs avec un seuil en % pour chacun des volumes de chaque serveur puis stocker ces informations horodatées dans une base de type Access et finalement pouvoir faire des remonter d'alerte via Lotus si un volume est en dessous du seuil pré-défini

voila alors est ce que quelqu ' un peu m orienter ou bien me donner des lien traitant d un sujet similaire parceque j ai beau chercher et je ne trouve rien merci d avance a tous

voila mon debut de script qui je pense peut vous aider a comprendre un pue mieux ce que je veux faire :

'----------------------------------------------------------
' Script de description des Hdd dans une page web
' ----------------------------------------------------------
Dim cnt
dim Aff()
dim Aff0()
dim Aff1()
dim Aff2()
dim Aff3()

cnt = 0
Redim Aff(cnt)
Redim Aff0(cnt)
Redim Aff1(cnt)
Redim Aff2(cnt)
Redim Aff3(cnt)

Select Case WScript.Arguments.Count
Case 0
' Default if none specified is local computer (".")
Set objWMIService = GetObject( "winmgmts://./root/cimv2" )
Set colItems = objWMIService.ExecQuery( "Select * from Win32_ComputerSystem", , 48 )
For Each objItem in colItems
strComputer = objItem.Name
Next
Case 1
' Command line parameter can either be a computer name
' or "/?" to request online help
strComputer = Wscript.Arguments(0)
if InStr( strComputer, "?" ) > 0 Then Syntax
Case Else
' Maximum is 1 command line parameter
Syntax
End Select

Display( strComputer )

Function Display( strComputer )
On Error Resume Next
Set objWMIService = GetObject( "winmgmts://" & strComputer & "/root/cimv2" )
If Err.Number Then
WScript.Echo vbCrLf & "Error # " & CStr( Err.Number ) & _
" " & Err.Description
Err.Clear
Syntax
End If
On Error GoTo 0
' Set colItems = objWMIService.ExecQuery("Select * from Win32_LogicalDisk where MediaType=12",,48)
Set colItems = objWMIService.ExecQuery("Select * from Win32_LogicalDisk where DriveType=3",,48)
For Each objItem in colItems
Aff(cnt) = strComputer
Aff0(cnt) = objItem.Name & vbTab
Aff1(cnt) = CStr( Int( 0.5 + ( objItem.Size / 1073741824 ) ) )
Aff2(cnt) = CStr( Int( 0.5 + ( objItem.FreeSpace / 1073741824 ) ) )
Aff3(cnt) = CStr( Int( 0.5 + ( 100 * objItem.FreeSpace / objItem.Size) ) ) & _
vbCrLf
cnt = cnt + 1
Redim Preserve Aff(cnt)
Redim Preserve Aff0(cnt)
Redim Preserve Aff1(cnt)
Redim Preserve Aff2(cnt)
Redim Preserve Aff3(cnt)
Next
End Function

' ----------------------------------------------------------
Dim fso
Set fso = WScript.CreateObject("Scripting.FileSystemObject")
DestHtml = "hd.html"
CreateHTML DestHTML

Sub CreateHTML(filename)
dim ts
set ts=fso.CreateTextFile(filename,true)
ts.writeline "<HTML>"
ts.WriteLine "<BODY>"
ts.WriteLine "<b><CENTER><H3>Affiche les informations des HDD</H3></b>"
ts.writeline "<table border=1 cellspacing=1 width=100%>"
ts.writeline "<tr>"
ts.writeline "<td width=20%>"
ts.writeline "<p align=center><b>Name</b></td>"
ts.writeline "<td width=20%>"
ts.writeline "<p align=center><b>Drive</b></td>"
ts.writeline "<td width=20%>"
ts.writeline "<p align=center><b>Size</b></td>"
ts.writeline "<td width=20%>"
ts.writeline "<p align=center><b>Free</b></td>"
ts.writeline "<td width=20%>"
ts.writeline "<p align=center><b>% Free</b></td>"
ts.writeline "</tr>"
ts.writeline "<tr>"
for i = 0 to cnt
ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff(i) & "</font></b></td>"
ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff0(i) & "</font></b></td>"
ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff1(i) & "</font></b></td>"
ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff2(i) & "</font></b></td>"
ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff3(i) & "</font></b></td>"
ts.writeline "</tr>"
next

ts.writeline "</table>"
ts.writeline "<p> </p>"
ts.writeline "<p> </p>"
ts.writeline "<p> </p>"
ts.writeline "<p> </p>"
ts.writeline "<p> </p>"
ts.writeline "<p> </p>"
ts.writeline "<p> </p>"
ts.writeline "<p> </p>"
ts.writeline "<p> </p>"
ts.writeline "<p> </p>"
ts.writeline "<p> </p>"
ts.writeline "<b><font size=2>Fait le 14 juin 2005 par Mohax qui pète un plomb lol</font></b>"
ts.WriteLine "</CENTER></BODY>"
ts.WriteLine "</HTML>"
ts.close
End Sub

1

lameche007, le lundi 4 juillet 2005 à 09:37:36
  • +2

Mon problem est reglé

Répondre à lameche007

2

getmoa, le vendredi 4 août 2006 à 15:06:48
  • +1

Bonjour,
Pourrais-tu donner la reponse stp ? j'ai le même pb, ou plutôt le même besoin. merci

Répondre à getmoa

3

Elcaralho, le vendredi 29 août 2008 à 17:11:31
  • +1

Bonjour,

Tout d'abord,Tres bon travail pour un debutant!!!

J'ai recemment eu le meme besoin et j'ai modifié un petit peu le code pour permettre l'affichage a partir d'une liste de nom d'ordi.

le fichier contenant les ordi doit s'appeler ordi.txt, doit se trouver dans le meme repertoire que le script et doit contenir un nom d'ordi par ligne

exempl:

Ordi1
Ordi2
Ordi3


le main du programme est le suivant il faut bien evidemment recuperer le code des fonction Display et CreateHTML:

'**************************************************
Dim cnt
dim Aff()
dim Aff0()
dim Aff1()
dim Aff2()
dim Aff3()

cnt = 0
Redim Aff(cnt)
Redim Aff0(cnt)
Redim Aff1(cnt)
Redim Aff2(cnt)
Redim Aff3(cnt)


Const ForReading = 1
Dim oFso, f

dim rep,fic
rep = WScript.ScriptFullName
fic = WScript.ScriptName

rep = left(rep,len(rep)-len(fic))


Set oFso = CreateObject("Scripting.FileSystemObject")
Set f = oFso.OpenTextFile(rep &"ordi.txt", ForReading)
while Not f.AtEndOfStream
'wscript.echo f.ReadLine
strComputer = f.ReadLine
Display( strComputer )

Wend
f.Close

Dim fso
Set fso = WScript.CreateObject("Scripting.FileSystemObject")
DestHtml = "hdd.html"
CreateHTML DestHTML

'petit plus on ouvre directement le fichier dans IE
Dim IE
Set IE = Wscript.CreateObject("InternetExplorer.Application")
IE.Visible = 1
IE.navigate rep & "hdd.html"

'*************************************************


Je n'ai pas gerer les erreurs au cas ou les ordi n'existent pas donc attention a l'orthographe!!!

++

Répondre à Elcaralho

4

 jmvd2, le dimanche 15 février 2009 à 20:12:07

Bonjour,
Ce script m'interresse,
Je suis nul en prog.
Est il possible de me compiler les deux scripts afin d'avoir un script qui marche ?
Merci a vous...

Répondre à jmvd2
Surveillance des disques durs Bonjour a tous, Voilà un petit moment que je constate que mon disque C joue au yoyo d'un jour a l'autre ce qui me fait penser que quelqu'un s'amuse peut etre a monter des données. A titre d'exemple, en l'espace d'une heure, il est passé de 2Go de... www.commentcamarche.net/forum/affich-5257791-surveillance-des-disques-durs
Surveiller CPU, disque dur, RAM (Résolu) Bonjour, je recherche un utilitaire qui se lancerai au demarrage de l'ordinateur et qui indiquerai le CPU, la capacité de chaque disque dur, la memoire vive restantes .... Je voudrai un logiciel qui indique ces donnes sous forme de graphiques... www.commentcamarche.net/forum/affich-5012987-surveiller-cpu-disque-dur-ram
VBscript et Base de donnée Access (Résolu) bonjour donc voila mon souci j ai mon script qui me permet de recuperer l espace de mes disques ainsi que l espace libre en pourcent je souhaiterais stocker ces informations horodatées dans une base de type Access et faire des remonter d'alerte via... www.commentcamarche.net/forum/affich-1600079-vbscript-et-base-de-donnee-access
Défragmenter son disque durLa défragmentation consiste à regrouper les fragments de fichiers éparpillés sur le disque afin d'optimiser les temps d'accès du disque dur lors de la lecture de fichiers de taille importante. Afin de défragmenter, des algorithmes élaborés sont... www.commentcamarche.net/faq/sujet-58-defragmenter-son-disque-dur
Disque dur externe USB non reconnu sous WindowsSi Windows ne reconnaît pas votre disque dur externe, veuillez vérifier les points suivants : Dans le panneau de configuration : Double-cliquer sur Outils d'administration, Cliquer sur Gestion de l'ordinateur Cliquer sur Gestion des... www.commentcamarche.net/faq/sujet-2930-disque-dur-externe-usb-non-reconnu-sous-windows
Installer Windows XP sur un disque SATA1. Détermination du modèle de la carte-mère 2. Téléchargements des pilotes SATA 3. Installer Windows 3.1. Vous avez un lecteur disquette 3.2. Vous n'avez pas un lecteur disquette 4. Autre solution L'installation de Windows XP sur... www.commentcamarche.net/faq/sujet-5249-installer-windows-xp-sur-un-disque-sata
Script de surveillance (Résolu)Bonjour, svvp j'ai besoin des script de surveillance sous ubuntu server , par exemple qui permet de surveiller la temperature du CPU ... l'occupation du DISQUE DUR..... NB : je sais qsu'il y des utilitaires qui s'occupes de tous mais moi j'ai un... www.commentcamarche.net/forum/affich-12128989-script-de-surveillance
Outil de surveillance AIXBonjour J'ai un outil de surveillance de mon système AIX "TOPAS". Le problème c'est qu'il n'est pas graphique. Est ce que vous connaissez d'autres outils de surveillance graphique du système AIX avec plusieurs capteurs tel que état des disques,... www.commentcamarche.net/forum/affich-3481097-outil-de-surveillance-aix
Activité incessante du disque dur...Bonjour à tous, Malgré norton et l'anti trojan A2 qui ne détectent aucun problème, au bout de quelques secondes pendant lesquelles je n'utilise pas l'ordi, le disque dur se met à "mouliner" en permanence et ce jusqu'à ce que je bouge la souris.... www.commentcamarche.net/forum/affich-693895-activite-incessante-du-disque-dur
Télécharger System Surveillance ProSystem Surveillance Pro est un programme qui s’adresse spécialement à ceux qui veulent s’assurer que personne n’utilise leur ordinateur lorsqu’ils sont absents. Si c’est le cas, System Surveillance Pro pourra vous fournir des preuves d’une utilisation... www.commentcamarche.net/telecharger/telecharger-34059142-system-surveillance-pro
Disque durLe rôle du disque dur Le disque dur est l'organe servant à conserver les données de manière permanente, contrairement à la mémoire vive, qui s'efface à chaque redémarrage de l'ordinateur, c'est la raison pour laquelle on parle parfois de mémoire... www.commentcamarche.net/contents/pc/disque.php3
Partition - Partitionnement d'un disque durQu'est-ce qu'une partition? Le partitionnement d'un disque dur se fait après le formatage physique de celui-ci et avant le formatage logique. Il consiste à créer des zones sur le disque dont les données ne seront pas mélangées. Cela sert par... www.commentcamarche.net/contents/repar/partitio.php3
Formatage - Formater un disque durAvant de vouloir comprendre ce qu'est le formatage, il est essentiel de connaître le fonctionnement d'un disque dur. Beaucoup de personne ne distinguent pas le formatage de bas niveau (appelé aussi formatage physique) et le formatage de haut... www.commentcamarche.net/contents/repar/format.php3