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}