Repository navigation
feat: Accept tunnel: true in init to enable the managed tunnel - #25200
Conversation
ec2da8d to
2933944
Compare
applyManagedTunnel to point the tunnel at the DSN-derived pathtunnel: true in init to enable the managed tunnel
size-limit report 📦Compared: 3a5171f (PR test merge using develop at 8c4491d) Against: ca4fc32 (develop) · base run #62950
|
2933944 to
4837dc0
Compare
d5c110f to
4ab6297
Compare
4ab6297 to
bf1d62c
Compare
75a299e to
b1553a8
Compare
b1553a8 to
0e573ca
Compare
tunnel: true in init to enable the managed tunneltunnel: true in the SDKs that serve the managed tunnel
1d77f74 to
80f1700
Compare
tunnel: true in the SDKs that serve the managed tunneltunnel: true in init to enable the managed tunnel
a769b10 to
d79df66
Compare
|
bugbot run |
d79df66 to
8717465
Compare
|
bugbot run |
1 similar comment
|
bugbot run |
…naged tunnel request with a 4xx
…port, and import server helpers from core/server Only the browser sends to a managed tunnel, so the warning moves from the shared Client into the browser's tunnel transport. Server SDKs import resolveServerTunnelOption from @sentry/core/server.
The reason strings were built in production bundles too, while only the debug warning that printed them was stripped.
…nel tests `isTunnelRequest` only reads the active server client now, and the paths are already checked against `getTunnelPath`.
…path, which is the managed tunnel to serve
… fall back on 404 or 405
…ramework base path The base path only applies to the DSN-derived path, so a relative `tunnel` string keeps posting where it did before the managed tunnel.
The fetch transport is back to how it was, and the tunnel sets its envelope content type through the transport headers.
Only the direct send fallback read it.
A relative string posts exactly as before the managed tunnel, with the default content type, so tunnels the app serves itself keep working.
Lms24
left a comment
There was a problem hiding this comment.
Thanks for making the adjustments around dropping the fallback behavior! I think this is easier to to reason about for now and carries less risk of breaking anyone on a custom tunnel setup. We can revisit this later on.
…of the server `tunnel` option On a server, `tunnel` keeps its one meaning, the URL to send its own envelopes to. The forwarding code lives behind the integration, so apps without a tunnel do not bundle it.
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 2 potential issues.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 2ddc3f9. Configure here.
…k SDKs that bundle their own copy of core

Previously the client side only accepted a
stringtunnel option so it sent the requests to that fixed endpoint, this PR effectively adds "managed" tunnel support that is generated automatically from the provided DSN.This PR adds the tunnel options to the SDKs's
initoptions and implements the client transport if the tunnel is provided.On the server side the runtime SDKs only translate
tunnel: trueinto the internal_managedTunneloption, answering the requests is left to the meta-frameworks in the rest of the stack.For reviewers: if you need an overview of what this is, refer to #25199.
closes #25460