From 2fecc2c132f4025f589c8851887130336b9f4e2b Mon Sep 17 00:00:00 2001 From: Omri Zeneva Date: Thu, 20 Jan 2022 04:01:11 -0500 Subject: [PATCH] common/tracer: return static noop span, instead of calling StartSpan(..) Signed-off-by: Omri Zeneva --- src/common/tracer.cc | 7 ++++--- src/common/tracer.h | 2 +- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/common/tracer.cc b/src/common/tracer.cc index c9891726044..4d183eb72e7 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 bd095f310f6..242ae00e42d 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) {} -- 2.47.3