From 70ca873955102fcdad49d4f3402ab7e787fad43c Mon Sep 17 00:00:00 2001 From: David Cramer Date: Wed, 3 Feb 2016 10:27:46 -0800 Subject: [PATCH 1/2] Handle nil last_error in delayed_job (fixes GH-453) --- lib/raven/integrations/delayed_job.rb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/raven/integrations/delayed_job.rb b/lib/raven/integrations/delayed_job.rb index 0e55212ff..fed34fcad 100644 --- a/lib/raven/integrations/delayed_job.rb +++ b/lib/raven/integrations/delayed_job.rb @@ -19,7 +19,6 @@ class Raven < ::Delayed::Plugin # handlers are YAML objects in strings, we definitely can't # report all of that or the event will get truncated randomly :handler => job.handler[0...100], - :last_error => job.last_error[0...100], :run_at => job.run_at, :locked_at => job.locked_at, :locked_by => job.locked_by, @@ -27,6 +26,9 @@ class Raven < ::Delayed::Plugin :created_at => job.created_at } } + # last_error can be nil + extra[:last_error] = job.last_error[0...100] if job.last_error + if job.respond_to?('payload_object') && job.payload_object.respond_to?('job_data') extra[:active_job] = job.payload_object.job_data end From b70fcd336bd5a3f2b77839ad0f20dfbde6ebfc61 Mon Sep 17 00:00:00 2001 From: David Cramer Date: Wed, 3 Feb 2016 11:59:53 -0800 Subject: [PATCH 2/2] Support optional handler in delayed_job --- lib/raven/integrations/delayed_job.rb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/raven/integrations/delayed_job.rb b/lib/raven/integrations/delayed_job.rb index fed34fcad..eef800100 100644 --- a/lib/raven/integrations/delayed_job.rb +++ b/lib/raven/integrations/delayed_job.rb @@ -16,9 +16,6 @@ class Raven < ::Delayed::Plugin :id => job.id, :priority => job.priority, :attempts => job.attempts, - # handlers are YAML objects in strings, we definitely can't - # report all of that or the event will get truncated randomly - :handler => job.handler[0...100], :run_at => job.run_at, :locked_at => job.locked_at, :locked_by => job.locked_by, @@ -28,6 +25,9 @@ class Raven < ::Delayed::Plugin } # last_error can be nil extra[:last_error] = job.last_error[0...100] if job.last_error + # handlers are YAML objects in strings, we definitely can't + # report all of that or the event will get truncated randomly + extra[:handler] = job.handler[0...100] if job.handler if job.respond_to?('payload_object') && job.payload_object.respond_to?('job_data') extra[:active_job] = job.payload_object.job_data