我已经设置了Sidekiq来监控一些异步和计划任务。
当我排队工作时,我可以在网络监控工具上看到它。
这是一份工作的例子
class HardWorker
include Sidekiq::Worker
def perform(name, count)
raise "Error"
end
end
如果我然后运行HardWorker.perform_in(10.second,'bob', 5)
并且作业失败(它总是故意这样做),它似乎从Web GUI中消失了。 '失败','重试','已处理'等不上去。没有任何图表发生变化。
以下是日志吐出的内容:
2015-04-19T11:03:40.013Z 1438 TID-3fk WARN: uninitialized constant HardWorker
这是有意义的,因为我通过控制台而不是在我的项目中创建了类,但是不应该将sidekiq显示为失败的工作吗?
我也试过强制设置以下内容:
sidekiq_options :retry => false
sidekiq_options :failures => true
任何人都有任何建议如何让网络应用程序显示失败的工作?
答案 0 :(得分:0)
原来因为我在rails c中编写了类,后续线程不知道该类。这是有意的,但我没有想到这样一个事实:在课堂上它涉及Sidekiq意味着在我失败的情景中,它从未与Sidekiq说过失败。