Monitoring System 0.1.0
System resource monitoring with pluggable collectors and alerting
Loading...
Searching...
No Matches
kcenon::monitoring::health_check_event Class Reference

Event for health check results. More...

#include <event_types.h>

Inheritance diagram for kcenon::monitoring::health_check_event:
Inheritance graph
Collaboration diagram for kcenon::monitoring::health_check_event:
Collaboration graph

Classes

struct  health_check_result
 

Public Types

enum class  health_status { healthy , degraded , unhealthy , unknown }
 

Public Member Functions

 health_check_event (const std::string &component, std::vector< health_check_result > results)
 
std::string get_type_name () const override
 Get the event type name.
 
const std::string & get_component () const
 
const std::vector< health_check_result > & get_results () const
 
health_status get_overall_status () const
 
- Public Member Functions inherited from kcenon::monitoring::event_base
virtual ~event_base ()=default
 
std::chrono::steady_clock::time_point get_timestamp () const
 Get timestamp when event was created.
 
uint64_t get_id () const
 Get unique event ID.
 

Private Attributes

std::string component_
 
std::vector< health_check_resultresults_
 

Additional Inherited Members

- Protected Member Functions inherited from kcenon::monitoring::event_base
 event_base ()
 

Detailed Description

Event for health check results.

Examples
event_bus_example.cpp.

Definition at line 313 of file event_types.h.

Member Enumeration Documentation

◆ health_status

Constructor & Destructor Documentation

◆ health_check_event()

kcenon::monitoring::health_check_event::health_check_event ( const std::string & component,
std::vector< health_check_result > results )
inline

Member Function Documentation

◆ get_component()

const std::string & kcenon::monitoring::health_check_event::get_component ( ) const
inline

◆ get_overall_status()

health_status kcenon::monitoring::health_check_event::get_overall_status ( ) const
inline
Examples
/home/runner/work/monitoring_system/monitoring_system/include/kcenon/monitoring/core/event_types.h.

Definition at line 341 of file event_types.h.

341 {
343 for (const auto& result : results_) {
344 if (result.status == health_status::unhealthy) {
346 }
347 if (result.status == health_status::degraded) {
348 overall = health_status::degraded;
349 }
350 if (result.status == health_status::unknown && overall == health_status::healthy) {
351 overall = health_status::unknown;
352 }
353 }
354 return overall;
355 }

References degraded, healthy, results_, unhealthy, and unknown.

◆ get_results()

const std::vector< health_check_result > & kcenon::monitoring::health_check_event::get_results ( ) const
inline

◆ get_type_name()

std::string kcenon::monitoring::health_check_event::get_type_name ( ) const
inlineoverridevirtual

Get the event type name.

Returns
String representation of the event type

Implements kcenon::monitoring::event_base.

Examples
/home/runner/work/monitoring_system/monitoring_system/include/kcenon/monitoring/core/event_types.h.

Definition at line 334 of file event_types.h.

334 {
335 return "health_check_event";
336 }

Member Data Documentation

◆ component_

std::string kcenon::monitoring::health_check_event::component_
private

◆ results_

std::vector<health_check_result> kcenon::monitoring::health_check_event::results_
private

The documentation for this class was generated from the following file: