Module: QueueingRabbit::JobExtensions::NewRelic

Defined in:
lib/queueing_rabbit/extensions/new_relic.rb

Class Method Summary collapse

Class Method Details

.add_for_class_method(klass) ⇒ Object



15
16
17
18
19
20
21
22
# File 'lib/queueing_rabbit/extensions/new_relic.rb', line 15

def self.add_for_class_method(klass)
  klass.class_eval do |k|
    class << k
      include ::NewRelic::Agent::Instrumentation::ControllerInstrumentation
      add_transaction_tracer :perform, :category => :task
    end
  end
end

.add_for_instance_method(klass) ⇒ Object



24
25
26
27
28
29
# File 'lib/queueing_rabbit/extensions/new_relic.rb', line 24

def self.add_for_instance_method(klass)
  klass.class_eval do |k|
    include ::NewRelic::Agent::Instrumentation::ControllerInstrumentation
    add_transaction_tracer :perform, :category => :task
  end
end

.included(klass) ⇒ Object



7
8
9
10
11
12
13
# File 'lib/queueing_rabbit/extensions/new_relic.rb', line 7

def self.included(klass)
  if klass.respond_to?(:perform)
    add_for_class_method(klass)
  else
    add_for_instance_method(klass)
  end
end