NVIDIA DeepStream SDK API Reference

9.2 Release
sdk::metrics Namespace Reference

Data Structures

class  AdaptingCircularBufferCounter
 A circle-buffer-backed exponential counter. More...
 
class  AdaptingIntegerArray
 An integer array that automatically expands its memory consumption (via copy/allocation) when reaching limits. More...
 
class  Aggregation
 
class  AggregationConfig
 
class  AsyncMetricStorage
 
class  AsyncMultiMetricStorage
 
class  AsyncWritableMetricStorage
 
class  AttributeHashGenerator
 
class  AttributesHashMapWithCustomHash
 
class  AttributesProcessor
 The AttributesProcessor is responsible for customizing which attribute(s) are to be reported as metrics dimension(s). More...
 
class  Base2ExponentialHistogramAggregation
 
class  Base2ExponentialHistogramAggregationConfig
 
class  Base2ExponentialHistogramIndexer
 
class  Base2ExponentialHistogramPointData
 
class  CollectorHandle
 
class  DefaultAggregation
 
class  DefaultAttributesProcessor
 DefaultAttributesProcessor returns copy of input instrument attributes without any modification. More...
 
class  DoubleCounter
 
class  DoubleHistogram
 
class  DoubleHistogramAggregation
 
class  DoubleLastValueAggregation
 
class  DoubleSumAggregation
 
class  DoubleUpDownCounter
 
class  DropAggregation
 A null Aggregation which denotes no aggregation should occur. More...
 
class  DropPointData
 
class  ExactPredicate
 
class  ExemplarData
 A sample input measurement. More...
 
class  FilteredOrderedAttributeMap
 
class  FilteredOrderedAttributeMapHash
 
class  FilteringAttributesProcessor
 FilteringAttributesProcessor filters by allowed attribute names and drops any names that are not in the allow list. More...
 
class  FilteringExcludeAttributesProcessor
 FilteringExcludeAttributeProcessor filters by exclude attribute list and drops names if they are present in the exclude list. More...
 
class  HistogramAggregationConfig
 
class  HistogramPointData
 
struct  InstrumentDescriptor
 
struct  InstrumentDescriptorHash
 
struct  InstrumentDescriptorUtil
 
struct  InstrumentEqualNameCaseInsensitive
 
class  InstrumentMetaDataValidator
 
class  InstrumentSelector
 
class  InstrumentSelectorFactory
 
struct  LastReportedMetrics
 
class  LastValuePointData
 
class  LongCounter
 
class  LongHistogram
 
class  LongHistogramAggregation
 
class  LongLastValueAggregation
 
class  LongSumAggregation
 
class  LongUpDownCounter
 
class  MatchEverythingPattern
 
class  MatchNothingPattern
 
class  Meter
 
class  MeterConfig
 MeterConfig defines various configurable aspects of a Meter's behavior. More...
 
class  MeterContext
 A class which stores the MeterProvider context. More...
 
class  MeterContextFactory
 Factory class for MeterContext. More...
 
class  MeterProvider
 
class  MeterProviderFactory
 
class  MeterSelector
 
class  MeterSelectorFactory
 
class  MetricCollector
 An internal opaque interface that the MetricReader receives as MetricProducer. More...
 
class  MetricData
 
class  MetricFilter
 MetricFilter defines the interface which enables the MetricReader’s registered MetricProducers or the SDK’s MetricProducer to filter aggregated data points (Metric Points) inside its Produce operation. More...
 
class  MetricProducer
 MetricProducer defines the interface which bridges to third-party metric sources MUST implement, so they can be plugged into an OpenTelemetry MetricReader as a source of aggregated metric data. More...
 
class  MetricReader
 MetricReader defines the interface to collect metrics from SDK. More...
 
class  MetricStorage
 
class  NoopAsyncWritableMetricStorage
 
class  NoopMetricStorage
 
class  NoopWritableMetricStorage
 
struct  ObservableCallbackRecord
 
class  ObservableInstrument
 
class  ObservableRegistry
 
class  ObserverResultT
 
class  PatternPredicate
 
class  PeriodicExportingMetricReader
 
class  PeriodicExportingMetricReaderFactory
 
struct  PeriodicExportingMetricReaderOptions
 Struct to hold PeriodicExortingMetricReader options. More...
 
