@@ -2,6 +2,7 @@ use std::time::Duration;
22
33use apollo_metrics::define_metrics;
44use apollo_metrics::metrics::LossyIntoF64;
5+ use apollo_network::metrics::NetworkMetrics;
56
67define_metrics!(
78 Infra => {
@@ -17,6 +18,10 @@ define_metrics!(
1718 MetricCounter { RECEIVE_MESSAGE_BYTES_SUM, "receive_message_bytes_sum", "Sum of the stress test messages received via broadcast", init = 0 },
1819 MetricHistogram { RECEIVE_MESSAGE_DELAY_SECONDS, "receive_message_delay_seconds", "Message delay in seconds" },
1920
21+ // network metrics from the network manager
22+ MetricGauge { NETWORK_CONNECTED_PEERS, "network_connected_peers", "Number of connected peers in the network" },
23+ MetricGauge { NETWORK_BLACKLISTED_PEERS, "network_blacklisted_peers", "Number of blacklisted peers in the network" },
24+
2025 // system metrics for the node
2126 MetricGauge { SYSTEM_TOTAL_MEMORY_BYTES, "system_total_memory_bytes", "Total system memory in bytes" },
2227 MetricGauge { SYSTEM_AVAILABLE_MEMORY_BYTES, "system_available_memory_bytes", "Available system memory in bytes" },
@@ -41,3 +46,15 @@ pub fn get_throughput(message_size_bytes: usize, heartbeat_duration: Duration) -
4146 let tps = Duration::from_secs(1).as_secs_f64() / heartbeat_duration.as_secs_f64();
4247 tps * message_size_bytes.into_f64()
4348}
49+
50+ /// Creates barebones network metrics
51+ pub fn create_network_metrics() -> apollo_network::metrics::NetworkMetrics {
52+ NetworkMetrics {
53+ num_connected_peers: NETWORK_CONNECTED_PEERS,
54+ num_blacklisted_peers: NETWORK_BLACKLISTED_PEERS,
55+ broadcast_metrics_by_topic: None,
56+ sqmr_metrics: None,
57+ event_metrics: None,
58+ latency_metrics: None,
59+ }
60+ }
0 commit comments