Sha256: 82c2e9f30a83fcc8a6a8c24e994a45dcf80b7f5f5352d3a23792c389ad5b1852

Contents?: true

Size: 777 Bytes

Versions: 4

Compression:

Stored size: 777 Bytes

Contents

# (c) Copyright IBM Corp. 2021
# (c) Copyright Instana Inc. 2021

module Instana
  module Activators
    class ResqueWorker < Activator
      def can_instrument?
        defined?(::Resque::Worker) &&
          defined?(::Resque::Job) &&
          ::Instana.config[:'resque-worker'][:enabled]
      end

      def instrument
        require 'instana/instrumentation/resque'

        ::Resque::Worker.prepend(::Instana::Instrumentation::ResqueWorker)
        ::Resque::Job.prepend(::Instana::Instrumentation::ResqueJob)

        ::Resque.after_fork do |_job|
          ::Instana.agent.after_fork
        end

        # Set this so we assure that any remaining collected traces are reported at_exit
        ENV['RUN_AT_EXIT_HOOKS'] = "1"

        true
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
instana-1.199.6 lib/instana/activators/resque_worker.rb
instana-1.199.5 lib/instana/activators/resque_worker.rb
instana-1.199.4 lib/instana/activators/resque_worker.rb
instana-1.199.3 lib/instana/activators/resque_worker.rb