Я пытаюсь сделать простой запуск с использованием Resque
1.26.0 (и Redis-rb
3.3.1). Работа, похоже, не обрабатывает функцию perform
, потому что resque-web
обрабатывает каждое задание и показывает 0 сбоев. Работы также обрабатываются мгновенно.Rails 5 - Resque не обрабатывается заданная задача
Заданий ставятся в очереди от действия контроллера с
Resque.enqueue(TestJob, url)
этой работой сам по себе выглядит как
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
Задача рек также установить:
require 'resque/tasks'
task "resque:setup" => :environment
redis-server
является Бег.
Рабочий начинается с rake resque:work QUEUE=*
. Использование verbose logging не показывает ничего полезного.
В файле журнала отображается только первая фатальная строка ошибки «вещь». Ни одна из других ошибок не регистрируется, которые находятся внутри perform
.
Что я здесь делаю неправильно?
В сети resque: сколько у вас работает рабочих? Увеличивает ли номер обработки каждый раз при запуске 'Resque.enqueue (TestJob, url)'? – XavM
Работает один рабочий. Номер обработки увеличивается каждый раз, когда вызывается Resque.enqueue, но обрабатывается мгновенно. –
Вы пытались включить beebug в первую строку своего метода выполнения? – XavM