Skip to content

Commit 7c35261

Browse files
committed
ctx mng things
1 parent 802c7e9 commit 7c35261

1 file changed

Lines changed: 19 additions & 16 deletions

File tree

sentry_sdk/integrations/httpx.py

Lines changed: 19 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -137,18 +137,11 @@ async def send(
137137
parsed_url = parse_url(str(request.url), sanitize=False)
138138

139139
if span_streaming:
140-
span = sentry_sdk.traces.start_span(
140+
span_ctx = sentry_sdk.traces.start_span(
141141
name=f"{request.method} {parsed_url.url if parsed_url else SENSITIVE_DATA_SUBSTITUTE}"
142142
)
143-
span.set_op(OP.HTTP_CLIENT)
144-
span.set_origin(HttpxIntegration.origin)
145-
span.set_attribute(SPANDATA.HTTP_METHOD, request.method)
146-
if parsed_url is not None:
147-
span.set_attribute("url", parsed_url.url)
148-
span.set_attribute(SPANDATA.HTTP_QUERY, parsed_url.query)
149-
span.set_attribute(SPANDATA.HTTP_FRAGMENT, parsed_url.fragment)
150143
else:
151-
span = start_span(
144+
span_ctx = start_span(
152145
op=OP.HTTP_CLIENT,
153146
name="%s %s"
154147
% (
@@ -157,14 +150,24 @@ async def send(
157150
),
158151
origin=HttpxIntegration.origin,
159152
)
160-
span.set_data(SPANDATA.HTTP_METHOD, request.method)
161-
if parsed_url is not None:
162-
span.set_data("url", parsed_url.url)
163-
span.set_data(SPANDATA.HTTP_QUERY, parsed_url.query)
164-
span.set_data(SPANDATA.HTTP_FRAGMENT, parsed_url.fragment)
165153

166-
with span:
167-
if should_propagate_trace(sentry_sdk.get_client(), str(request.url)):
154+
with span_ctx as span:
155+
if span_streaming:
156+
span.set_op(OP.HTTP_CLIENT)
157+
span.set_origin(HttpxIntegration.origin)
158+
span.set_attribute(SPANDATA.HTTP_METHOD, request.method)
159+
if parsed_url is not None:
160+
span.set_attribute("url", parsed_url.url)
161+
span.set_attribute(SPANDATA.HTTP_QUERY, parsed_url.query)
162+
span.set_attribute(SPANDATA.HTTP_FRAGMENT, parsed_url.fragment)
163+
else:
164+
span.set_data(SPANDATA.HTTP_METHOD, request.method)
165+
if parsed_url is not None:
166+
span.set_data("url", parsed_url.url)
167+
span.set_data(SPANDATA.HTTP_QUERY, parsed_url.query)
168+
span.set_data(SPANDATA.HTTP_FRAGMENT, parsed_url.fragment)
169+
170+
if should_propagate_trace(client, str(request.url)):
168171
for (
169172
key,
170173
value,

0 commit comments

Comments
 (0)