Class: Worker::Killswitch::Middleware::Server

Inherits:
Object
  • Object
show all
Defined in:
lib/worker/killswitch/middleware/server.rb

Instance Method Summary collapse

Instance Method Details

#call(worker, job, queue) ⇒ Object



6
7
8
9
10
11
12
13
# File 'lib/worker/killswitch/middleware/server.rb', line 6

def call(worker, job, queue)
  while ::Worker::Killswitch.enabled?
    Worker::Killswitch.logger.info("Worker #{worker.class.name} paused queue #{queue} before processing job #{job['jid']}")
    Worker::Killswitch.metrics_provider&.increment("workers_disabled")
    ::Worker::Killswitch.wait_for_resume
  end
  yield
end