如何在Sidekiq中以编程方式失败作业?
在system('some_command')
函数内调用perform()
始终会返回成功的作业。
我想根据这样的条件失败工作:
def perform(data)
output = system('some_command')
if output
# return this job as :success
else
# return this job as :fail
end
end
提前致谢
答案 0 :(得分:3)
我认为如果你只是提出异常,它将使sidekiq作业失败:
def perform(data)
output = system('some_command')
raise StandardError, "my error is so sexy" unless output
end
当然,你应该用有意义的东西替换我写的哑错误信息。
注意:unless x
与if !x