You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I wrote this originally. At the time, I chose not to focus on the combination of the two, but I think now it's fine to do both.
Unfortunately, there is a downside to both behaviors:
With ParentBased included, your own service will be (often surprisingly) impacted by any service upstream of you that happens to head sample differently. At my day job I've run into people getting really confused about why some traces weren't present because an upstream service they don't control dictated sampling.
With ParentBased excluded, you can get missing spans unexpectedly.
The best way to have really coherent traces with sampling is to use tail-based sampling. But SDKs don't do that.
At any rate, I think including ParentBased is probably less...weird? Surprising? Less common to have weird behavior?
What needs to be changed?
The sampling page https://github.com/open-telemetry/opentelemetry.io/blob/main/content/en/docs/languages/js/sampling.md currently does not mention ParentBasedSampler. In my opinion the default should be ParentBasedSampler with TraceIDRatioBasedSampler as that is what most newcomers are looking for.
What is the name + path of the page that needs changed? content/en/docs/languages/js/sampling.md
The text was updated successfully, but these errors were encountered: