まだ作業が必要な問題があるため、サーバーでresque-webを実行できませんが、resqueキューで失敗したジョブを確認して再試行する必要があります。
失敗したジョブキューをピークしてエラーが何であるかを確認し、redis-cliコマンドラインを使用して再試行する方法についての経験はありますか?
ありがとう、
次のリンクで解決策を見つけました:
http://ariejan.net/2010/08/23/resque-how-to-requeue-failed-jobs
Railsコンソールでは、次のコマンドを使用して、失敗したジョブを確認して再試行できます。
1-失敗したジョブの数を取得します。
Resque::Failure.count
2-エラー例外クラスとバックトレースを確認します
Resque::Failure.all(0,20).each { |job|
puts "#{job["exception"]} #{job["backtrace"]}"
}
ジョブオブジェクトは、失敗したジョブに関する情報を含むハッシュです。あなたはより多くの情報をチェックするためにそれを調べるかもしれません。また、これには失敗した最初の20個のジョブのみがリストされることに注意してください。それらすべてをリストする方法がわからないため、リスト全体を取得するには値(0、20)を変更する必要があります。
3-失敗したすべてのジョブを再試行します。
(Resque::Failure.count-1).downto(0).each { |i| Resque::Failure.requeue(i) }
4-失敗したジョブの数をリセットします。
Resque::Failure.clear
すべてのジョブを再試行しても、カウンターはリセットされません。ゼロになるようにクリアする必要があります。