Skip to content

Commit 4f736d8

Browse files
feat(transport): Report 413 responses for oversized envelopes
1 parent 595e84c commit 4f736d8

File tree

1 file changed

+15
-1
lines changed

1 file changed

+15
-1
lines changed

sentry_sdk/transport.py

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -340,7 +340,21 @@ def record_loss(reason: str) -> None:
340340
try:
341341
self._update_rate_limits(response)
342342

343-
if response.status == 429:
343+
if response.status == 413:
344+
size_exceeded_message = (
345+
"HTTP 413: Event dropped due to exceeded envelope size limit"
346+
)
347+
response_message = getattr(
348+
response, "data", getattr(response, "content", None)
349+
)
350+
if response_message is not None:
351+
size_exceeded_message += f" (body: {response_message})"
352+
353+
logger.error(size_exceeded_message)
354+
self.on_dropped_event("status_413")
355+
record_loss("send_error")
356+
357+
elif response.status == 429:
344358
# if we hit a 429. Something was rate limited but we already
345359
# acted on this in `self._update_rate_limits`. Note that we
346360
# do not want to record event loss here as we will have recorded

0 commit comments

Comments
 (0)