61 std::map<std::string, std::string>
labels;
72 const std::string& metric_name,
75 const std::map<std::string, std::string>& metric_labels = {},
76 const std::string& metric_unit =
"")
81 ,
timestamp(std::chrono::steady_clock::now())
92 ,
timestamp(std::chrono::steady_clock::now())
128 std::map<std::string, std::string>
labels;
131 const std::string& conn_id,
132 const std::string& evt_type,
133 const std::string& proto =
"tcp",
134 const std::string& remote =
"",
135 const std::map<std::string, std::string>& lbls = {})
136 : connection_id(conn_id)
137 , event_type(evt_type)
139 , remote_address(remote)
140 ,
timestamp(std::chrono::steady_clock::now())
146 :
timestamp(std::chrono::steady_clock::now())
167 std::map<std::string, std::string>
labels;
170 const std::string& conn_id,
171 const std::string& dir,
172 std::size_t byte_count,
173 std::size_t packet_count = 1,
174 const std::map<std::string, std::string>& lbls = {})
175 : connection_id(conn_id)
178 , packets(packet_count)
179 ,
timestamp(std::chrono::steady_clock::now())
187 ,
timestamp(std::chrono::steady_clock::now())
207 std::map<std::string, std::string>
labels;
210 const std::string& conn_id,
212 const std::string& op =
"roundtrip",
213 const std::map<std::string, std::string>& lbls = {})
214 : connection_id(conn_id)
217 ,
timestamp(std::chrono::steady_clock::now())
224 ,
timestamp(std::chrono::steady_clock::now())
246 std::map<std::string, std::string>
labels;
249 const std::string& conn_id,
251 double response_time = 0.0,
252 std::size_t missed = 0,
253 double loss_rate = 0.0,
254 const std::map<std::string, std::string>& lbls = {})
255 : connection_id(conn_id)
257 , response_time_ms(response_time)
258 , missed_heartbeats(missed)
259 , packet_loss_rate(loss_rate)
260 ,
timestamp(std::chrono::steady_clock::now())
267 , response_time_ms(0.0)
268 , missed_heartbeats(0)
269 , packet_loss_rate(0.0)
270 ,
timestamp(std::chrono::steady_clock::now())
network_metric_type
Types of network metrics.
sliding_histogram latency
Specialized event for connection-related metrics.
network_connection_event(const std::string &conn_id, const std::string &evt_type, const std::string &proto="tcp", const std::string &remote="", const std::map< std::string, std::string > &lbls={})
network_connection_event & operator=(const network_connection_event &)=default
std::map< std::string, std::string > labels
network_connection_event(network_connection_event &&) noexcept=default
network_connection_event(const network_connection_event &)=default
std::string connection_id
std::chrono::steady_clock::time_point timestamp
network_connection_event()
std::string remote_address
Specialized event for connection health status.
std::chrono::steady_clock::time_point timestamp
std::map< std::string, std::string > labels
network_health_event(const std::string &conn_id, bool alive, double response_time=0.0, std::size_t missed=0, double loss_rate=0.0, const std::map< std::string, std::string > &lbls={})
network_health_event(const network_health_event &)=default
std::string connection_id
network_health_event(network_health_event &&) noexcept=default
std::size_t missed_heartbeats
network_health_event & operator=(const network_health_event &)=default
Specialized event for latency measurements.
std::map< std::string, std::string > labels
network_latency_event(network_latency_event &&) noexcept=default
network_latency_event & operator=(const network_latency_event &)=default
network_latency_event(const network_latency_event &)=default
std::string connection_id
network_latency_event(const std::string &conn_id, double latency, const std::string &op="roundtrip", const std::map< std::string, std::string > &lbls={})
std::chrono::steady_clock::time_point timestamp
Event for publishing network metrics via EventBus.
network_metric_event & operator=(const network_metric_event &)=default
Copy assignment operator.
std::chrono::steady_clock::time_point timestamp
network_metric_event(const network_metric_event &)=default
Copy constructor (required for EventType concept)
network_metric_event(const std::string &metric_name, double metric_value, network_metric_type metric_type=network_metric_type::counter, const std::map< std::string, std::string > &metric_labels={}, const std::string &metric_unit="")
Construct a network metric event.
network_metric_event()
Default constructor.
std::map< std::string, std::string > labels
network_metric_event(network_metric_event &&) noexcept=default
Move constructor.
Specialized event for data transfer metrics.
network_transfer_event & operator=(const network_transfer_event &)=default
network_transfer_event(const std::string &conn_id, const std::string &dir, std::size_t byte_count, std::size_t packet_count=1, const std::map< std::string, std::string > &lbls={})
network_transfer_event(const network_transfer_event &)=default
std::string connection_id
std::chrono::steady_clock::time_point timestamp
network_transfer_event(network_transfer_event &&) noexcept=default
std::map< std::string, std::string > labels