Class: Delayed::Worker

Inherits:
Object
  • Object
show all
Defined in:
lib/delayed_overrides/worker.rb

Instance Method Summary collapse

Instance Method Details

#failed(job) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
18
19
# File 'lib/delayed_overrides/worker.rb', line 7

def failed(job)
  self.class.lifecycle.run_callbacks(:failure, self, job) do
    begin
      job.hook(:failure) 
    rescue => error
      say "Error when running failure callback: #{error}", 'error'
      say error.backtrace.join("\n"), 'error'
    ensure     
      self.class.destroy_failed_jobs ? job.destroy : job.fail!
      Delayed::Mailer.exception_notification(job).deliver
    end
  end
end