Sha256: d9093c5a2fc28d24e6b35425e15fc51c00c8c2a71ffd389659c1d051a8101b55
Contents?: true
Size: 1.96 KB
Versions: 1
Compression:
Stored size: 1.96 KB
Contents
if defined?(Delayed) require 'delayed_job' module Delayed module Plugins class Raven < ::Delayed::Plugin callbacks do |lifecycle| lifecycle.around(:invoke_job) do |job, *args, &block| begin # Forward the call to the next callback in the callback chain block.call(job, *args) rescue Exception => exception # Log error to Sentry ::Raven.capture_exception(exception, logger => 'delayed_job', tags => { delayed_job_queue => job.queue }, extra => { delayed_job => { id => job.id, priority => job.priority, attempts => job.attempts, handler => job.handler, last_error => job.last_error, run_at => job.run_at, locked_at => job.locked_at, #failed_at => job.failed_at, locked_by => job.locked_by, queue => job.queue, created_at => job.created_at } }) # Make sure we propagate the failure! raise exception end end end end end end ## # Register DelayedJob Raven plugin # Delayed::Worker.plugins << Delayed::Plugins::Raven end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
sentry-raven-0.9.0 | lib/raven/integrations/delayed_job.rb |