1
Resque
1.26.0(およびRedis-rb
3.3.1)を使用して簡単なジョブをエンキューしようとしています。 resque-web
がそれぞれのジョブを処理しているため、0の失敗を示しているため、ジョブはperform
の機能を処理していないようです。ジョブも即座に処理されます。Rails 5 - 待ち行列に入れられていないジョブを再処理しない
require 'resque/tasks'
task "resque:setup" => :environment
redis-server
は次のとおりです。
ジョブが
class TestJob < ApplicationJob
@queue = :tags_queue
Logger.new("log/resque_worker_QUEUE.log").fatal("thing")
def self.perform(url)
Logger.new("log/resque_worker_QUEUE.log").fatal("other thing")
logger.fatal("more errors please")
myDivideByZeroVar= 1/0
raise "error"
Logger.new("log/resque_worker_QUEUE.log").fatal("other thing")
logger.fatal("more errors please")
end
end
rakeタスクも設定されているような仕事自体が見え
Resque.enqueue(TestJob, url)
とコントローラのアクションからエンキューされていますランニング。
ワーカーはrake resque:work QUEUE=*
で始まります。冗長なロギングを使用しても何も役立ちません。
ログファイルには、最初の致命的なエラー文字列 "thing"しか表示されません。 perform
の中に他のエラーは記録されていません。
私はここで間違っていますか?
resque web:あなたは稼働している労働者はどれくらいありますか? 'Resque.enqueue(TestJob、url)'を実行するたびに処理数が増えますか? – XavM
実行中のワーカーは1人です。 Resque.enqueueが呼び出されるたびに処理番号が増加しますが、即座に処理されます。 –
performメソッドの最初の行にbyebugをインクルードしようとしましたか? – XavM