我正在使用sidekiq gem来处理后台作业和sidekiq-cron作业以在给定的时间段安排作业。
#config/schedule.yml
my_first_job:
cron: "*/5 * * * *"
class: "HardWorker"
queue: hard_worker
我想在schedule.yml中将日期(动态)作为参数传递给工作人员。
正在加载config/schedule.yml
#initializers/sidekiq.rb
schedule_file = "config/schedule.yml"
if File.exist?(schedule_file) && Sidekiq.server?
Sidekiq::Cron::Job.load_from_hash YAML.load_file(schedule_file)
end
job = Sidekiq::Cron::Job.find("my_first_job")
job.args = [Date.yesterday, Date.today]
当我找到Sidekiq::Cron::Job.find("my_first_job")
时,我看到作业已用日期参数更新。但是重新启动Sidekiq之后,我看不到http://localhost:3000/sidekiq/cron
的日期。
加载后如何在Sidekiq cron作业中更新args? Sidekiq::Cron::Job.load_from_hash YAML.load_file(schedule_file)