Repository navigation
fix: Use auto.http.http_server origin for all node:http server spans - #25604
Conversation
The shared core server instrumentation, used by `@sentry/bun` and `@sentry/deno` for `node:http` servers, tagged its spans `auto.http.server`, while Node's `httpServerSpansIntegration` uses `auto.http.http_server` for the same kind of span. Use one origin for both. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
size-limit report 📦Compared: bd3f3f9 (PR test merge using develop at a01cfca) Against: a01cfca (develop) · base run #62876 ✅ Baseline matches: this diff contains only this PR's changes.
|
auto.http.http_server origin for all node:http server spansauto.http.http_server origin for all node:http server spans
isaacs
left a comment
There was a problem hiding this comment.
This looks good to me, and does not appear to conflict with the changes in this stack as I initially suspected and mentioned in Slack. (This is about origin; I intentionally left those untouched.) It is similar in spirit, though :)
I'd recommend making this a fix rather than ref! commit title, though. It does actually make a change that could be visible externally, not just a refactor.
I also agree with @Lms24 that it's safe to do mid-major. We've updated origins before, and investigating our data has never shown anyone doing anything load bearing with it.
auto.http.http_server origin for all node:http server spansauto.http.http_server origin for all node:http server spans
Incoming-request spans for
node:httpservers had two origins, depending only on the runtime:auto.http.http_serveron Node.js, fromhttpServerSpansIntegration.auto.http.serveron Bun (bunHttpServerIntegration, e.g. Next.js underbun --bun) and Deno (denoHttpIntegration), from the sharedgetHttpServerSubscriptions()helper in core. Node calls the same helper withspans: false, so it never emitted this origin.The two never appeared together, so the origin was only ever a proxy for the runtime, which
sdk.namealready gives. Splitting them meant every query, alert orignoreSpansrule targeting incoming HTTP server spans had to list both. This PR moves the core helper toauto.http.http_server, the origin with by far the larger install base.Impact
node:httpserver spans now carryauto.http.http_server. UserignoreSpans/beforeSendSpanrules, dashboards or alerts that matchauto.http.serverneed updating, so this is marked breaking. Native server spans are unaffected:Bun.servestaysauto.http.bun.serveandDeno.servestaysauto.http.deno.denoHttpIntegrationgates itsignoreStatusCodeshandling on its own origin. It now gates onauto.http.http_server, which still keeps it apart fromdenoServeIntegration(auto.http.deno).http.serverspans with originauto.http.http_server(prerendered pages). That rule only runs in@sentry/astro's Node SDK, where these spans already had this origin, so nothing new is matched.auto.http.server.angular(Angular SSR) is a different origin and is not touched.🤖 Generated with Claude Code