Module: Sidekiq::QueueStats::WebExtension

Defined in:
lib/sidekiq/queue_stats/web_extension.rb

Class Method Summary collapse

Class Method Details

.registered(app) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/sidekiq/queue_stats/web_extension.rb', line 5

def self.registered(app)
  view_path = File.join(File.expand_path("..", __FILE__), "views")

  app.get "/queue_stats" do
    @qs = Sidekiq::Queue.all.map(&:name)
    @wrks = {}

    if params[:queue]
      @q = params[:queue] ? Sidekiq::Queue.new(params[:queue]) : Sidekiq::Queue.new
      @wrks[@q.name] = Hash.new(0)
      @q.each do |job|
        @wrks[@q.name][job.klass] += 1
      end
    else
      Sidekiq::Queue.all.each do |q|
        @wrks[q.name] = Hash.new(0)
        q.each do |job|
          @wrks[q.name][job.klass] += 1
        end
      end
    end

    render(:erb, File.read(File.join(view_path, "queue_stats.erb")))
  end
end