Skip to content

fix(v10/cloudflare): Capture telemetry from untraced Durable Object RPC calls - #24512

Open
JPeer264 wants to merge 1 commit into
v10from
backport-v10-cloudflare-do-untraced-rpc
Open

JPeer264 wants to merge 1 commit into
v10from
backport-v10-cloudflare-do-untraced-rpc

Conversation

@JPeer264

Copy link
Copy Markdown
Member

Backport of: #24447

Differences to the original PR

  • packages/cloudflare/src/wrapMethodWithSentry.ts: added the spanName resolver (string | (rpcMeta) => string | undefined) from feat(cloudflare)!: Replace enableRpcTracePropagation with rpcTracePropagationBindings #23486. The fix depends on it to skip the span for untraced calls, and v10 only accepts a string.
  • packages/cloudflare/src/durableobject.ts: kept the v10 alwaysTrace path for the deprecated instrumentPrototypeMethods option unchanged (every call, internal ones included, gets an rpc span). The new capture-only path applies only with enableRpcTracePropagation. Uses 'rpc' instead of RPC from @sentry/conventions, which v10 does not depend on. The JSDoc keeps the v10 note that RPC methods are instrumented only with enableRpcTracePropagation.
  • packages/cloudflare/test/durableobject.test.ts, suites/durableobject/rpc-without-trace/index.ts: set enableRpcTracePropagation: true, because v10 does not instrument RPC methods by default.
  • suites/tracing/propagation/worker-do-rpc-overlapping/vite.config.mts: set _experimental: { autoInstrumentation: true }, because Vite auto-instrumentation is opt-in on v10.

On v10 the fix therefore covers Durable Objects with enableRpcTracePropagation: true (the setup from #24443). Without that option, v10 does not instrument RPC methods at all, same as before.

@JPeer264 JPeer264 self-assigned this Sep 18, 2026
@JPeer264
JPeer264 marked this pull request as ready for review September 18, 2026 17:33
@JPeer264
JPeer264 requested a review from a team as a code owner September 18, 2026 17:33
@JPeer264
JPeer264 requested review from andreiborza, isaacs and mydea and removed request for a team and mydea September 18, 2026 17:33
@github-actions

Copy link
Copy Markdown
Contributor

size-limit report 📦

Path Size % Change Change
@sentry/browser 27.84 kB added added
@sentry/browser - with treeshaking flags 26.27 kB added added
@sentry/browser (incl. Tracing) 46.7 kB added added
@sentry/browser (incl. Tracing + Span Streaming) 48.48 kB added added
@sentry/browser (incl. Tracing, Profiling) 51.45 kB added added
@sentry/browser (incl. Tracing, Replay) 86 kB added added
@sentry/browser (incl. Tracing, Replay) - with treeshaking flags 75.61 kB added added
@sentry/browser (incl. Tracing, Replay with Canvas) 90.73 kB added added
@sentry/browser (incl. Tracing, Replay, Feedback) 103.37 kB added added
@sentry/browser (incl. Feedback) 44.99 kB added added
@sentry/browser (incl. sendFeedback) 32.63 kB added added
@sentry/browser (incl. FeedbackAsync) 37.77 kB added added
@sentry/browser (incl. Metrics) 28.93 kB added added
@sentry/browser (incl. Logs) 29.16 kB added added
@sentry/browser (incl. Metrics & Logs) 29.85 kB added added
@sentry/react 29.63 kB added added
@sentry/react (incl. Tracing) 48.96 kB added added
@sentry/vue 33.25 kB added added
@sentry/vue (incl. Tracing) 48.69 kB added added
@sentry/svelte 27.86 kB added added
CDN Bundle 30.23 kB added added
CDN Bundle (incl. Tracing) 48.66 kB added added
CDN Bundle (incl. Logs, Metrics) 31.81 kB added added
CDN Bundle (incl. Tracing, Logs, Metrics) 49.98 kB added added
CDN Bundle (incl. Replay, Logs, Metrics) 71.16 kB added added
CDN Bundle (incl. Tracing, Replay) 86.24 kB added added
CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 87.55 kB added added
CDN Bundle (incl. Tracing, Replay, Feedback) 92.03 kB added added
CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 93.33 kB added added
CDN Bundle - uncompressed 90.04 kB added added
CDN Bundle (incl. Tracing) - uncompressed 146.85 kB added added
CDN Bundle (incl. Logs, Metrics) - uncompressed 94.75 kB added added
CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 150.83 kB added added
CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 219.71 kB added added
CDN Bundle (incl. Tracing, Replay) - uncompressed 266.28 kB added added
CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 270.25 kB added added
CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 279.98 kB added added
CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 283.94 kB added added
@sentry/nextjs (client) 51.52 kB added added
@sentry/sveltekit (client) 47.13 kB added added
@sentry/core/server 80.85 kB added added
@sentry/core/browser 67.02 kB added added
@sentry/node-core 63.53 kB added added
@sentry/node 126.22 kB added added
@sentry/node (incl. diagnostics channel injection) 170.36 kB added added
@sentry/node/import (ESM hook with diagnostics-channel injection) 166 B added added
@sentry/node/light 51.68 kB added added
@sentry/node - without tracing 75.26 kB added added
@sentry/aws-serverless 84.48 kB added added
@sentry/cloudflare (withSentry) - minified 203.21 kB added added
@sentry/cloudflare (withSentry) 500.56 kB added added

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.

2 participants