sentry-react-native icon indicating copy to clipboard operation
sentry-react-native copied to clipboard

Fix: Messages stack-trace are now symbolicated

Open lucas-zimerman opened this issue 6 months ago • 6 comments

:loudspeaker: Type of change

  • [X] Bugfix
  • [ ] New feature
  • [ ] Enhancement
  • [ ] Refactoring

:scroll: Description

This PR rollsback the behaviour of moving the stack-trace from the threads to the exception, allowing message stack-trace to be symbolicated.

Before the change: image

After the change: https://sentry-sdks.sentry.io/issues/5016987060/events/2ae9c7850dde44c4a5458f6820d71724/?project=5428561 image

Fixes #3097

:bulb: Motivation and Context

:green_heart: How did you test it?

:pencil: Checklist

  • [X] I reviewed submitted code
  • [X] I added tests to verify changes
  • [X] No new PII added or SDK only sends newly added PII if sendDefaultPII is enabled
  • [ ] All tests passing
  • [ ] No breaking changes

:crystal_ball: Next steps

lucas-zimerman avatar Feb 27 '24 16:02 lucas-zimerman

Android (legacy) Performance metrics :rocket:

  Plain With Sentry Diff
Startup time 393.89 ms 436.35 ms 42.46 ms
Size 17.73 MiB 19.93 MiB 2.19 MiB

github-actions[bot] avatar Feb 27 '24 16:02 github-actions[bot]

@krystofwoldrich I added a break-change because it generated a new issue group compared to not using this change.

Q: Should we keep the debugsymbolicator code for threads?

https://github.com/getsentry/sentry-react-native/blob/f63f870a9e9fda8b478a1eb47f33b5a365530717/src/js/integrations/debugsymbolicator.ts#L60-L64

lucas-zimerman avatar Feb 27 '24 16:02 lucas-zimerman

@lucas-zimerman Thank you, can you confirm https://github.com/getsentry/sentry-react-native/issues/2131 still works after moving the stack back to expcetion, as that was the reason to move it to threads?

krystofwoldrich avatar Feb 29 '24 13:02 krystofwoldrich

@krystofwoldrich I added a break-change because it generated a new issue group compared to not using this change.

Q: Should we keep the debugsymbolicator code for threads?

https://github.com/getsentry/sentry-react-native/blob/f63f870a9e9fda8b478a1eb47f33b5a365530717/src/js/integrations/debugsymbolicator.ts#L60-L64

Yes, let's keep the symbolication for threads in, but let's remove the comment about thread being used in captureMessage.

krystofwoldrich avatar Feb 29 '24 13:02 krystofwoldrich

I agree with the breaking-change label, I'll create v6 branch and we can merge it there.

krystofwoldrich avatar Feb 29 '24 13:02 krystofwoldrich

@lucas-zimerman Thank you, can you confirm #2131 still works after moving the stack back to expcetion, as that was the reason to move it to threads?

will check and update this comment

lucas-zimerman avatar Mar 05 '24 12:03 lucas-zimerman

iOS (legacy) Performance metrics :rocket:

  Plain With Sentry Diff
Startup time 1222.52 ms 1224.81 ms 2.29 ms
Size 2.36 MiB 2.92 MiB 569.85 KiB

github-actions[bot] avatar Mar 19 '24 10:03 github-actions[bot]

Android (new) Performance metrics :rocket:

  Plain With Sentry Diff
Startup time 370.29 ms 432.08 ms 61.80 ms
Size 7.15 MiB 8.20 MiB 1.05 MiB

github-actions[bot] avatar Mar 19 '24 10:03 github-actions[bot]