diff --git a/substrate/client/authority-discovery/src/lib.rs b/substrate/client/authority-discovery/src/lib.rs index 2cf455f17bab6dfb43c0762f6a2ea75b7d56139b..91e8293dec824fafa2c0f58dc8b5fa9cdeed856c 100644 --- a/substrate/client/authority-discovery/src/lib.rs +++ b/substrate/client/authority-discovery/src/lib.rs @@ -475,6 +475,10 @@ where fn update_peer_set_priority_group(&self) -> Result<()> { let addresses = self.addr_cache.get_subset(); + if let Some(metrics) = &self.metrics { + metrics.priority_group_size.set(addresses.len().try_into().unwrap_or(std::u64::MAX)); + } + debug!( target: LOG_TARGET, "Applying priority group {:?} to peerset.", addresses, @@ -599,6 +603,7 @@ pub(crate) struct Metrics { amount_last_published: Gauge<U64>, request: Counter<U64>, dht_event_received: CounterVec<U64>, + priority_group_size: Gauge<U64>, } impl Metrics { @@ -637,6 +642,13 @@ impl Metrics { )?, registry, )?, + priority_group_size: register( + Gauge::new( + "authority_discovery_priority_group_size", + "Number of addresses passed to the peer set as a priority group." + )?, + registry, + )?, }) } }