From 910e21847f4d75efbd978c860f3f1b8c946ea5fa Mon Sep 17 00:00:00 2001
From: Branislav Kontur <bkontur@gmail.com>
Date: Thu, 6 Oct 2022 10:03:34 +0200
Subject: [PATCH] Skip `unexpected metric type`

* Dump more info for `unexpected metric type`

* Skip `unexpected metric type`
---
 polkadot/node/metrics/src/tests.rs | 15 +++++----------
 1 file changed, 5 insertions(+), 10 deletions(-)

diff --git a/polkadot/node/metrics/src/tests.rs b/polkadot/node/metrics/src/tests.rs
index 56e07d96280..932cc7b68be 100644
--- a/polkadot/node/metrics/src/tests.rs
+++ b/polkadot/node/metrics/src/tests.rs
@@ -92,16 +92,11 @@ async fn scrape_prometheus_metrics(metrics_uri: &str) -> HashMap<String, u64> {
 		.expect("Scraper failed to parse Prometheus metrics")
 		.samples
 		.into_iter()
-		.map(|sample| {
-			(
-				sample.metric.to_owned(),
-				match sample.value {
-					prometheus_parse::Value::Counter(value) => value as u64,
-					prometheus_parse::Value::Gauge(value) => value as u64,
-					prometheus_parse::Value::Untyped(value) => value as u64,
-					_ => unreachable!("unexpected metric type"),
-				},
-			)
+		.filter_map(|prometheus_parse::Sample { metric, value, .. }| match value {
+			prometheus_parse::Value::Counter(value) => Some((metric, value as u64)),
+			prometheus_parse::Value::Gauge(value) => Some((metric, value as u64)),
+			prometheus_parse::Value::Untyped(value) => Some((metric, value as u64)),
+			_ => None,
 		})
 		.collect()
 }
-- 
GitLab