Class: BrainzLab::Rails::SidekiqErrorHandler

Inherits:
Object
  • Object
show all
Defined in:
lib/brainzlab/rails/railtie.rb

Overview

Sidekiq error handler - Sidekiq 7.x+ requires 3 arguments

Instance Method Summary collapse

Instance Method Details

#call(exception, context, _config = nil) ⇒ Object



600
601
602
603
604
605
606
607
608
609
610
611
612
# File 'lib/brainzlab/rails/railtie.rb', line 600

def call(exception, context, _config = nil)
  BrainzLab::Reflex.capture(exception,
                            tags: { type: 'sidekiq' },
                            extra: {
                              job_class: context[:job]['class'],
                              job_id: context[:job]['jid'],
                              queue: context[:job]['queue'],
                              args: context[:job]['args']&.map(&:to_s)&.first(5),
                              retry_count: context[:job]['retry_count']
                            })
rescue StandardError => e
  BrainzLab.configuration.logger&.error("[BrainzLab] Sidekiq handler failed: #{e.message}")
end