NVIDIA DeepStream SDK API Reference

9.2 Release
includes/opentelemetry/sdk/trace/samplers/always_off.h
Go to the documentation of this file.
1 // Copyright The OpenTelemetry Authors
2 // SPDX-License-Identifier: Apache-2.0
3 
4 #pragma once
5 
6 #include "opentelemetry/nostd/string_view.h"
7 #include "opentelemetry/sdk/trace/sampler.h"
8 #include "opentelemetry/trace/span_context.h"
9 #include "opentelemetry/trace/span_metadata.h"
10 #include "opentelemetry/trace/trace_id.h"
11 #include "opentelemetry/version.h"
12 
14 namespace sdk
15 {
16 namespace trace
17 {
22 class AlwaysOffSampler : public Sampler
23 {
24 public:
29  const opentelemetry::trace::SpanContext &parent_context,
30  opentelemetry::trace::TraceId /*trace_id*/,
31  nostd::string_view /*name*/,
32  opentelemetry::trace::SpanKind /*span_kind*/,
33  const opentelemetry::common::KeyValueIterable & /*attributes*/,
34  const opentelemetry::trace::SpanContextKeyValueIterable & /*links*/) noexcept override
35  {
36  if (!parent_context.IsValid())
37  {
38  return {Decision::DROP, nullptr, opentelemetry::trace::TraceState::GetDefault()};
39  }
40  else
41  {
42  return {Decision::DROP, nullptr, parent_context.trace_state()};
43  }
44  }
45 
49  nostd::string_view GetDescription() const noexcept override { return "AlwaysOffSampler"; }
50 };
51 } // namespace trace
52 } // namespace sdk
trace
Definition: includes/opentelemetry/context/context_value.h:18
sdk::trace::Sampler
The Sampler interface allows users to create custom samplers which will return a SamplingResult based...
Definition: includes/opentelemetry/sdk/trace/sampler.h:71
trace::SpanKind
SpanKind
Definition: includes/opentelemetry/trace/span_metadata.h:13
OPENTELEMETRY_BEGIN_NAMESPACE
#define OPENTELEMETRY_BEGIN_NAMESPACE
Definition: includes/opentelemetry/version.h:21
sdk::trace::AlwaysOffSampler
The always off sampler always returns DROP, effectively disabling tracing functionality.
Definition: includes/opentelemetry/sdk/trace/samplers/always_off.h:22
OPENTELEMETRY_END_NAMESPACE
#define OPENTELEMETRY_END_NAMESPACE
Definition: includes/opentelemetry/version.h:24
sdk::trace::AlwaysOffSampler::ShouldSample
SamplingResult ShouldSample(const opentelemetry::trace::SpanContext &parent_context, opentelemetry::trace::TraceId, nostd::string_view, opentelemetry::trace::SpanKind, const opentelemetry::common::KeyValueIterable &, const opentelemetry::trace::SpanContextKeyValueIterable &) noexcept override
Definition: includes/opentelemetry/sdk/trace/samplers/always_off.h:28
sdk
Definition: includes/opentelemetry/sdk/common/atomic_shared_ptr.h:13
sdk::trace::SamplingResult
The output of ShouldSample.
Definition: includes/opentelemetry/sdk/trace/sampler.h:52
sdk::trace::Decision::DROP
@ DROP
sdk::trace::AlwaysOffSampler::GetDescription
nostd::string_view GetDescription() const noexcept override
Definition: includes/opentelemetry/sdk/trace/samplers/always_off.h:49
nostd::string_view
Back port of std::string_view to work with pre-cpp-17 compilers.
Definition: includes/opentelemetry/nostd/string_view.h:37