NVIDIA DeepStream SDK API Reference

9.2 Release
9.2/includes/opentelemetry/sdk/configuration/configured_sdk.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/context/propagation/text_map_propagator.h"
9 #include "opentelemetry/sdk/configuration/configuration.h"
10 #include "opentelemetry/sdk/configuration/registry.h"
11 #include "opentelemetry/sdk/logs/logger_provider.h"
12 #include "opentelemetry/sdk/metrics/meter_provider.h"
13 #include "opentelemetry/sdk/resource/resource.h"
14 #include "opentelemetry/sdk/trace/tracer_provider.h"
15 #include "opentelemetry/version.h"
16 
18 namespace sdk
19 {
20 namespace configuration
21 {
22 
28 class ConfiguredSdk
29 {
30 public:
31  static std::unique_ptr<ConfiguredSdk> Create(
32  std::shared_ptr<Registry> registry,
33  const std::unique_ptr<opentelemetry::sdk::configuration::Configuration> &model);
34 
35  ConfiguredSdk() : resource(opentelemetry::sdk::resource::Resource::GetEmpty()) {}
36 
42  void Install();
43 
49  void UnInstall();
50 
51  opentelemetry::sdk::resource::Resource resource;
52  std::shared_ptr<opentelemetry::sdk::trace::TracerProvider> tracer_provider;
53  std::shared_ptr<opentelemetry::context::propagation::TextMapPropagator> propagator;
54  std::shared_ptr<opentelemetry::sdk::metrics::MeterProvider> meter_provider;
55  std::shared_ptr<opentelemetry::sdk::logs::LoggerProvider> logger_provider;
56 };
57 
58 } // namespace configuration
59 } // namespace sdk
sdk::configuration::ConfiguredSdk::tracer_provider
std::shared_ptr< opentelemetry::sdk::trace::TracerProvider > tracer_provider
Definition: includes/opentelemetry/sdk/configuration/configured_sdk.h:52
OPENTELEMETRY_BEGIN_NAMESPACE
#define OPENTELEMETRY_BEGIN_NAMESPACE
Definition: includes/opentelemetry/version.h:21
sdk::configuration::ConfiguredSdk::logger_provider
std::shared_ptr< opentelemetry::sdk::logs::LoggerProvider > logger_provider
Definition: includes/opentelemetry/sdk/configuration/configured_sdk.h:55
OPENTELEMETRY_END_NAMESPACE
#define OPENTELEMETRY_END_NAMESPACE
Definition: includes/opentelemetry/version.h:24
sdk::configuration::ConfiguredSdk::Create
static std::unique_ptr< ConfiguredSdk > Create(std::shared_ptr< Registry > registry, const std::unique_ptr< opentelemetry::sdk::configuration::Configuration > &model)
sdk::configuration::ConfiguredSdk::propagator
std::shared_ptr< opentelemetry::context::propagation::TextMapPropagator > propagator
Definition: includes/opentelemetry/sdk/configuration/configured_sdk.h:53
sdk::configuration::ConfiguredSdk::resource
opentelemetry::sdk::resource::Resource resource
Definition: includes/opentelemetry/sdk/configuration/configured_sdk.h:51
sdk::configuration::ConfiguredSdk::ConfiguredSdk
ConfiguredSdk()
Definition: 9.2/includes/opentelemetry/sdk/configuration/configured_sdk.h:35
sdk::configuration::ConfiguredSdk::Install
void Install()
Install the SDK, so that an instrumented application can make calls to it.
sdk
Definition: includes/opentelemetry/sdk/common/atomic_shared_ptr.h:13
sdk::configuration::ConfiguredSdk::meter_provider
std::shared_ptr< opentelemetry::sdk::metrics::MeterProvider > meter_provider
Definition: includes/opentelemetry/sdk/configuration/configured_sdk.h:54
sdk::configuration::ConfiguredSdk::UnInstall
void UnInstall()
Uninstall the SDK, so that an instrumented application no longer makes calls to it.
opentelemetry
Definition: includes/opentelemetry/exporters/otlp/otlp_grpc_client.h:38