在Rails中初始化后如何将args更新到Sidekiq cron作业

时间:2019-05-06 13:20:23

标签: ruby-on-rails cron sidekiq sidekiq-cron

我正在使用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)

0 个答案:

没有答案