Monitoring System 0.1.0
System resource monitoring with pluggable collectors and alerting
Loading...
Searching...
No Matches
periodic_trigger Class Reference
Inheritance diagram for periodic_trigger:
Inheritance graph
Collaboration diagram for periodic_trigger:
Collaboration graph

Public Member Functions

 periodic_trigger (size_t period)
 
bool evaluate (double) const override
 Evaluate the trigger condition.
 
std::string type_name () const override
 Get trigger type name.
 
std::string description () const override
 Get human-readable description.
 
void reset ()
 
- Public Member Functions inherited from kcenon::monitoring::alert_trigger
virtual ~alert_trigger ()=default
 

Private Attributes

size_t period_
 
size_t count_
 

Detailed Description

Examples
alert_triggers_example.cpp.

Definition at line 47 of file alert_triggers_example.cpp.

Constructor & Destructor Documentation

◆ periodic_trigger()

periodic_trigger::periodic_trigger ( size_t period)
inlineexplicit

Member Function Documentation

◆ description()

std::string periodic_trigger::description ( ) const
inlineoverridevirtual

Get human-readable description.

Returns
Description string

Implements kcenon::monitoring::alert_trigger.

Examples
alert_triggers_example.cpp.

Definition at line 65 of file alert_triggers_example.cpp.

65 {
66 return "fires every " + std::to_string(period_) + " evaluations";
67 }

References period_.

◆ evaluate()

bool periodic_trigger::evaluate ( double value) const
inlineoverridevirtual

Evaluate the trigger condition.

Parameters
valueCurrent metric value
Returns
True if trigger condition is met

Implements kcenon::monitoring::alert_trigger.

Examples
alert_triggers_example.cpp.

Definition at line 52 of file alert_triggers_example.cpp.

52 {
53 ++count_;
54 if (count_ >= period_) {
55 count_ = 0;
56 return true;
57 }
58 return false;
59 }

References count_, and period_.

◆ reset()

void periodic_trigger::reset ( )
inline
Examples
alert_triggers_example.cpp.

Definition at line 69 of file alert_triggers_example.cpp.

69 {
70 count_ = 0;
71 }

References count_.

◆ type_name()

std::string periodic_trigger::type_name ( ) const
inlineoverridevirtual

Get trigger type name.

Returns
Type name string

Implements kcenon::monitoring::alert_trigger.

Examples
alert_triggers_example.cpp.

Definition at line 61 of file alert_triggers_example.cpp.

61 {
62 return "periodic";
63 }

Member Data Documentation

◆ count_

size_t periodic_trigger::count_
mutableprivate
Examples
alert_triggers_example.cpp.

Definition at line 75 of file alert_triggers_example.cpp.

Referenced by evaluate(), and reset().

◆ period_

size_t periodic_trigger::period_
private
Examples
alert_triggers_example.cpp.

Definition at line 74 of file alert_triggers_example.cpp.

Referenced by description(), and evaluate().


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