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

Configuration for an alert rule. More...

#include <alert_rule.h>

Collaboration diagram for kcenon::monitoring::alert_rule_config:
Collaboration graph

Public Member Functions

bool validate () const
 Validate configuration.
 

Public Attributes

std::chrono::milliseconds evaluation_interval {15000}
 How often to evaluate.
 
std::chrono::milliseconds for_duration {0}
 Duration before firing.
 
std::chrono::milliseconds repeat_interval {300000}
 Notification repeat interval.
 
bool keep_firing_for {false}
 Keep firing after resolve.
 
std::chrono::milliseconds keep_firing_duration {300000}
 Duration to keep firing.
 

Detailed Description

Configuration for an alert rule.

Defines the timing and behavior parameters for alert evaluation.

Definition at line 36 of file alert_rule.h.

Member Function Documentation

◆ validate()

bool kcenon::monitoring::alert_rule_config::validate ( ) const
inline

Validate configuration.

Returns
True if configuration is valid
Examples
/home/runner/work/monitoring_system/monitoring_system/include/kcenon/monitoring/alert/alert_rule.h.

Definition at line 47 of file alert_rule.h.

47 {
48 if (evaluation_interval.count() <= 0) {
49 return false;
50 }
51 if (repeat_interval.count() <= 0) {
52 return false;
53 }
54 return true;
55 }
std::chrono::milliseconds repeat_interval
Notification repeat interval.
Definition alert_rule.h:39
std::chrono::milliseconds evaluation_interval
How often to evaluate.
Definition alert_rule.h:37

References evaluation_interval, and repeat_interval.

Referenced by TEST(), TEST(), TEST(), and kcenon::monitoring::alert_rule::validate().

Here is the caller graph for this function:

Member Data Documentation

◆ evaluation_interval

std::chrono::milliseconds kcenon::monitoring::alert_rule_config::evaluation_interval {15000}

◆ for_duration

std::chrono::milliseconds kcenon::monitoring::alert_rule_config::for_duration {0}

◆ keep_firing_duration

std::chrono::milliseconds kcenon::monitoring::alert_rule_config::keep_firing_duration {300000}

Duration to keep firing.

Examples
/home/runner/work/monitoring_system/monitoring_system/include/kcenon/monitoring/alert/alert_rule.h.

Definition at line 41 of file alert_rule.h.

41{300000};

◆ keep_firing_for

bool kcenon::monitoring::alert_rule_config::keep_firing_for {false}

Keep firing after resolve.

Examples
/home/runner/work/monitoring_system/monitoring_system/include/kcenon/monitoring/alert/alert_rule.h.

Definition at line 40 of file alert_rule.h.

40{false};

◆ repeat_interval

std::chrono::milliseconds kcenon::monitoring::alert_rule_config::repeat_interval {300000}

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