You are here:
ActiveXperts.com > ActiveXperts Network Monitor > WindowsManagement > Scripts > Hardware > Monitoring
Quicklinks
You can use any of the VBScript programs below in ActiveXperts Network Monitor. Click here for an explanation about how to include scripts in ActiveXperts Network Monitor.
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
set objRefresher = CreateObject("WbemScripting.SWbemRefresher")
Set objMemory = objRefresher.AddEnum _
(objWMIService, "Win32_PerfFormattedData_PerfOS_Memory").objectSet
objRefresher.Refresh
Do
For Each intAvailableBytes in objMemory
If intAvailableBytes.AvailableMBytes < 4 Then
Wscript.Echo "Available memory has fallen below 4 megabytes."
End If
Next
objRefresher.Refresh
Loop
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colMonitoredEvents = objWMIService.ExecNotificationQuery _
("Select * from Win32_PowerManagementEvent")
Do
Set strLatestEvent = colMonitoredEvents.NextEvent
Wscript.Echo strLatestEvent.EventType
Loop
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
set objRefresher = CreateObject("WbemScripting.SWbemRefresher")
Set colItems = objRefresher.AddEnum _
(objWMIService, "Win32_PerfFormattedData_PerfOS_Cache").objectSet
objRefresher.Refresh
For i = 1 to 5
For Each objItem in colItems
Wscript.Echo "Asynchronous Copy Reads Per Second: " & _
objItem.AsyncCopyReadsPersec
Wscript.Echo "Asynchronous Data Maps Per Second: " & _
objItem.AsyncDataMapsPersec
Wscript.Echo "Asynchronous Fast Reads Per Second: " & _
objItem.AsyncFastReadsPersec
Wscript.Echo "Asynchronous MDL Reads Per Second: " & _
objItem.AsyncMDLReadsPersec
Wscript.Echo "Asynchronous Pin Reads Per Second: " & _
objItem.AsyncPinReadsPersec
Wscript.Echo "Caption: " & objItem.Caption
Wscript.Echo "Copy Read Hits Percent: " & objItem.CopyReadHitsPercent
Wscript.Echo "Copy Reads Per Second: " & objItem.CopyReadsPersec
Wscript.Echo "Data Flushes Per Second: " & objItem.DataFlushesPersec
Wscript.Echo "Data Flush Pages Per Second: " & _
objItem.DataFlushPagesPersec
Wscript.Echo "Data Map Hits Percent: " & objItem.DataMapHitsPercent
Wscript.Echo "Data Map Pins Per Second: " & objItem.DataMapPinsPersec
Wscript.Echo "Data Maps Per Second: " & objItem.DataMapsPersec
Wscript.Echo "Description: " & objItem.Description
Wscript.Echo "Fast Read Not Possibles Per Second: " & _
objItem.FastReadNotPossiblesPersec
Wscript.Echo "Fast Read Resource Misses Per Second: " & _
objItem.FastReadResourceMissesPersec
Wscript.Echo "Fast Reads Per Second: " & objItem.FastReadsPersec
Wscript.Echo "Lazy Write Flushes Per Second: " & _
objItem.LazyWriteFlushesPersec
Wscript.Echo "Lazy Write Pages Per Second: " & _
objItem.LazyWritePagesPersec
Wscript.Echo "MDL Read Hits Percent: " & objItem.MDLReadHitsPercent
Wscript.Echo "MDL Reads Per Second: " & objItem.MDLReadsPersec
Wscript.Echo "Name: " & objItem.Name
Wscript.Echo "Pin Read Hits Percent: " & objItem.PinReadHitsPercent
Wscript.Echo "Pin Reads Per Second: " & objItem.PinReadsPersec
Wscript.Echo "Read Aheads Per Second: " & objItem.ReadAheadsPersec
Wscript.Echo "Synchronous Copy Reads Per Second: " & _
objItem.SyncCopyReadsPersec
Wscript.Echo "Synchronous Data Maps Per Second: " & _
objItem.SyncDataMapsPersec
Wscript.Echo "Synchronous Fast Reads Per Second: " & _
objItem.SyncFastReadsPersec
Wscript.Echo "Synchronous MDL Reads Per Second: " & _
objItem.SyncMDLReadsPersec
Wscript.Echo "Synchronous Pin Reads Per Second: " & _
objItem.SyncPinReadsPersec
Wscript.Sleep 2000
objRefresher.Refresh
Next
Next
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
set objRefresher = CreateObject("WbemScripting.SWbemRefresher")
Set colItems = objRefresher.AddEnum _
(objWMIService, "Win32_PerfFormattedData_PerfOS_Memory").objectSet
objRefresher.Refresh
For i = 1 to 5
For Each objItem in colItems
Wscript.Echo "Available Bytes: " & objItem.AvailableBytes
Wscript.Echo "Available Kilobytes: " & objItem.AvailableKBytes
Wscript.Echo "Available Megabytes: " & objItem.AvailableMBytes
Wscript.Echo "Cache Bytes: " & objItem.CacheBytes
Wscript.Echo "Cache Bytes Peak: " & objItem.CacheBytesPeak
Wscript.Echo "Cache Faults Per Second: " & objItem.CacheFaultsPersec
Wscript.Echo "Caption: " & objItem.Caption
Wscript.Echo "Commit Limit: " & objItem.CommitLimit
Wscript.Echo "Committed Bytes: " & objItem.CommittedBytes
Wscript.Echo "Demand Zero Faults Per Second: " & _
objItem.DemandZeroFaultsPersec
Wscript.Echo "Description: " & objItem.Description
Wscript.Echo "Free System Page Table Entries: " & _
objItem.FreeSystemPageTableEntries
Wscript.Echo "Name: " & objItem.Name
Wscript.Echo "Page Faults Per Second: " & objItem.PageFaultsPersec
Wscript.Echo "Page Reads Per Second: " & objItem.PageReadsPersec
Wscript.Echo "Pages Input Per Second: " & objItem.PagesInputPersec
Wscript.Echo "Pages Output Per Second: " & objItem.PagesOutputPersec
Wscript.Echo "Pages Per Second: " & objItem.PagesPersec
Wscript.Echo "Page Writes Per Second: " & objItem.PageWritesPersec
Wscript.Echo "Percent Committed Bytes In Use: " & _
objItem.PercentCommittedBytesInUse
Wscript.Echo "Pool Nonpaged Allocations: " & objItem.PoolNonpagedAllocs
Wscript.Echo "Pool Nonpaged Bytes: " & objItem.PoolNonpagedBytes
Wscript.Echo "Pool Paged Allocations: " & objItem.PoolPagedAllocs
Wscript.Echo "Pool Paged Bytes: " & objItem.PoolPagedBytes
Wscript.Echo "Pool Paged Resident Bytes: " & _
objItem.PoolPagedResidentBytes
Wscript.Echo "System Cache Resident Bytes: " & _
objItem.SystemCacheResidentBytes
Wscript.Echo "System Code Resident Bytes: " & _
objItem.SystemCodeResidentBytes
Wscript.Echo "System Code Total Bytes: " & objItem.SystemCodeTotalBytes
Wscript.Echo "System Driver Resident Bytes: " & _
objItem.SystemDriverResidentBytes
Wscript.Echo "System Driver Total Bytes: " & _
objItem.SystemDriverTotalBytes
Wscript.Echo "Transition Faults Per Second: " & _
objItem.TransitionFaultsPersec
Wscript.Echo "Write Copies Per Second: " & objItem.WriteCopiesPersec
Wscript.Sleep 2000
objRefresher.Refresh
Next
Next
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
set objRefresher = CreateObject("WbemScripting.SWbemRefresher")
Set colItems = objRefresher.AddEnum _
(objWMIService, "Win32_PerfFormattedData_PerfOS_Processor").objectSet
objRefresher.Refresh
For i = 1 to 5
For Each objItem in colItems
Wscript.Echo "C1 Transitions Per Second: " & _
objItem.C1TransitionsPersec
Wscript.Echo "C2 Transitions Per Second: " & _
objItem.C2TransitionsPersec
Wscript.Echo "C3 Transitions Per Second: " & _
objItem.C3TransitionsPersec
Wscript.Echo "Caption: " & objItem.Caption
Wscript.Echo "Description: " & objItem.Description
Wscript.Echo "DPC Rate: " & objItem.DPCRate
Wscript.Echo "DPCs Queued Per Second: " & objItem.DPCsQueuedPersec
Wscript.Echo "Interrupts Per Second: " & objItem.InterruptsPersec
Wscript.Echo "Name: " & objItem.Name
Wscript.Echo "Percent C1 Time: " & objItem.PercentC1Time
Wscript.Echo "Percent C2 Time: " & objItem.PercentC2Time
Wscript.Echo "Percent C3 Time: " & objItem.PercentC3Time
Wscript.Echo "Percent DPC Time: " & objItem.PercentDPCTime
Wscript.Echo "Percent Idle Time: " & objItem.PercentIdleTime
Wscript.Echo "Percent Interrupt Time: " & objItem.PercentInterruptTime
Wscript.Echo "Percent Privileged Time: " & _
objItem.PercentPrivilegedTime
Wscript.Echo "Percent Processor Time: " & objItem.PercentProcessorTime
Wscript.Echo "Percent User Time: " & objItem.PercentUserTime
Wscript.Sleep 2000
objRefresher.Refresh
Next
Next
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
set objRefresher = CreateObject("WbemScripting.Swbemrefresher")
Set objProcessor = objRefresher.AddEnum _
(objWMIService, "Win32_PerfFormattedData_PerfOS_Processor").objectSet
intThresholdViolations = 0
objRefresher.Refresh
Do
For Each intProcessorUse in objProcessor
If intProcessorUse.PercentProcessorTime > 90 Then
intThresholdViolations = intThresholdViolations + 1
If intThresholdViolations = 10 Then
intThresholdViolations = 0
Wscript.Echo "Processor usage threshold exceeded."
End If
Else
intThresholdViolations = 0
End If
Next
Wscript.Sleep 6000
objRefresher.Refresh
Loop
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colPingedComputers = objWMIService.ExecQuery _
("Select * from Win32_PingStatus Where Address = '192.168.1.37'")
For Each objComputer in colPingedComputers
If objComputer.StatusCode = 0 Then
Wscript.Echo "Remote computer responded."
Else
Wscript.Echo "Remote computer did not respond."
End If
Next
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colOperatingSystems = objWMIService.ExecQuery _
("Select * from Win32_OperatingSystem")
For Each objOS in colOperatingSystems
dtmBootup = objOS.LastBootUpTime
dtmLastBootupTime = WMIDateStringToDate(dtmBootup)
dtmSystemUptime = DateDiff("h", dtmLastBootUpTime, Now)
Wscript.Echo dtmSystemUptime
Next
Function WMIDateStringToDate(dtmBootup)
WMIDateStringToDate = CDate(Mid(dtmBootup, 5, 2) & "/" & _
Mid(dtmBootup, 7, 2) & "/" & Left(dtmBootup, 4) _
& " " & Mid (dtmBootup, 9, 2) & ":" & _
Mid(dtmBootup, 11, 2) & ":" & Mid(dtmBootup,13, 2))
End Function