Skip to content

Commit 3efd161

Browse files
caterinaandreuxrmx
andauthored
Refactor: replace use of SpanAttributes (#3502)
Co-authored-by: Riccardo Magliocchetti <[email protected]>
1 parent 99049a9 commit 3efd161

File tree

1 file changed

+40
-44
lines changed

1 file changed

+40
-44
lines changed

instrumentation/opentelemetry-instrumentation-aiohttp-client/tests/test_aiohttp_client_integration.py

Lines changed: 40 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -36,14 +36,18 @@
3636
AioHttpClientInstrumentor,
3737
)
3838
from opentelemetry.instrumentation.utils import suppress_instrumentation
39+
from opentelemetry.semconv._incubating.attributes.http_attributes import (
40+
HTTP_METHOD,
41+
HTTP_STATUS_CODE,
42+
HTTP_URL,
43+
)
3944
from opentelemetry.semconv.attributes.error_attributes import ERROR_TYPE
4045
from opentelemetry.semconv.attributes.http_attributes import (
4146
HTTP_REQUEST_METHOD,
4247
HTTP_REQUEST_METHOD_ORIGINAL,
4348
HTTP_RESPONSE_STATUS_CODE,
4449
)
4550
from opentelemetry.semconv.attributes.url_attributes import URL_FULL
46-
from opentelemetry.semconv.trace import SpanAttributes
4751
from opentelemetry.test.test_base import TestBase
4852
from opentelemetry.trace import Span, StatusCode
4953
from opentelemetry.util._importlib_metadata import entry_points
@@ -136,9 +140,9 @@ def test_status_codes(self):
136140
)
137141
url = f"http://{host}:{port}/{path}"
138142
attributes = {
139-
SpanAttributes.HTTP_METHOD: "GET",
140-
SpanAttributes.HTTP_URL: url,
141-
SpanAttributes.HTTP_STATUS_CODE: status_code,
143+
HTTP_METHOD: "GET",
144+
HTTP_URL: url,
145+
HTTP_STATUS_CODE: status_code,
142146
}
143147
spans = [("GET", (span_status, None), attributes)]
144148
self.assert_spans(spans)
@@ -181,11 +185,11 @@ def test_status_codes_both_semconv(self):
181185
url = f"http://{host}:{port}/{path}"
182186
attributes = {
183187
HTTP_REQUEST_METHOD: "GET",
184-
SpanAttributes.HTTP_METHOD: "GET",
188+
HTTP_METHOD: "GET",
185189
URL_FULL: url,
186-
SpanAttributes.HTTP_URL: url,
190+
HTTP_URL: url,
187191
HTTP_RESPONSE_STATUS_CODE: status_code,
188-
SpanAttributes.HTTP_STATUS_CODE: status_code,
192+
HTTP_STATUS_CODE: status_code,
189193
}
190194
if status_code >= 400:
191195
attributes[ERROR_TYPE] = str(status_code.value)
@@ -292,16 +296,12 @@ def response_hook(
292296
(span.status.status_code, span.status.description),
293297
(StatusCode.UNSET, None),
294298
)
299+
self.assertEqual(span.attributes[HTTP_METHOD], method)
295300
self.assertEqual(
296-
span.attributes[SpanAttributes.HTTP_METHOD], method
297-
)
298-
self.assertEqual(
299-
span.attributes[SpanAttributes.HTTP_URL],
301+
span.attributes[HTTP_URL],
300302
f"http://{host}:{port}{path}",
301303
)
302-
self.assertEqual(
303-
span.attributes[SpanAttributes.HTTP_STATUS_CODE], HTTPStatus.OK
304-
)
304+
self.assertEqual(span.attributes[HTTP_STATUS_CODE], HTTPStatus.OK)
305305
self.assertIn("response_hook_attr", span.attributes)
306306
self.assertEqual(span.attributes["response_hook_attr"], "value")
307307
self.memory_exporter.clear()
@@ -325,9 +325,9 @@ def strip_query_params(url: yarl.URL) -> str:
325325
"GET",
326326
(StatusCode.UNSET, None),
327327
{
328-
SpanAttributes.HTTP_METHOD: "GET",
329-
SpanAttributes.HTTP_URL: f"http://{host}:{port}/some/path",
330-
SpanAttributes.HTTP_STATUS_CODE: int(HTTPStatus.OK),
328+
HTTP_METHOD: "GET",
329+
HTTP_URL: f"http://{host}:{port}/some/path",
330+
HTTP_STATUS_CODE: int(HTTPStatus.OK),
331331
},
332332
)
333333
]
@@ -359,8 +359,8 @@ async def do_request(url):
359359
"GET",
360360
(expected_status, "ClientConnectorError"),
361361
{
362-
SpanAttributes.HTTP_METHOD: "GET",
363-
SpanAttributes.HTTP_URL: url,
362+
HTTP_METHOD: "GET",
363+
HTTP_URL: url,
364364
},
365365
)
366366
]
@@ -385,8 +385,8 @@ async def request_handler(request):
385385
"GET",
386386
(StatusCode.ERROR, "ServerDisconnectedError"),
387387
{
388-
SpanAttributes.HTTP_METHOD: "GET",
389-
SpanAttributes.HTTP_URL: f"http://{host}:{port}/test",
388+
HTTP_METHOD: "GET",
389+
HTTP_URL: f"http://{host}:{port}/test",
390390
},
391391
)
392392
]
@@ -443,8 +443,8 @@ async def request_handler(request):
443443
HTTP_REQUEST_METHOD: "GET",
444444
URL_FULL: f"http://{host}:{port}/test",
445445
ERROR_TYPE: "ServerDisconnectedError",
446-
SpanAttributes.HTTP_METHOD: "GET",
447-
SpanAttributes.HTTP_URL: f"http://{host}:{port}/test",
446+
HTTP_METHOD: "GET",
447+
HTTP_URL: f"http://{host}:{port}/test",
448448
},
449449
)
450450
]
@@ -469,8 +469,8 @@ async def request_handler(request):
469469
"GET",
470470
(StatusCode.ERROR, "SocketTimeoutError"),
471471
{
472-
SpanAttributes.HTTP_METHOD: "GET",
473-
SpanAttributes.HTTP_URL: f"http://{host}:{port}/test_timeout",
472+
HTTP_METHOD: "GET",
473+
HTTP_URL: f"http://{host}:{port}/test_timeout",
474474
},
475475
)
476476
]
@@ -496,8 +496,8 @@ async def request_handler(request):
496496
"GET",
497497
(StatusCode.ERROR, "TooManyRedirects"),
498498
{
499-
SpanAttributes.HTTP_METHOD: "GET",
500-
SpanAttributes.HTTP_URL: f"http://{host}:{port}/test_too_many_redirects",
499+
HTTP_METHOD: "GET",
500+
HTTP_URL: f"http://{host}:{port}/test_too_many_redirects",
501501
},
502502
)
503503
]
@@ -532,11 +532,9 @@ async def do_request(url):
532532
"HTTP",
533533
(StatusCode.ERROR, None),
534534
{
535-
SpanAttributes.HTTP_METHOD: "_OTHER",
536-
SpanAttributes.HTTP_URL: url,
537-
SpanAttributes.HTTP_STATUS_CODE: int(
538-
HTTPStatus.METHOD_NOT_ALLOWED
539-
),
535+
HTTP_METHOD: "_OTHER",
536+
HTTP_URL: url,
537+
HTTP_STATUS_CODE: int(HTTPStatus.METHOD_NOT_ALLOWED),
540538
},
541539
)
542540
]
@@ -619,11 +617,9 @@ async def do_request(url):
619617
"GET",
620618
(StatusCode.UNSET, None),
621619
{
622-
SpanAttributes.HTTP_METHOD: "GET",
623-
SpanAttributes.HTTP_URL: (
624-
"http://localhost:5000/status/200"
625-
),
626-
SpanAttributes.HTTP_STATUS_CODE: int(HTTPStatus.OK),
620+
HTTP_METHOD: "GET",
621+
HTTP_URL: ("http://localhost:5000/status/200"),
622+
HTTP_STATUS_CODE: int(HTTPStatus.OK),
627623
},
628624
)
629625
]
@@ -671,12 +667,12 @@ def test_instrument(self):
671667
)
672668
span = self.assert_spans(1)
673669
self.assertEqual("GET", span.name)
674-
self.assertEqual("GET", span.attributes[SpanAttributes.HTTP_METHOD])
670+
self.assertEqual("GET", span.attributes[HTTP_METHOD])
675671
self.assertEqual(
676672
f"http://{host}:{port}/test-path",
677-
span.attributes[SpanAttributes.HTTP_URL],
673+
span.attributes[HTTP_URL],
678674
)
679-
self.assertEqual(200, span.attributes[SpanAttributes.HTTP_STATUS_CODE])
675+
self.assertEqual(200, span.attributes[HTTP_STATUS_CODE])
680676

681677
def test_instrument_new_semconv(self):
682678
AioHttpClientInstrumentor().uninstrument()
@@ -708,11 +704,11 @@ def test_instrument_both_semconv(self):
708704
url = f"http://{host}:{port}/test-path"
709705
attributes = {
710706
HTTP_REQUEST_METHOD: "GET",
711-
SpanAttributes.HTTP_METHOD: "GET",
707+
HTTP_METHOD: "GET",
712708
URL_FULL: url,
713-
SpanAttributes.HTTP_URL: url,
709+
HTTP_URL: url,
714710
HTTP_RESPONSE_STATUS_CODE: 200,
715-
SpanAttributes.HTTP_STATUS_CODE: 200,
711+
HTTP_STATUS_CODE: 200,
716712
}
717713
span = self.assert_spans(1)
718714
self.assertEqual("GET", span.name)
@@ -852,7 +848,7 @@ def strip_query_params(url: yarl.URL) -> str:
852848
span = self.assert_spans(1)
853849
self.assertEqual(
854850
f"http://{host}:{port}/test-path",
855-
span.attributes[SpanAttributes.HTTP_URL],
851+
span.attributes[HTTP_URL],
856852
)
857853

858854
def test_hooks(self):

0 commit comments

Comments
 (0)