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

Configuration for the monitoring system. More...

#include <monitoring_core.h>

Collaboration diagram for kcenon::monitoring::monitoring_config:
Collaboration graph

Public Member Functions

common::VoidResult validate () const
 Validate configuration parameters.
 

Public Attributes

std::size_t history_size = 1000
 
std::chrono::milliseconds collection_interval {1000}
 
bool enable_compression = false
 
bool enable_persistence = false
 
std::size_t max_collectors = 100
 
std::size_t buffer_size = 10000
 

Detailed Description

Configuration for the monitoring system.

Examples
basic_monitoring_example.cpp, production_monitoring_example.cpp, and result_pattern_example.cpp.

Definition at line 179 of file monitoring_core.h.

Member Function Documentation

◆ validate()

common::VoidResult kcenon::monitoring::monitoring_config::validate ( ) const
inline

Validate configuration parameters.

Returns
common::VoidResult indicating success or validation error
Examples
/home/runner/work/monitoring_system/monitoring_system/include/kcenon/monitoring/interfaces/monitoring_core.h, and result_pattern_example.cpp.

Definition at line 191 of file monitoring_core.h.

191 {
192 if (history_size == 0) {
194 "History size must be greater than 0");
195 return common::VoidResult::err(err.to_common_error());
196 }
197 if (collection_interval.count() < 10) {
199 "Collection interval must be at least 10ms");
200 return common::VoidResult::err(err.to_common_error());
201 }
204 "Buffer size must be at least as large as history size");
205 return common::VoidResult::err(err.to_common_error());
206 }
207 return common::ok();
208 }
std::chrono::milliseconds collection_interval

References buffer_size, collection_interval, history_size, kcenon::monitoring::invalid_capacity, kcenon::monitoring::invalid_interval, and kcenon::monitoring::error_info::to_common_error().

Referenced by main(), and TEST_F().

Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ buffer_size

std::size_t kcenon::monitoring::monitoring_config::buffer_size = 10000

◆ collection_interval

std::chrono::milliseconds kcenon::monitoring::monitoring_config::collection_interval {1000}

◆ enable_compression

bool kcenon::monitoring::monitoring_config::enable_compression = false

◆ enable_persistence

bool kcenon::monitoring::monitoring_config::enable_persistence = false

◆ history_size

◆ max_collectors

std::size_t kcenon::monitoring::monitoring_config::max_collectors = 100

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