Sha256: 2c12df3ea2645000cc29ac457f1978814a30a39dbc5b9fcfa1ed877554fd84ff

Contents?: true

Size: 1.11 KB

Versions: 41

Compression:

Stored size: 1.11 KB

Contents

# Resque support

# How to use:
#   Resque::Failure::Multiple.classes = [Resque::Failure::Redis, Resque::Failure::Bugsnag]
#   Resque::Failure.backend = Resque::Failure::Multiple
#

begin
  require "bugsnag"
rescue LoadError
  raise "Can't find 'bugsnag' gem. Please add it to your Gemfile or install it."
end

require "resque/failure/base"

module Resque
  module Failure
    class Bugsnag < Base
      def self.configure(&block)
        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

        ::Resque::Failure.backend.classes << self
        ::Bugsnag.configure(&block)
      end

      def save
        ::Bugsnag.auto_notify(exception, bugsnag_job_data)
      end
    
      private
      def bugsnag_job_data
        {
          :context => "resque##{queue}",
          :meta_data => {
            :payload => payload
          }
        }
      end
    end
  end
end

Version data entries

41 entries across 41 versions & 1 rubygems

Version Path
bugsnag-1.5.3 lib/resque/failure/bugsnag.rb
bugsnag-1.5.2 lib/resque/failure/bugsnag.rb
bugsnag-1.5.1 lib/resque/failure/bugsnag.rb
bugsnag-1.5.0 lib/resque/failure/bugsnag.rb
bugsnag-1.4.2 lib/resque/failure/bugsnag.rb
bugsnag-1.4.1 lib/resque/failure/bugsnag.rb
bugsnag-1.4.0 lib/resque/failure/bugsnag.rb
bugsnag-1.3.8 lib/resque/failure/bugsnag.rb
bugsnag-1.3.7 lib/resque/failure/bugsnag.rb
bugsnag-1.3.6 lib/resque/failure/bugsnag.rb
bugsnag-1.3.5 lib/resque/failure/bugsnag.rb
bugsnag-1.3.4 lib/resque/failure/bugsnag.rb
bugsnag-1.3.3 lib/resque/failure/bugsnag.rb
bugsnag-1.3.2 lib/resque/failure/bugsnag.rb
bugsnag-1.3.1 lib/resque/failure/bugsnag.rb
bugsnag-1.3.0 lib/resque/failure/bugsnag.rb
bugsnag-1.2.18 lib/resque/failure/bugsnag.rb
bugsnag-1.2.17 lib/resque/failure/bugsnag.rb
bugsnag-1.2.16 lib/resque/failure/bugsnag.rb
bugsnag-1.2.15 lib/resque/failure/bugsnag.rb