1#ifndef IV_SRC_ALARMS_APPFAILURESLOGGERMANAGER_HPP_
2#define IV_SRC_ALARMS_APPFAILURESLOGGERMANAGER_HPP_
43 std::string_view failureSource, std::string_view failureDescription,
53 [[nodiscard]] std::map<iv::types::appFailureId, std::shared_ptr<iv::diamar::AppFailure>>
appFailures()
const;
59 std::map<iv::types::appFailureId, std::shared_ptr<iv::diamar::AppFailure>>
m_appFailures;
Definition AppFailuresLoggerManager.hpp:33
void resetCriticalLevelSinceLastCheck()
Reset the critical level since the last check.
Definition AppFailuresLoggerManager.cpp:115
std::mutex m_mutex
Definition AppFailuresLoggerManager.hpp:58
void logThreadFailure(const iv::types::threadName &threadName, std::string_view specificThreadId, std::string_view failureDescription, iv::logs::eSystemFailureLogLevel level)
Definition AppFailuresLoggerManager.cpp:28
void addOrUpdateAppFailure(const iv::diamar::AppFailure &appFailure)
Definition AppFailuresLoggerManager.cpp:127
std::optional< iv::logs::eSystemFailureLogLevel > criticalLevelSinceLastCheck(bool resetCriticalLevel=false)
Get the highest critical level since the last check.
Definition AppFailuresLoggerManager.cpp:99
iv::types::timestamp lastTimestamp() const
Definition AppFailuresLoggerManager.cpp:87
std::map< iv::types::appFailureId, std::shared_ptr< iv::diamar::AppFailure > > appFailures() const
Definition AppFailuresLoggerManager.cpp:121
std::map< iv::types::appFailureId, std::shared_ptr< iv::diamar::AppFailure > > m_appFailures
Definition AppFailuresLoggerManager.hpp:59
AppFailuresLoggerManager()=default
void logCommFailure(const iv::types::networkId &networkId, std::string_view specificCommId, std::string_view failureDescription, iv::logs::eSystemFailureLogLevel level)
Definition AppFailuresLoggerManager.cpp:9
std::weak_ptr< iv::diamar::AppFailure > getAppFailure(const iv::types::appFailureId &failureId) const
Definition AppFailuresLoggerManager.cpp:75
iv::types::timestamp m_lastTimestamp
Definition AppFailuresLoggerManager.hpp:60
void logAppFailure(iv::logs::eSystemFailureCategory category, std::string_view specificCommId, std::string_view failureSource, std::string_view failureDescription, iv::logs::eSystemFailureLogLevel level)
Definition AppFailuresLoggerManager.cpp:47
std::optional< iv::logs::eSystemFailureLogLevel > m_criticalLevelSinceLastCheck
Definition AppFailuresLoggerManager.hpp:63
bool removeAppFailure(const iv::types::appFailureId &failureId)
Definition AppFailuresLoggerManager.cpp:61
Definition DataLoggerManager.cpp:10
eSystemFailureLogLevel
Definition enums.hpp:23
eSystemFailureCategory
Definition enums.hpp:31
std::string appFailureId
Definition types.hpp:80
uint64_t timestamp
Definition types.hpp:21
std::string networkId
Definition types.hpp:43
std::string threadName
Definition types.hpp:26
Definition AppFailuresLoggerManager.hpp:16
std::string source
Definition AppFailuresLoggerManager.hpp:24
iv::types::timestamp timestamp
Definition AppFailuresLoggerManager.hpp:28
std::string description
Definition AppFailuresLoggerManager.hpp:25
iv::types::appFailureId id
Definition AppFailuresLoggerManager.hpp:23
AppFailure(iv::types::appFailureId id_, const std::string_view source_, const std::string_view description_, const iv::logs::eSystemFailureLogLevel level_, iv::logs::eSystemFailureCategory category_, const iv::types::timestamp timestamp_)
Definition AppFailuresLoggerManager.hpp:17
iv::logs::eSystemFailureCategory category
Definition AppFailuresLoggerManager.hpp:27
iv::logs::eSystemFailureLogLevel level
Definition AppFailuresLoggerManager.hpp:26
uint64_t counts
Definition AppFailuresLoggerManager.hpp:29