From 3f6e6d4c391c070ddc7be2e001fffc5400966c35 Mon Sep 17 00:00:00 2001 From: Jarrod Johnson Date: Thu, 8 Aug 2019 15:02:26 -0400 Subject: [PATCH] Support unavailable sensors in redfish --- .../confluent/plugins/hardwaremanagement/redfish.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/confluent_server/confluent/plugins/hardwaremanagement/redfish.py b/confluent_server/confluent/plugins/hardwaremanagement/redfish.py index e4506a91..b58e2106 100644 --- a/confluent_server/confluent/plugins/hardwaremanagement/redfish.py +++ b/confluent_server/confluent/plugins/hardwaremanagement/redfish.py @@ -682,6 +682,10 @@ class IpmiHandler(object): try: reading = self.ipmicmd.get_sensor_reading( sensor['name']) + if reading.unavailable: + self.output.put(msg.SensorReadings([EmptySensor( + sensor['name'])], name=self.node)) + continue except pygexc.IpmiException as ie: if ie.ipmicode == 203: self.output.put(msg.SensorReadings([EmptySensor( @@ -702,6 +706,11 @@ class IpmiHandler(object): try: reading = self.ipmicmd.get_sensor_reading( self.sensormap[sensorname]) + if reading.unavailable: + self.output.put(msg.ConfluentResourceUnavailable( + self.node, 'Unavailable' + )) + return if hasattr(reading, 'health'): reading.health = _str_health(reading.health) self.output.put(