Comments (11)
Assigning to @getsentry/support for routing ⏲️
from sentry-python.
Routing to @getsentry/product-owners-issues for triage ⏲️
from sentry-python.
Likely to be caused by #2386
from sentry-python.
Likely to be caused by #2386
@vartec how is that connected? My app does not crash, only the Sentry SDK is complaining...
from sentry-python.
I am getting the same issue as above, but I haven't yet tried the custom HttpTransport
.
Basic specs are:
sentry-sdk[flask,django,celery]==1.29.0
python3.9
from sentry-python.
Hey @manuellazzari-cargoone and @kieran-sf! Thanks for reporting this.
My first suggestion would've been exactly what you tried @manuellazzari-cargoone with the custom socket options from #1198 (comment). Are you seeing at least some improvement?
I'm curious whether spacing out the events sent from the SDK makes a difference. Can you try overriding _send_request
in your custom transport roughly like this?
import time
class KeepAliveHttpTransport(HttpTransport):
def _send_request(self, *args, **kwargs):
time.sleep(0.01)
super()._send_request(self, *args, **kwargs)
from sentry-python.
@sentrivana thanks for getting back -- when trying the custom socket settings I wasn't able to see any major differences. Now I'm testing the whole package (custom socket settings and custom send request).
from sentry-python.
@sentrivana the issue is still there even by adding the custom _send_request
. From a qualitative perspective, it seems that it appears more or less with the same frequency (see below an extraction from our logs before and after the changes were deployed).
2024-02-16T15:29:33.048565197Z ERROR - sentry_sdk.errors - Internal error in sentry_sdk
2024-02-16T15:30:55.565954424Z ERROR - sentry_sdk.errors - Internal error in sentry_sdk
2024-02-16T15:33:13.537149008Z ERROR - sentry_sdk.errors - Internal error in sentry_sdk
2024-02-16T15:33:17.914818994Z ERROR - sentry_sdk.errors - Internal error in sentry_sdk
2024-02-16T15:34:47.778557487Z ERROR - sentry_sdk.errors - Internal error in sentry_sdk
2024-02-16T15:34:47.819326396Z ERROR - sentry_sdk.errors - Internal error in sentry_sdk
2024-02-16T15:37:33.774480759Z ERROR - sentry_sdk.errors - Internal error in sentry_sdk
2024-02-16T15:37:34.586534890Z ERROR - sentry_sdk.errors - Internal error in sentry_sdk
2024-02-16T15:41:53.741483570Z ERROR - sentry_sdk.errors - Internal error in sentry_sdk
2024-02-16T15:45:11.560933696Z ERROR - sentry_sdk.errors - Internal error in sentry_sdk
2024-02-16T15:51:10.940568800Z ERROR - sentry_sdk.errors - Internal error in sentry_sdk
2024-02-16T15:51:11.016053254Z ERROR - sentry_sdk.errors - Internal error in sentry_sdk
2024-02-16T15:51:20.146324668Z ERROR - sentry_sdk.errors - Internal error in sentry_sdk
2024-02-16T15:51:28.814144310Z ERROR - sentry_sdk.errors - Internal error in sentry_sdk
2024-02-16T15:58:53.136957655Z ERROR - sentry_sdk.errors - Internal error in sentry_sdk
2024-02-16T15:58:54.053616565Z ERROR - sentry_sdk.errors - Internal error in sentry_sdk
2024-02-16T15:59:16.002942751Z ERROR - sentry_sdk.errors - Internal error in sentry_sdk
2024-02-16T16:03:12.954825518Z Initializing Sentry SDK... <-- changes deployed
...
2024-02-16T16:13:44.713686531Z ERROR - sentry_sdk.errors - Internal error in sentry_sdk
2024-02-16T16:22:30.285920011Z ERROR - sentry_sdk.errors - Internal error in sentry_sdk
2024-02-16T16:25:48.997920085Z ERROR - sentry_sdk.errors - Internal error in sentry_sdk
2024-02-16T16:25:49.389493362Z ERROR - sentry_sdk.errors - Internal error in sentry_sdk
2024-02-16T16:26:00.889221302Z ERROR - sentry_sdk.errors - Internal error in sentry_sdk
2024-02-16T16:38:44.314760846Z ERROR - sentry_sdk.errors - Internal error in sentry_sdk
from sentry-python.
@manuellazzari-cargoone Thanks for the follow up. It looks like the sleep might've had a tiny effect, at least from the logs it looks like there's less occurrences if you look at a comparable time span before and after -- but this could obviously have to do with traffic etc., so don't think this is exactly conclusive.
Are you seeing any network errors for outgoing requests anywhere else in your system? Just trying to rule out general network instability. Alternatively I'm thinking if there's anything special about the errors/transactions -- maybe them being unusually big so it takes long to send each one and the server drops the connection? Fiddling around with the socket options might make a difference, too.
from sentry-python.
Are you seeing any network errors for outgoing requests anywhere else in your system? Just trying to rule out general network instability.
I'm observing this issue just with 2 services both running with gunicorn
. Also it's all GCP, so I would rule out consistent network instability.
Alternatively I'm thinking if there's anything special about the errors/transactions -- maybe them being unusually big so it takes long to send each one and the server drops the connection?
I'm not sure about size, but I know for sure we have services deal with a lot more traffic and a lot bigger packages. In particular, one of the affected services is dealing with very little traffic and small packages and still experiencing the problem.
from sentry-python.
Thanks! I think in general we need to reconsider our transport logic and possibly add retries for more cases. (Currently we only retry if we're rate limited.) But at the same time, with this particular error there's no telling if the server actually processed the event and just crapped out at the very end, so it's not clear cut.
from sentry-python.
Related Issues (20)
- [Django] Clickhouse integration not working after upgrading from 1.45.0 HOT 4
- Fix langchain tests
- "Generic WSGI Request" naming HOT 7
- Make ClickHouse integration work with `django-clickhouse-backend`
- `sentry_sdk.init` breaks `import exceptiongroup` in virtualenv activated with `activate_this.py` HOT 2
- Django doesn't run if you remove a rq job on app.ready HOT 4
- Sentry randomly crash application HOT 3
- Deprecate undocumented `propagate_traces` option
- Handled exceptions from OpenAI are still being captured and reported on Sentry HOT 2
- gRPC (AIO) missing None check for when RPC method not implemented HOT 2
- Temporarily disable without re-initializing the client? HOT 1
- last_event_id() crash: AttributeError: 'Scope' object has no attribute '_last_event_id'. HOT 1
- Transactions from rest_framework.routers seem to be missing
- UnicodeDecodeError with certain Redis keys HOT 1
- Fix Migration Guide regarding removal of last_event_id() HOT 1
- POTel context <-> scope management
- Set up POTel patching
- Crons Celery: automatically clean up tasks that are no longer in use HOT 4
- Fix `cache_prefixes` check for multiple keys.
- Instrument Django app with Sentry and OTel and check differences. HOT 6
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from sentry-python.