feat(react-router): Add Experimental React Server Components (RSC) instrumentation #18882
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Resolves: #17337
Adds experimental instrumentation for React Router v7.9.0+ React Server Components (RSC).
React Router's RSC support is currently behind
unstable_reactRouterRSC()and subject to change. These wrappers provide error capture and performance tracing for RSC server requests, server components, and server functions.RSC Request Handlers
Added
wrapMatchRSCServerRequest()andwrapRouteRSCServerRequest():wrapMatchRSCServerRequest- Wraps RSC server matching with spans for generateResponse and loadServerActionwrapRouteRSCServerRequest- Wraps SSR request handling with spans for fetchServer and renderHTMLServer Components
Added
wrapServerComponent()for error instrumentation:Redirect (3xx) and not-found (404) responses are not captured as errors.
Server Functions
Added
wrapServerFunction()andwrapServerFunctions()for "use server" functions:Needs docs PR