Toon posts:

Analyse datagroei Windows servers.

Pagina: 1
Acties:
  • 126 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Ik wil graag de datagroei gaan bijhouden op diverse servers. Het moet mogelijk zijn een overzicht te genereren over een bepaalde periode (maand, kwartaal, halfjaar en jaar) en de grootte per bestandsextentie moet af te lijden zijn. Ik heb al diverse progjes bekeken, maar allemaal vrij prijzig.

Ik zou graag dit zelf in elkaar willen zetten, of een script "lenen" om hier wat wijzer van te kunnen worden.

Alle servers die ik wil monitoren zijn gebaseerd op Windows platforms.

  • StevenK
  • Registratie: Februari 2001
  • Laatst online: 16:36
Ik heb een php scriptje waarmee ik de backup-logs parse en van de info die ik dan in de database zet, maar ik een grafiekje.

Was advocaat maar vindt het juridische nog steeds leuk. Doet tegenwoordig iets in de metaal.


  • LinuZZ
  • Registratie: Januari 2004
  • Laatst online: 14-02 08:55
windows heeft zelf ook een performance monitor. ik laat deze zelf elke avond gescheduled draaien en laat dit wegschrijven naar een .csv bestand welke ik daarna weer inlaad in ons DWH, maar het is ook mogelijk dit naar een MS SQL database te schrijven. daarna kun je met verschillende tools als excel leuke raportjes maken

enphase 8300wp (3460 ZO, 2740 ZW, 2100 NO), 2x20 vacuümbuizen op 300l SWW, Panasonic WH-MXC12J9E8, gasloos sinds Juni 2022 Stromer st3 voor woon-werk


Verwijderd

Topicstarter
LinuZZ schreef op vrijdag 15 juni 2007 @ 11:09:
windows heeft zelf ook een performance monitor. ik laat deze zelf elke avond gescheduled draaien en laat dit wegschrijven naar een .csv bestand welke ik daarna weer inlaad in ons DWH, maar het is ook mogelijk dit naar een MS SQL database te schrijven. daarna kun je met verschillende tools als excel leuke raportjes maken
De performance monitor wekt leuk, maar ik wil hierbij als toevoeging de extenties kunnen uitlezen die het hardst groeien. Dit heb ik niet kunnen terugvinden in de beschikbare counters.

  • LinuZZ
  • Registratie: Januari 2004
  • Laatst online: 14-02 08:55
Verwijderd schreef op vrijdag 15 juni 2007 @ 11:34:
[...]


De performance monitor wekt leuk, maar ik wil hierbij als toevoeging de extenties kunnen uitlezen die het hardst groeien. Dit heb ik niet kunnen terugvinden in de beschikbare counters.
Treesize kun je gebruiken om te kijken hoeveel % of bytes van een bepaalde extensie aanwezig zijn, je kan hier dan ook raportjes van maken en dergelijke. hoeft ook niet veel te kosten, met 1 licentie kun je iedere willekeurige pc via netwerk benaderen om zo scans te maken. programma is erg uitgebreid maar of je er wat aan hebt zul je zelf meoten beoordelen.

http://www.jam-software.com/treesize/index.shtml

hier kun je een evaluatie downloaden. licentie kost 40 euro inclusief 1 jaar updates

enphase 8300wp (3460 ZO, 2740 ZW, 2100 NO), 2x20 vacuümbuizen op 300l SWW, Panasonic WH-MXC12J9E8, gasloos sinds Juni 2022 Stromer st3 voor woon-werk


Verwijderd

Topicstarter
Klopt, ik ben bekend met treesize, maar een het moet toegepast worden bij +35 servers. Geen optie dus i.v.m. de kosten.

Ik wil echt zo op een zo simpel mogelijke wijze, het liefst zelf te maken door middel van freeware een applicatie of script om de datagroei met filtering op extentie te kunnen monitoren..

[ Voor 30% gewijzigd door Verwijderd op 15-06-2007 13:12 ]


  • alt-92
  • Registratie: Maart 2000
  • Niet online

