|
Post by shawnmm on Apr 1, 2019 23:17:27 GMT
Hi,
I have three simple questions about the Status object for Fans and Temperatures in the Thermal schema. I would really appreciate feedback.
Question #1 What is the intended meaning of the Status->Health property? Is it describing the health of the sensor itself, the health of the hardware being monitored by the sensor, or a merge of the two?
For example, the following health problems could occur for a fan: * Unable to communicate with fan controller chip to read actual speed (sensor problem) * Actual fan speed is far below target speed (fan problem)
Should both be treated the same way in Redfish, setting Status->Health to "Warning" or "Critical" within the Fan?
The same question applies for Temperatures. For example, we might be unable to communicate with a temperature sensor, or the hardware being sensed may be far too hot.
Question #2
What is the intended meaning when Status->State is set to "Absent"? Does this mean the sensor is absent, the hardware being sensed is absent, or a merge of the two?
Question #3 If Status->State is set to "Absent", should Status->Health be returned at all? If so, should it have the value "Warning" or "Critical" since the sensor/hardware being sensed is missing?
Thanks! Shawn
|
|
|
Post by jautor on Apr 2, 2019 21:36:18 GMT
Hi, I have three simple questions about the Status object for Fans and Temperatures in the Thermal schema. I would really appreciate feedback.
Question #1 What is the intended meaning of the Status->Health property? Is it describing the health of the sensor itself, the health of the hardware being monitored by the sensor, or a merge of the two?
For example, the following health problems could occur for a fan: * Unable to communicate with fan controller chip to read actual speed (sensor problem) * Actual fan speed is far below target speed (fan problem)
Should both be treated the same way in Redfish, setting Status->Health to "Warning" or "Critical" within the Fan?
The same question applies for Temperatures. For example, we might be unable to communicate with a temperature sensor, or the hardware being sensed may be far too hot.
The Health value should indicate that there is an issue with the device itself. So yes, for a fan speed lower than target, that would be a direct issue with the device. Communication issues or other faults may reside elsewhere, so indicating a Warning/Critical Health may cause a user to do something that would not correct the issue (e.g. replacing a fan when the cable was just disconnected). So care should be taken to try to indicate the source of the fault to drive corrective actions. I would suggest that a communication fault may be better surfaced using the State property using "UnavailableOffline" or other non-functional states. Question #2
What is the intended meaning when Status->State is set to "Absent"? Does this mean the sensor is absent, the hardware being sensed is absent, or a merge of the two? Absent means that the underlying device/hardware is not present. For items like fans and power supplies, that's clear. For a temperature reading (sensor), that sensor is very likely embedded in a piece of hardware, and so it's "both". The Absent state is useful for implementations where there's a fixed number of places for these items to appear, and those locations have fixed functions or meaning - so providing the "if you add a component, it's temperature will show up here" information can be useful to clients for discovery of capabilities. Question #3 If Status->State is set to "Absent", should Status->Health be returned at all? If so, should it have the value "Warning" or "Critical" since the sensor/hardware being sensed is missing?
With an 'Absent' State, most properties will not be supported because there's no hardware/device present to provide data. And Redfish states that unsupported properties are not returned (to avoid providing misleading data). So Status->Health is likely not included in payload. Hope that helps, Jeff
|
|
|
Post by shawnmm on Apr 2, 2019 22:06:05 GMT
Thanks that helps!
|
|