Sha256: b4b464e94f8a02a4db107d64fce79846bb1e15d2203a3416aff0f8927dfe994a
Contents?: true
Size: 953 Bytes
Versions: 4
Compression:
Stored size: 953 Bytes
Contents
# frozen_string_literal: true require 'deimos/tracing/provider' module Deimos module Tracing # Tracing wrapper class for Datadog. class Datadog < Tracing::Provider # :nodoc: def initialize(config) raise 'Tracing config must specify service_name' if config[:service_name].nil? @service = config[:service_name] end # :nodoc: def start(span_name, options={}) span = ::Datadog.tracer.trace(span_name) span.service = @service span.resource = options[:resource] span end # :nodoc: def finish(span) span.finish end # :nodoc: def active_span ::Datadog.tracer.active_span end # :nodoc: def set_error(span, exception) span.set_error(exception) end # :nodoc: def set_tag(tag, value, span=nil) (span || active_span).set_tag(tag, value) end end end end
Version data entries
4 entries across 4 versions & 1 rubygems