|
Logger System 0.1.3
High-performance C++20 thread-safe logging system with asynchronous capabilities
|
Adapter to use thread_system's monitoring capabilities. More...
#include <thread_system_monitor_adapter.h>


Public Member Functions | |
| thread_system_monitor_adapter (kcenon::thread::monitorable_interface *monitorable) | |
| Constructor with external monitorable. | |
| thread_system_monitor_adapter () | |
| Default constructor with fallback to basic monitor. | |
| ~thread_system_monitor_adapter () override | |
| Destructor. | |
| result< monitoring_data > | collect_metrics () const override |
| Collect current metrics. | |
| result< health_check_result > | check_health () const override |
| Perform health check. | |
| common::VoidResult | reset_metrics () override |
| Reset all metrics. | |
| common::VoidResult | set_enabled (bool enable) override |
| Enable or disable monitoring. | |
| bool | is_enabled () const override |
| Check if monitoring is enabled. | |
| std::string | get_backend_name () const override |
| Get backend name. | |
| void | increment_counter (const std::string &name, double value=1.0) override |
| Increment a counter. | |
| void | update_gauge (const std::string &name, double value) override |
| Update a gauge. | |
| void | record_histogram (const std::string &name, double value) override |
| Record a histogram value. | |
| void | set_monitorable (kcenon::thread::monitorable_interface *monitorable, bool take_ownership=false) |
| Set the thread_system monitorable. | |
| basic_monitor * | get_fallback_monitor () |
| Get the fallback monitor for direct access. | |
Public Member Functions inherited from kcenon::logger::monitoring_interface | |
| virtual | ~monitoring_interface ()=default |
| Virtual destructor. | |
Private Attributes | |
| kcenon::thread::monitorable_interface * | monitorable_ |
| std::unique_ptr< basic_monitor > | fallback_monitor_ |
| bool | owns_monitorable_ |
| std::atomic< bool > | enabled_ {true} |
Adapter to use thread_system's monitoring capabilities.
This adapter wraps thread_system's monitorable_interface to provide compatibility with our monitoring interface, enabling advanced monitoring features when thread_system is available.
Definition at line 32 of file thread_system_monitor_adapter.h.
|
inlineexplicit |
Constructor with external monitorable.
| monitorable | Pointer to existing monitorable interface |
Definition at line 44 of file thread_system_monitor_adapter.h.
References monitorable_.
|
inline |
Default constructor with fallback to basic monitor.
Definition at line 57 of file thread_system_monitor_adapter.h.
|
inlineoverride |
Destructor.
Definition at line 65 of file thread_system_monitor_adapter.h.
References monitorable_, and owns_monitorable_.
|
inlineoverridevirtual |
Perform health check.
Implements kcenon::logger::monitoring_interface.
Definition at line 123 of file thread_system_monitor_adapter.h.
References fallback_monitor_, and monitorable_.
|
inlineoverridevirtual |
Collect current metrics.
Implements kcenon::logger::monitoring_interface.
Definition at line 75 of file thread_system_monitor_adapter.h.
References kcenon::logger::monitoring_data::add_metric(), enabled_, fallback_monitor_, kcenon::logger::metrics_not_available, and monitorable_.

|
inlineoverridevirtual |
Get backend name.
Implements kcenon::logger::monitoring_interface.
Definition at line 237 of file thread_system_monitor_adapter.h.
References monitorable_.
|
inline |
Get the fallback monitor for direct access.
Definition at line 323 of file thread_system_monitor_adapter.h.
References fallback_monitor_.
|
inlineoverridevirtual |
Increment a counter.
| name | Counter name |
| value | Increment value |
Implements kcenon::logger::monitoring_interface.
Definition at line 249 of file thread_system_monitor_adapter.h.
References enabled_, fallback_monitor_, and monitorable_.
|
inlineoverridevirtual |
Check if monitoring is enabled.
Implements kcenon::logger::monitoring_interface.
Definition at line 229 of file thread_system_monitor_adapter.h.
References enabled_.
|
inlineoverridevirtual |
Record a histogram value.
| name | Histogram name |
| value | Value to record |
Implements kcenon::logger::monitoring_interface.
Definition at line 295 of file thread_system_monitor_adapter.h.
References enabled_, and fallback_monitor_.
|
inlineoverridevirtual |
Reset all metrics.
Implements kcenon::logger::monitoring_interface.
Definition at line 184 of file thread_system_monitor_adapter.h.
References fallback_monitor_, kcenon::logger::make_logger_void_result(), monitorable_, kcenon::common::ok(), and kcenon::logger::operation_failed.

|
inlineoverridevirtual |
Enable or disable monitoring.
| enable | true to enable |
Implements kcenon::logger::monitoring_interface.
Definition at line 215 of file thread_system_monitor_adapter.h.
References enabled_, fallback_monitor_, and kcenon::common::ok().

|
inline |
Set the thread_system monitorable.
| monitorable | Pointer to monitorable interface |
| take_ownership | Whether to take ownership |
Definition at line 309 of file thread_system_monitor_adapter.h.
References monitorable_, and owns_monitorable_.
|
inlineoverridevirtual |
Update a gauge.
| name | Gauge name |
| value | New value |
Implements kcenon::logger::monitoring_interface.
Definition at line 272 of file thread_system_monitor_adapter.h.
References enabled_, fallback_monitor_, and monitorable_.
|
private |
Definition at line 37 of file thread_system_monitor_adapter.h.
Referenced by collect_metrics(), increment_counter(), is_enabled(), record_histogram(), set_enabled(), and update_gauge().
|
private |
Definition at line 35 of file thread_system_monitor_adapter.h.
Referenced by check_health(), collect_metrics(), get_fallback_monitor(), increment_counter(), record_histogram(), reset_metrics(), set_enabled(), and update_gauge().
|
private |
Definition at line 34 of file thread_system_monitor_adapter.h.
Referenced by check_health(), collect_metrics(), get_backend_name(), increment_counter(), reset_metrics(), set_monitorable(), thread_system_monitor_adapter(), update_gauge(), and ~thread_system_monitor_adapter().
|
private |
Definition at line 36 of file thread_system_monitor_adapter.h.
Referenced by set_monitorable(), and ~thread_system_monitor_adapter().