Sha256: 0eb3e6c74410a32783486cef466a67f917c5d6a2d037b341e29c122be2704a01
Contents?: true
Size: 1.1 KB
Versions: 11
Compression:
Stored size: 1.1 KB
Contents
require "resque" require "resque/failure/multiple" module Bugsnag class Resque < ::Resque::Failure::Base def self.configure(&block) add_failure_backend Bugsnag.configure(&block) end def self.add_failure_backend return if ::Resque::Failure.backend == self # Ensure resque is using a "Multiple" failure backend unless ::Resque::Failure.backend < ::Resque::Failure::Multiple original_backend = ::Resque::Failure.backend ::Resque::Failure.backend = ::Resque::Failure::Multiple ::Resque::Failure.backend.classes ||= [] ::Resque::Failure.backend.classes << original_backend end # Add Bugsnag failure backend unless ::Resque::Failure.backend.classes.include?(self) ::Resque::Failure.backend.classes << self end end def save Bugsnag.auto_notify(exception, {:context => "resque##{queue}", :payload => payload, :delivery_method => :synchronous}) end end end # For backwards compatibility Resque::Failure::Bugsnag = Bugsnag::Resque # Auto-load the failure backend Bugsnag::Resque.add_failure_backend
Version data entries
11 entries across 11 versions & 1 rubygems