Skip to content

Commit eb018dd

Browse files
committed
Code review comments (sdk_builder)
1 parent c4b96da commit eb018dd

File tree

5 files changed

+56
-34
lines changed

5 files changed

+56
-34
lines changed

examples/yaml/main.cc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -132,15 +132,15 @@ void InitOtel(const std::string &config_file)
132132

133133
if (sdk != nullptr)
134134
{
135-
sdk->Install();
135+
sdk->Init();
136136
}
137137
}
138138

139139
void CleanupOtel()
140140
{
141141
if (sdk != nullptr)
142142
{
143-
sdk->UnInstall();
143+
sdk->Cleanup();
144144
}
145145
sdk.reset(nullptr);
146146
}

functional/configuration/main.cc

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
// Copyright The OpenTelemetry Authors
22
// SPDX-License-Identifier: Apache-2.0
33

4+
// NOTE: This file is adapted from example/yaml/main.cc,
5+
// to execute functional tests driven by shelltest.
6+
47
#include <stdio.h>
58
#include <stdlib.h>
69
#include <string.h>
@@ -198,15 +201,15 @@ void InitOtel(const std::string &config_file)
198201

199202
if (sdk != nullptr)
200203
{
201-
sdk->Install();
204+
sdk->Init();
202205
}
203206
}
204207

205208
void CleanupOtel()
206209
{
207210
if (sdk != nullptr)
208211
{
209-
sdk->UnInstall();
212+
sdk->Cleanup();
210213
}
211214
sdk.reset(nullptr);
212215
}

sdk/include/opentelemetry/sdk/configuration/configured_sdk.h

Lines changed: 22 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -27,16 +27,28 @@ class ConfiguredSdk
2727
std::shared_ptr<Registry> registry,
2828
const std::unique_ptr<opentelemetry::sdk::configuration::Configuration> &model);
2929

30-
ConfiguredSdk() : resource(opentelemetry::sdk::resource::Resource::GetEmpty()) {}
31-
32-
void Install();
33-
void UnInstall();
34-
35-
opentelemetry::sdk::resource::Resource resource;
36-
std::shared_ptr<opentelemetry::sdk::trace::TracerProvider> tracer_provider;
37-
std::shared_ptr<opentelemetry::context::propagation::TextMapPropagator> propagator;
38-
std::shared_ptr<opentelemetry::sdk::metrics::MeterProvider> meter_provider;
39-
std::shared_ptr<opentelemetry::sdk::logs::LoggerProvider> logger_provider;
30+
ConfiguredSdk(
31+
opentelemetry::sdk::resource::Resource &&resource,
32+
const std::shared_ptr<opentelemetry::sdk::trace::TracerProvider> &tracer_provider,
33+
const std::shared_ptr<opentelemetry::context::propagation::TextMapPropagator> &propagator,
34+
const std::shared_ptr<opentelemetry::sdk::metrics::MeterProvider> &meter_provider,
35+
const std::shared_ptr<opentelemetry::sdk::logs::LoggerProvider> &logger_provider)
36+
: resource_(std::move(resource)),
37+
tracer_provider_(tracer_provider),
38+
propagator_(propagator),
39+
meter_provider_(meter_provider),
40+
logger_provider_(logger_provider)
41+
{}
42+
43+
void Init();
44+
void Cleanup();
45+
46+
private:
47+
opentelemetry::sdk::resource::Resource resource_;
48+
std::shared_ptr<opentelemetry::sdk::trace::TracerProvider> tracer_provider_;
49+
std::shared_ptr<opentelemetry::context::propagation::TextMapPropagator> propagator_;
50+
std::shared_ptr<opentelemetry::sdk::metrics::MeterProvider> meter_provider_;
51+
std::shared_ptr<opentelemetry::sdk::logs::LoggerProvider> logger_provider_;
4052
};
4153

4254
} // namespace configuration

sdk/src/configuration/configured_sdk.cc

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -56,53 +56,53 @@ std::unique_ptr<ConfiguredSdk> ConfiguredSdk::Create(
5656
return sdk;
5757
}
5858

