Spaces:
Build error
Build error
File size: 696 Bytes
def1299 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
class HealthController < ApplicationController
def workers
Resque.workers.first.try(:prune_dead_workers) if params[:prune_dead_workers] == "true"
queues = Hash.new { |h, k| h[k] = [] }
Resque.workers.each do |worker|
worker.queues.each do |queue|
queues[queue] << worker
end
end
json = []
Resque.queues.each do |queue|
workers = queues[queue]
json << {
queue: queue,
size: Resque.size(queue),
available: workers.count,
idle: workers.count { |w| w.idle? },
working: workers.count { |w| w.working? },
paused: workers.count { |w| w.paused? }
}
end
render json: json
end
end
|