diff --git a/lib/bugsnag/delayed_job.rb b/lib/bugsnag/delayed_job.rb index 2f842acc1..1bdb48166 100644 --- a/lib/bugsnag/delayed_job.rb +++ b/lib/bugsnag/delayed_job.rb @@ -33,7 +33,13 @@ def error(job, error) p[:id] = payload.id if payload.respond_to?(:id) p[:display_name] = payload.display_name if payload.respond_to?(:display_name) p[:method_name] = payload.method_name if payload.respond_to?(:method_name) - p[:args] = payload.args if payload.respond_to?(:args) + + if payload.respond_to?(:args) + p[:args] = payload.args + elsif payload.respond_to?(:to_h) + p[:args] = payload.to_h + end + if payload.is_a?(::Delayed::PerformableMethod) && (object = payload.object) p[:object] = { :class => object.class.name,