From d706faa1b67b687db2c45cf6d6e6757f8b8ff0b5 Mon Sep 17 00:00:00 2001
From: asynchronous rob <rphmeier@gmail.com>
Date: Fri, 18 Mar 2022 11:22:02 -0500
Subject: [PATCH] add a metric for report events in network bridge (#5160)

---
 polkadot/node/network/bridge/src/lib.rs | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/polkadot/node/network/bridge/src/lib.rs b/polkadot/node/network/bridge/src/lib.rs
index b3cf6452d38..b2129cdebbd 100644
--- a/polkadot/node/network/bridge/src/lib.rs
+++ b/polkadot/node/network/bridge/src/lib.rs
@@ -143,6 +143,12 @@ impl Metrics {
 				.set(size as u64)
 		});
 	}
+
+	fn on_report_event(&self) {
+		if let Some(metrics) = self.0.as_ref() {
+			metrics.report_events.inc()
+		}
+	}
 }
 
 #[derive(Clone)]
@@ -151,6 +157,7 @@ struct MetricsInner {
 	connected_events: prometheus::CounterVec<prometheus::U64>,
 	disconnected_events: prometheus::CounterVec<prometheus::U64>,
 	desired_peer_count: prometheus::GaugeVec<prometheus::U64>,
+	report_events: prometheus::Counter<prometheus::U64>,
 
 	notifications_received: prometheus::CounterVec<prometheus::U64>,
 	notifications_sent: prometheus::CounterVec<prometheus::U64>,
@@ -204,6 +211,13 @@ impl metrics::Metrics for Metrics {
 				)?,
 				registry,
 			)?,
+			report_events: prometheus::register(
+				prometheus::Counter::new(
+					"polkadot_parachain_network_report_events_total",
+					"The amount of reputation changes issued by subsystems",
+				)?,
+				registry,
+			)?,
 			notifications_received: prometheus::register(
 				prometheus::CounterVec::new(
 					prometheus::Opts::new(
@@ -438,6 +452,8 @@ where
 								action = "ReportPeer"
 							);
 						}
+
+						metrics.on_report_event();
 						network_service.report_peer(peer, rep);
 					}
 					NetworkBridgeMessage::DisconnectPeer(peer, peer_set) => {
-- 
GitLab