59-
void ConfiguredSdk::Install()
59+
void ConfiguredSdk::Init()
6060
{
61-
if (propagator)
61+
if (propagator_)
6262
{
63-
opentelemetry::context::propagation::GlobalTextMapPropagator::SetGlobalPropagator(propagator);
63+
opentelemetry::context::propagation::GlobalTextMapPropagator::SetGlobalPropagator(propagator_);
6464
}
6565

66-
if (tracer_provider)
66+
if (tracer_provider_)
6767
{
68-
std::shared_ptr<opentelemetry::trace::TracerProvider> api_tracer_provider = tracer_provider;
68+
std::shared_ptr<opentelemetry::trace::TracerProvider> api_tracer_provider = tracer_provider_;
6969
opentelemetry::trace::Provider::SetTracerProvider(api_tracer_provider);
7070
}
7171

72-
if (meter_provider)
72+
if (meter_provider_)
7373
{
74-
std::shared_ptr<opentelemetry::metrics::MeterProvider> api_meter_provider = meter_provider;
74+
std::shared_ptr<opentelemetry::metrics::MeterProvider> api_meter_provider = meter_provider_;
7575
opentelemetry::metrics::Provider::SetMeterProvider(api_meter_provider);
7676
}
7777

78-
if (logger_provider)
78+
if (logger_provider_)
7979
{
80-
std::shared_ptr<opentelemetry::logs::LoggerProvider> api_logger_provider = logger_provider;
80+
std::shared_ptr<opentelemetry::logs::LoggerProvider> api_logger_provider = logger_provider_;
8181
opentelemetry::logs::Provider::SetLoggerProvider(api_logger_provider);
8282
}
8383
}
8484

85-
void ConfiguredSdk::UnInstall()
85+
void ConfiguredSdk::Cleanup()
8686
{
87-
if (propagator)
87+
if (propagator_)
8888
{
8989
std::shared_ptr<opentelemetry::context::propagation::TextMapPropagator> none;
9090
opentelemetry::context::propagation::GlobalTextMapPropagator::SetGlobalPropagator(none);
9191
}
9292

93-
if (tracer_provider)
93+
if (tracer_provider_)
9494
{
9595
std::shared_ptr<opentelemetry::trace::TracerProvider> none;
9696
opentelemetry::trace::Provider::SetTracerProvider(none);
9797
}
9898

99-
if (meter_provider)
99+
if (meter_provider_)
100100
{
101101
std::shared_ptr<opentelemetry::metrics::MeterProvider> none;
102102
opentelemetry::metrics::Provider::SetMeterProvider(none);
103103
}
104104

105-
if (logger_provider)
105+
if (logger_provider_)
106106
{
107107
std::shared_ptr<opentelemetry::logs::LoggerProvider> none;
108108
opentelemetry::logs::Provider::SetLoggerProvider(none);

sdk/src/configuration/sdk_builder.cc

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1717,11 +1717,16 @@ void SdkBuilder::SetResource(
17171717
std::unique_ptr<ConfiguredSdk> SdkBuilder::CreateConfiguredSdk(
17181718
const std::unique_ptr<opentelemetry::sdk::configuration::Configuration> &model) const
17191719
{
1720-
auto sdk = std::make_unique<ConfiguredSdk>();
1720+
std::unique_ptr<ConfiguredSdk> sdk;
1721+
auto resource = opentelemetry::sdk::resource::Resource::GetEmpty();
1722+
std::shared_ptr<opentelemetry::sdk::trace::TracerProvider> tracer_provider;
1723+
std::shared_ptr<opentelemetry::context::propagation::TextMapPropagator> propagator;
1724+
std::shared_ptr<opentelemetry::sdk::metrics::MeterProvider> meter_provider;
1725+
std::shared_ptr<opentelemetry::sdk::logs::LoggerProvider> logger_provider;
17211726

17221727
if (!model->disabled)
17231728
{
1724-
SetResource(sdk->resource, model->resource);
1729+
SetResource(resource, model->resource);
17251730

17261731
if (model->attribute_limits)
17271732
{
@@ -1732,25 +1737,27 @@ std::unique_ptr<ConfiguredSdk> SdkBuilder::CreateConfiguredSdk(
17321737

17331738
if (model->tracer_provider)
17341739
{
1735-
sdk->tracer_provider = CreateTracerProvider(model->tracer_provider, sdk->resource);
1740+
tracer_provider = CreateTracerProvider(model->tracer_provider, resource);
17361741
}
17371742

17381743
if (model->propagator)
17391744
{
1740-
sdk->propagator = CreatePropagator(model->propagator);
1745+
propagator = CreatePropagator(model->propagator);
17411746
}
17421747

17431748
if (model->meter_provider)
17441749
{
1745-
sdk->meter_provider = CreateMeterProvider(model->meter_provider, sdk->resource);
1750+
meter_provider = CreateMeterProvider(model->meter_provider, resource);
17461751
}
17471752

17481753
if (model->logger_provider)
17491754
{
1750-
sdk->logger_provider = CreateLoggerProvider(model->logger_provider, sdk->resource);
1755+
logger_provider = CreateLoggerProvider(model->logger_provider, resource);
17511756
}
17521757
}
17531758

1759+
sdk = std::make_unique<ConfiguredSdk>(std::move(resource), tracer_provider, propagator,
1760+
meter_provider, logger_provider);
17541761
return sdk;
17551762
}
17561763

0 commit comments

Comments
 (0)