The ParentBased sampler is a composite sampler that delegates sampling decisions based on the parent span's context.
The decision is delegated to one of five configurable samplers:
- No parent exists (root span): delegates to
root sampler.
- A remote parent exists and was sampled: delegates to
remote_parent_sampled_sampler (default to AlwaysOnSampler).
- A remote parent exists and was not sampled: delegates to
remote_parent_nonsampled_sampler (default to AlwaysOffSampler).
- A local parent exists and was sampled: delegates to
local_parent_sampled_sampler (default to AlwaysOnSampler).
- A local parent exists and was not sampled: delegates to
local_parent_nonsampled_sampler (default to AlwaysOffSampler).
Definition at line 40 of file includes/opentelemetry/sdk/trace/samplers/parent.h.
|
| | ParentBasedSampler (const std::shared_ptr< Sampler > &root_sampler, const std::shared_ptr< Sampler > &remote_parent_sampled_sampler=std::make_shared< AlwaysOnSampler >(), const std::shared_ptr< Sampler > &remote_parent_nonsampled_sampler=std::make_shared< AlwaysOffSampler >(), const std::shared_ptr< Sampler > &local_parent_sampled_sampler=std::make_shared< AlwaysOnSampler >(), const std::shared_ptr< Sampler > &local_parent_nonsampled_sampler=std::make_shared< AlwaysOffSampler >()) noexcept |
| |
| SamplingResult | ShouldSample (const opentelemetry::trace::SpanContext &parent_context, opentelemetry::trace::TraceId trace_id, nostd::string_view name, opentelemetry::trace::SpanKind span_kind, const opentelemetry::common::KeyValueIterable &attributes, const opentelemetry::trace::SpanContextKeyValueIterable &links) noexcept override |
| | Implements the decision logic by checking the parent context and delegating to the appropriate configured sampler. More...
|
| |
| nostd::string_view | GetDescription () const noexcept override |
| |
| | ParentBasedSampler (const std::shared_ptr< Sampler > &root_sampler, const std::shared_ptr< Sampler > &remote_parent_sampled_sampler=std::make_shared< AlwaysOnSampler >(), const std::shared_ptr< Sampler > &remote_parent_nonsampled_sampler=std::make_shared< AlwaysOffSampler >(), const std::shared_ptr< Sampler > &local_parent_sampled_sampler=std::make_shared< AlwaysOnSampler >(), const std::shared_ptr< Sampler > &local_parent_nonsampled_sampler=std::make_shared< AlwaysOffSampler >()) noexcept |
| |
| SamplingResult | ShouldSample (const opentelemetry::trace::SpanContext &parent_context, opentelemetry::trace::TraceId trace_id, nostd::string_view name, opentelemetry::trace::SpanKind span_kind, const opentelemetry::common::KeyValueIterable &attributes, const opentelemetry::trace::SpanContextKeyValueIterable &links) noexcept override |
| | Implements the decision logic by checking the parent context and delegating to the appropriate configured sampler. More...
|
| |
| nostd::string_view | GetDescription () const noexcept override |
| |