Endpoint Regression
Endpoint Regression issues are a generic class of problems where the duration of a transaction increases over time and degrades application performance. Sentry proactively monitors common endpoints out of the box and reports any possible regressions, grouping them as Endpoint Regression issue types.
The detector for performance issues periodically checks the 95th percentile transaction duration of the most common endpoints in your project. When a significant increase in the p95 value is detected and has been sustained for some time, a regression issue is created.
To be categorized as an endpoint, the transaction operation must be one of the following:
function.aws
function.aws.lambda
http.server
serverless.function
asgi.server
rails.request
To find additional info, go to the Issues page and click on the Endpoint Regression issue you're interested in. In the top section of the "Details" tab, you'll find the following:
- Endpoint Name: The name of the transaction that has regressed.
- Change in Duration: The value of absolute and relative change in duration.
- Approximate Start Time: The approximate time when the regression occurred.
The below chart shows the p95 transaction duration over a period of up to 14 days before and 14 days after the regression was identified.
The "Potential Causes" section shows a list of spans that may have contributed to the slowdown the most. Next to each span, you'll find the following:
- Span description that leads to the Span Summary page where you can find more information about that specific span.
- P95 of span self time before the regression.
- P95 of span self time after the regression.
- The percentage change in p95 span self time before and after the regression.
The "Compare Events" section lets you compare example events from before and after the regression occurred. We call events that are close to the original P95 baseline duration "Baseline events", and events that are close to the new P95 baseline "Regressed events".
Our documentation is open source and available on GitHub. Your contributions are welcome, whether fixing a typo (drat!) or suggesting an update ("yeah, this would be better").