struct  PeriodicExportingMetricReaderRuntimeOptions
 Struct to hold PeriodicExortingMetricReader runtime options. More...
 
struct  PointDataAttributes
 
class  Predicate
 
class  PredicateFactory
 
class  Provider
 Changes the singleton global MeterProvider. More...
 
class  PushMetricExporter
 PushMetricExporter defines the interface to be used by metrics libraries to push metrics data to the OpenTelemetry exporters. More...
 
struct  RegisteredView
 
struct  ResourceMetrics
 
struct  ScopeMetrics
 Metric Data to be exported along with resources and Instrumentation scope. More...
 
class  SumPointData
 
class  Synchronous
 
class  SyncMetricStorage
 
class  SyncMultiMetricStorage
 
class  SyncWritableMetricStorage
 
class  TemporalMetricStorage
 
class  View
 View defines the interface to allow SDK user to customize the metrics before exported. More...
 
class  ViewFactory
 Factory class for View. More...
 
class  ViewRegistry
 
class  ViewRegistryFactory
 

Typedefs

using MetricAttributes = opentelemetry::sdk::metrics::FilteredOrderedAttributeMap
 
using MetricAttributesHash = opentelemetry::sdk::metrics::FilteredOrderedAttributeMapHash
 
using AggregationTemporalitySelector = std::function< AggregationTemporality(InstrumentType)>
 
using PointAttributes = opentelemetry::sdk::common::OrderedAttributeMap
 
using PointType = opentelemetry::nostd::variant< SumPointData, HistogramPointData, Base2ExponentialHistogramPointData, LastValuePointData, DropPointData >
 
using ValueType = nostd::variant< int64_t, double >
 
using AttributesHashMap = AttributesHashMapWithCustomHash<>
 
typedef std::unordered_map< std::string, bool, opentelemetry::sdk::common::StringViewHash, opentelemetry::sdk::common::StringViewEqual > FilterAttributeMap
 

Enumerations

enum  InstrumentType {
  InstrumentType::kCounter,
  InstrumentType::kHistogram,
  InstrumentType::kUpDownCounter,
  InstrumentType::kObservableCounter,
  InstrumentType::kObservableGauge,
  InstrumentType::kObservableUpDownCounter,
  InstrumentType::kGauge,
  InstrumentType::kCounter,
  InstrumentType::kHistogram,
  InstrumentType::kUpDownCounter,
  InstrumentType::kObservableCounter,
  InstrumentType::kObservableGauge,
  InstrumentType::kObservableUpDownCounter,
  InstrumentType::kGauge
}
 
enum  InstrumentClass {
  InstrumentClass::kSync,
  InstrumentClass::kAsync,
  InstrumentClass::kSync,
  InstrumentClass::kAsync
}
 
enum  InstrumentValueType {
  InstrumentValueType::kInt,
  InstrumentValueType::kLong,
  InstrumentValueType::kFloat,
  InstrumentValueType::kDouble,
  InstrumentValueType::kInt,
  InstrumentValueType::kLong,
  InstrumentValueType::kFloat,
  InstrumentValueType::kDouble
}
 
enum  AggregationType {
  AggregationType::kDrop,
  AggregationType::kHistogram,
  AggregationType::kLastValue,
  AggregationType::kSum,
  AggregationType::kDefault,
  AggregationType::kBase2ExponentialHistogram,
  AggregationType::kDrop,
  AggregationType::kHistogram,
  AggregationType::kLastValue,
  AggregationType::kSum,
  AggregationType::kDefault,
  AggregationType::kBase2ExponentialHistogram
}
 
enum  AggregationTemporality {
  AggregationTemporality::kUnspecified,
  AggregationTemporality::kDelta,
  AggregationTemporality::kCumulative,
  AggregationTemporality::kUnspecified,
  AggregationTemporality::kDelta,
  AggregationTemporality::kCumulative
}
 
enum  PredicateType : uint8_t {
  PredicateType::kPattern,
  PredicateType::kExact,
  PredicateType::kPattern,
  PredicateType::kExact
}
 
enum  InstrumentType {
  InstrumentType::kCounter,
  InstrumentType::kHistogram,
  InstrumentType::kUpDownCounter,
  InstrumentType::kObservableCounter,
  InstrumentType::kObservableGauge,
  InstrumentType::kObservableUpDownCounter,
  InstrumentType::kGauge,
  InstrumentType::kCounter,
  InstrumentType::kHistogram,
  InstrumentType::kUpDownCounter,
  InstrumentType::kObservableCounter,
  InstrumentType::kObservableGauge,
  InstrumentType::kObservableUpDownCounter,
  InstrumentType::kGauge
}
 
