Class: Skylight::Core::Probes::ActiveJob::Probe Private

Inherits:
Object
  • Object
show all
Defined in:
lib/skylight/core/probes/active_job.rb

This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.

Constant Summary collapse

TITLE =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

"ActiveJob.execute".freeze

Instance Method Summary collapse

Instance Method Details

#installObject

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.


7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/skylight/core/probes/active_job.rb', line 7

def install
  ::ActiveJob::Base.instance_eval do
    alias execute_without_sk execute

    def execute(*args)
      Skylight.trace(TITLE, "app.job.execute", component: :worker) do |trace|
        # See normalizers/active_job/perform for endpoint/segment assignment
        begin
          execute_without_sk(*args)
        rescue Exception
          trace.segment = "error" if trace
          raise
        end
      end
    end
  end
end