@@ -54,29 +54,44 @@ async def hello(request):
5454)
5555from opentelemetry .propagate import extract
5656from opentelemetry .propagators .textmap import Getter
57+ from opentelemetry .semconv ._incubating .attributes .http_attributes import (
58+ HTTP_FLAVOR ,
59+ HTTP_HOST ,
60+ HTTP_METHOD ,
61+ HTTP_ROUTE ,
62+ HTTP_SCHEME ,
63+ HTTP_SERVER_NAME ,
64+ HTTP_STATUS_CODE ,
65+ HTTP_TARGET ,
66+ HTTP_URL ,
67+ HTTP_USER_AGENT ,
68+ )
69+ from opentelemetry .semconv ._incubating .attributes .net_attributes import (
70+ NET_HOST_NAME ,
71+ NET_HOST_PORT ,
72+ )
5773from opentelemetry .semconv .metrics import MetricInstruments
58- from opentelemetry .semconv .trace import SpanAttributes
5974from opentelemetry .trace .status import Status , StatusCode
6075from opentelemetry .util .http import get_excluded_urls , remove_url_credentials
6176
6277_duration_attrs = [
63- SpanAttributes . HTTP_METHOD ,
64- SpanAttributes . HTTP_HOST ,
65- SpanAttributes . HTTP_SCHEME ,
66- SpanAttributes . HTTP_STATUS_CODE ,
67- SpanAttributes . HTTP_FLAVOR ,
68- SpanAttributes . HTTP_SERVER_NAME ,
69- SpanAttributes . NET_HOST_NAME ,
70- SpanAttributes . NET_HOST_PORT ,
71- SpanAttributes . HTTP_ROUTE ,
78+ HTTP_METHOD ,
79+ HTTP_HOST ,
80+ HTTP_SCHEME ,
81+ HTTP_STATUS_CODE ,
82+ HTTP_FLAVOR ,
83+ HTTP_SERVER_NAME ,
84+ NET_HOST_NAME ,
85+ NET_HOST_PORT ,
86+ HTTP_ROUTE ,
7287]
7388
7489_active_requests_count_attrs = [
75- SpanAttributes . HTTP_METHOD ,
76- SpanAttributes . HTTP_HOST ,
77- SpanAttributes . HTTP_SCHEME ,
78- SpanAttributes . HTTP_FLAVOR ,
79- SpanAttributes . HTTP_SERVER_NAME ,
90+ HTTP_METHOD ,
91+ HTTP_HOST ,
92+ HTTP_SCHEME ,
93+ HTTP_FLAVOR ,
94+ HTTP_SERVER_NAME ,
8095]
8196
8297tracer = trace .get_tracer (__name__ )
@@ -140,29 +155,27 @@ def collect_request_attributes(request: web.Request) -> Dict:
140155 http_url += "?" + urllib .parse .unquote (query_string )
141156
142157 result = {
143- SpanAttributes . HTTP_SCHEME : request .scheme ,
144- SpanAttributes . HTTP_HOST : server_host ,
145- SpanAttributes . NET_HOST_PORT : port ,
146- SpanAttributes . HTTP_ROUTE : _get_view_func (request ),
147- SpanAttributes . HTTP_FLAVOR : f"{ request .version .major } .{ request .version .minor } " ,
148- SpanAttributes . HTTP_TARGET : request .path ,
149- SpanAttributes . HTTP_URL : remove_url_credentials (http_url ),
158+ HTTP_SCHEME : request .scheme ,
159+ HTTP_HOST : server_host ,
160+ NET_HOST_PORT : port ,
161+ HTTP_ROUTE : _get_view_func (request ),
162+ HTTP_FLAVOR : f"{ request .version .major } .{ request .version .minor } " ,
163+ HTTP_TARGET : request .path ,
164+ HTTP_URL : remove_url_credentials (http_url ),
150165 }
151166
152167 http_method = request .method
153168 if http_method :
154- result [SpanAttributes . HTTP_METHOD ] = http_method
169+ result [HTTP_METHOD ] = http_method
155170
156171 http_host_value_list = (
157172 [request .host ] if not isinstance (request .host , list ) else request .host
158173 )
159174 if http_host_value_list :
160- result [SpanAttributes .HTTP_SERVER_NAME ] = "," .join (
161- http_host_value_list
162- )
175+ result [HTTP_SERVER_NAME ] = "," .join (http_host_value_list )
163176 http_user_agent = request .headers .get ("user-agent" )
164177 if http_user_agent :
165- result [SpanAttributes . HTTP_USER_AGENT ] = http_user_agent
178+ result [HTTP_USER_AGENT ] = http_user_agent
166179
167180 # remove None values
168181 result = {k : v for k , v in result .items () if v is not None }
@@ -183,7 +196,7 @@ def set_status_code(span, status_code: int) -> None:
183196 )
184197 )
185198 else :
186- span .set_attribute (SpanAttributes . HTTP_STATUS_CODE , status_code )
199+ span .set_attribute (HTTP_STATUS_CODE , status_code )
187200 span .set_status (
188201 Status (http_status_to_status_code (status_code , server_span = True ))
189202 )
0 commit comments