27#include <shared_mutex>
36#include "rapidjson/document.h"
50using Reports = std::map<const std::string, Report>;
64 static bool settings_valid(
const char *, rapidjson::Document *doc =
nullptr);
The Report_Definition_Manager keeps track of all the report definitions for a reporter.
Definition: health_monitor_report_manager.h:57
~Report_Definition_Manager()=default
const char * m_cfg
Definition: health_monitor_report_manager.h:69
Report_Definition_Manager()=default
void update_settings(const char *)
If there are new report definitions, the report manager will refresh its map of reports.
Definition: health_monitor_report_manager.cc:1214
static Internal_Queries m_internal_queries
Definition: health_monitor_report_manager.h:65
static bool settings_valid(const char *, rapidjson::Document *doc=nullptr)
Definition: health_monitor_report_manager.cc:1183
Reports * reports()
Definition: health_monitor_report_manager.h:66
Reports m_reports
Definition: health_monitor_report_manager.h:70
bool settings_changed(const char *)
Definition: health_monitor_report_manager.cc:1179
Define rapidjson::SizeType to be std::uint64_t.
Definition: component_command.h:29
std::map< const std::string, Query > Internal_Queries
Definition: health_monitor_report_manager.h:49
std::map< const std::string, Report > Reports
Definition: health_monitor_report_manager.h:50
Definition: health_monitor_report_manager.h:40
uint interval
Definition: health_monitor_report_manager.h:45
std::vector< Query > queries
Definition: health_monitor_report_manager.h:44
void issue_report()
Iterate over all queries in a report, execute the queries, and write the result set to the desired de...
Definition: health_monitor_report_manager.cc:1158
std::string footer
Definition: health_monitor_report_manager.h:43
int next
Definition: health_monitor_report_manager.h:46
std::string title
Definition: health_monitor_report_manager.h:42