Skip to content

Commit 0bf02b4

Browse files
committed
.
1 parent b103ca6 commit 0bf02b4

1 file changed

Lines changed: 16 additions & 21 deletions

File tree

sentry_sdk/integrations/rust_tracing.py

Lines changed: 16 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,6 @@
4040
from sentry_sdk.tracing import Span as SentrySpan
4141
from sentry_sdk.utils import SENSITIVE_DATA_SUBSTITUTE
4242

43-
TraceState = Optional[Tuple[Optional[SentrySpan], SentrySpan]]
44-
4543

4644
class RustTracingLevel(Enum):
4745
Trace = "TRACE"
@@ -170,7 +168,7 @@ def _include_tracing_fields(self) -> bool:
170168
else self.include_tracing_fields
171169
)
172170

173-
def on_event(self, event: str, _span_state: "TraceState") -> None:
171+
def on_event(self, event: str, sentry_span: "SentrySpan") -> None:
174172
deserialized_event = json.loads(event)
175173
metadata = deserialized_event.get("metadata", {})
176174

@@ -184,7 +182,7 @@ def on_event(self, event: str, _span_state: "TraceState") -> None:
184182
elif event_type == EventTypeMapping.Event:
185183
process_event(deserialized_event)
186184

187-
def on_new_span(self, attrs: str, span_id: str) -> "TraceState":
185+
def on_new_span(self, attrs: str, span_id: str) -> "SentrySpan":
188186
attrs = json.loads(attrs)
189187
metadata = attrs.get("metadata", {})
190188

@@ -210,29 +208,26 @@ def on_new_span(self, attrs: str, span_id: str) -> "TraceState":
210208
"origin": self.origin,
211209
}
212210

213-
parent_sentry_span = sentry_sdk.get_current_span()
214-
with sentry_sdk.start_span(**kwargs) as sentry_span:
215-
fields = metadata.get("fields", [])
216-
for field in fields:
217-
if self._include_tracing_fields():
218-
sentry_span.set_data(field, attrs.get(field))
219-
else:
220-
sentry_span.set_data(field, SENSITIVE_DATA_SUBSTITUTE)
211+
sentry_span = sentry_sdk.start_span(**kwargs)
212+
fields = metadata.get("fields", [])
213+
for field in fields:
214+
if self._include_tracing_fields():
215+
sentry_span.set_data(field, attrs.get(field))
216+
else:
217+
sentry_span.set_data(field, SENSITIVE_DATA_SUBSTITUTE)
221218

222-
return (parent_sentry_span, sentry_span)
219+
sentry_span.__enter__()
220+
return sentry_span
223221

224-
def on_close(self, span_id: str, span_state: "TraceState") -> None:
225-
if span_state is None:
222+
def on_close(self, span_id: str, sentry_span: "SentrySpan") -> None:
223+
if sentry_span is None:
226224
return
227225

228-
parent_sentry_span, sentry_span = span_state
229-
sentry_span.finish()
230-
sentry_sdk.get_current_scope().span = parent_sentry_span
226+
sentry_span.__exit__()
231227

232-
def on_record(self, span_id: str, values: str, span_state: "TraceState") -> None:
233-
if span_state is None:
228+
def on_record(self, span_id: str, values: str, sentry_span: "SentrySpan") -> None:
229+
if sentry_span is None:
234230
return
235-
_parent_sentry_span, sentry_span = span_state
236231

237232
deserialized_values = json.loads(values)
238233
for key, value in deserialized_values.items():

0 commit comments

Comments
 (0)