enum  InstrumentClass {
  InstrumentClass::kSync,
  InstrumentClass::kAsync,
  InstrumentClass::kSync,
  InstrumentClass::kAsync
}
 
enum  InstrumentValueType {
  InstrumentValueType::kInt,
  InstrumentValueType::kLong,
  InstrumentValueType::kFloat,
  InstrumentValueType::kDouble,
  InstrumentValueType::kInt,
  InstrumentValueType::kLong,
  InstrumentValueType::kFloat,
  InstrumentValueType::kDouble
}
 
enum  AggregationType {
  AggregationType::kDrop,
  AggregationType::kHistogram,
  AggregationType::kLastValue,
  AggregationType::kSum,
  AggregationType::kDefault,
  AggregationType::kBase2ExponentialHistogram,
  AggregationType::kDrop,
  AggregationType::kHistogram,
  AggregationType::kLastValue,
  AggregationType::kSum,
  AggregationType::kDefault,
  AggregationType::kBase2ExponentialHistogram
}
 
enum  AggregationTemporality {
  AggregationTemporality::kUnspecified,
  AggregationTemporality::kDelta,
  AggregationTemporality::kCumulative,
  AggregationTemporality::kUnspecified,
  AggregationTemporality::kDelta,
  AggregationTemporality::kCumulative
}
 
enum  PredicateType : uint8_t {
  PredicateType::kPattern,
  PredicateType::kExact,
  PredicateType::kPattern,
  PredicateType::kExact
}
 

Functions

template<class T >
void HistogramMerge (HistogramPointData &current, HistogramPointData &delta, HistogramPointData &merge)
 
template<class T >
void HistogramDiff (HistogramPointData &current, HistogramPointData &next, HistogramPointData &diff)
 
template<class T >
size_t BucketBinarySearch (T value, const std::vector< double > &boundaries)
 

Variables

constexpr std::chrono::milliseconds kExportIntervalMillis = std::chrono::milliseconds(60000)
 
constexpr std::chrono::milliseconds kExportTimeOutMillis = std::chrono::milliseconds(30000)
 
constexpr size_t kAggregationCardinalityLimit = 2000
 
const std::string kAttributesLimitOverflowKey = "otel.metrics.overflow"
 
const bool kAttributesLimitOverflowValue = true
 
const MetricAttributes kOverflowAttributes
 

Typedef Documentation

◆ AggregationTemporalitySelector

◆ AttributesHashMap

◆ FilterAttributeMap

typedef std::unordered_map< std::string, bool, opentelemetry::sdk::common::StringViewHash, opentelemetry::sdk::common::StringViewEqual > sdk::metrics::FilterAttributeMap

◆ MetricAttributes

typedef opentelemetry::sdk::metrics::FilteredOrderedAttributeMap sdk::metrics::MetricAttributes

◆ MetricAttributesHash

typedef opentelemetry::sdk::metrics::FilteredOrderedAttributeMapHash sdk::metrics::MetricAttributesHash

◆ PointAttributes

typedef opentelemetry::sdk::common::OrderedAttributeMap sdk::metrics::PointAttributes

◆ PointType

◆ ValueType

Enumeration Type Documentation

◆ AggregationTemporality [1/2]

Enumerator
kUnspecified 
kDelta 
kCumulative 
kUnspecified 
kDelta 
kCumulative 

Definition at line 54 of file includes/opentelemetry/sdk/metrics/instruments.h.

◆ AggregationTemporality [2/2]

Enumerator
kUnspecified 
kDelta 
kCumulative 
kUnspecified 
kDelta 
kCumulative 

Definition at line 54 of file 9.2/includes/opentelemetry/sdk/metrics/instruments.h.

◆ AggregationType [1/2]

Enumerator
kDrop 
kHistogram 
kLastValue 
kSum 
kDefault 
kBase2ExponentialHistogram 
kDrop 
kHistogram 
kLastValue 
kSum 
kDefault 
kBase2ExponentialHistogram 

Definition at line 44 of file includes/opentelemetry/sdk/metrics/instruments.h.

◆ AggregationType [2/2]

