|
Common System 0.2.0
Common interfaces and patterns for system integration
|
RAII helper for automatic timing measurements. More...
#include <metric_collector_interface.h>

Public Member Functions | |
| scoped_timer (IMetricCollector &collector, std::string_view name, metric_labels labels={}) | |
| Construct a scoped timer. | |
| ~scoped_timer () | |
| Destructor reports elapsed time to the collector. | |
| scoped_timer (const scoped_timer &)=delete | |
| scoped_timer & | operator= (const scoped_timer &)=delete |
| scoped_timer (scoped_timer &&)=delete | |
| scoped_timer & | operator= (scoped_timer &&)=delete |
| std::chrono::nanoseconds | elapsed () const |
| Get elapsed time since timer started. | |
Private Attributes | |
| IMetricCollector & | collector_ |
| std::string | name_ |
| metric_labels | labels_ |
| std::chrono::steady_clock::time_point | start_ |
RAII helper for automatic timing measurements.
Measures elapsed time from construction to destruction and reports it to the metric collector. Useful for timing function execution, request handling, or any scoped operations.
Example usage:
Definition at line 157 of file metric_collector_interface.h.
|
inline |
Construct a scoped timer.
| collector | Reference to the metric collector |
| name | Metric name for the timing measurement |
| labels | Optional dimensional labels |
Definition at line 165 of file metric_collector_interface.h.
|
inline |
Destructor reports elapsed time to the collector.
Definition at line 176 of file metric_collector_interface.h.
References collector_, elapsed(), labels_, name_, start_, and kcenon::common::interfaces::IMetricCollector::timing().

|
delete |
|
delete |
|
inlinenodiscard |
Get elapsed time since timer started.
Definition at line 194 of file metric_collector_interface.h.
References start_.
Referenced by ~scoped_timer().

|
delete |
|
delete |
|
private |
Definition at line 200 of file metric_collector_interface.h.
Referenced by ~scoped_timer().
|
private |
Definition at line 202 of file metric_collector_interface.h.
Referenced by ~scoped_timer().
|
private |
Definition at line 201 of file metric_collector_interface.h.
Referenced by ~scoped_timer().
|
private |
Definition at line 203 of file metric_collector_interface.h.
Referenced by elapsed(), and ~scoped_timer().