Open lobsterkatie opened 8 months ago
Just wanted to highlight part of @markushi's comment on https://github.com/getsentry/sentry-java/pull/3184, as I think it's an interesting idea to consider vis-à-vis titling. (The whole thread there is relevant and worth reading, but didn't want to lose track of this idea in particular.)
Are the error message and stacktrace of the wrapper error always the same and/or do they provide any informational value?
Whilst the wrapped exception itself and it's stacktrace don't provide any extra information, it indicates one crucial semantic information: An app crash is about to happen.
Thinking more about future solutions: I'm wondering if in situations where the wrapping exception contains no in-app frames, we simply could decide to just use the inner exception for titleing.
More discussion of the above: https://github.com/getsentry/sentry/issues/62299#issuecomment-1971939190
An example of picking the title from the cause
error.
There have been a number of issues which have come up lately having to do with which one of a chained set of errors we use for the purposes of grouping, titling an issue, calculating
stack.module
, etc. In many cases, what we're doing is the opposite of what the user expects, i.e., we're picking the wrong error to use. Here are a few examples:To solve this we need to:
main_exception_id
, which is calculated based on anis_exception_group
value sent by the SDK. (See here for details.) There may be other places where we determine that, too, though (if we're hardcoding to always look at the top error or the bottom error, for example), so we should make sure to find those as well.main_exception_id
value.Semi-related: In some cases we may want to reverse the order of the linked errors before we decide which one to use. (In those cases, we'd do this rather than just make a different choice because the order affects things like how the chain of errors is displayed in the UI.) See https://github.com/getsentry/sentry/issues/64087.