diff --git a/instrumentation/opentelemetry-instrumentation-starlette/tests/test_starlette_instrumentation.py b/instrumentation/opentelemetry-instrumentation-starlette/tests/test_starlette_instrumentation.py index 8c326e83ba..9a6af615d4 100644 --- a/instrumentation/opentelemetry-instrumentation-starlette/tests/test_starlette_instrumentation.py +++ b/instrumentation/opentelemetry-instrumentation-starlette/tests/test_starlette_instrumentation.py @@ -180,32 +180,24 @@ def test_starlette_metrics(self): self._client.get("/foobar") self._client.get("/foobar") self._client.get("/foobar") - metrics_list = self.memory_metrics_reader.get_metrics_data() number_data_point_seen = False histogram_data_point_seen = False - self.assertTrue(len(metrics_list.resource_metrics) == 1) - for resource_metric in metrics_list.resource_metrics: - self.assertTrue(len(resource_metric.scope_metrics) == 1) - for scope_metric in resource_metric.scope_metrics: - self.assertEqual( - scope_metric.scope.name, - "opentelemetry.instrumentation.starlette", - ) - self.assertTrue(len(scope_metric.metrics) == 3) - for metric in scope_metric.metrics: - self.assertIn(metric.name, _expected_metric_names) - data_points = list(metric.data.data_points) - self.assertEqual(len(data_points), 1) - for point in data_points: - if isinstance(point, HistogramDataPoint): - self.assertEqual(point.count, 3) - histogram_data_point_seen = True - if isinstance(point, NumberDataPoint): - number_data_point_seen = True - for attr in point.attributes: - self.assertIn( - attr, _recommended_attrs[metric.name] - ) + metrics = self.get_sorted_metrics( + scope="opentelemetry.instrumentation.starlette" + ) + self.assertTrue(len(metrics) == 3) + for metric in metrics: + self.assertIn(metric.name, _expected_metric_names) + data_points = list(metric.data.data_points) + self.assertEqual(len(data_points), 1) + for point in data_points: + if isinstance(point, HistogramDataPoint): + self.assertEqual(point.count, 3) + histogram_data_point_seen = True + if isinstance(point, NumberDataPoint): + number_data_point_seen = True + for attr in point.attributes: + self.assertIn(attr, _recommended_attrs[metric.name]) self.assertTrue(number_data_point_seen and histogram_data_point_seen) def test_basic_post_request_metric_success(self): @@ -233,10 +225,10 @@ def test_basic_post_request_metric_success(self): duration = max(round((default_timer() - start) * 1000), 0) response_size = int(response.headers.get("content-length")) request_size = int(response.request.headers.get("content-length")) - metrics_list = self.memory_metrics_reader.get_metrics_data() - for metric in ( - metrics_list.resource_metrics[0].scope_metrics[0].metrics - ): + metrics = self.get_sorted_metrics( + scope="opentelemetry.instrumentation.starlette" + ) + for metric in metrics: for point in list(metric.data.data_points): if isinstance(point, HistogramDataPoint): self.assertEqual(point.count, 1) @@ -262,10 +254,10 @@ def test_metric_for_uninstrment_app_method(self): self._instrumentor.uninstrument_app(self._app) self._client.get("/foobar") self._client.get("/foobar") - metrics_list = self.memory_metrics_reader.get_metrics_data() - for metric in ( - metrics_list.resource_metrics[0].scope_metrics[0].metrics - ): + metrics = self.get_sorted_metrics( + scope="opentelemetry.instrumentation.starlette" + ) + for metric in metrics: for point in list(metric.data.data_points): if isinstance(point, HistogramDataPoint): self.assertEqual(point.count, 1) @@ -283,10 +275,10 @@ def test_metric_uninstrument_inherited_by_base(self): client.get("/foobar") client.get("/foobar") client.get("/foobar") - metrics_list = self.memory_metrics_reader.get_metrics_data() - for metric in ( - metrics_list.resource_metrics[0].scope_metrics[0].metrics - ): + metrics = self.get_sorted_metrics( + scope="opentelemetry.instrumentation.starlette" + ) + for metric in metrics: for point in list(metric.data.data_points): if isinstance(point, HistogramDataPoint): self.assertEqual(point.count, 1)