NVIDIA DeepStream SDK API Reference

9.2 Release
includes/opentelemetry/trace/default_span.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/common/attribute_value.h"
7 #include "opentelemetry/nostd/string_view.h"
8 #include "opentelemetry/trace/span.h"
9 #include "opentelemetry/trace/span_context.h"
10 #include "opentelemetry/version.h"
11 
13 namespace trace
14 {
15 
21 class DefaultSpan : public Span
22 {
23 public:
24  // Returns an invalid span.
26 
27  trace::SpanContext GetContext() const noexcept override { return span_context_; }
28 
29  bool IsRecording() const noexcept override { return false; }
30 
32  const common::AttributeValue & /* value */) noexcept override
33  {}
34 
35  void AddEvent(nostd::string_view /* name */) noexcept override {}
36 
37  void AddEvent(nostd::string_view /* name */,
38  common::SystemTimestamp /* timestamp */) noexcept override
39  {}
40 
41  void AddEvent(nostd::string_view /* name */,
42  const common::KeyValueIterable & /* attributes */) noexcept override
43  {}
44 
45  void AddEvent(nostd::string_view /* name */,
46  common::SystemTimestamp /* timestamp */,
47  const common::KeyValueIterable & /* attributes */) noexcept override
48  {}
49 
50 #if OPENTELEMETRY_ABI_VERSION_NO >= 2
51  void AddLink(const SpanContext & /* target */,
52  const common::KeyValueIterable & /* attrs */) noexcept override
53  {}
54 
55  void AddLinks(const SpanContextKeyValueIterable & /* links */) noexcept override {}
56 #endif
57 
58  void SetStatus(StatusCode /* status */, nostd::string_view /* description */) noexcept override {}
59 
60  void UpdateName(nostd::string_view /* name */) noexcept override {}
61 
62  void End(const EndSpanOptions & /* options */) noexcept override {}
63 
64  nostd::string_view ToString() const noexcept { return "DefaultSpan"; }
65 
66  DefaultSpan(SpanContext span_context) noexcept : span_context_(std::move(span_context)) {}
67 
68  // movable and copiable
69  DefaultSpan(DefaultSpan &&spn) noexcept : Span(), span_context_(spn.GetContext()) {}
70  DefaultSpan(const DefaultSpan &spn) noexcept : Span(), span_context_(spn.GetContext()) {}
71 
72 private:
73  SpanContext span_context_;
74 };
75 
76 } // namespace trace
trace::EndSpanOptions
EndSpanOptions provides options to set properties of a Span when it is ended.
Definition: includes/opentelemetry/trace/span_metadata.h:38
trace
Definition: includes/opentelemetry/context/context_value.h:18
absl::OTABSL_OPTION_NAMESPACE_NAME::variant
Definition: includes/opentelemetry/nostd/variant.h:61
trace::SpanContext
Definition: includes/opentelemetry/trace/span_context.h:24
trace::Span::Span
Span()=default
trace::DefaultSpan::AddEvent
void AddEvent(nostd::string_view, common::SystemTimestamp, const common::KeyValueIterable &) noexcept override
Definition: includes/opentelemetry/trace/default_span.h:45
trace::DefaultSpan
DefaultSpan provides a non-operational Span that propagates the tracer context by wrapping it inside ...
Definition: includes/opentelemetry/trace/default_span.h:21
trace::Span
A Span represents a single operation within a Trace.
Definition: includes/opentelemetry/trace/span.h:54
common::SystemTimestamp
A timepoint relative to the system clock epoch.
Definition: includes/opentelemetry/common/timestamp.h:19
OPENTELEMETRY_BEGIN_NAMESPACE
#define OPENTELEMETRY_BEGIN_NAMESPACE
Definition: includes/opentelemetry/version.h:21
trace::DefaultSpan::ToString
nostd::string_view ToString() const noexcept
Definition: includes/opentelemetry/trace/default_span.h:64
trace::DefaultSpan::GetInvalid
static DefaultSpan GetInvalid()
Definition: includes/opentelemetry/trace/default_span.h:25
trace::DefaultSpan::SetAttribute
void SetAttribute(nostd::string_view, const common::AttributeValue &) noexcept override
Definition: includes/opentelemetry/trace/default_span.h:31
OPENTELEMETRY_END_NAMESPACE
#define OPENTELEMETRY_END_NAMESPACE
Definition: includes/opentelemetry/version.h:24
trace::DefaultSpan::SetStatus
void SetStatus(StatusCode, nostd::string_view) noexcept override
Definition: includes/opentelemetry/trace/default_span.h:58
absl::move
constexpr absl::OTABSL_OPTION_NAMESPACE_NAME::remove_reference_t< T > && move(T &&t) noexcept
Definition: includes/opentelemetry/nostd/internal/absl/utility/utility.h:199
trace::DefaultSpan::DefaultSpan
DefaultSpan(SpanContext span_context) noexcept
Definition: includes/opentelemetry/trace/default_span.h:66
common::KeyValueIterable
Supports internal iteration over a collection of key-value pairs.
Definition: includes/opentelemetry/common/key_value_iterable.h:17
trace::DefaultSpan::AddEvent
void AddEvent(nostd::string_view, common::SystemTimestamp) noexcept override
Definition: includes/opentelemetry/trace/default_span.h:37
trace::DefaultSpan::UpdateName
void UpdateName(nostd::string_view) noexcept override
Definition: includes/opentelemetry/trace/default_span.h:60
trace::DefaultSpan::GetContext
trace::SpanContext GetContext() const noexcept override
Definition: includes/opentelemetry/trace/default_span.h:27
trace::StatusCode
StatusCode
Definition: includes/opentelemetry/trace/span_metadata.h:27
trace::DefaultSpan::AddEvent
void AddEvent(nostd::string_view) noexcept override
Definition: includes/opentelemetry/trace/default_span.h:35
trace::DefaultSpan::IsRecording
bool IsRecording() const noexcept override
Definition: includes/opentelemetry/trace/default_span.h:29
trace::DefaultSpan::DefaultSpan
DefaultSpan(DefaultSpan &&spn) noexcept
Definition: includes/opentelemetry/trace/default_span.h:69
trace::DefaultSpan::End
void End(const EndSpanOptions &) noexcept override
Definition: includes/opentelemetry/trace/default_span.h:62
trace::DefaultSpan::AddEvent
void AddEvent(nostd::string_view, const common::KeyValueIterable &) noexcept override
Definition: includes/opentelemetry/trace/default_span.h:41
trace::DefaultSpan::DefaultSpan
DefaultSpan(const DefaultSpan &spn) noexcept
Definition: includes/opentelemetry/trace/default_span.h:70
trace::SpanContext::GetInvalid
static SpanContext GetInvalid() noexcept
Definition: includes/opentelemetry/trace/span_context.h:86
nostd::string_view
Back port of std::string_view to work with pre-cpp-17 compilers.
Definition: includes/opentelemetry/nostd/string_view.h:37