|
Monitoring System 0.1.0
System resource monitoring with pluggable collectors and alerting
|
Base class providing default monitorable implementation. More...
#include <monitorable_interface.h>


Public Member Functions | |
| monitorable_component (const std::string &id) | |
| Constructor. | |
| std::string | get_monitoring_id () const override |
| Get monitoring identifier. | |
| bool | is_monitoring_enabled () const override |
| Check if monitoring is enabled. | |
| common::VoidResult | set_monitoring_enabled (bool enable) override |
| Enable or disable monitoring. | |
| common::VoidResult | reset_monitoring () override |
| Reset monitoring data. | |
Public Member Functions inherited from kcenon::monitoring::monitorable_interface | |
| virtual | ~monitorable_interface ()=default |
| virtual common::Result< monitoring_data > | get_monitoring_data () const =0 |
| Get current monitoring data from the component. | |
Protected Member Functions | |
| void | update_metric (const std::string &key, double value) const |
| Helper to update a metric. | |
| void | update_tag (const std::string &key, const std::string &value) const |
| Helper to update a tag. | |
Protected Attributes | |
| std::string | monitoring_id_ |
| bool | monitoring_enabled_ = true |
| monitoring_data | cached_data_ |
Base class providing default monitorable implementation.
This class provides a convenient base for components that want to implement the monitorable interface with common functionality. It handles ID management, enable/disable state, and cached data.
Definition at line 343 of file monitorable_interface.h.
|
inlineexplicit |
Constructor.
| id | Monitoring identifier for this component |
Definition at line 354 of file monitorable_interface.h.
|
inlineoverridevirtual |
Get monitoring identifier.
Implements kcenon::monitoring::monitorable_interface.
Definition at line 362 of file monitorable_interface.h.
References monitoring_id_.
Referenced by test_monitorable_component::get_monitoring_data(), and TEST_F().

|
inlineoverridevirtual |
Check if monitoring is enabled.
Reimplemented from kcenon::monitoring::monitorable_interface.
Definition at line 370 of file monitorable_interface.h.
References monitoring_enabled_.
Referenced by test_monitorable_component::get_monitoring_data(), TEST_F(), and TEST_F().

|
inlineoverridevirtual |
Reset monitoring data.
Reimplemented from kcenon::monitoring::monitorable_interface.
Definition at line 388 of file monitorable_interface.h.
References cached_data_, kcenon::monitoring::monitoring_data::clear(), monitoring_id_, and kcenon::monitoring::monitoring_data::set_component_name().
Referenced by TEST_F().


|
inlineoverridevirtual |
Enable or disable monitoring.
| enable | true to enable, false to disable |
Reimplemented from kcenon::monitoring::monitorable_interface.
Definition at line 379 of file monitorable_interface.h.
References monitoring_enabled_.
Referenced by TEST_F().

|
inlineprotected |
Helper to update a metric.
| key | Metric name |
| value | Metric value |
Definition at line 400 of file monitorable_interface.h.
References kcenon::monitoring::monitoring_data::add_metric(), and cached_data_.

|
inlineprotected |
Helper to update a tag.
| key | Tag name |
| value | Tag value |
Definition at line 409 of file monitorable_interface.h.
References kcenon::monitoring::monitoring_data::add_tag(), and cached_data_.

|
mutableprotected |
Definition at line 347 of file monitorable_interface.h.
Referenced by reset_monitoring(), update_metric(), and update_tag().
|
protected |
Definition at line 346 of file monitorable_interface.h.
Referenced by is_monitoring_enabled(), and set_monitoring_enabled().
|
protected |
Definition at line 345 of file monitorable_interface.h.
Referenced by get_monitoring_id(), and reset_monitoring().