-
-
Notifications
You must be signed in to change notification settings - Fork 1.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(browser): Mark errors caught from TryCatch
as unhandled
#8890
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
size-limit report 📦
|
This was referenced Aug 29, 2023
mydea
approved these changes
Aug 29, 2023
Discussed in Daily: We'll label these PRs as |
Lms24
changed the title
fix(browser): Mark errors caught from
feat(browser): Mark errors caught from Aug 29, 2023
TryCatch
integration as unhandledTryCatch
integration as unhandled
Lms24
changed the title
feat(browser): Mark errors caught from
feat(browser): Mark errors caught from Browser SDK as unhandled
Aug 29, 2023
TryCatch
integration as unhandled
Lms24
changed the title
feat(browser): Mark errors caught from Browser SDK as unhandled
feat(browser): Mark errors caught from Aug 29, 2023
TryCatch
as unhandled
This was referenced Aug 29, 2023
AbhiPrasad
approved these changes
Aug 30, 2023
Lms24
added a commit
that referenced
this pull request
Sep 4, 2023
Report exceptions caught by our Vue error handler and routing instrumentation as unhandled. Detailed write up in #8890
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR is the first of a series of PRs which adjust the exception mechanism to be set to
handled: false
whenever our SDK-internal instrumentation catches an error. I decided to split these changes up by SDK package to revert specific changes more easily, and more clearly show which change has which consequences (e.g. on tests).Right now, we sometimes set
handled: true
which often incorrectly classifies actually unhandled errors (from the perspective of a user) as handled. Consequently, users who triage Sentry issue based on the exception mechanism might triage an actually unhandled error as handled.The goal of fixing handled/unhandled is that all errors caught by us are marked as unhandled while user-invoked calls (e.g.
Sentry.captureException
are continued to be marked as handled).Changed Instrumentation
This PR addresses the mechanisms set in the browser package. Most of our instrumentation in the browser SDK already sets the mechanism correctly. Only the
TryCatch
integration required adjustments.Consequences of this change
While the change itself is simple, there are SDK- and product-wide consequences to it:
handled: true
, previously finished withstatus 'ok'
. These sessions now finish withstatus: 'crashed'
.The concept of a "crashed session" doesn't make much sense in browser world, given that the browser very rarely actually crashes. This is very well explained in #6073 (comment). As we all know, release health therefore doesn't make too much sense for browser-based applications.
In a nutshell, these PRs address #6073 with a pragmatic approach of at least uniformly setting the "correct"
handled
status. These PRs do not completely address the linked RFC or gathering more data around decisions first.ref #6073