Network System 0.1.1
High-performance modular networking library for scalable client-server applications
Loading...
Searching...
No Matches
kcenon::network::integration::monitoring_interface Class Referenceabstractexport

Interface for monitoring integration. More...

#include <monitoring_integration.h>

Inheritance diagram for kcenon::network::integration::monitoring_interface:
Inheritance graph
Collaboration diagram for kcenon::network::integration::monitoring_interface:
Collaboration graph

Public Member Functions

virtual ~monitoring_interface ()=default
 
virtual void report_counter (const std::string &name, double value, const std::map< std::string, std::string > &labels={})=0
 Report a counter metric.
 
virtual void report_gauge (const std::string &name, double value, const std::map< std::string, std::string > &labels={})=0
 Report a gauge metric.
 
virtual void report_histogram (const std::string &name, double value, const std::map< std::string, std::string > &labels={})=0
 Report a histogram metric.
 
virtual void report_health (const std::string &connection_id, bool is_alive, double response_time_ms, size_t missed_heartbeats, double packet_loss_rate)=0
 Report connection health metrics.
 
virtual ~monitoring_interface ()=default
 
virtual void record_counter (std::string_view name, int64_t value)=0
 Record a counter metric.
 
virtual void record_gauge (std::string_view name, double value)=0
 Record a gauge metric.
 
virtual void record_histogram (std::string_view name, double value)=0
 Record a histogram metric.
 

Detailed Description

Interface for monitoring integration.

Abstract interface for monitoring integration.

This interface allows network_system to report metrics to external monitoring systems.

This interface allows network_system to work with any monitoring implementation, including the monitoring_system module.

Definition at line 147 of file core.cppm.

Constructor & Destructor Documentation

◆ ~monitoring_interface() [1/2]

virtual kcenon::network::integration::monitoring_interface::~monitoring_interface ( )
virtualdefault

◆ ~monitoring_interface() [2/2]

virtual kcenon::network::integration::monitoring_interface::~monitoring_interface ( )
exportvirtualdefault

Member Function Documentation

◆ record_counter()

virtual void kcenon::network::integration::monitoring_interface::record_counter ( std::string_view name,
int64_t value )
exportpure virtual

Record a counter metric.

Parameters
nameMetric name
valueCounter value

◆ record_gauge()

virtual void kcenon::network::integration::monitoring_interface::record_gauge ( std::string_view name,
double value )
exportpure virtual

Record a gauge metric.

Parameters
nameMetric name
valueGauge value

◆ record_histogram()

virtual void kcenon::network::integration::monitoring_interface::record_histogram ( std::string_view name,
double value )
exportpure virtual

Record a histogram metric.

Parameters
nameMetric name
valueHistogram value

◆ report_counter()

virtual void kcenon::network::integration::monitoring_interface::report_counter ( const std::string & name,
double value,
const std::map< std::string, std::string > & labels = {} )
pure virtual

Report a counter metric.

Parameters
nameMetric name
valueCounter value
labelsOptional labels for the metric

Implemented in kcenon::network::integration::basic_monitoring.

◆ report_gauge()

virtual void kcenon::network::integration::monitoring_interface::report_gauge ( const std::string & name,
double value,
const std::map< std::string, std::string > & labels = {} )
pure virtual

Report a gauge metric.

Parameters
nameMetric name
valueGauge value
labelsOptional labels for the metric

Implemented in kcenon::network::integration::basic_monitoring.

◆ report_health()

virtual void kcenon::network::integration::monitoring_interface::report_health ( const std::string & connection_id,
bool is_alive,
double response_time_ms,
size_t missed_heartbeats,
double packet_loss_rate )
pure virtual

Report connection health metrics.

Parameters
connection_idConnection identifier
is_aliveConnection alive status
response_time_msResponse time in milliseconds
missed_heartbeatsNumber of missed heartbeats
packet_loss_ratePacket loss rate (0.0-1.0)

Implemented in kcenon::network::integration::basic_monitoring.

◆ report_histogram()

virtual void kcenon::network::integration::monitoring_interface::report_histogram ( const std::string & name,
double value,
const std::map< std::string, std::string > & labels = {} )
pure virtual

Report a histogram metric.

Parameters
nameMetric name
valueHistogram value
labelsOptional labels for the metric

Implemented in kcenon::network::integration::basic_monitoring.


The documentation for this class was generated from the following files: