23 static void SetNoLogSpans(NoLogSpans&& spans);
24 static bool IsNoLogSpan(
const std::string& name);
26 static void SetTracer(TracerPtr tracer);
28 static TracerPtr GetTracer();
30 const std::string& GetServiceName()
const;
32 Span CreateSpanWithoutParent(std::string name);
34 Span CreateSpan(std::string name,
const Span& parent, ReferenceType reference_type);
37 virtual void LogSpanContextTo(
const Span::Impl& span,
logging::impl::TagWriter writer)
const = 0;
39 logging::LoggerPtr GetOptionalLogger()
const {
return optional_logger_; }
42 explicit Tracer(std::string_view service_name,
logging::LoggerPtr optional_logger)
43 : service_name_(service_name), optional_logger_(std::move(optional_logger)) {}
48 const std::string service_name_;
49 const logging::LoggerPtr optional_logger_;