Contact Info

Crumbtrail

ActiveXperts.com » Administration » Scripts » WMI » jscript sample

Win32_PerfFormattedData_Tcpip_ICMP jscript sample code

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_PerfFormattedData_Tcpip_ICMP 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_PerfFormattedData_Tcpip_ICMP", "WQL",
                                          wbemFlagReturnImmediately | wbemFlagForwardOnly);

   var enumItems = new Enumerator(colItems);
   for (; !enumItems.atEnd(); enumItems.moveNext()) {
      var objItem = enumItems.item();

      WScript.Echo("Caption: " + objItem.Caption);
      WScript.Echo("Description: " + objItem.Description);
      WScript.Echo("Frequency_Object: " + objItem.Frequency_Object);
      WScript.Echo("Frequency_PerfTime: " + objItem.Frequency_PerfTime);
      WScript.Echo("Frequency_Sys100NS: " + objItem.Frequency_Sys100NS);
      WScript.Echo("MessagesOutboundErrors: " + objItem.MessagesOutboundErrors);
      WScript.Echo("MessagesPersec: " + objItem.MessagesPersec);
      WScript.Echo("MessagesReceivedErrors: " + objItem.MessagesReceivedErrors);
      WScript.Echo("MessagesReceivedPersec: " + objItem.MessagesReceivedPersec);
      WScript.Echo("MessagesSentPersec: " + objItem.MessagesSentPersec);
      WScript.Echo("Name: " + objItem.Name);
      WScript.Echo("ReceivedAddressMask: " + objItem.ReceivedAddressMask);
      WScript.Echo("ReceivedAddressMaskReply: " + objItem.ReceivedAddressMaskReply);
      WScript.Echo("ReceivedDestUnreachable: " + objItem.ReceivedDestUnreachable);
      WScript.Echo("ReceivedEchoPersec: " + objItem.ReceivedEchoPersec);
      WScript.Echo("ReceivedEchoReplyPersec: " + objItem.ReceivedEchoReplyPersec);
      WScript.Echo("ReceivedParameterProblem: " + objItem.ReceivedParameterProblem);
      WScript.Echo("ReceivedRedirectPersec: " + objItem.ReceivedRedirectPersec);
      WScript.Echo("ReceivedSourceQuench: " + objItem.ReceivedSourceQuench);
      WScript.Echo("ReceivedTimeExceeded: " + objItem.ReceivedTimeExceeded);
      WScript.Echo("ReceivedTimestampPersec: " + objItem.ReceivedTimestampPersec);
      WScript.Echo("ReceivedTimestampReplyPersec: " + objItem.ReceivedTimestampReplyPersec);
      WScript.Echo("SentAddressMask: " + objItem.SentAddressMask);
      WScript.Echo("SentAddressMaskReply: " + objItem.SentAddressMaskReply);
      WScript.Echo("SentDestinationUnreachable: " + objItem.SentDestinationUnreachable);
      WScript.Echo("SentEchoPersec: " + objItem.SentEchoPersec);
      WScript.Echo("SentEchoReplyPersec: " + objItem.SentEchoReplyPersec);
      WScript.Echo("SentParameterProblem: " + objItem.SentParameterProblem);
      WScript.Echo("SentRedirectPersec: " + objItem.SentRedirectPersec);
      WScript.Echo("SentSourceQuench: " + objItem.SentSourceQuench);
      WScript.Echo("SentTimeExceeded: " + objItem.SentTimeExceeded);
      WScript.Echo("SentTimestampPersec: " + objItem.SentTimestampPersec);
      WScript.Echo("SentTimestampReplyPersec: " + objItem.SentTimestampReplyPersec);
      WScript.Echo("Timestamp_Object: " + objItem.Timestamp_Object);
      WScript.Echo("Timestamp_PerfTime: " + objItem.Timestamp_PerfTime);
      WScript.Echo("Timestamp_Sys100NS: " + objItem.Timestamp_Sys100NS);
   }
}