Win32_PerfRawData_PerfDisk_LogicalDisk jscript sample code | ActiveXperts Network Monitor
The foundations for Manageability in Windows is Windows Management Instrumentation (WMI; formerly WBEM) and WMI extensions for Windows Driver Model (WDM).
ActiveXperts Network Monitor provides the ability to build monitor check routines based on WMI. ActiveXperts has collected more than a hundred WMI samples. You can use these samples as a base for new check routines you can write yourself. The Win32_PerfRawData_PerfDisk_LogicalDisk WMI class can be used in ActiveXperts Network Monitor to monitor your servers.
Sample Code
var wbemFlagReturnImmediately = 0x10;
var wbemFlagForwardOnly = 0x20;
var arrComputers = new Array("\localhost");
for (i = 0; i < arrComputers.length; i++) {
WScript.Echo();
WScript.Echo("==========================================");
WScript.Echo("Computer: " + arrComputers[i]);
WScript.Echo("==========================================");
var objWMIService = GetObject("winmgmts:\\\\" + arrComputers[i] + "\\root\\CIMV2");
var colItems = objWMIService.ExecQuery("SELECT * FROM Win32_PerfRawData_PerfDisk_LogicalDisk", "WQL",
wbemFlagReturnImmediately | wbemFlagForwardOnly);
var enumItems = new Enumerator(colItems);
for (; !enumItems.atEnd(); enumItems.moveNext()) {
var objItem = enumItems.item();
WScript.Echo("AvgDiskBytesPerRead: " + objItem.AvgDiskBytesPerRead);
WScript.Echo("AvgDiskBytesPerRead_Base: " + objItem.AvgDiskBytesPerRead_Base);
WScript.Echo("AvgDiskBytesPerTransfer: " + objItem.AvgDiskBytesPerTransfer);
WScript.Echo("AvgDiskBytesPerTransfer_Base: " + objItem.AvgDiskBytesPerTransfer_Base);
WScript.Echo("AvgDiskBytesPerWrite: " + objItem.AvgDiskBytesPerWrite);
WScript.Echo("AvgDiskBytesPerWrite_Base: " + objItem.AvgDiskBytesPerWrite_Base);
WScript.Echo("AvgDiskQueueLength: " + objItem.AvgDiskQueueLength);
WScript.Echo("AvgDiskReadQueueLength: " + objItem.AvgDiskReadQueueLength);
WScript.Echo("AvgDisksecPerRead: " + objItem.AvgDisksecPerRead);
WScript.Echo("AvgDisksecPerRead_Base: " + objItem.AvgDisksecPerRead_Base);
WScript.Echo("AvgDisksecPerTransfer: " + objItem.AvgDisksecPerTransfer);
WScript.Echo("AvgDisksecPerTransfer_Base: " + objItem.AvgDisksecPerTransfer_Base);
WScript.Echo("AvgDisksecPerWrite: " + objItem.AvgDisksecPerWrite);
WScript.Echo("AvgDisksecPerWrite_Base: " + objItem.AvgDisksecPerWrite_Base);
WScript.Echo("AvgDiskWriteQueueLength: " + objItem.AvgDiskWriteQueueLength);
WScript.Echo("Caption: " + objItem.Caption);
WScript.Echo("CurrentDiskQueueLength: " + objItem.CurrentDiskQueueLength);
WScript.Echo("Description: " + objItem.Description);
WScript.Echo("DiskBytesPersec: " + objItem.DiskBytesPersec);
WScript.Echo("DiskReadBytesPersec: " + objItem.DiskReadBytesPersec);
WScript.Echo("DiskReadsPersec: " + objItem.DiskReadsPersec);
WScript.Echo("DiskTransfersPersec: " + objItem.DiskTransfersPersec);
WScript.Echo("DiskWriteBytesPersec: " + objItem.DiskWriteBytesPersec);
WScript.Echo("DiskWritesPersec: " + objItem.DiskWritesPersec);
WScript.Echo("FreeMegabytes: " + objItem.FreeMegabytes);
WScript.Echo("Frequency_Object: " + objItem.Frequency_Object);
WScript.Echo("Frequency_PerfTime: " + objItem.Frequency_PerfTime);
WScript.Echo("Frequency_Sys100NS: " + objItem.Frequency_Sys100NS);
WScript.Echo("Name: " + objItem.Name);
WScript.Echo("PercentDiskReadTime: " + objItem.PercentDiskReadTime);
WScript.Echo("PercentDiskReadTime_Base: " + objItem.PercentDiskReadTime_Base);
WScript.Echo("PercentDiskTime: " + objItem.PercentDiskTime);
WScript.Echo("PercentDiskTime_Base: " + objItem.PercentDiskTime_Base);
WScript.Echo("PercentDiskWriteTime: " + objItem.PercentDiskWriteTime);
WScript.Echo("PercentDiskWriteTime_Base: " + objItem.PercentDiskWriteTime_Base);
WScript.Echo("PercentFreeSpace: " + objItem.PercentFreeSpace);
WScript.Echo("PercentFreeSpace_Base: " + objItem.PercentFreeSpace_Base);
WScript.Echo("PercentIdleTime: " + objItem.PercentIdleTime);
WScript.Echo("PercentIdleTime_Base: " + objItem.PercentIdleTime_Base);
WScript.Echo("SplitIOPerSec: " + objItem.SplitIOPerSec);
WScript.Echo("Timestamp_Object: " + objItem.Timestamp_Object);
WScript.Echo("Timestamp_PerfTime: " + objItem.Timestamp_PerfTime);
WScript.Echo("Timestamp_Sys100NS: " + objItem.Timestamp_Sys100NS);
}
}
