NVIDIA DeepStream SDK API Reference

9.2 Release
includes/opentelemetry/sdk/metrics/data/exemplar_data.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 <memory>
7 
8 #include "opentelemetry/common/timestamp.h"
9 #include "opentelemetry/sdk/metrics/data/metric_data.h"
10 #include "opentelemetry/sdk/metrics/state/filtered_ordered_attribute_map.h"
11 #include "opentelemetry/trace/span_context.h"
12 #include "opentelemetry/version.h"
13 
15 namespace sdk
16 {
17 namespace metrics
18 {
19 using MetricAttributes = opentelemetry::sdk::metrics::FilteredOrderedAttributeMap;
27 {
28 public:
29  static ExemplarData Create(std::shared_ptr<opentelemetry::trace::SpanContext> context,
30  const opentelemetry::common::SystemTimestamp &timestamp,
31  const PointDataAttributes &point_data_attr)
32  {
33  return ExemplarData(context, timestamp, point_data_attr);
34  }
35 
42 
44  opentelemetry::common::SystemTimestamp GetEpochNanos() { return timestamp_; }
45 
50  const opentelemetry::trace::SpanContext &GetSpanContext() const noexcept { return context_; }
51 
53  {
54  SumPointData sum_point_data{};
55  sum_point_data.value_ = value;
56  return sum_point_data;
57  }
58 
60  {
61  LastValuePointData last_value_point_data{};
62  last_value_point_data.value_ = value;
63  last_value_point_data.is_lastvalue_valid_ = true;
64  last_value_point_data.sample_ts_ = opentelemetry::common::SystemTimestamp{};
65  return last_value_point_data;
66  }
67 
69 
70 private:
71  ExemplarData(std::shared_ptr<opentelemetry::trace::SpanContext> context,
72  opentelemetry::common::SystemTimestamp timestamp,
73  const PointDataAttributes &point_data_attr)
74  : context_(*context.get()), timestamp_(timestamp), point_data_attr_(point_data_attr)
75  {}
76 
77  opentelemetry::trace::SpanContext context_;
78  opentelemetry::common::SystemTimestamp timestamp_;
79  PointDataAttributes point_data_attr_;
80 };
81 
82 } // namespace metrics
83 } // namespace sdk
pydeepstreamdoc::node::NodeDoc::get
constexpr const char * get
Definition: service-maker/sources/python/src/bindings/docstrings/nodedoc.h:34
absl::OTABSL_OPTION_NAMESPACE_NAME::variant
Definition: includes/opentelemetry/nostd/variant.h:61
sdk::metrics::SumPointData::value_
ValueType value_
Definition: includes/opentelemetry/sdk/metrics/data/point_data.h:35
sdk::metrics::ExemplarData::CreateLastValuePointData
static PointType CreateLastValuePointData(ValueType value)
Definition: includes/opentelemetry/sdk/metrics/data/exemplar_data.h:59
sdk::metrics::SumPointData
Definition: includes/opentelemetry/sdk/metrics/data/point_data.h:24
OPENTELEMETRY_BEGIN_NAMESPACE
#define OPENTELEMETRY_BEGIN_NAMESPACE
Definition: includes/opentelemetry/version.h:21
context
Definition: includes/opentelemetry/context/context.h:16
sdk::metrics::ExemplarData::CreateSumPointData
static PointType CreateSumPointData(ValueType value)
Definition: includes/opentelemetry/sdk/metrics/data/exemplar_data.h:52
sdk::metrics::ExemplarData::Create
static ExemplarData Create(std::shared_ptr< opentelemetry::trace::SpanContext > context, const opentelemetry::common::SystemTimestamp &timestamp, const PointDataAttributes &point_data_attr)
Definition: includes/opentelemetry/sdk/metrics/data/exemplar_data.h:29
sdk::metrics::MetricAttributes
opentelemetry::sdk::metrics::FilteredOrderedAttributeMap MetricAttributes
Definition: includes/opentelemetry/sdk/metrics/instruments.h:216
sdk::metrics::ExemplarData::GetSpanContext
const opentelemetry::trace::SpanContext & GetSpanContext() const noexcept
Returns the SpanContext associated with this exemplar.
Definition: includes/opentelemetry/sdk/metrics/data/exemplar_data.h:50
OPENTELEMETRY_END_NAMESPACE
#define OPENTELEMETRY_END_NAMESPACE
Definition: includes/opentelemetry/version.h:24
sdk::metrics::ExemplarData::GetEpochNanos
opentelemetry::common::SystemTimestamp GetEpochNanos()
Returns the timestamp in nanos when measurement was collected.
Definition: includes/opentelemetry/sdk/metrics/data/exemplar_data.h:44
sdk::metrics::DropPointData
Definition: includes/opentelemetry/sdk/metrics/data/point_data.h:160
sdk::metrics::LastValuePointData
Definition: includes/opentelemetry/sdk/metrics/data/point_data.h:39
sdk::metrics::ExemplarData::CreateDropPointData
static PointType CreateDropPointData()
Definition: includes/opentelemetry/sdk/metrics/data/exemplar_data.h:68
sdk::metrics::ExemplarData::GetFilteredAttributes
MetricAttributes GetFilteredAttributes()
The set of key/value pairs that were filtered out by the aggregator, but recorded alongside the origi...
Definition: includes/opentelemetry/sdk/metrics/data/exemplar_data.h:41
sdk
Definition: includes/opentelemetry/sdk/common/atomic_shared_ptr.h:13
metrics
Definition: includes/opentelemetry/metrics/async_instruments.h:10
sdk::metrics::ExemplarData
A sample input measurement.
Definition: includes/opentelemetry/sdk/metrics/data/exemplar_data.h:26
sdk::metrics::PointDataAttributes
Definition: includes/opentelemetry/sdk/metrics/data/metric_data.h:27
sdk::metrics::PointType
opentelemetry::nostd::variant< SumPointData, HistogramPointData, Base2ExponentialHistogramPointData, LastValuePointData, DropPointData > PointType
Definition: includes/opentelemetry/sdk/metrics/data/metric_data.h:25
sdk::metrics::LastValuePointData::value_
ValueType value_
Definition: includes/opentelemetry/sdk/metrics/data/point_data.h:50