From 047e4bb8b35bf4e213184cdfef748f86f42d9096 Mon Sep 17 00:00:00 2001 From: Anuraag Agrawal Date: Fri, 23 Jan 2026 15:32:09 +0900 Subject: [PATCH 1/4] urllib3: filter metrics for scope assertion --- .../tests/test_urllib3_metrics.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/instrumentation/opentelemetry-instrumentation-urllib3/tests/test_urllib3_metrics.py b/instrumentation/opentelemetry-instrumentation-urllib3/tests/test_urllib3_metrics.py index 7672b65230..d505eef97a 100644 --- a/instrumentation/opentelemetry-instrumentation-urllib3/tests/test_urllib3_metrics.py +++ b/instrumentation/opentelemetry-instrumentation-urllib3/tests/test_urllib3_metrics.py @@ -529,7 +529,12 @@ def test_schema_url(self): ) for metrics in resource_metrics: - for scope_metrics in metrics.scope_metrics: + scope_metrics_list = [ + sm + for sm in metrics.scope_metrics + if sm.scope.name == "opentelemetry.instrumentation.urllib3" + ] + for scope_metrics in scope_metrics_list: self.assertEqual( scope_metrics.scope.schema_url, "https://opentelemetry.io/schemas/1.11.0", From e27ea491193af96065b9913a3854f6ae084d6f28 Mon Sep 17 00:00:00 2001 From: Riccardo Magliocchetti Date: Fri, 23 Jan 2026 16:41:51 +0100 Subject: [PATCH 2/4] Update test_urllib3_metrics.py --- .../tests/test_urllib3_metrics.py | 44 ++++++++++++++----- 1 file changed, 33 insertions(+), 11 deletions(-) diff --git a/instrumentation/opentelemetry-instrumentation-urllib3/tests/test_urllib3_metrics.py b/instrumentation/opentelemetry-instrumentation-urllib3/tests/test_urllib3_metrics.py index d505eef97a..34b00b1b98 100644 --- a/instrumentation/opentelemetry-instrumentation-urllib3/tests/test_urllib3_metrics.py +++ b/instrumentation/opentelemetry-instrumentation-urllib3/tests/test_urllib3_metrics.py @@ -73,7 +73,9 @@ def test_basic_metrics(self): start_time = default_timer() response = self.pool.request("GET", self.HTTP_URL) duration_ms = max(round((default_timer() - start_time) * 1000), 0) - metrics = self.get_sorted_metrics() + metrics = self.get_sorted_metrics( + scope="scope="opentelemetry.instrumentation.starlette" + ) self.assertEqual(len(metrics), 3) ( @@ -143,7 +145,9 @@ def test_basic_metrics_new_semconv(self): response = self.pool.request("GET", self.HTTP_URL) duration_s = max(default_timer() - start_time, 0) - metrics = self.get_sorted_metrics() + metrics = self.get_sorted_metrics( + scope="scope="opentelemetry.instrumentation.starlette" + ) self.assertEqual(len(metrics), 3) ( client_request_size, @@ -216,7 +220,9 @@ def test_basic_metrics_both_semconv(self): duration = max(round(duration_s * 1000), 0) expected_size = len(response.data) - metrics = self.get_sorted_metrics() + metrics = self.get_sorted_metrics( + scope="scope="opentelemetry.instrumentation.starlette" + ) self.assertEqual(len(metrics), 6) ( @@ -353,7 +359,9 @@ def test_basic_metrics_nonstandard_http_method(self): response = self.pool.request("NONSTANDARD", self.HTTP_URL) duration_ms = max(round((default_timer() - start_time) * 1000), 0) - metrics = self.get_sorted_metrics() + metrics = self.get_sorted_metrics( + scope="scope="opentelemetry.instrumentation.starlette" + ) ( client_duration, @@ -426,7 +434,9 @@ def test_basic_metrics_nonstandard_http_method_new_semconv(self): response = self.pool.request("NONSTANDARD", self.HTTP_URL) duration_s = max(default_timer() - start_time, 0) - metrics = self.get_sorted_metrics() + metrics = self.get_sorted_metrics( + scope="scope="opentelemetry.instrumentation.starlette" + ) ( client_request_size, @@ -496,7 +506,9 @@ def test_basic_metrics_nonstandard_http_method_new_semconv(self): def test_str_request_body_size_metrics(self): self.pool.request("POST", self.HTTP_URL, body="foobar") - metrics = self.get_sorted_metrics() + metrics = self.get_sorted_metrics( + scope="scope="opentelemetry.instrumentation.starlette" + ) (_, client_request_size, _) = metrics self.assertEqual(client_request_size.name, "http.client.request.size") @@ -543,7 +555,9 @@ def test_schema_url(self): def test_bytes_request_body_size_metrics(self): self.pool.request("POST", self.HTTP_URL, body=b"foobar") - metrics = self.get_sorted_metrics() + metrics = self.get_sorted_metrics( + scope="scope="opentelemetry.instrumentation.starlette" + ) (_, client_request_size, _) = metrics self.assertEqual(client_request_size.name, "http.client.request.size") @@ -571,7 +585,9 @@ def test_bytes_request_body_size_metrics(self): def test_fields_request_body_size_metrics(self): self.pool.request("POST", self.HTTP_URL, fields={"foo": "bar"}) - metrics = self.get_sorted_metrics() + metrics = self.get_sorted_metrics( + scope="scope="opentelemetry.instrumentation.starlette" + ) (_, client_request_size, _) = metrics self.assertEqual(client_request_size.name, "http.client.request.size") @@ -600,7 +616,9 @@ def test_fields_request_body_size_metrics(self): def test_bytesio_request_body_size_metrics(self): self.pool.request("POST", self.HTTP_URL, body=io.BytesIO(b"foobar")) - metrics = self.get_sorted_metrics() + metrics = self.get_sorted_metrics( + scope="scope="opentelemetry.instrumentation.starlette" + ) (_, client_request_size, _) = metrics self.assertEqual(client_request_size.name, "http.client.request.size") @@ -630,7 +648,9 @@ def test_generator_request_body_size_metrics(self): "POST", self.HTTP_URL, body=(b for b in (b"foo", b"bar")) ) - metrics = self.get_sorted_metrics() + metrics = self.get_sorted_metrics( + scope="scope="opentelemetry.instrumentation.starlette" + ) self.assertEqual(len(metrics), 2) self.assertNotIn("http.client.request.size", [m.name for m in metrics]) @@ -639,7 +659,9 @@ def test_metric_uninstrument(self): URLLib3Instrumentor().uninstrument() self.pool.request("GET", self.HTTP_URL) - metrics = self.get_sorted_metrics() + metrics = self.get_sorted_metrics( + scope="scope="opentelemetry.instrumentation.starlette" + ) self.assertEqual(len(metrics), 3) for metric in metrics: From e344945fae68cf01c263b3ac50a1abe98b97bdd8 Mon Sep 17 00:00:00 2001 From: Riccardo Magliocchetti Date: Fri, 23 Jan 2026 16:49:17 +0100 Subject: [PATCH 3/4] Update test_urllib3_metrics.py --- .../tests/test_urllib3_metrics.py | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/instrumentation/opentelemetry-instrumentation-urllib3/tests/test_urllib3_metrics.py b/instrumentation/opentelemetry-instrumentation-urllib3/tests/test_urllib3_metrics.py index 34b00b1b98..bf078c84d8 100644 --- a/instrumentation/opentelemetry-instrumentation-urllib3/tests/test_urllib3_metrics.py +++ b/instrumentation/opentelemetry-instrumentation-urllib3/tests/test_urllib3_metrics.py @@ -74,7 +74,7 @@ def test_basic_metrics(self): response = self.pool.request("GET", self.HTTP_URL) duration_ms = max(round((default_timer() - start_time) * 1000), 0) metrics = self.get_sorted_metrics( - scope="scope="opentelemetry.instrumentation.starlette" + scope="opentelemetry.instrumentation.starlette" ) self.assertEqual(len(metrics), 3) @@ -146,7 +146,7 @@ def test_basic_metrics_new_semconv(self): duration_s = max(default_timer() - start_time, 0) metrics = self.get_sorted_metrics( - scope="scope="opentelemetry.instrumentation.starlette" + scope="opentelemetry.instrumentation.starlette" ) self.assertEqual(len(metrics), 3) ( @@ -221,7 +221,7 @@ def test_basic_metrics_both_semconv(self): expected_size = len(response.data) metrics = self.get_sorted_metrics( - scope="scope="opentelemetry.instrumentation.starlette" + scope="opentelemetry.instrumentation.starlette" ) self.assertEqual(len(metrics), 6) @@ -360,7 +360,7 @@ def test_basic_metrics_nonstandard_http_method(self): duration_ms = max(round((default_timer() - start_time) * 1000), 0) metrics = self.get_sorted_metrics( - scope="scope="opentelemetry.instrumentation.starlette" + scope="opentelemetry.instrumentation.starlette" ) ( @@ -435,7 +435,7 @@ def test_basic_metrics_nonstandard_http_method_new_semconv(self): duration_s = max(default_timer() - start_time, 0) metrics = self.get_sorted_metrics( - scope="scope="opentelemetry.instrumentation.starlette" + scope="opentelemetry.instrumentation.starlette" ) ( @@ -507,7 +507,7 @@ def test_str_request_body_size_metrics(self): self.pool.request("POST", self.HTTP_URL, body="foobar") metrics = self.get_sorted_metrics( - scope="scope="opentelemetry.instrumentation.starlette" + scope="opentelemetry.instrumentation.starlette" ) (_, client_request_size, _) = metrics @@ -556,7 +556,7 @@ def test_bytes_request_body_size_metrics(self): self.pool.request("POST", self.HTTP_URL, body=b"foobar") metrics = self.get_sorted_metrics( - scope="scope="opentelemetry.instrumentation.starlette" + scope="opentelemetry.instrumentation.starlette" ) (_, client_request_size, _) = metrics @@ -586,7 +586,7 @@ def test_fields_request_body_size_metrics(self): self.pool.request("POST", self.HTTP_URL, fields={"foo": "bar"}) metrics = self.get_sorted_metrics( - scope="scope="opentelemetry.instrumentation.starlette" + scope="opentelemetry.instrumentation.starlette" ) (_, client_request_size, _) = metrics @@ -617,7 +617,7 @@ def test_bytesio_request_body_size_metrics(self): self.pool.request("POST", self.HTTP_URL, body=io.BytesIO(b"foobar")) metrics = self.get_sorted_metrics( - scope="scope="opentelemetry.instrumentation.starlette" + scope="opentelemetry.instrumentation.starlette" ) (_, client_request_size, _) = metrics @@ -649,7 +649,7 @@ def test_generator_request_body_size_metrics(self): ) metrics = self.get_sorted_metrics( - scope="scope="opentelemetry.instrumentation.starlette" + scope="opentelemetry.instrumentation.starlette" ) self.assertEqual(len(metrics), 2) self.assertNotIn("http.client.request.size", [m.name for m in metrics]) @@ -660,7 +660,7 @@ def test_metric_uninstrument(self): self.pool.request("GET", self.HTTP_URL) metrics = self.get_sorted_metrics( - scope="scope="opentelemetry.instrumentation.starlette" + scope="opentelemetry.instrumentation.starlette" ) self.assertEqual(len(metrics), 3) From ee6c67ccc41ad25bd088db419d0ae2961a27d825 Mon Sep 17 00:00:00 2001 From: Riccardo Magliocchetti Date: Fri, 23 Jan 2026 16:51:48 +0100 Subject: [PATCH 4/4] Update test_urllib3_metrics.py --- .../tests/test_urllib3_metrics.py | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/instrumentation/opentelemetry-instrumentation-urllib3/tests/test_urllib3_metrics.py b/instrumentation/opentelemetry-instrumentation-urllib3/tests/test_urllib3_metrics.py index bf078c84d8..54d78ce913 100644 --- a/instrumentation/opentelemetry-instrumentation-urllib3/tests/test_urllib3_metrics.py +++ b/instrumentation/opentelemetry-instrumentation-urllib3/tests/test_urllib3_metrics.py @@ -74,7 +74,7 @@ def test_basic_metrics(self): response = self.pool.request("GET", self.HTTP_URL) duration_ms = max(round((default_timer() - start_time) * 1000), 0) metrics = self.get_sorted_metrics( - scope="opentelemetry.instrumentation.starlette" + scope="opentelemetry.instrumentation.urllib3" ) self.assertEqual(len(metrics), 3) @@ -146,7 +146,7 @@ def test_basic_metrics_new_semconv(self): duration_s = max(default_timer() - start_time, 0) metrics = self.get_sorted_metrics( - scope="opentelemetry.instrumentation.starlette" + scope="opentelemetry.instrumentation.urllib3" ) self.assertEqual(len(metrics), 3) ( @@ -221,7 +221,7 @@ def test_basic_metrics_both_semconv(self): expected_size = len(response.data) metrics = self.get_sorted_metrics( - scope="opentelemetry.instrumentation.starlette" + scope="opentelemetry.instrumentation.urllib3" ) self.assertEqual(len(metrics), 6) @@ -360,7 +360,7 @@ def test_basic_metrics_nonstandard_http_method(self): duration_ms = max(round((default_timer() - start_time) * 1000), 0) metrics = self.get_sorted_metrics( - scope="opentelemetry.instrumentation.starlette" + scope="opentelemetry.instrumentation.urllib3" ) ( @@ -435,7 +435,7 @@ def test_basic_metrics_nonstandard_http_method_new_semconv(self): duration_s = max(default_timer() - start_time, 0) metrics = self.get_sorted_metrics( - scope="opentelemetry.instrumentation.starlette" + scope="opentelemetry.instrumentation.urllib3" ) ( @@ -507,7 +507,7 @@ def test_str_request_body_size_metrics(self): self.pool.request("POST", self.HTTP_URL, body="foobar") metrics = self.get_sorted_metrics( - scope="opentelemetry.instrumentation.starlette" + scope="opentelemetry.instrumentation.urllib3" ) (_, client_request_size, _) = metrics @@ -556,7 +556,7 @@ def test_bytes_request_body_size_metrics(self): self.pool.request("POST", self.HTTP_URL, body=b"foobar") metrics = self.get_sorted_metrics( - scope="opentelemetry.instrumentation.starlette" + scope="opentelemetry.instrumentation.urllib3" ) (_, client_request_size, _) = metrics @@ -586,7 +586,7 @@ def test_fields_request_body_size_metrics(self): self.pool.request("POST", self.HTTP_URL, fields={"foo": "bar"}) metrics = self.get_sorted_metrics( - scope="opentelemetry.instrumentation.starlette" + scope="opentelemetry.instrumentation.urllib3" ) (_, client_request_size, _) = metrics @@ -617,7 +617,7 @@ def test_bytesio_request_body_size_metrics(self): self.pool.request("POST", self.HTTP_URL, body=io.BytesIO(b"foobar")) metrics = self.get_sorted_metrics( - scope="opentelemetry.instrumentation.starlette" + scope="opentelemetry.instrumentation.urllib3" ) (_, client_request_size, _) = metrics @@ -649,7 +649,7 @@ def test_generator_request_body_size_metrics(self): ) metrics = self.get_sorted_metrics( - scope="opentelemetry.instrumentation.starlette" + scope="opentelemetry.instrumentation.urllib3" ) self.assertEqual(len(metrics), 2) self.assertNotIn("http.client.request.size", [m.name for m in metrics]) @@ -660,7 +660,7 @@ def test_metric_uninstrument(self): self.pool.request("GET", self.HTTP_URL) metrics = self.get_sorted_metrics( - scope="opentelemetry.instrumentation.starlette" + scope="opentelemetry.instrumentation.urllib3" ) self.assertEqual(len(metrics), 3)