alt-92

ye olde farte

Met wat VBA/VBscript kluswerk kom je een heel eind als het allemaal low-tech, low-cost moet blijven.


VBScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
On Error Resume Next
' ==============================================================
' constants
' ==============================================================
Const WbemAuthenticationLevelPktPrivacy = 6
Const HARD_DISK = 3
Const adOpenStatic = 3
Const adLockOptimistic = 3
' ================================================================
' vars
' ================================================================
strNamespace = "root\cimv2"
strDomain = "domain"
strUser = "administratoraccount@domain"
strPass = "duh"
strDate = FormatDateTime(Now(), 2)
strTime = FormatDateTime(Now(), 4)
' ===============================================================
' Open Db connection for update
' ===============================================================
Set objConnection = CreateObject("ADODB.Connection")
Set objRecordSet = CreateObject("ADODB.Recordset")

objConnection.Open _
    "Provider = Microsoft.Jet.OLEDB.4.0; " & _
        "Data Source = c:\temp\dfsdiskspace\diskspacedfs.mdb" 
objRecordSet.Open "SELECT * FROM tbldiskspace" , _
    objConnection, adOpenStatic, adLockOptimistic
' ================================================================
' list of cluster servers to be queried for info ,
' kan je ook uit een DB tabel trekken natuurlijk
' ===============================================================
arrComputers = Array("server1","server2","server3","server4","server5","server35")

For Each strComputer In arrComputers
' ================================================================
' authenticate using admin credentials on each server
' ================================================================
Set objWbemLocator = CreateObject("WbemScripting.SWbemLocator")
Set objWMIService = objwbemLocator.ConnectServer _
    (strComputer, strNamespace, strUser, strPass)
objWMIService.Security_.authenticationLevel = WbemAuthenticationLevelPktPrivacy
' ==============================================================
' Query each server for disks with volumename HD* 
'( disknames start with HD, % is wildcard)
' ==============================================================
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2") 
Set colDisks = objWMIService.ExecQuery _
    ("SELECT * FROM Win32_LogicalDisk WHERE VolumeName LIKE 'HD%'",,48)

' ==========================================================
' query each disk per server for values and add to DB
' =============================================================

    For Each objDisk in colDisks
        objRecordSet.AddNew
         
          objRecordSet("server") = strComputer
          objRecordSet("domain") = strDomain
          objRecordSet("disk") = objDisk.VolumeName
          objRecordSet("totalspace") = round(objDisk.Size /1024/1024,2)
          objRecordSet("freespace") = round(objDisk.FreeSpace /1024/1024,2)
          objRecordSet("percentage") = (objDisk.Freespace /objDisk.Size)*100
          objRecordSet("date") = strDate
          objRecordSet("time") = strTime
    
        objRecordSet.Update
    Next
Next
' =============================================================
' Close DB connection
' =============================================================
objRecordSet.Close
objConnection.Close



Hiermee kan je naar een access database door middel van een scheduled task de schijfruimte van je servers uitlezen, daar kan je weer andere queries per schijf op loslaten, grafiekjes genereren, wat je wilt.

Wil je de inhoud van je schijven nalopen kan je eventueel met
dir <disk>  /s /n > file


je output file kan je parsen met wat code en vervolgens daar ook weer een uitdraai van maken ;)

ik heb een 864 GB floppydrive! - certified prutser - the social skills of a thermonuclear device


  • jvanhambelgium
  • Registratie: April 2007
  • Laatst online: 14:46
>en de grootte per bestandsextentie moet af te lijden zijn. Ik heb al diverse progjes bekeken, maar >allemaal vrij prijzig

Als dit een noodzaak is zal je toch moeten werken met het parsen van "dir" outputs.
Je kan mijn inziens geen performance-counters/snmp-objecten pollen die info met deze detaillering weergeven (wel totaal gebruik per disk/volume ofzo)
Pagina: 1