getsentry / getsentry/sentry-javascript
Provide a mechanism to override `classifyResponseStreaming` behaviour
- Dominant language
- TypeScript
- Stars
- 8.7k
- Forks
- 1.8k
- Avg merge
- 1d 17h
- Merged PRs (30d)
- 515
Description
### Problem Statement
I have a React RSC application that is streaming responses, and `classifyResponseStreaming` does not correctly detect the HTTP response as a stream because it is limited to only a few content types. I would like to be able to override the detection behaviour so I can avoid spans ending early.
https://github.com/getsentry/sentry-javascript/blob/develop/packages/cloudflare/src/request.ts#L146
### Solution Brainstorm
It would be ideal if the Sentry SDK had an optional callback that could be set to inspect a response and return whether or not the response is streaming.
### Additional Context
_No response_
### Priority
_No response_
Contributor guide
Research direction
Start in packages/cloudflare/src/request.ts at classifyResponseStreaming and trace its callers to understand how the current content-type checks affect span completion. Define how an optional response-inspection callback should override the built-in classification, then verify that custom streaming responses keep their spans open until streaming finishes.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- react, typescript
- Domain
- api, backend, cloud
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100