Class: NetuitiveRailsAgent::ActiveJobSub

Inherits:
Object
  • Object
show all
Defined in:
lib/netuitive_rails_agent/active_job.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(interaction) ⇒ ActiveJobSub

Returns a new instance of ActiveJobSub.



4
5
6
# File 'lib/netuitive_rails_agent/active_job.rb', line 4

def initialize(interaction)
  @interaction = interaction
end

Instance Attribute Details

#interactionObject (readonly)

Returns the value of attribute interaction.



3
4
5
# File 'lib/netuitive_rails_agent/active_job.rb', line 3

def interaction
  @interaction
end

Instance Method Details

#enqueueObject



17
18
19
# File 'lib/netuitive_rails_agent/active_job.rb', line 17

def enqueue
  interaction.aggregate_metric('active_job.enqueue', 1)
end

#performObject



21
22
23
# File 'lib/netuitive_rails_agent/active_job.rb', line 21

def perform
  interaction.aggregate_metric('active_job.perform', 1)
end

#subscribeObject



8
9
10
11
12
13
14
15
# File 'lib/netuitive_rails_agent/active_job.rb', line 8

def subscribe
  ActiveSupport::Notifications.subscribe(/enqueue.active_job/) do |*_args|
    enqueue
  end
  ActiveSupport::Notifications.subscribe(/perform.active_job/) do |*_args|
    perform
  end
end