Skip to content

sampling behavior - #8539

Merged
tmasternak merged 2 commits into
otel-docsfrom
sampling-behavior
Oct 8, 2026
Merged

tmasternak merged 2 commits into
otel-docsfrom
sampling-behavior

Conversation

@irinascurtu

@irinascurtu irinascurtu commented Oct 7, 2026 •

Copy link
Copy Markdown
Contributor

Summary

MUST: Document sampling behavior when a native SDK or transport span is the parent

Documents how the version 11 receive-side span parenting affects sampling. When an instrumented transport SDK emits a receive span, the NServiceBus process span becomes its child. A parent-based sampler then looks at the SDK receive span instead of the NServiceBus send span. If the SDK span isn't sampled, the NServiceBus spans for that message are dropped with it.

Changes

  • Trace partials ([10,11) and [11,)): new "Sampling" subsection after "Transport SDK spans":
    • why the sampler's view changes and why this is intentional
    • how to keep the NServiceBus spans
    • when a new trace is started on receive, the process span is a root span and the sampler makes a root decision
    • the design rule: an ambient activity at receive time belongs to the transport SDK or the NServiceBus transport, which is a property of each transport's message pump that Core doesn't enforce
    • the v10 partial describes this under the version 11 behavior switch
  • Upgrade guide (10 to 11): adds the sampling change as a behavior change under "Process span parent with instrumented transport SDKs".

@tmasternak
tmasternak merged commit b7d69be into otel-docs Oct 8, 2026
2 of 4 checks passed
@tmasternak
tmasternak deleted the sampling-behavior branch October 8, 2026 11:25
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