Skip to content

Navigation spans are started as child spans if experimental interaction spans are used #17450

@Lms24

Description

@Lms24

Is there an existing issue for this?

How do you use Sentry?

Sentry Saas (sentry.io)

Which SDK are you using?

@sentry/vue -- this might very well be a @sentry/browser issue!

SDK Version

10.5.0

Framework Version

Vue ^3.5.17

Link to Sentry event

https://sentry.sentry.io/insights/backend/summary/trace/1b557e3b2689448a93ef69a4ecf422a6/?environment=production&fov=1%2C74310&node=span-8e10d6b5432bc83b&project=4509865373859840&query=transaction.op%3Ahttp.server&referrer=insights-backend-overview&source=performance_transaction_summary&statsPeriod=24h&timestamp=1755892752&transaction=GiftCardController%23create

Reproduction Example/SDK Setup

https://github.com/getsentry/gib-potato/blob/ba97bd13316b2c0d3c8ffb554cd0d720bea09245/frontend/src/main.js#L19-L67

Steps to Reproduce

  1. Enable experimental interaction spans && tracing
  2. Click button that triggers a navigation

Expected Result

This is the hard part: I don't particularly like the expected result but our current tracing model relies on the fact that navigation spans start a new trace.

So therefore, I'd expect the navigation span to always be a root span, unless we detect it's a navigation.redirect span in which case it must not be a root span. 🥲

The side-effect of this is that the surrounding interaction span will not link directly to the navigation span but maybe we can tackle this separately (This would be a good candidate for increasing interaction span robustness. I just can't find the issue right now). Given that interaction spans are experimental, I don't care too much about this right now though.

Actual Result

The navigation span is started as a child of the ui.interaction.click interaction idle span.

Image

Metadata

Metadata

Assignees

Labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions