sentry-python icon indicating copy to clipboard operation
sentry-python copied to clipboard

Add `failed_request_status_codes` for more web frameworks

Open sentrivana opened this issue 8 months ago • 2 comments

We started supporting failed_request_status_code for Starlette/FastAPI in https://github.com/getsentry/sentry-python/pull/3008. We should add the option to other web frameworks as well.

  • [ ] Django
  • [ ] Flask
  • [x] FastAPI
  • [x] #3535
  • [x] #3576
  • [ ] Falcon
  • [ ] Pyramid
  • [ ] Quart
  • [ ] Sanic
  • [x] Starlette
  • [ ] Starlite/Litestar
  • [ ] Tornado

Note that this might be tricky since we don't alert based on status codes in some frameworks, but rather internal exceptions happening in request handlers.

Failed request status codes

failed_request_status_codes is a list of status code ranges, where a status code range is one of:

  • single number
  • a sequence with a __contains__ method (so that we can check whether a code is in the sequence with in)

The following are examples of valid failed_request_status_codes:

  • [500]
  • [403, range(500, 599)]
  • [{500, 501, 502, 503}]

sentrivana avatar Jun 05 '24 10:06 sentrivana