From: Omri Zeneva Date: Thu, 20 Jan 2022 09:01:11 +0000 (-0500) Subject: common/tracer: return static noop span, instead of calling StartSpan(..) X-Git-Tag: v18.0.0~789^2~12 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=2fecc2c132f4025f589c8851887130336b9f4e2b;p=ceph.git common/tracer: return static noop span, instead of calling StartSpan(..) Signed-off-by: Omri Zeneva --- diff --git a/src/common/tracer.cc b/src/common/tracer.cc index c9891726044c..4d183eb72e79 100644 --- a/src/common/tracer.cc +++ b/src/common/tracer.cc @@ -11,6 +11,7 @@ namespace tracing { const opentelemetry::nostd::shared_ptr Tracer::noop_tracer = opentelemetry::trace::Provider::GetTracerProvider()->GetTracer("no-op", OPENTELEMETRY_SDK_VERSION); +const jspan Tracer::noop_span = noop_tracer->StartSpan("noop"); using bufferlist = ceph::buffer::list; @@ -39,7 +40,7 @@ jspan Tracer::start_trace(opentelemetry::nostd::string_view trace_name) { if (is_enabled()) { return tracer->StartSpan(trace_name); } - return noop_tracer->StartSpan(trace_name); + return noop_span; } jspan Tracer::start_trace(opentelemetry::nostd::string_view trace_name, bool trace_is_enabled) { @@ -54,7 +55,7 @@ jspan Tracer::add_span(opentelemetry::nostd::string_view span_name, const jspan& const auto parent_ctx = parent_span->GetContext(); return add_span(span_name, parent_ctx); } - return noop_tracer->StartSpan(span_name); + return noop_span; } jspan Tracer::add_span(opentelemetry::nostd::string_view span_name, const jspan_context& parent_ctx) { @@ -63,7 +64,7 @@ jspan Tracer::add_span(opentelemetry::nostd::string_view span_name, const jspan_ span_opts.parent = parent_ctx; return tracer->StartSpan(span_name, span_opts); } - return noop_tracer->StartSpan(span_name); + return noop_span; } bool Tracer::is_enabled() const { diff --git a/src/common/tracer.h b/src/common/tracer.h index bd095f310f61..242ae00e42d1 100644 --- a/src/common/tracer.h +++ b/src/common/tracer.h @@ -21,6 +21,7 @@ namespace tracing { class Tracer { private: const static opentelemetry::nostd::shared_ptr noop_tracer; + const static jspan noop_span; opentelemetry::nostd::shared_ptr tracer; public: @@ -59,7 +60,6 @@ void decode(jspan_context& span_ctx, ceph::buffer::list::const_iterator& bl); #include - class Value { public: template Value(T val) {}