hardware: raise alarms when FspYh read failures happen
When the PDU or PSU read failure happen, we should also raise an alarm.
The read failures are detected inside the FspYh class which does not
have access to sysrepo. Therefore during the data polling we should also
pick up any alarms that data readers want to be published.
Change-Id: I42b1709d59a960b7f9ef65a65b47a0ef9b4a93d8
diff --git a/src/ietf-hardware/IETFHardware.h b/src/ietf-hardware/IETFHardware.h
index d256855..4a7b4ff 100644
--- a/src/ietf-hardware/IETFHardware.h
+++ b/src/ietf-hardware/IETFHardware.h
@@ -24,15 +24,26 @@
using DataTree = std::map<std::string, std::string>;
using ThresholdsBySensorPath = std::map<std::string, Thresholds<int64_t>>;
+struct SideLoadedAlarm {
+ std::string alarmTypeId;
+ std::string resource;
+ std::string severity;
+ std::string text;
+
+ auto operator<=>(const SideLoadedAlarm&) const = default;
+};
+
struct HardwareInfo {
DataTree dataTree;
std::map<std::string, State> updatedTresholdCrossing;
std::set<std::string> activeSensors;
+ std::set<SideLoadedAlarm> sideLoadedAlarms;
};
struct SensorPollData {
DataTree data;
ThresholdsBySensorPath thresholds;
+ std::set<SideLoadedAlarm> sideLoadedAlarms;
void merge(SensorPollData&& other);
};