Win32_PerfFormattedData_Tcpip_IPv4 - WMI sample in Python

The foundations for Manageability in Windows 7/2008/Vista/XP/2000 and Millennium Edition/'98 are 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.

On this site, you can find many WMI samples.


Win32_PerfFormattedData_Tcpip_IPv4

Description

Example(s)

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_IPv4")
for objItem in colItems:
    if objItem.Caption != None:
        print "Caption:" + ` objItem.Caption`
    if objItem.DatagramsForwardedPersec != None:
        print "DatagramsForwardedPersec:" + ` objItem.DatagramsForwardedPersec`
    if objItem.DatagramsOutboundDiscarded != None:
        print "DatagramsOutboundDiscarded:" + ` objItem.DatagramsOutboundDiscarded`
    if objItem.DatagramsOutboundNoRoute != None:
        print "DatagramsOutboundNoRoute:" + ` objItem.DatagramsOutboundNoRoute`
    if objItem.DatagramsPersec != None:
        print "DatagramsPersec:" + ` objItem.DatagramsPersec`
    if objItem.DatagramsReceivedAddressErrors != None:
        print "DatagramsReceivedAddressErrors:" + ` objItem.DatagramsReceivedAddressErrors`
    if objItem.DatagramsReceivedDeliveredPersec != None:
        print "DatagramsReceivedDeliveredPersec:" + ` objItem.DatagramsReceivedDeliveredPersec`
    if objItem.DatagramsReceivedDiscarded != None:
        print "DatagramsReceivedDiscarded:" + ` objItem.DatagramsReceivedDiscarded`
    if objItem.DatagramsReceivedHeaderErrors != None:
        print "DatagramsReceivedHeaderErrors:" + ` objItem.DatagramsReceivedHeaderErrors`
    if objItem.DatagramsReceivedPersec != None:
        print "DatagramsReceivedPersec:" + ` objItem.DatagramsReceivedPersec`
    if objItem.DatagramsReceivedUnknownProtocol != None:
        print "DatagramsReceivedUnknownProtocol:" + ` objItem.DatagramsReceivedUnknownProtocol`
    if objItem.DatagramsSentPersec != None:
        print "DatagramsSentPersec:" + ` objItem.DatagramsSentPersec`
    if objItem.Description != None:
        print "Description:" + ` objItem.Description`
    if objItem.FragmentationFailures != None:
        print "FragmentationFailures:" + ` objItem.FragmentationFailures`
    if objItem.FragmentedDatagramsPersec != None:
        print "FragmentedDatagramsPersec:" + ` objItem.FragmentedDatagramsPersec`
    if objItem.FragmentReassemblyFailures != None:
        print "FragmentReassemblyFailures:" + ` objItem.FragmentReassemblyFailures`
    if objItem.FragmentsCreatedPersec != None:
        print "FragmentsCreatedPersec:" + ` objItem.FragmentsCreatedPersec`
    if objItem.FragmentsReassembledPersec != None:
        print "FragmentsReassembledPersec:" + ` objItem.FragmentsReassembledPersec`
    if objItem.FragmentsReceivedPersec != None:
        print "FragmentsReceivedPersec:" + ` objItem.FragmentsReceivedPersec`
    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.Name != None:
        print "Name:" + ` objItem.Name`
    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`