Skip to content

Span Streaming Implementation #17836

@Lms24

Description

@Lms24

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 export makeV2Callback 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 on SentrySpan
  • [core] extract span kind and is_remote form SentrySpan and OTel Span
  • [core, meta] define and add a client report reason for ignoreSpans

Metadata

Metadata

Assignees

Labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions