getsentry / getsentry/sentry-python

Sentry spamming RequestAborted on async django 5

Aperta
#4,380 7 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Better Async Support Improvement Python
Lingua principale
Python
Stelle
2.2k
Fork
669
Merge medio
1g 1h
PR unite (30g)
213

Descrizione

### How do you use Sentry?

Sentry Saas (sentry.io)

### Version

sentry-sdk==2.6.0
django==5.0.6
### Steps to Reproduce

1. django app on completely async stack;
2. sentry configuration:
```
sentry_sdk.init(
dsn=SENTRY_DSN,
traces_sample_rate=1.0 if ENV == Envs.Prod.value else 0.1,
profiles_sample_rate=1.0,
environment=ENV.value,
send_default_pii=True,
integrations=[
DjangoIntegration(
transaction_style="url",
middleware_spans=True,
signals_spans=False,
cache_spans=False,
),
AsyncioIntegration(),
],
)
```
3. run app with uvicorn via asgi: `python -m uvicorn myproject.asgi:application`
4. openning any view, accessing any admin url - sends `RequestAborted` error to sentry UI:
```
RequestAborted: null
File "django/core/handlers/asgi.py", line 245, in listen_for_disconnect
raise RequestAborted()
```
----

As we look into django code: https://github.com/django/django/blob/bcd255cd5ca0a1e686d276cca71f45ec400d84a2/django/core/handlers/asgi.py#L195-L202, raising this exception is expected for every http request, and is handled by django https://github.com/django/django/blob/bcd255cd5ca0a1e686d276cca71f45ec400d84a2/django/core/handlers/asgi.py#L209-L211 so we do not need to send errors on that.

Do you plan to fix this issue?

### Expected Result

no error sent to sentry

### Actual Result

Screenshot 2024-06-26 at 17 03 09
Screenshot 2024-06-26 at 17 03 36

Guida per i contributori

Apri la guida per i contributori

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.