Fixed issue with wrong timestamp
Telemetry service used steady_clock for generating timestamps, but it
produced incorrect time. This change makes telemetry service use
steady_clock for intervals and system_clock for timestamps.
Changed readings timestamp to display current timestamp instead of a
time when reading was received.
Tested:
- correct timestamp is visible on dbus
- other telemetry service features are still working
Change-Id: Ic49f45640532cfffaeff5e0bd5591e6d99e5def5
Signed-off-by: Krzysztof Grobelny <krzysztof.grobelny@intel.com>
diff --git a/src/numeric_threshold.hpp b/src/numeric_threshold.hpp
index 338d00b..2aff15c 100644
--- a/src/numeric_threshold.hpp
+++ b/src/numeric_threshold.hpp
@@ -4,7 +4,7 @@
#include "interfaces/sensor_listener.hpp"
#include "interfaces/threshold.hpp"
#include "interfaces/trigger_action.hpp"
-#include "types/milliseconds.hpp"
+#include "types/duration_types.hpp"
#include "types/trigger_types.hpp"
#include <boost/asio/steady_timer.hpp>
@@ -28,8 +28,8 @@
~NumericThreshold();
void initialize() override;
- void sensorUpdated(interfaces::Sensor&, uint64_t) override;
- void sensorUpdated(interfaces::Sensor&, uint64_t, double) override;
+ void sensorUpdated(interfaces::Sensor&, Milliseconds) override;
+ void sensorUpdated(interfaces::Sensor&, Milliseconds, double) override;
private:
boost::asio::io_context& ioc;
@@ -54,8 +54,8 @@
};
std::vector<ThresholdDetail> details;
- void startTimer(const std::string&, uint64_t, double, bool&,
+ void startTimer(const std::string&, Milliseconds, double, bool&,
boost::asio::steady_timer&);
- void commit(const std::string&, uint64_t, double);
+ void commit(const std::string&, Milliseconds, double);
ThresholdDetail& getDetails(interfaces::Sensor& sensor);
};