getsentry / sentry

Developer-first error tracking and performance monitoring
https://sentry.io
Other
39.11k stars 4.2k forks source link

Improved experience for exception groups #77870

Open dgbailey opened 1 month ago

dgbailey commented 1 month ago

Problem Statement

Prior work on exception groups

In heavier concurrency use cases, our issue details UI for grouped exceptions can increase friction for users when it comes to extracting meaningful detail from stack traces.

Execution flow paradigms (e.g. structured concurrency) can result in users needing (clicking a lot) to go (n) levels deep to find the meaningful exception within a series of parent child exception groups.

This will be valuable for anyone using trio, anyio or the stdlib asyncio.TaskGroup, or any other form of structured concurrency / analogous constructs in other languages.

Solution Brainstorm

  1. An option to collapse chains of certain exception types (e.g., NonBaseMultiError and ExceptionGroup when they have only a single child) into one trace

  2. There were a better UI option to deal with deeply-nested exceptions than repeated clicking. Some type of auto grouping perhaps.

Product Area

Issues

getsantry[bot] commented 1 month ago

Auto-routing to @getsentry/product-owners-issues for triage ⏲️

mrduncan commented 1 month ago

@dgbailey do you have an example of a particularly bad one of these within Sentry that you can share?

dgbailey commented 1 month ago

@mrduncan adding you + this context to the internal case.