Consistent delegating sampler, alternative to ParentBased #4294
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Part of #3602.
Changes
Adds
Consistent
sampler, a delegating consistent sampler to replaceParentBased
.Adds alternate Sampler API option for efficient sampler delegation and threshold management
Changes default sampler to
Consistent(TraceIdRatio(1))
.Has TODO referring to supplemental guidelines on composite samplers, to be added in
tracestate-probability-sampling.md
after #4162 and #4166 gave merged. These rules will spell out how to form conditional forms of delegating samplers correctly, including the logic behind theConsistent
sampler decision.This absolutely needs a prototype. As seen in open-telemetry/opentelemetry-go#5645, there are immediately performance concerns when we implement consistent sampling decisions without the sampler API optimization described in this PR.
CHANGELOG.md
file updated for non-trivial changesspec-compliance-matrix.md
updated if necessary