getsentry / getsentry/sentry-react-native
Synchronize `PropagationContext` across layers
- Langage dominant
- TypeScript
- Étoiles
- 1.8k
- Forks
- 366
- Merge moyen
- 1 j 5 h
- PR mergées (30 j)
- 93
Description
Currently, WebViews, RN and native layers keep their own traceId. We could enhance the debugging experience by sharing trace across the hybrid applications layers.
### Examples
- RN opens WebView and an error (Browser SDK in WebView captured an error) happens on the web due to RN not supplying needed data (error was capture by RN). These are not sharing the same trace as the SDK operate independently.
- Native SDK captures error, due to which data are missing in RN layer, and thus RN captures an error. Currently these errors are no covered by the same trace id.
```[tasklist]
### Tasks
- [ ] Pass trace from RN to native (if RN initialized first)
- [ ] React trace from native (if RN initialized second)
- [ ] Pass trace from RN to WebView
- [x] https://github.com/getsentry/sentry-java/pull/4137
- [x] https://github.com/getsentry/sentry-java/pull/4188
- [x] https://github.com/getsentry/sentry-cocoa/pull/5081
```
Guide de contribution
Ouvrir le guide de contribution
Piste de recherche
Commencez par suivre PropagationContext et la gestion des traces à travers les couches React Native, WebView et natives, en utilisant les trois éléments non cochés de la liste de tâches comme périmètre. Vérifiez les cas RN-first et native-first, puis confirmez que la propagation RN-to-WebView couvre les exemples décrits dans l’issue et que toutes les tâches restantes sont terminées.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- react-native, typescript
- Domaine
- mobile-dev, observability
- Type d'issue
- Fonctionnalité
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 25/100