From eaa31d3f1fdf65f1eae7a0d983a0a24247b54e2e Mon Sep 17 00:00:00 2001 From: Krystof Woldrich Date: Wed, 8 Jan 2025 11:31:48 +0100 Subject: [PATCH 1/4] fix(react-navigation): Make `navigation.processing` span title more explicit --- CHANGELOG.md | 4 ++++ packages/core/src/js/tracing/reactnavigation.ts | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index afa59de99a..607105cdd0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,10 @@ ## Unreleased +### Changes + +- Rename `Navigation Processing` span to more expressive `Navigation dispatch to screen mounted or navigation cancelled` ([#4423](https://github.com/getsentry/sentry-react-native/pull/4423)) + ### Dependencies - Bump CLI from v2.39.1 to v2.40.0 ([#4412](https://github.com/getsentry/sentry-react-native/pull/4412)) diff --git a/packages/core/src/js/tracing/reactnavigation.ts b/packages/core/src/js/tracing/reactnavigation.ts index 6fb08890ed..a74962a326 100644 --- a/packages/core/src/js/tracing/reactnavigation.ts +++ b/packages/core/src/js/tracing/reactnavigation.ts @@ -203,7 +203,7 @@ export const reactNavigationIntegration = ({ if (enableTimeToInitialDisplay) { navigationProcessingSpan = startInactiveSpan({ op: 'navigation.processing', - name: 'Navigation processing', + name: 'Navigation dispatch to screen mounted or navigation cancelled', startTime: latestNavigationSpan && spanToJSON(latestNavigationSpan).start_timestamp, }); navigationProcessingSpan.setAttribute( From 9ec98a925782441fa92a6278ef9bbaab401f49ff Mon Sep 17 00:00:00 2001 From: Krystof Woldrich Date: Wed, 8 Jan 2025 11:48:16 +0100 Subject: [PATCH 2/4] Also update updated name after screen name is known --- CHANGELOG.md | 2 +- packages/core/src/js/tracing/reactnavigation.ts | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 607105cdd0..5a4899f75a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,7 +10,7 @@ ### Changes -- Rename `Navigation Processing` span to more expressive `Navigation dispatch to screen mounted or navigation cancelled` ([#4423](https://github.com/getsentry/sentry-react-native/pull/4423)) +- Rename `navigation.processing` span to more expressive `Navigation dispatch to screen A mounted/navigation cancelled` ([#4423](https://github.com/getsentry/sentry-react-native/pull/4423)) ### Dependencies diff --git a/packages/core/src/js/tracing/reactnavigation.ts b/packages/core/src/js/tracing/reactnavigation.ts index a74962a326..ce16dc46d0 100644 --- a/packages/core/src/js/tracing/reactnavigation.ts +++ b/packages/core/src/js/tracing/reactnavigation.ts @@ -203,7 +203,7 @@ export const reactNavigationIntegration = ({ if (enableTimeToInitialDisplay) { navigationProcessingSpan = startInactiveSpan({ op: 'navigation.processing', - name: 'Navigation dispatch to screen mounted or navigation cancelled', + name: 'Navigation dispatch to navigation cancelled or screen mounted', startTime: latestNavigationSpan && spanToJSON(latestNavigationSpan).start_timestamp, }); navigationProcessingSpan.setAttribute( @@ -274,7 +274,7 @@ export const reactNavigationIntegration = ({ }); } - navigationProcessingSpan?.updateName(`Processing navigation to ${route.name}`); + navigationProcessingSpan?.updateName(`Navigation dispatch to ${route.name} mounted`); navigationProcessingSpan?.setStatus({ code: SPAN_STATUS_OK }); navigationProcessingSpan?.end(stateChangedTimestamp); navigationProcessingSpan = undefined; From 02120b6f2a2170a2ba041d1ed8a31ea435df9459 Mon Sep 17 00:00:00 2001 From: Krystof Woldrich Date: Wed, 8 Jan 2025 11:48:59 +0100 Subject: [PATCH 3/4] add `screen` before the actual name --- packages/core/src/js/tracing/reactnavigation.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/core/src/js/tracing/reactnavigation.ts b/packages/core/src/js/tracing/reactnavigation.ts index ce16dc46d0..dd33424b9c 100644 --- a/packages/core/src/js/tracing/reactnavigation.ts +++ b/packages/core/src/js/tracing/reactnavigation.ts @@ -274,7 +274,7 @@ export const reactNavigationIntegration = ({ }); } - navigationProcessingSpan?.updateName(`Navigation dispatch to ${route.name} mounted`); + navigationProcessingSpan?.updateName(`Navigation dispatch to screen ${route.name} mounted`); navigationProcessingSpan?.setStatus({ code: SPAN_STATUS_OK }); navigationProcessingSpan?.end(stateChangedTimestamp); navigationProcessingSpan = undefined; From bc87ac19d24bd040b494f2e34e4b944cde372060 Mon Sep 17 00:00:00 2001 From: Krystof Woldrich Date: Wed, 8 Jan 2025 11:50:14 +0100 Subject: [PATCH 4/4] fix tests --- packages/core/test/tracing/reactnavigation.ttid.test.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/core/test/tracing/reactnavigation.ttid.test.tsx b/packages/core/test/tracing/reactnavigation.ttid.test.tsx index 7c0637b896..a0245cff12 100644 --- a/packages/core/test/tracing/reactnavigation.ttid.test.tsx +++ b/packages/core/test/tracing/reactnavigation.ttid.test.tsx @@ -204,7 +204,7 @@ describe('React Navigation - TTID', () => { 'sentry.origin': SPAN_ORIGIN_AUTO_NAVIGATION_REACT_NAVIGATION, 'sentry.source': 'custom', }, - description: 'Processing navigation to New Screen', + description: 'Navigation dispatch to screen New Screen mounted', op: 'navigation.processing', origin: SPAN_ORIGIN_AUTO_NAVIGATION_REACT_NAVIGATION, status: 'ok', @@ -232,7 +232,7 @@ describe('React Navigation - TTID', () => { 'sentry.origin': SPAN_ORIGIN_AUTO_NAVIGATION_REACT_NAVIGATION, 'sentry.source': 'custom', }, - description: 'Processing navigation to Initial Screen', + description: 'Navigation dispatch to screen Initial Screen mounted', op: 'navigation.processing', origin: SPAN_ORIGIN_AUTO_NAVIGATION_REACT_NAVIGATION, status: 'ok',