lib/aspecto/opentelemetry.rb in aspecto-opentelemetry-0.1.5 vs lib/aspecto/opentelemetry.rb in aspecto-opentelemetry-0.1.6
- old
+ new
@@ -48,9 +48,14 @@
# https://github.com/sinatra/sinatra/blob/cd503e6c590cd48c2c9bb7869522494bfc62cb14/lib/sinatra/main.rb#L25
span_processor.force_flush timeout: 2
end
end
+ if configurator.require_config_for_traces
+ ::OpenTelemetry.logger.info "[Aspecto] Require config for traces. Applying ALWAYS_OFF sampler"
+ ::OpenTelemetry.tracer_provider.sampler = ::OpenTelemetry::SDK::Trace::Samplers::ALWAYS_OFF
+ end
+
fallback_sampler = ::OpenTelemetry::SDK::Trace::Samplers.trace_id_ratio_based(configurator.sampling_ratio)
# TODO: how to properly extract the data from resource?
_, service_name = ::OpenTelemetry.tracer_provider.resource.attribute_enumerator.detect { |elem| elem[0] == ::OpenTelemetry::SemanticConventions::Resource::SERVICE_NAME }
_, env = ::OpenTelemetry.tracer_provider.resource.attribute_enumerator.detect { |elem| elem[0] == ::OpenTelemetry::SemanticConventions::Resource::DEPLOYMENT_ENVIRONMENT }
@remote_config_service = Config::RemoteConfig.new configurator.aspecto_auth, service_name, env, fallback_sampler