Enumerator
kDrop 
kHistogram 
kLastValue 
kSum 
kDefault 
kBase2ExponentialHistogram 
kDrop 
kHistogram 
kLastValue 
kSum 
kDefault 
kBase2ExponentialHistogram 

Definition at line 44 of file 9.2/includes/opentelemetry/sdk/metrics/instruments.h.

◆ InstrumentClass [1/2]

Enumerator
kSync 
kAsync 
kSync 
kAsync 

Definition at line 30 of file 9.2/includes/opentelemetry/sdk/metrics/instruments.h.

◆ InstrumentClass [2/2]

Enumerator
kSync 
kAsync 
kSync 
kAsync 

Definition at line 30 of file includes/opentelemetry/sdk/metrics/instruments.h.

◆ InstrumentType [1/2]

Enumerator
kCounter 
kHistogram 
kUpDownCounter 
kObservableCounter 
kObservableGauge 
kObservableUpDownCounter 
kGauge 
kCounter 
kHistogram 
kUpDownCounter 
kObservableCounter 
kObservableGauge 
kObservableUpDownCounter 
kGauge 

Definition at line 19 of file includes/opentelemetry/sdk/metrics/instruments.h.

◆ InstrumentType [2/2]

Enumerator
kCounter 
kHistogram 
kUpDownCounter 
kObservableCounter 
kObservableGauge 
kObservableUpDownCounter 
kGauge 
kCounter 
kHistogram 
kUpDownCounter 
kObservableCounter 
kObservableGauge 
kObservableUpDownCounter 
kGauge 

Definition at line 19 of file 9.2/includes/opentelemetry/sdk/metrics/instruments.h.

◆ InstrumentValueType [1/2]

Enumerator
kInt 
kLong 
kFloat 
kDouble 
kInt 
kLong 
kFloat 
kDouble 

Definition at line 36 of file 9.2/includes/opentelemetry/sdk/metrics/instruments.h.

◆ InstrumentValueType [2/2]

Enumerator
kInt 
kLong 
kFloat 
kDouble 
kInt 
kLong 
kFloat 
kDouble 

Definition at line 36 of file includes/opentelemetry/sdk/metrics/instruments.h.

◆ PredicateType [1/2]

enum sdk::metrics::PredicateType : uint8_t
strong
Enumerator
kPattern 
kExact 
kPattern 
kExact 

Definition at line 18 of file includes/opentelemetry/sdk/metrics/view/predicate_factory.h.

◆ PredicateType [2/2]

enum sdk::metrics::PredicateType : uint8_t
strong
Enumerator
kPattern 
kExact 
kPattern 
kExact 

Definition at line 18 of file 9.2/includes/opentelemetry/sdk/metrics/view/predicate_factory.h.

Function Documentation

◆ BucketBinarySearch()

template<class T >
size_t sdk::metrics::BucketBinarySearch ( T  value,
const std::vector< double > &  boundaries 
)

◆ HistogramDiff()

◆ HistogramMerge()

template<class T >
void sdk::metrics::HistogramMerge ( HistogramPointData &  current,
HistogramPointData &  delta,
HistogramPointData &  merge 
)

Variable Documentation

◆ kAggregationCardinalityLimit

constexpr size_t sdk::metrics::kAggregationCardinalityLimit = 2000
constexpr

◆ kAttributesLimitOverflowKey

const std::string sdk::metrics::kAttributesLimitOverflowKey = "otel.metrics.overflow"

◆ kAttributesLimitOverflowValue

const bool sdk::metrics::kAttributesLimitOverflowValue = true

◆ kExportIntervalMillis

constexpr std::chrono::milliseconds sdk::metrics::kExportIntervalMillis = std::chrono::milliseconds(60000)
constexpr

◆ kExportTimeOutMillis

constexpr std::chrono::milliseconds sdk::metrics::kExportTimeOutMillis = std::chrono::milliseconds(30000)
constexpr

◆ kOverflowAttributes

sdk::metrics::kAttributesLimitOverflowValue
const bool kAttributesLimitOverflowValue
Definition: includes/opentelemetry/sdk/metrics/state/attributes_hashmap.h:32
sdk::metrics::kAttributesLimitOverflowKey
const std::string kAttributesLimitOverflowKey
Definition: includes/opentelemetry/sdk/metrics/state/attributes_hashmap.h:31