-
-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Open
Labels
Description
Problem Statement
This issue collects steps we need to take to implement span streaming
some deeper thoughts on various related topics: #17798
Solution Brainstorm
In a rough order:
- [core] Define envelope and serialized span types
- [core] Implement span JSON serialization
- [core] Implement client hooks required for sending, buffering and span processing
- [core] Add new
traceLifecycle
SDK option - [core] Adjust
beforeSendSpan
type and exportmakeV2Callback
helper function - [everywhere] migrate SDK-internal event processor usage for
transaction
events to client hook (see Implications of Span Streaming #17798) - [browser] implement buffering and sending logic in integration
- [node] implement buffering and sending logic in new OTel Span Exporter
- [everywhere] apply context data to segment span as attributes
- [meta] define any missing attributes in sentry conventions
- [core] set SpanKind and
isRemote
onSentrySpan
- [core] extract span
kind
andis_remote
formSentrySpan
and OTelSpan
- [core, meta] define and add a client report reason for
ignoreSpans