Sha256: acdb660a4e85ee70a32c94618e63ec525152047def6390341ea66a52b9b8132d

Contents?: true

Size: 813 Bytes

Versions: 19

Compression:

Stored size: 813 Bytes

Contents

# encoding: utf-8

module Rollbar
  class Sidekiq
    PARAM_BLACKLIST = %w[backtrace error_backtrace error_message error_class]

    def self.handle_exception(msg_or_context, e)
      params = msg_or_context.reject{ |k| PARAM_BLACKLIST.include?(k) }
      scope = { :request => { :params => params } }

      Rollbar.scope(scope).error(e, :use_exception_level_filters => true)
    end

    def call(worker, msg, queue)
      yield
    rescue Exception => e
      Rollbar::Sidekiq.handle_exception(msg, e)
      raise
    end
  end
end

Sidekiq.configure_server do |config|
  if Sidekiq::VERSION < '3'
    config.server_middleware do |chain|
      chain.add Rollbar::Sidekiq
    end
  else
    config.error_handlers << Proc.new do |e, context|
      Rollbar::Sidekiq.handle_exception(context, e)
    end
  end
end

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
rollbar-2.5.2 lib/rollbar/sidekiq.rb
rollbar-2.5.1 lib/rollbar/sidekiq.rb
rollbar-2.5.0 lib/rollbar/sidekiq.rb
rollbar-2.4.0 lib/rollbar/sidekiq.rb
rollbar-2.3.0 lib/rollbar/sidekiq.rb
rollbar-2.2.1 lib/rollbar/sidekiq.rb
rollbar-2.2.0 lib/rollbar/sidekiq.rb
rollbar-2.1.2 lib/rollbar/sidekiq.rb
rollbar-2.1.1 lib/rollbar/sidekiq.rb
rollbar-2.1.0 lib/rollbar/sidekiq.rb
rollbar-2.0.2 lib/rollbar/sidekiq.rb
rollbar-2.0.1 lib/rollbar/sidekiq.rb
rollbar-2.0.0 lib/rollbar/sidekiq.rb
rollbar-1.5.3 lib/rollbar/sidekiq.rb
rollbar-1.5.2 lib/rollbar/sidekiq.rb
rollbar-1.5.1 lib/rollbar/sidekiq.rb
rollbar-1.5.0 lib/rollbar/sidekiq.rb
rollbar-1.4.5 lib/rollbar/sidekiq.rb
rollbar-1.4.4 lib/rollbar/sidekiq.rb