Sha256: e87c8ff7887008d658607db0e55057b5ac15cf27ccdc81209da007380755ab3c

Contents?: true

Size: 829 Bytes

Versions: 12

Compression:

Stored size: 829 Bytes

Contents

require "resque"
require "resque/failure/multiple"
require "resque/failure/redis"
require "resque/failure/multiple"

module Lanes
    class Job
        class FailureLogger < ::Resque::Failure::Base

            def self.configure
                Resque::Failure::Multiple.configure do |multi|
                    # Always stores failure in Redis and writes to log
                    multi.classes = Resque::Failure::Redis, self
                end
            end

            def save
                Lanes.logger.error detailed
            end

            def detailed
                <<-EOF
#{worker} failed processing #{queue}:
Payload:
#{payload.inspect.split("\n").map { |l| "  " + l }.join("\n")}
Exception:
#{exception}
#{exception.backtrace.map { |l| "  " + l }.join("\n")}
EOF
            end
        end
    end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
lanes-0.8.3 lib/lanes/job/failure_logger.rb
lanes-0.8.2 lib/lanes/job/failure_logger.rb
lanes-0.8.1 lib/lanes/job/failure_logger.rb
lanes-0.8.0 lib/lanes/job/failure_logger.rb
lanes-0.7.0 lib/lanes/job/failure_logger.rb
lanes-0.6.1 lib/lanes/job/failure_logger.rb
lanes-0.6.0 lib/lanes/job/failure_logger.rb
lanes-0.5.6 lib/lanes/job/failure_logger.rb
lanes-0.5.5 lib/lanes/job/failure_logger.rb
lanes-0.5.0 lib/lanes/job/failure_logger.rb
lanes-0.4.0 lib/lanes/job/failure_logger.rb
lanes-0.3.0 lib/lanes/job/failure_logger.rb