Sha256: 3f33118778d4682bd28c9145d6115a4d4da916c7b68b65dcc0fe149cf63c07f7

Contents?: true

Size: 811 Bytes

Versions: 1

Compression:

Stored size: 811 Bytes

Contents

module Honeybadger
  module Plugins
    module ActiveJob
            
      Plugin.register {
        requirement { defined?(::Rails.application) && ::Rails.application }
        requirement {
          ::Rails.application.config.respond_to?(:active_job) &&
            ::Rails.application.config.active_job[:queue_adapter] == :async
        }
        
        execution {
          ::ActiveJob::Base.class_eval do |base| 
            base.set_callback :perform, :around do |param, block|
              Honeybadger.clear!
              begin
                block.call
              rescue => error
                Honeybadger.notify(error, parameters: { job_arguments: self.arguments })
                raise error
              end
            end
          end          
        }
      }
    end
  end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
honeybadger-5.5.1 lib/honeybadger/plugins/active_job.rb