getsentry / getsentry/sentry-react-native

Populate trace_ids in mobile replay events to enable searching replays by trace ID

Open
#6,232 1 comment 0 reactions 1 assignee Assigned to @alwx View on GitHub
Feature React-Native Replays State: Blocked
Dominant language
TypeScript
Stars
1.8k
Forks
366
Avg merge
1d 9h
Merged PRs (30d)
89

Description

## Problem

When searching for replays by trace ID in Sentry's Explore UI, mobile replays from React Native are not discoverable. While web replay (via JS SDK) collects `trace_ids`, the mobile replay integration does not.

## Solution

The `mobileReplayIntegration` should collect trace IDs when transactions are captured and pass them to the native replay system.

### Reference implementations
- JS (web replay): https://github.com/getsentry/sentry-javascript/blob/30eb68fff5077211c30c61ba74625e66ab514870/packages/replay-internal/src/coreHandlers/handleAfterSendEvent.ts#L34-L43
- Java (Android native): https://github.com/getsentry/sentry-java/pull/5473

### Key points
- Collect trace IDs when transactions are successfully captured during replay recording
- Limit to max 100 trace IDs per segment (matching JS SDK)
- Need a bridge mechanism to pass trace IDs from JS transactions to native replay
- Android native SDK (sentry-java) now supports `registerTraceId()` — need similar support in iOS (sentry-cocoa)

### Dependencies
- sentry-cocoa needs to implement `trace_ids` support first (or in parallel)

Action taken on behalf of Roman Zavarnitsyn.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.