Skip to content

fix(nextjs): Skip tracing for tunnel requests#19861

Open
chargome wants to merge 2 commits intodevelopfrom
cg/next-skip-tunnel-route
Open

fix(nextjs): Skip tracing for tunnel requests#19861
chargome wants to merge 2 commits intodevelopfrom
cg/next-skip-tunnel-route

Conversation

@chargome
Copy link
Member

@chargome chargome commented Mar 18, 2026

Fix Next.js tunnel route span filtering by extending dropMiddlewareTunnelRequests to also drop BaseServer.handleRequest spans that match the tunnel path, replacing a fragile transaction-name string comparison in the event processor with the early, attribute-based TRANSACTION_ATTR_SHOULD_DROP_TRANSACTION mechanism already used for middleware and fetch spans.

closes https://linear.app/getsentry/issue/JS-1952/nextjs-automatically-filter-tunnel-route-spans
closes #19840

@chargome chargome self-assigned this Mar 18, 2026
@linear-code
Copy link

linear-code bot commented Mar 18, 2026

@github-actions
Copy link
Contributor

github-actions bot commented Mar 18, 2026

size-limit report 📦

⚠️ Warning: Base artifact is not the latest one, because the latest workflow run is not done yet. This may lead to incorrect results. Try to re-run all tests to get up to date results.

Path Size % Change Change
@sentry/browser 25.64 kB - -
@sentry/browser - with treeshaking flags 24.14 kB - -
@sentry/browser (incl. Tracing) 42.62 kB - -
@sentry/browser (incl. Tracing, Profiling) 47.28 kB - -
@sentry/browser (incl. Tracing, Replay) 81.42 kB - -
@sentry/browser (incl. Tracing, Replay) - with treeshaking flags 71 kB - -
@sentry/browser (incl. Tracing, Replay with Canvas) 86.12 kB - -
@sentry/browser (incl. Tracing, Replay, Feedback) 98.37 kB - -
@sentry/browser (incl. Feedback) 42.45 kB - -
@sentry/browser (incl. sendFeedback) 30.31 kB - -
@sentry/browser (incl. FeedbackAsync) 35.36 kB - -
@sentry/browser (incl. Metrics) 26.92 kB - -
@sentry/browser (incl. Logs) 27.07 kB - -
@sentry/browser (incl. Metrics & Logs) 27.74 kB - -
@sentry/react 27.39 kB - -
@sentry/react (incl. Tracing) 44.95 kB - -
@sentry/vue 30.08 kB - -
@sentry/vue (incl. Tracing) 44.48 kB - -
@sentry/svelte 25.66 kB - -
CDN Bundle 28.28 kB - -
CDN Bundle (incl. Tracing) 43.51 kB - -
CDN Bundle (incl. Logs, Metrics) 29.14 kB - -
CDN Bundle (incl. Tracing, Logs, Metrics) 44.36 kB - -
CDN Bundle (incl. Replay, Logs, Metrics) 68.21 kB - -
CDN Bundle (incl. Tracing, Replay) 80.33 kB - -
CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 81.23 kB - -
CDN Bundle (incl. Tracing, Replay, Feedback) 85.87 kB - -
CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 86.77 kB - -
CDN Bundle - uncompressed 82.62 kB - -
CDN Bundle (incl. Tracing) - uncompressed 128.56 kB - -
CDN Bundle (incl. Logs, Metrics) - uncompressed 85.49 kB - -
CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 131.43 kB - -
CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 209.12 kB - -
CDN Bundle (incl. Tracing, Replay) - uncompressed 245.41 kB - -
CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 248.26 kB - -
CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 258.32 kB - -
CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 261.17 kB - -
@sentry/nextjs (client) 47.37 kB - -
@sentry/sveltekit (client) 43.07 kB - -
@sentry/node-core 56.38 kB +0.06% +31 B 🔺
@sentry/node 173.19 kB +0.02% +31 B 🔺
@sentry/node - without tracing 96.37 kB +0.03% +28 B 🔺
@sentry/aws-serverless 113.37 kB +0.03% +31 B 🔺

View base workflow run

@chargome chargome marked this pull request as ready for review March 18, 2026 16:36
@chargome chargome requested review from logaretm and sergical March 18, 2026 16:36
Copy link

@cursor cursor bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

@github-actions
Copy link
Contributor

github-actions bot commented Mar 18, 2026

Semver Impact of This PR

🟢 Patch (bug fixes)

📋 Changelog Preview

This is how your changes will appear in the changelog.
Entries from this PR are highlighted with a left border (blockquote style).


New Features ✨

  • (remix) Server Timing Headers Trace Propagation by onurtemizkan in #18653

Bug Fixes 🐛

Deps

  • Bump devalue 5.6.3 to 5.6.4 to fix CVE-2026-30226 by chargome in #19849
  • Bump file-type to 21.3.2 and @nestjs/common to 11.1.17 by chargome in #19847
  • Bump unhead 2.1.4 to 2.1.12 to fix CVE-2026-31860 and CVE-2026-31873 by chargome in #19848
  • Bump flatted 3.3.1 to 3.4.2 to fix CVE-2026-32141 by chargome in #19842
  • Bump tar 7.5.10 to 7.5.11 to fix CVE-2026-31802 by chargome in #19846
  • Bump hono 4.12.5 to 4.12.7 in cloudflare-hono E2E test app by chargome in #19850
  • Bump undici 6.23.0 to 6.24.1 to fix multiple CVEs by chargome in #19841

Other

  • (deno) Clear pre-existing OTel global before registering TracerProvider by sergical in #19723
  • (nextjs) Skip tracing for tunnel requests by chargome in #19861
  • (node-core) Recycle propagationContext for each request by Lms24 in #19835

Internal Changes 🔧

  • (deps) Bump next from 16.1.5 to 16.1.7 in /dev-packages/e2e-tests/test-applications/nextjs-16 by dependabot in #19851
  • (react) Add gql tests for react router by chargome in #19844
  • (release) Switch from action-prepare-release to Craft by BYK in #18763

🤖 This preview updates automatically when you update the PR.

@github-actions
Copy link
Contributor

node-overhead report 🧳

Note: This is a synthetic benchmark with a minimal express app and does not necessarily reflect the real-world performance impact in an application.

Scenario Requests/s % of Baseline Prev. Requests/s Change %
GET Baseline 8,677 - 8,908 -3%
GET With Sentry 1,560 18% 1,713 -9%
GET With Sentry (error only) 5,922 68% 6,093 -3%
POST Baseline 1,146 - 1,190 -4%
POST With Sentry 554 48% 591 -6%
POST With Sentry (error only) 968 84% 1,044 -7%
MYSQL Baseline 3,135 - 3,176 -1%
MYSQL With Sentry 353 11% 488 -28%
MYSQL With Sentry (error only) 2,561 82% 2,617 -2%

View base workflow run

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Next.js : automatically filter tunnel route spans

2 participants