Win32_SystemEnclosure 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_SystemEnclosure WMI class can be used in ActiveXperts Network Monitor to monitor your servers.
Description
The Win32_SystemEnclosure WMI class represents the properties associated with a physical system enclosure.
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_SystemEnclosure")
for objItem in colItems:
if objItem.AudibleAlarm != None:
print "AudibleAlarm:" + ` objItem.AudibleAlarm`
if objItem.BreachDescription != None:
print "BreachDescription:" + ` objItem.BreachDescription`
if objItem.CableManagementStrategy != None:
print "CableManagementStrategy:" + ` objItem.CableManagementStrategy`
if objItem.Caption != None:
print "Caption:" + ` objItem.Caption`
print "ChassisTypes:"
strList = " "
try :
for objElem in objItem.ChassisTypes :
strList = strList + `objElem` + ","
except:
strList = strList + 'null'
print strList
if objItem.CreationClassName != None:
print "CreationClassName:" + ` objItem.CreationClassName`
if objItem.CurrentRequiredOrProduced != None:
print "CurrentRequiredOrProduced:" + ` objItem.CurrentRequiredOrProduced`
if objItem.Depth != None:
print "Depth:" + ` objItem.Depth`
if objItem.Description != None:
print "Description:" + ` objItem.Description`
if objItem.HeatGeneration != None:
print "HeatGeneration:" + ` objItem.HeatGeneration`
if objItem.Height != None:
print "Height:" + ` objItem.Height`
if objItem.HotSwappable != None:
print "HotSwappable:" + ` objItem.HotSwappable`
if objItem.InstallDate != None:
print "InstallDate:" + WMIDateStringToDate(objItem.InstallDate)
if objItem.LockPresent != None:
print "LockPresent:" + ` objItem.LockPresent`
if objItem.Manufacturer != None:
print "Manufacturer:" + ` objItem.Manufacturer`
if objItem.Model != None:
print "Model:" + ` objItem.Model`
if objItem.Name != None:
print "Name:" + ` objItem.Name`
if objItem.NumberOfPowerCords != None:
print "NumberOfPowerCords:" + ` objItem.NumberOfPowerCords`
if objItem.OtherIdentifyingInfo != None:
print "OtherIdentifyingInfo:" + ` objItem.OtherIdentifyingInfo`
if objItem.PartNumber != None:
print "PartNumber:" + ` objItem.PartNumber`
if objItem.PoweredOn != None:
print "PoweredOn:" + ` objItem.PoweredOn`
if objItem.Removable != None:
print "Removable:" + ` objItem.Removable`
if objItem.Replaceable != None:
print "Replaceable:" + ` objItem.Replaceable`
if objItem.SecurityBreach != None:
print "SecurityBreach:" + ` objItem.SecurityBreach`
if objItem.SecurityStatus != None:
print "SecurityStatus:" + ` objItem.SecurityStatus`
if objItem.SerialNumber != None:
print "SerialNumber:" + ` objItem.SerialNumber`
print "ServiceDescriptions:"
strList = " "
try :
for objElem in objItem.ServiceDescriptions :
strList = strList + `objElem` + ","
except:
strList = strList + 'null'
print strList
print "ServicePhilosophy:"
strList = " "
try :
for objElem in objItem.ServicePhilosophy :
strList = strList + `objElem` + ","
except:
strList = strList + 'null'
print strList
if objItem.SKU != None:
print "SKU:" + ` objItem.SKU`
if objItem.SMBIOSAssetTag != None:
print "SMBIOSAssetTag:" + ` objItem.SMBIOSAssetTag`
if objItem.Status != None:
print "Status:" + ` objItem.Status`
if objItem.Tag != None:
print "Tag:" + ` objItem.Tag`
print "TypeDescriptions:"
strList = " "
try :
for objElem in objItem.TypeDescriptions :
strList = strList + `objElem` + ","
except:
strList = strList + 'null'
print strList
if objItem.Version != None:
print "Version:" + ` objItem.Version`
if objItem.VisibleAlarm != None:
print "VisibleAlarm:" + ` objItem.VisibleAlarm`
if objItem.Weight != None:
print "Weight:" + ` objItem.Weight`
if objItem.Width != None:
print "Width:" + ` objItem.Width`
