Module: Datadog::Tracing::Contrib::ActionMailer::Events::Process

Includes:
Datadog::Tracing::Contrib::ActionMailer::Event
Defined in:
lib/datadog/tracing/contrib/action_mailer/events/process.rb

Overview

Defines instrumentation for process.action_mailer event

Constant Summary collapse

EVENT_NAME =
'process.action_mailer'.freeze

Class Method Summary collapse

Methods included from Datadog::Tracing::Contrib::ActionMailer::Event

included

Class Method Details

.event_nameObject



18
19
20
# File 'lib/datadog/tracing/contrib/action_mailer/events/process.rb', line 18

def event_name
  self::EVENT_NAME
end

.process(span, event, _id, payload) ⇒ Object



31
32
33
34
35
36
37
38
39
# File 'lib/datadog/tracing/contrib/action_mailer/events/process.rb', line 31

def process(span, event, _id, payload)
  super

  span.span_type = span_type
  span.set_tag(Ext::TAG_ACTION, payload[:action])
  span.set_tag(Ext::TAG_MAILER, payload[:mailer])

  span.set_tag(Tracing::Metadata::Ext::TAG_OPERATION, Ext::TAG_OPERATION_PROCESS)
end

.span_nameObject



22
23
24
# File 'lib/datadog/tracing/contrib/action_mailer/events/process.rb', line 22

def span_name
  Ext::SPAN_PROCESS
end

.span_typeObject



26
27
28
29
# File 'lib/datadog/tracing/contrib/action_mailer/events/process.rb', line 26

def span_type
  # process.action_mailer processes email and renders partial templates
  Tracing::Metadata::Ext::HTTP::TYPE_TEMPLATE
end