module Appsignal::Integrations::ResqueActiveJobPlugin

def self.included(base)

def self.included(base)
  base.class_eval do
    around_perform do |job, block|
      params = Appsignal::Utils::HashSanitizer.sanitize(
        job.arguments,
        Appsignal.config[:filter_parameters]
      )
      Appsignal.monitor_single_transaction(
        "perform_job.resque",
        :class    => job.class.to_s,
        :method   => "perform",
        :params   => params,
        :metadata => {
          :id       => job.job_id,
          :queue    => job.queue_name
        }
      ) do
        block.call
      end
    end
  end
end