Win32_PerfFormattedData_Tcpip_ICMP python 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_PerfFormattedData_Tcpip_ICMP WMI class can be used in ActiveXperts Network Monitor to monitor your servers.
Sample Code
import win32com.client
def WMIDateStringToDate(dtmDate):
strDateTime = ""
if (dtmDate[4] == 0):
strDateTime = dtmDate[5] + '/'
else:
strDateTime = dtmDate[4] + dtmDate[5] + '/'
if (dtmDate[6] == 0):
strDateTime = strDateTime + dtmDate[7] + '/'
else:
strDateTime = strDateTime + dtmDate[6] + dtmDate[7] + '/'
strDateTime = strDateTime + dtmDate[0] + dtmDate[1] + dtmDate[2] + dtmDate[3] + " " + dtmDate[8] + dtmDate[9] + ":" + dtmDate[10] + dtmDate[11] +':' + dtmDate[12] + dtmDate[13]
return strDateTime
strComputer = "."
objWMIService = win32com.client.Dispatch("WbemScripting.SWbemLocator")
objSWbemServices = objWMIService.ConnectServer(strComputer,"root\cimv2")
colItems = objSWbemServices.ExecQuery("SELECT * FROM Win32_PerfFormattedData_Tcpip_ICMP")
for objItem in colItems:
if objItem.Caption != None:
print "Caption:" + ` objItem.Caption`
if objItem.Description != None:
print "Description:" + ` objItem.Description`
if objItem.Frequency_Object != None:
print "Frequency_Object:" + ` objItem.Frequency_Object`
if objItem.Frequency_PerfTime != None:
print "Frequency_PerfTime:" + ` objItem.Frequency_PerfTime`
if objItem.Frequency_Sys100NS != None:
print "Frequency_Sys100NS:" + ` objItem.Frequency_Sys100NS`
if objItem.MessagesOutboundErrors != None:
print "MessagesOutboundErrors:" + ` objItem.MessagesOutboundErrors`
if objItem.MessagesPersec != None:
print "MessagesPersec:" + ` objItem.MessagesPersec`
if objItem.MessagesReceivedErrors != None:
print "MessagesReceivedErrors:" + ` objItem.MessagesReceivedErrors`
if objItem.MessagesReceivedPersec != None:
print "MessagesReceivedPersec:" + ` objItem.MessagesReceivedPersec`
if objItem.MessagesSentPersec != None:
print "MessagesSentPersec:" + ` objItem.MessagesSentPersec`
if objItem.Name != None:
print "Name:" + ` objItem.Name`
if objItem.ReceivedAddressMask != None:
print "ReceivedAddressMask:" + ` objItem.ReceivedAddressMask`
if objItem.ReceivedAddressMaskReply != None:
print "ReceivedAddressMaskReply:" + ` objItem.ReceivedAddressMaskReply`
if objItem.ReceivedDestUnreachable != None:
print "ReceivedDestUnreachable:" + ` objItem.ReceivedDestUnreachable`
if objItem.ReceivedEchoPersec != None:
print "ReceivedEchoPersec:" + ` objItem.ReceivedEchoPersec`
if objItem.ReceivedEchoReplyPersec != None:
print "ReceivedEchoReplyPersec:" + ` objItem.ReceivedEchoReplyPersec`
if objItem.ReceivedParameterProblem != None:
print "ReceivedParameterProblem:" + ` objItem.ReceivedParameterProblem`
if objItem.ReceivedRedirectPersec != None:
print "ReceivedRedirectPersec:" + ` objItem.ReceivedRedirectPersec`
if objItem.ReceivedSourceQuench != None:
print "ReceivedSourceQuench:" + ` objItem.ReceivedSourceQuench`
if objItem.ReceivedTimeExceeded != None:
print "ReceivedTimeExceeded:" + ` objItem.ReceivedTimeExceeded`
if objItem.ReceivedTimestampPersec != None:
print "ReceivedTimestampPersec:" + ` objItem.ReceivedTimestampPersec`
if objItem.ReceivedTimestampReplyPersec != None:
print "ReceivedTimestampReplyPersec:" + ` objItem.ReceivedTimestampReplyPersec`
if objItem.SentAddressMask != None:
print "SentAddressMask:" + ` objItem.SentAddressMask`
if objItem.SentAddressMaskReply != None:
print "SentAddressMaskReply:" + ` objItem.SentAddressMaskReply`
if objItem.SentDestinationUnreachable != None:
print "SentDestinationUnreachable:" + ` objItem.SentDestinationUnreachable`
if objItem.SentEchoPersec != None:
print "SentEchoPersec:" + ` objItem.SentEchoPersec`
if objItem.SentEchoReplyPersec != None:
print "SentEchoReplyPersec:" + ` objItem.SentEchoReplyPersec`
if objItem.SentParameterProblem != None:
print "SentParameterProblem:" + ` objItem.SentParameterProblem`
if objItem.SentRedirectPersec != None:
print "SentRedirectPersec:" + ` objItem.SentRedirectPersec`
if objItem.SentSourceQuench != None:
print "SentSourceQuench:" + ` objItem.SentSourceQuench`
if objItem.SentTimeExceeded != None:
print "SentTimeExceeded:" + ` objItem.SentTimeExceeded`
if objItem.SentTimestampPersec != None:
print "SentTimestampPersec:" + ` objItem.SentTimestampPersec`
if objItem.SentTimestampReplyPersec != None:
print "SentTimestampReplyPersec:" + ` objItem.SentTimestampReplyPersec`
if objItem.Timestamp_Object != None:
print "Timestamp_Object:" + ` objItem.Timestamp_Object`
if objItem.Timestamp_PerfTime != None:
print "Timestamp_PerfTime:" + ` objItem.Timestamp_PerfTime`
if objItem.Timestamp_Sys100NS != None:
print "Timestamp_Sys100NS:" + ` objItem.Timestamp_Sys100NS`
