1
我正在尝试使用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
rake任务还设置:
require 'resque/tasks'
task "resque:setup" => :environment
的redis-server
是运行。
工人以rake resque:work QUEUE=*
开始。使用详细日志记录不会显示任何有用的信息。
日志文件只显示第一个致命错误字符串“thing”。没有其他错误记录在perform
之内。
我在这里做错了什么?
在resque网站:你有多少员工?每次运行'Resque.enqueue(TestJob,url)'时,处理编号是否会增加? – XavM
有一名工人在跑步。每次调用Resque.enqueue时,处理编号都会增加,但会立即进行处理。 –
您是否尝试在执行方法的第一行中包含byebug? – XavM