class SidekiqPublisher::DatadogAPM::Subscriber
Public Class Methods
subscribe_to(pattern)
click to toggle source
# File lib/sidekiq_publisher/datadog_apm.rb, line 19 def self.subscribe_to(pattern) ActiveSupport::Notifications.subscribe(pattern, new) end
Public Instance Methods
finish(_name, _id, payload)
click to toggle source
# File lib/sidekiq_publisher/datadog_apm.rb, line 23 def finish(_name, _id, payload) finish_span(payload) end
Private Instance Methods
finish_span(payload)
click to toggle source
# File lib/sidekiq_publisher/datadog_apm.rb, line 38 def finish_span(payload) payload[:datadog_span]&.set_error(payload[:exception_object]) if payload.key?(:exception_object) payload[:datadog_span]&.finish end
service()
click to toggle source
# File lib/sidekiq_publisher/datadog_apm.rb, line 43 def service SidekiqPublisher::DatadogAPM.service end
start_primary_span(resource, payload)
click to toggle source
# File lib/sidekiq_publisher/datadog_apm.rb, line 34 def start_primary_span(resource, payload) start_span(OPERATION, payload, resource) end
start_span(operation, payload, resource = nil)
click to toggle source
# File lib/sidekiq_publisher/datadog_apm.rb, line 29 def start_span(operation, payload, resource = nil) resource ||= operation payload[:datadog_span] = Datadog.tracer.trace(operation, service: service, resource: resource) end