iroh_gossip/metrics.rs
1//! Metrics for iroh-gossip
2
3use iroh_metrics::{Counter, MetricsGroup};
4
5/// Enum of metrics for the module
6#[derive(Debug, Default, MetricsGroup)]
7#[metrics(name = "gossip")]
8pub struct Metrics {
9 /// Number of control messages sent
10 pub msgs_ctrl_sent: Counter,
11 /// Number of control messages received
12 pub msgs_ctrl_recv: Counter,
13 /// Number of data messages sent
14 pub msgs_data_sent: Counter,
15 /// Number of data messages received
16 pub msgs_data_recv: Counter,
17 /// Total size of all data messages sent
18 pub msgs_data_sent_size: Counter,
19 /// Total size of all data messages received
20 pub msgs_data_recv_size: Counter,
21 /// Total size of all control messages sent
22 pub msgs_ctrl_sent_size: Counter,
23 /// Total size of all control messages received
24 pub msgs_ctrl_recv_size: Counter,
25 /// Number of times we connected to a peer
26 pub neighbor_up: Counter,
27 /// Number of times we disconnected from a peer
28 pub neighbor_down: Counter,
29 /// Number of times the main actor loop ticked
30 pub actor_tick_main: Counter,
31 /// Number of times the actor ticked for a message received
32 pub actor_tick_rx: Counter,
33 /// Number of times the actor ticked for an endpoint event
34 pub actor_tick_endpoint: Counter,
35 /// Number of times the actor ticked for a dialer event
36 pub actor_tick_dialer: Counter,
37 /// Number of times the actor ticked for a successful dialer event
38 pub actor_tick_dialer_success: Counter,
39 /// Number of times the actor ticked for a failed dialer event
40 pub actor_tick_dialer_failure: Counter,
41 /// Number of times the actor ticked for an incoming event
42 pub actor_tick_in_event_rx: Counter,
43 /// Number of times the actor ticked for a timer event
44 pub actor_tick_timers: Counter,
45}