すべての仕事に失敗したRUFUSを再スケジュールするにはどうすればよいですか。
-
13-11-2019 - |
質問
私は定期的に実行されるRUFUS「すべてのジョブ」を持っていますが、それはそれがタスクの実行に失敗することがあるかもしれません。
失敗時には、次のサイクルまで待つのではなく、再試行をすぐに再スケジュールしたいと思います。
class PollProducts
def initialize()
end
def call(job)
puts "Updating products"
begin
# Do something that might fail
raise if rand(3) == 1
rescue Exception => e
puts "Request failed - recheduling: #{e}"
# job.in("5s") <-- What can I do?
end
end
end
scheduler.every '6h', PollProducts.new, :first_in => '5s', :blocking => true
.
これは可能ですか?
解決
OKこれは私のために働いた:
job.scheduler.in '5s', self
. 所属していません StackOverflow