diff --git a/app/workers/scheduler/sidekiq_health_scheduler.rb b/app/workers/scheduler/sidekiq_health_scheduler.rb new file mode 100644 index 0000000000..657537b8f8 --- /dev/null +++ b/app/workers/scheduler/sidekiq_health_scheduler.rb @@ -0,0 +1,12 @@ +# frozen_string_literal: true + +class Scheduler::SidekiqHealthScheduler + include Sidekiq::Worker + + sidekiq_options retry: 0 + + def perform + url = ENV.fetch('SIDEKIQ_HEALTH_FETCH_URL', nil) + Request.new(:head, url).perform if url.present? + end +end diff --git a/config/sidekiq.yml b/config/sidekiq.yml index 2278329a56..fdd1d73e1b 100644 --- a/config/sidekiq.yml +++ b/config/sidekiq.yml @@ -58,3 +58,7 @@ interval: 1 minute class: Scheduler::SuspendedUserCleanupScheduler queue: scheduler + sidekiq_health_scheduler: + interval: 30 seconds + class: Scheduler::SidekiqHealthScheduler + queue: scheduler