-
Notifications
You must be signed in to change notification settings - Fork 585
Description
How do you use Sentry?
Sentry Saas (sentry.io)
Version
2.53.0 python flask
Steps to Reproduce
Enable include_local_variables=True in sentry-sdk (Python).
`include_local_variables=True
max_value_length=8192 * 2
max_request_body_size="always"
sentry_sdk.serializer.MAX_DATABAG_DEPTH = 500
sentry_sdk.serializer.MAX_DATABAG_BREADTH = 500`
Raise an exception where a stack frame contains a local variable object (msgObj) with large number of keys.
Truncation occurs
Inspect the event in the Sentry UI and review the _meta field.
Expected Result
If truncation occurs, _meta should clearly indicate the cause (e.g. !limit entry).
Since SDK serializer limits were raised significantly, the object should not be truncated due to SDK constraints.
The numeric limit (if server-side) should be discoverable in documentation.
Actual Result
Only ~50 keys are retained.
No visible !limit entry appears at the object root.
Event size is well below 1 MiB.
Not HTTP request body data.
Debug logs show successful ingestion.
No SDK limits appear to be hit.
Is there a hard 50-key object breadth limit (and/or 50-item array limit) enforced server-side, and why does _meta not explicitly show a !limit entry for object-level truncation?
Workaround currently used is attaching the full object as a file preserves all keys, which suggests this truncation is happening during event normalization rather than SDK serialization.
Example reference in internal ticket #175308
Metadata
Metadata
Assignees
Projects
Status