getsentry / getsentry/sentry-javascript
Replays rejected due to size limit exceeded.
- 主要語言
- TypeScript
- 星號
- 8.7k
- 分支
- 1.8k
- 平均合併
- 1 天 17 小時
- 30 天內合併 PR
- 523
描述
### Is there an existing issue for this?
- [X] I have checked for existing issues https://github.com/getsentry/sentry-javascript/issues
- [X] I have reviewed the documentation https://docs.sentry.io/
- [X] I am using the latest SDK release https://github.com/getsentry/sentry-javascript/releases
### How do you use Sentry?
Sentry Saas (sentry.io)
### Which SDK are you using?
@sentry/browser
### SDK Version
8.17.0
### Framework Version
_No response_
### Link to Sentry event
_No response_
### SDK Setup/Reproduction Example
_No response_
### Steps to Reproduce
CSS files are inlined in the replays segments, when this file is large enough it can easily make the segment reach the size limit specially in buffer mode. When the limit is reached, the following logs are printed in the console and the replay is dropped:
```
logger.js:75 Sentry Logger [info]: [Replay] Stopping Replay triggered by addEventSizeExceeded
logger.js:75 Sentry Logger [info]: [Replay] Destroying compression worker
logger.js:75 Sentry Logger [log]: Adding outcome: "internal_sdk_error:replay"
```
No workarounds at the moment.
### Expected Result
The size of the CSS file does not affect the the ability of the SDK sending the replay. The replay is sent to Sentry and the server can render the recording with CSS.
### Actual Result
Replays are dropped and marked as SDK internal error in the client reports.
貢獻指南
研究方向
先追蹤瀏覽器回放對 CSS 內嵌的處理,以及 addEventSizeExceeded 路徑,尤其是在緩衝模式下。使用大型 CSS 檔案重現此故障,並確認回放會被傳送,而不是被丟棄或標記為 SDK 內部錯誤,同時伺服器仍可使用 CSS 進行渲染。
由索引模型根據 Issue 內容生成。
評估
- 技術堆疊
- typescript
- 領域
- frontend, observability-sre
- Issue 類型
- 缺陷
- 難度
- 4/5
- 預估耗時
- 3-5 天
- 活躍度
- 停滯
- 描述清晰度
- 基本清楚
- 新手友好度
- 35/100