-
-
Notifications
You must be signed in to change notification settings - Fork 355
Closed
Description
OS:
- Windows
- MacOS
- Linux
Platform:
- iOS
- [] Android
SDK:
-
@sentry/react-native(>= 1.0.0) -
react-native-sentry(<= 0.43.2)
SDK version: 5.19.0
react-native version: 0.70.13
Are you using Expo?
- Yes
- No
Are you using sentry.io or on-premise?
- sentry.io (SaaS)
- on-premise
If you are using sentry.io, please post a link to your issue so we can take a look:
Configuration:
(@sentry/react-native)
const detectSoftCrash = (event: Sentry.Event) => {
if (event.tags && event.tags['caughtByErrorBoundary']) {
const exceptions = event?.exception?.values;
forEach(exceptions, (exceptionValue) => {
if (exceptionValue) {
exceptionValue.mechanism = {
type: 'onerror',
handled: false,
};
}
});
event.level = 'fatal';
}
return event;
};
Sentry.init({
environment,
dsn,
beforeSend: detectSoftCrash,
})I have the following issue:
context: We want to measure number of errors caught by Sentry React error boundary, as a rate depending of number of sessions
According documentation, session with unhandled errors should be marked as crashed
Setting explicitly mechanism:{type: 'onerror', handled: false} to a Sentry error event results into:
- (expected) an unhandled event on both platforms
- (expected) a crashed session on Android
- (unexpected) an healthy session on iOS
Steps to reproduce:
using beforeSend, set mechanism={type: 'onerror', handled: false} to exceptions attached to a Sentry event
Actual result:
- on Android release dashboard, the crash rate considers unhandled errors
- on iOS release dashboard, the crash rate does not consider unhandled errors (even though they appear in
unhandled issuestable)
Expected result:
- on Android release dashboard, the crash rate does consider unhandled errors
- on iOS release dashboard, the crash rate does consider unhandled errors
Metadata
Metadata
Assignees
Labels
No labels
Projects
Status
Done
Status
No status