@@ -711,7 +711,7 @@ std::unique_ptr<opentelemetry::sdk::trace::Sampler> SdkBuilder::CreateJaegerRemo
711
711
{
712
712
std::unique_ptr<opentelemetry::sdk::trace::Sampler> sdk;
713
713
714
- static const std::string die (" JeagerRemoteSampler not supported" );
714
+ static const std::string die (" JaegerRemoteSampler not supported" );
715
715
throw UnsupportedException (die);
716
716
717
717
return sdk;
@@ -764,10 +764,19 @@ std::unique_ptr<opentelemetry::sdk::trace::Sampler> SdkBuilder::CreateParentBase
764
764
local_parent_not_sampled_sdk = opentelemetry::sdk::trace::AlwaysOffSamplerFactory::Create ();
765
765
}
766
766
767
- // FIXME-SDK: https://github.com/open-telemetry/opentelemetry-cpp/issues/3545
768
- OTEL_INTERNAL_LOG_ERROR (" CreateParentBasedSampler: FIXME-SDK, missing param in parent factory" );
769
- std::shared_ptr<opentelemetry::sdk::trace::Sampler> delegate_sampler = std::move (root_sdk);
770
- sdk = opentelemetry::sdk::trace::ParentBasedSamplerFactory::Create (delegate_sampler);
767
+ std::shared_ptr<opentelemetry::sdk::trace::Sampler> shared_root = std::move (root_sdk);
768
+ std::shared_ptr<opentelemetry::sdk::trace::Sampler> shared_remote_parent_sampled =
769
+ std::move (remote_parent_sampled_sdk);
770
+ std::shared_ptr<opentelemetry::sdk::trace::Sampler> shared_remote_parent_not_sampled =
771
+ std::move (remote_parent_not_sampled_sdk);
772
+ std::shared_ptr<opentelemetry::sdk::trace::Sampler> shared_local_parent_sampled =
773
+ std::move (local_parent_sampled_sdk);
774
+ std::shared_ptr<opentelemetry::sdk::trace::Sampler> shared_local_parent_not_sampled =
775
+ std::move (local_parent_not_sampled_sdk);
776
+
777
+ sdk = opentelemetry::sdk::trace::ParentBasedSamplerFactory::Create (
778
+ shared_root, shared_remote_parent_sampled, shared_remote_parent_not_sampled,
779
+ shared_local_parent_sampled, shared_local_parent_not_sampled);
771
780
772
781
return sdk;
773
782
}
@@ -1009,7 +1018,7 @@ std::unique_ptr<opentelemetry::sdk::trace::TracerProvider> SdkBuilder::CreateTra
1009
1018
std::unique_ptr<opentelemetry::sdk::trace::TracerProvider> sdk;
1010
1019
1011
1020
// FIXME-CONFIG: https://github.com/open-telemetry/opentelemetry-configuration/issues/70
1012
- OTEL_INTERNAL_LOG_ERROR ( " CreateTracerProvider: FIXME-CONFIG ( IdGenerator) " );
1021
+ // FIXME-CONFIG: Add support for IdGenerator
1013
1022
1014
1023
std::unique_ptr<opentelemetry::sdk::trace::Sampler> sampler;
1015
1024
@@ -1364,7 +1373,7 @@ SdkBuilder::CreateAttributesProcessor(
1364
1373
1365
1374
// FIXME-SDK: https://github.com/open-telemetry/opentelemetry-cpp/issues/3546
1366
1375
// FIXME-SDK: Need a subclass of AttributesProcessor for IncludeExclude
1367
- OTEL_INTERNAL_LOG_ERROR ( " CreateAttributesProcessor() FIXME-SDK IncludeExclude " );
1376
+ OTEL_INTERNAL_LOG_WARN ( " IncludeExclude attribute processor not supported, ignoring " );
1368
1377
1369
1378
return sdk;
1370
1379
}
@@ -1699,7 +1708,7 @@ void SdkBuilder::SetResource(
1699
1708
{
1700
1709
// FIXME-SDK: https://github.com/open-telemetry/opentelemetry-cpp/issues/3548
1701
1710
// FIXME-SDK: Implement resource detectors
1702
- OTEL_INTERNAL_LOG_ERROR ( " SdkBuilder::SetResource: FIXME-SDK detectors" );
1711
+ OTEL_INTERNAL_LOG_WARN ( " resource detectors not supported, ignoring " );
1703
1712
}
1704
1713
1705
1714
auto sdk_resource =
@@ -1715,16 +1724,11 @@ void SdkBuilder::SetResource(
1715
1724
std::unique_ptr<ConfiguredSdk> SdkBuilder::CreateConfiguredSdk (
1716
1725
const std::unique_ptr<opentelemetry::sdk::configuration::Configuration> &model) const
1717
1726
{
1718
- std::unique_ptr<ConfiguredSdk> sdk;
1719
- auto resource = opentelemetry::sdk::resource::Resource::GetEmpty ();
1720
- std::shared_ptr<opentelemetry::sdk::trace::TracerProvider> tracer_provider;
1721
- std::shared_ptr<opentelemetry::context::propagation::TextMapPropagator> propagator;
1722
- std::shared_ptr<opentelemetry::sdk::metrics::MeterProvider> meter_provider;
1723
- std::shared_ptr<opentelemetry::sdk::logs::LoggerProvider> logger_provider;
1727
+ auto sdk = std::make_unique<ConfiguredSdk>();
1724
1728
1725
1729
if (!model->disabled )
1726
1730
{
1727
- SetResource (resource, model->resource );
1731
+ SetResource (sdk-> resource , model->resource );
1728
1732
1729
1733
if (model->attribute_limits )
1730
1734
{
@@ -1735,27 +1739,25 @@ std::unique_ptr<ConfiguredSdk> SdkBuilder::CreateConfiguredSdk(
1735
1739
1736
1740
if (model->tracer_provider )
1737
1741
{
1738
- tracer_provider = CreateTracerProvider (model->tracer_provider , resource);
1742
+ sdk-> tracer_provider = CreateTracerProvider (model->tracer_provider , sdk-> resource );
1739
1743
}
1740
1744
1741
1745
if (model->propagator )
1742
1746
{
1743
- propagator = CreatePropagator (model->propagator );
1747
+ sdk-> propagator = CreatePropagator (model->propagator );
1744
1748
}
1745
1749
1746
1750
if (model->meter_provider )
1747
1751
{
1748
- meter_provider = CreateMeterProvider (model->meter_provider , resource);
1752
+ sdk-> meter_provider = CreateMeterProvider (model->meter_provider , sdk-> resource );
1749
1753
}
1750
1754
1751
1755
if (model->logger_provider )
1752
1756
{
1753
- logger_provider = CreateLoggerProvider (model->logger_provider , resource);
1757
+ sdk-> logger_provider = CreateLoggerProvider (model->logger_provider , sdk-> resource );
1754
1758
}
1755
1759
}
1756
1760
1757
- sdk = std::make_unique<ConfiguredSdk>(std::move (resource), tracer_provider, propagator,
1758
- meter_provider, logger_provider);
1759
1761
return sdk;
1760
1762
}
1761
1763
0 commit comments