@@ -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 => {
@@ -16,6 +17,9 @@ define_metrics!(
1617 MetricCounter { RECEIVE_MESSAGE_COUNT , "receive_message_count" , "Number of stress test messages received via broadcast" , init = 0 } ,
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" } ,
20+
21+ MetricGauge { NETWORK_CONNECTED_PEERS , "network_connected_peers" , "Number of connected peers in the network" } ,
22+ MetricGauge { NETWORK_BLACKLISTED_PEERS , "network_blacklisted_peers" , "Number of blacklisted peers in the network" } ,
1923 } ,
2024) ;
2125
@@ -37,3 +41,15 @@ pub fn get_throughput(message_size_bytes: usize, heartbeat_duration: Duration) -
3741 let tps = Duration :: from_secs ( 1 ) . as_secs_f64 ( ) / heartbeat_duration. as_secs_f64 ( ) ;
3842 tps * message_size_bytes. into_f64 ( )
3943}
44+
45+ /// Creates barebones network metrics
46+ pub fn create_network_metrics ( ) -> apollo_network:: metrics:: NetworkMetrics {
47+ NetworkMetrics {
48+ num_connected_peers : NETWORK_CONNECTED_PEERS ,
49+ num_blacklisted_peers : NETWORK_BLACKLISTED_PEERS ,
50+ broadcast_metrics_by_topic : None ,
51+ sqmr_metrics : None ,
52+ event_metrics : None ,
53+ latency_metrics : None ,
54+ }
55+ }
0 commit comments