The bug above appers on only certain systems, I have seen in on R900 and PowerEdge 2950 systems. Older PowerEdge 2950 does not seem to be affected, but I am not 100% sure it is not that the older PowerEgde 2950 I have tested with has a DRAC card.
The problem is that the code tries to divide a string. The below patch solved the problem.
Code:
--- dell_health.py 2009-07-20 20:00:36.000000000 +0100
+++ dell_health.py.test 2009-07-20 20:04:21.000000000 +0100
@@ -697,7 +697,8 @@
if voltages[x]['Reading'] == []:
pass
else:
- str += "%.1f V" % (voltages[x]['Reading'] / 1000)
+ voltages[x]['Reading'] = voltages[x]['Reading'].strip('mV')
+ str += "%.1f V" % (int(voltages[x]['Reading']) / 1000)
voltages[x]['Voltage Status'], stateFlag = self.getStatusProbe(voltages[x]['Voltage Status'])
if stateFlag >= prevState:
prevState = stateFlag