Sha256: 7a8dd61221116d4f7468dec4f5ae0098143e649d64109aa61f3dba5bccd20274

Contents?: true

Size: 922 Bytes

Versions: 12

Compression:

Stored size: 922 Bytes

Contents

module Nadir
  class Sidekiq
    def self.notify(exception, context)
      if context[:job]['class'] == 'ActiveJob::QueueAdapters::SidekiqAdapter::JobWrapper'
        job_params = {
          class: context[:job]['args'].first['job_class'],
          args: context[:job]['args'].first['arguments'],
          queue: context[:job]['args'].first['queue_name'],
          job_id: context[:job]['args'].first['job_id'],
          retry_count: context[:job]['retry_count'],
          jid: context[:job]['jid'],
        }
        location = job_params[:class]
      else
        job_params = context[:job].slice('class', 'args', 'retry_count', 'queue', 'jid')
        location = job_params['class']
      end

      Nadir.notify exception, job: job_params, location: location
    end
  end
end

::Sidekiq.configure_server do |config|
  config.error_handlers << Proc.new { |ex,ctx_hash| Nadir::Sidekiq.notify(ex, ctx_hash) }
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
nadir-1.2.1 lib/nadir/plugins/sidekiq.rb
nadir-1.2.0 lib/nadir/plugins/sidekiq.rb
nadir-1.1.10 lib/nadir/plugins/sidekiq.rb
nadir-1.1.9 lib/nadir/plugins/sidekiq.rb
nadir-1.1.8 lib/nadir/plugins/sidekiq.rb
nadir-1.1.7 lib/nadir/plugins/sidekiq.rb
nadir-1.1.6 lib/nadir/plugins/sidekiq.rb
nadir-1.1.5 lib/nadir/plugins/sidekiq.rb
nadir-1.1.4 lib/nadir/plugins/sidekiq.rb
nadir-1.1.3 lib/nadir/plugins/sidekiq.rb
nadir-1.1.2 lib/nadir/plugins/sidekiq.rb
nadir-1.1.1 lib/nadir/plugins/sidekiq.rb