如何解释heroku上的delayed_job错误?

时间:2010-09-21 04:47:33

标签: ruby-on-rails delayed-job

我正在尝试在heroku上运行delayed_job,但它似乎没有工作。所以我进入了heroku控制台,看看下面会发生什么:

Delayed::Job.find(:last)

这是我回来的:

=> #<Delayed::Job id: 241, priority: 0, attempts: 22, handler: "--- !ruby/struct
:SomeMailJob \ncontact: !ruby/object...", last_error: "undefined method `subject
' for #<YAML::Object:0x2ab...", run_at: "2010-09-20 05:26:52", locked_at: nil, f
ailed_at: nil, locked_by: nil, created_at: "2010-09-10 03:31:05", updated_at: "2
010-09-17 23:25:26">

我不知道该如何处理...我不知道这个YAML对象是什么或为什么它未定义....我怎样才能开始更好地钻取?

1 个答案:

答案 0 :(得分:4)

查看perform中的SomeMailJob方法。这会给你更多线索。您可能还需要打印last_error以获得完整的堆栈跟踪。 puts Delayed::Job.find(:last).last_error将为您完成。

您还可以加载处理程序对象:

handler = YAML.load(Delayed::Job.find(:last)).handler

获得对象后,您可以按照自己的方式使用它。