|
Monitoring System 0.1.0
System resource monitoring with pluggable collectors and alerting
|
Trigger based on statistical anomaly detection. More...
#include <alert_triggers.h>


Public Member Functions | |
| anomaly_trigger (double sensitivity=3.0, size_t window_size=100, size_t min_samples=10) | |
| Construct an anomaly trigger. | |
| bool | evaluate (double value) 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. | |
| double | current_mean () const |
| Get current mean of historical values. | |
| double | current_stddev () const |
| Get current standard deviation. | |
| void | reset () |
| Clear historical data. | |
Public Member Functions inherited from kcenon::monitoring::alert_trigger | |
| virtual | ~alert_trigger ()=default |
Private Member Functions | |
| double | mean () const |
| double | standard_deviation (double mean_val) const |
Private Attributes | |
| double | sensitivity_ |
| size_t | window_size_ |
| size_t | min_samples_ |
| std::mutex | mutex_ |
| std::deque< double > | history_ |
Trigger based on statistical anomaly detection.
Uses statistical methods to detect values that deviate significantly from normal behavior. Maintains a sliding window of historical values and triggers when the current value exceeds a configurable number of standard deviations from the mean.
Definition at line 392 of file alert_triggers.h.
|
inlineexplicit |
Construct an anomaly trigger.
| sensitivity | Number of standard deviations for anomaly |
| window_size | Number of samples for baseline calculation |
| min_samples | Minimum samples before detection starts |
Definition at line 400 of file alert_triggers.h.
|
inline |
Get current mean of historical values.
Definition at line 447 of file alert_triggers.h.
References mean(), and mutex_.

|
inline |
Get current standard deviation.
Definition at line 455 of file alert_triggers.h.
References mean(), mutex_, and standard_deviation().

|
inlineoverridevirtual |
Get human-readable description.
Implements kcenon::monitoring::alert_trigger.
Definition at line 440 of file alert_triggers.h.
References sensitivity_.
|
inlineoverridevirtual |
Evaluate the trigger condition.
| value | Current metric value |
Implements kcenon::monitoring::alert_trigger.
Definition at line 407 of file alert_triggers.h.
References history_, mean(), min_samples_, mutex_, sensitivity_, standard_deviation(), and window_size_.

|
inlineprivate |
Definition at line 469 of file alert_triggers.h.
References history_.
Referenced by current_mean(), current_stddev(), and evaluate().

|
inline |
Clear historical data.
Definition at line 463 of file alert_triggers.h.
|
inlineprivate |
Definition at line 477 of file alert_triggers.h.
References history_.
Referenced by current_stddev(), and evaluate().

|
inlineoverridevirtual |
Get trigger type name.
Implements kcenon::monitoring::alert_trigger.
Definition at line 436 of file alert_triggers.h.
|
mutableprivate |
Definition at line 494 of file alert_triggers.h.
Referenced by evaluate(), mean(), reset(), and standard_deviation().
|
private |
Definition at line 491 of file alert_triggers.h.
Referenced by evaluate().
|
mutableprivate |
Definition at line 493 of file alert_triggers.h.
Referenced by current_mean(), current_stddev(), evaluate(), and reset().
|
private |
Definition at line 489 of file alert_triggers.h.
Referenced by description(), and evaluate().
|
private |
Definition at line 490 of file alert_triggers.h.
Referenced by evaluate().