urllib3: filter metrics for scope assertion (#4132)

* urllib3: filter metrics for scope assertion

* Update test_urllib3_metrics.py

* Update test_urllib3_metrics.py

* Update test_urllib3_metrics.py

---------

Co-authored-by: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>
This commit is contained in:
Anuraag (Rag) Agrawal
2026-01-24 00:57:19 +09:00
committed by GitHub
parent dcb3316f63
commit ea03d20c4d

View File

@@ -73,7 +73,9 @@ class TestURLLib3InstrumentorMetric(HttpTestBase, TestBase):
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="opentelemetry.instrumentation.urllib3"
)
self.assertEqual(len(metrics), 3)
(
@@ -143,7 +145,9 @@ class TestURLLib3InstrumentorMetric(HttpTestBase, TestBase):
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="opentelemetry.instrumentation.urllib3"
)
self.assertEqual(len(metrics), 3)
(
client_request_size,
@@ -216,7 +220,9 @@ class TestURLLib3InstrumentorMetric(HttpTestBase, TestBase):
duration = max(round(duration_s * 1000), 0)
expected_size = len(response.data)
metrics = self.get_sorted_metrics()
metrics = self.get_sorted_metrics(
scope="opentelemetry.instrumentation.urllib3"
)
self.assertEqual(len(metrics), 6)
(
@@ -353,7 +359,9 @@ class TestURLLib3InstrumentorMetric(HttpTestBase, TestBase):
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="opentelemetry.instrumentation.urllib3"
)
(
client_duration,
@@ -426,7 +434,9 @@ class TestURLLib3InstrumentorMetric(HttpTestBase, TestBase):
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="opentelemetry.instrumentation.urllib3"
)
(
client_request_size,
@@ -496,7 +506,9 @@ class TestURLLib3InstrumentorMetric(HttpTestBase, TestBase):
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="opentelemetry.instrumentation.urllib3"
)
(_, client_request_size, _) = metrics
self.assertEqual(client_request_size.name, "http.client.request.size")
@@ -529,7 +541,12 @@ class TestURLLib3InstrumentorMetric(HttpTestBase, TestBase):
)
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",
@@ -538,7 +555,9 @@ class TestURLLib3InstrumentorMetric(HttpTestBase, TestBase):
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="opentelemetry.instrumentation.urllib3"
)
(_, client_request_size, _) = metrics
self.assertEqual(client_request_size.name, "http.client.request.size")
@@ -566,7 +585,9 @@ class TestURLLib3InstrumentorMetric(HttpTestBase, TestBase):
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="opentelemetry.instrumentation.urllib3"
)
(_, client_request_size, _) = metrics
self.assertEqual(client_request_size.name, "http.client.request.size")
@@ -595,7 +616,9 @@ class TestURLLib3InstrumentorMetric(HttpTestBase, TestBase):
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="opentelemetry.instrumentation.urllib3"
)
(_, client_request_size, _) = metrics
self.assertEqual(client_request_size.name, "http.client.request.size")
@@ -625,7 +648,9 @@ class TestURLLib3InstrumentorMetric(HttpTestBase, TestBase):
"POST", self.HTTP_URL, body=(b for b in (b"foo", b"bar"))
)
metrics = self.get_sorted_metrics()
metrics = self.get_sorted_metrics(
scope="opentelemetry.instrumentation.urllib3"
)
self.assertEqual(len(metrics), 2)
self.assertNotIn("http.client.request.size", [m.name for m in metrics])
@@ -634,7 +659,9 @@ class TestURLLib3InstrumentorMetric(HttpTestBase, TestBase):
URLLib3Instrumentor().uninstrument()
self.pool.request("GET", self.HTTP_URL)
metrics = self.get_sorted_metrics()
metrics = self.get_sorted_metrics(
scope="opentelemetry.instrumentation.urllib3"
)
self.assertEqual(len(metrics), 3)
for metric in metrics: