Add failsafe logger for zones
Tested:
...
Nov 23 21:40:06 tmddp10-nfd01.prod.google.com swampd[4893]:
Zone `0` is in failsafe mode.
With update at `fleeting0`: The sensor has bad readings.
Nov 23 21:40:06 tmddp10-nfd01.prod.google.com swampd[4893]:
Zone `1` is in failsafe mode.
With update at `fleeting1`: The sensor has bad readings.
Nov 23 21:40:06 tmddp10-nfd01.prod.google.com swampd[4893]:
Zone `1` leaves failsafe mode.
With update at `hotswap_in_Input_Power`: The sensor has recovered.
Nov 23 21:40:06 tmddp10-nfd01.prod.google.com swampd[4893]:
Zone `0` leaves failsafe mode.
With update at `hotswap_in_Input_Power`: The sensor has recovered.
...
Change-Id: I2c296addb7ad117c03c04a27de91204796cda036
Signed-off-by: James Zheng <alphetis@google.com>
diff --git a/pid/zone.hpp b/pid/zone.hpp
index 8c49f1f..14017b8 100644
--- a/pid/zone.hpp
+++ b/pid/zone.hpp
@@ -2,6 +2,7 @@
#include "conf.hpp"
#include "controller.hpp"
+#include "failsafeloggers/failsafe_logger_utility.hpp"
#include "pidcontroller.hpp"
#include "sensors/manager.hpp"
#include "sensors/sensor.hpp"
@@ -88,6 +89,7 @@
uint64_t getUpdateThermalsCycle(void) const override;
Sensor* getSensor(const std::string& name) override;
+ std::vector<std::string> getSensorNames(void) override;
void determineMaxSetPointRequest(void) override;
void updateFanTelemetry(void) override;
void updateSensors(void) override;
@@ -184,6 +186,9 @@
{
std::cerr << sensorInput << " sensor timeout\n";
}
+ outputFailsafeLogWithZone(_zoneId, this->getFailSafeMode(),
+ sensorInput,
+ "The sensor has timed out.");
}
else
{
@@ -198,6 +203,9 @@
}
_failSafeSensors.erase(kt);
+ outputFailsafeLogWithZone(_zoneId, this->getFailSafeMode(),
+ sensorInput,
+ "The sensor has recovered.");
}
}
}