mirror of
https://github.com/Napsty/check_esxi_hardware.git
synced 2024-11-24 03:13:50 +01:00
Extended pywbem version compatibility
This commit is contained in:
parent
3f97ca6485
commit
6c8a4bfd63
@ -41,7 +41,7 @@
|
|||||||
# http://www.vmware.com/support/developer/cim-sdk/4.1/smash/cim_smash_410_prog.pdf
|
# http://www.vmware.com/support/developer/cim-sdk/4.1/smash/cim_smash_410_prog.pdf
|
||||||
# http://www.vmware.com/support/developer/cim-sdk/smash/u2/ga/apirefdoc/
|
# http://www.vmware.com/support/developer/cim-sdk/smash/u2/ga/apirefdoc/
|
||||||
#
|
#
|
||||||
# The VMware 5.x CIM API is documented here:
|
# The VMware 5.x CIM API is documented here:
|
||||||
# http://pubs.vmware.com/vsphere-50/index.jsp?nav=/5_1_1
|
# http://pubs.vmware.com/vsphere-50/index.jsp?nav=/5_1_1
|
||||||
#
|
#
|
||||||
# This Nagios plugin is maintained here:
|
# This Nagios plugin is maintained here:
|
||||||
@ -190,7 +190,7 @@
|
|||||||
#@ Author : Claudio Kuenzler (www.claudiokuenzler.com)
|
#@ Author : Claudio Kuenzler (www.claudiokuenzler.com)
|
||||||
#@ Reason : Added workaround for Dell PE x620 where "System Board 1 Riser Config Err 0: Connected"
|
#@ Reason : Added workaround for Dell PE x620 where "System Board 1 Riser Config Err 0: Connected"
|
||||||
#@ element outputs wrong return code. Dell, please fix that.
|
#@ element outputs wrong return code. Dell, please fix that.
|
||||||
#@ Added web-link to VMware CIM API 5.x at top of script.
|
#@ Added web-link to VMware CIM API 5.x at top of script.
|
||||||
#@---------------------------------------------------
|
#@---------------------------------------------------
|
||||||
#@ Date : 20130424
|
#@ Date : 20130424
|
||||||
#@ Author : Claudio Kuenzler (www.claudiokuenzler.com)
|
#@ Author : Claudio Kuenzler (www.claudiokuenzler.com)
|
||||||
@ -574,25 +574,25 @@ if os_platform != "win32":
|
|||||||
sys.exit(ExitCritical)
|
sys.exit(ExitCritical)
|
||||||
|
|
||||||
# connection to host
|
# connection to host
|
||||||
|
verboseoutput("Connection to "+hosturl)
|
||||||
# pywbem 0.7.0 handling is special, some patched 0.7.0 installations work differently
|
# pywbem 0.7.0 handling is special, some patched 0.7.0 installations work differently
|
||||||
pywbemversion = pkg_resources.get_distribution("pywbem").version
|
pywbemversion = pkg_resources.get_distribution("pywbem").version
|
||||||
|
verboseoutput("Found pywbem version "+pywbemversion)
|
||||||
if '0.7.0' in pywbemversion:
|
if '0.7.0' in pywbemversion:
|
||||||
verboseoutput("Found pywbem version "+pywbemversion)
|
try:
|
||||||
verboseoutput("Connection to "+hosturl)
|
conntest = pywbem.WBEMConnection(hosturl, (user,password))
|
||||||
try:
|
c = conntest.EnumerateInstances('CIM_Card')
|
||||||
conntest = pywbem.WBEMConnection(hosturl, (user,password), NS)
|
|
||||||
c=wbemclient.EnumerateInstances('CIM_Card')
|
|
||||||
except:
|
except:
|
||||||
verboseoutput("Connection error, disable SSL certification verification (probably newer pywbem version)")
|
#raise
|
||||||
wbemclient = pywbem.WBEMConnection(hosturl, (user,password), NS, no_verification=True)
|
verboseoutput("Connection error, disable SSL certification verification (probably patched pywbem)")
|
||||||
|
wbemclient = pywbem.WBEMConnection(hosturl, (user,password), no_verification=True)
|
||||||
else:
|
else:
|
||||||
wbemclient = pywbem.WBEMConnection(hosturl, (user,password), NS)
|
verboseoutput("Connection worked")
|
||||||
|
wbemclient = pywbem.WBEMConnection(hosturl, (user,password))
|
||||||
# pywbem 0.8.0 and later
|
# pywbem 0.8.0 and later
|
||||||
elif '0.8.0' in pywbemversion:
|
elif '0.8.0' in pywbemversion:
|
||||||
verboseoutput("Found pywbem version "+pywbemversion)
|
|
||||||
wbemclient = pywbem.WBEMConnection(hosturl, (user,password), NS, no_verification=True)
|
wbemclient = pywbem.WBEMConnection(hosturl, (user,password), NS, no_verification=True)
|
||||||
|
|
||||||
|
|
||||||
# Add a timeout for the script. When using with Nagios, the Nagios timeout cannot be < than plugin timeout.
|
# Add a timeout for the script. When using with Nagios, the Nagios timeout cannot be < than plugin timeout.
|
||||||
if on_windows == False and timeout > 0:
|
if on_windows == False and timeout > 0:
|
||||||
signal.signal(signal.SIGALRM, handler)
|
signal.signal(signal.SIGALRM, handler)
|
||||||
@ -655,7 +655,7 @@ for classe in ClassesToCheck :
|
|||||||
sensor_value = ""
|
sensor_value = ""
|
||||||
elementName = instance['ElementName']
|
elementName = instance['ElementName']
|
||||||
if elementName is None :
|
if elementName is None :
|
||||||
elementName = 'Unknown'
|
elementName = 'Unknown'
|
||||||
elementNameValue = elementName
|
elementNameValue = elementName
|
||||||
verboseoutput(" Element Name = "+elementName)
|
verboseoutput(" Element Name = "+elementName)
|
||||||
|
|
||||||
@ -798,8 +798,8 @@ for classe in ClassesToCheck :
|
|||||||
# Added 20121027 As long as Dell doesnt correct these CIM elements return code we have to ignore it
|
# Added 20121027 As long as Dell doesnt correct these CIM elements return code we have to ignore it
|
||||||
ignore_list.append("System Board 1 Riser Config Err 0: Connected")
|
ignore_list.append("System Board 1 Riser Config Err 0: Connected")
|
||||||
ignore_list.append("System Board 1 LCD Cable Pres 0: Connected")
|
ignore_list.append("System Board 1 LCD Cable Pres 0: Connected")
|
||||||
ignore_list.append("System Board 1 VGA Cable Pres 0: Connected")
|
ignore_list.append("System Board 1 VGA Cable Pres 0: Connected")
|
||||||
ignore_list.append("Add-in Card 4 PEM Presence 0: Connected")
|
ignore_list.append("Add-in Card 4 PEM Presence 0: Connected")
|
||||||
if instance['OperationalStatus'] is not None :
|
if instance['OperationalStatus'] is not None :
|
||||||
elementStatus = instance['OperationalStatus'][0]
|
elementStatus = instance['OperationalStatus'][0]
|
||||||
verboseoutput(" Element Op Status = %d" % elementStatus)
|
verboseoutput(" Element Op Status = %d" % elementStatus)
|
||||||
@ -884,3 +884,4 @@ else:
|
|||||||
print "%s- Server: %s %s %s%s" % (ExitMsg, server_info, SerialNumber, bios_info, perf)
|
print "%s- Server: %s %s %s%s" % (ExitMsg, server_info, SerialNumber, bios_info, perf)
|
||||||
|
|
||||||
sys.exit (GlobalStatus)
|
sys.exit (GlobalStatus)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user