sidekiq_queue_metrics 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 02ff424fdc7f21863eb3d6652d920eba006815a2b955279ed9790c4a8a0e0f80
4
- data.tar.gz: 43de8232e85cf8307ecb71f8707a3486b4fd301ade7a45a43d23bee9e3cccbe0
3
+ metadata.gz: daf0f1ea2f12028ed178c494e10dfd964b698694fe7130eaac119f3bfa3a6d67
4
+ data.tar.gz: e5c478e522f27ac57cccbdb96de47def08eeada6ed8fff075503bf7965e79014
5
5
  SHA512:
6
- metadata.gz: 3275a0ef634bea95ac4c1d22dc9761ad19f3153f95d00955b0fc46e3de10fa1b89d72b65a0bf773f25f84333c8b889d2f967839f4dd4fb0a8e935dca80bd6e2d
7
- data.tar.gz: ff1eb673e5c72739012d95ff5009f8e87be3d172edfad4662ad8ef108a2d8be02b51af291a15a08ae344942e967db66e0a34a319560a30ebe64d5e6375a3dac3
6
+ metadata.gz: 4dd1d9e899a40948311352572bdb055a868f16ccecf17351156b1bc1a8dbf13364f4f70c770871d86d199735310bfc52fbddd2ccd00bbbe052c48c8bc9c6991b
7
+ data.tar.gz: b0986216491cfd4cbaf3e2e5669bc23386550ee354418579301eeef178999c25427d2719e7d647fd9b1d551ea2a833e80bc0c891b3e8ea386abdf1d8d1c3677c
data/README.md CHANGED
@@ -1,6 +1,12 @@
1
1
  # sidekiq_queue_metrics
2
2
  Records stats of each sidekiq queue and exposes APIs to retrieve them
3
3
 
4
+ [![Open Source Love](https://badges.frapsoft.com/os/v1/open-source.svg?v=102)](https://opensource.org/licenses/MIT)
5
+ [![Gem Version](https://badge.fury.io/rb/sidekiq_queue_metrics.svg)](https://badge.fury.io/rb/sidekiq_queue_metrics)
6
+ ![Gem Downloads](http://ruby-gem-downloads-badge.herokuapp.com/sidekiq_queue_metrics?type=total)
7
+ [![Build Status](https://travis-ci.org/ajitsing/sidekiq_queue_metrics.svg?branch=master)](https://travis-ci.org/ajitsing/sidekiq_queue_metrics)
8
+ [![Twitter Follow](https://img.shields.io/twitter/follow/Ajit5ingh.svg?style=social)](https://twitter.com/Ajit5ingh)
9
+
4
10
  ## Installation
5
11
  Add this line to your application's Gemfile:
6
12
  ```ruby
@@ -17,6 +23,12 @@ end
17
23
  ```
18
24
 
19
25
  ## Usage
26
+ sidekiq_queue_metrics adds a new tab `Queue Metrics` in Sidekiq UI.
27
+
28
+ <img src="https://github.com/ajitsing/ScreenShots/blob/master/sidekiq_queue_metrics/sidekiq_queue_metrics.png"/>
29
+
30
+ You can also use the below apis to directly consume the queue metrics.
31
+
20
32
  Fetch stats of all queues:
21
33
  ```ruby
22
34
  Sidekiq::QueueMetrics.fetch
@@ -1,6 +1,12 @@
1
1
  require 'sidekiq'
2
2
  require 'sidekiq/api'
3
+ require "sidekiq/web"
3
4
  require 'eldritch'
4
5
 
5
6
  project_root = File.dirname(File.absolute_path(__FILE__))
6
7
  Dir.glob(project_root + '/sidekiq_queue_metrics/**/*.rb', &method(:require))
8
+
9
+ if defined?(Sidekiq::Web)
10
+ Sidekiq::Web.register Sidekiq::QueueMetrics::WebExtension
11
+ Sidekiq::Web.tabs['Queue Metrics'] = 'queue_metrics'
12
+ end
@@ -1,5 +1,5 @@
1
1
  module Sidekiq
2
2
  module QueueMetrics
3
- VERSION = '0.0.3'
3
+ VERSION = '0.0.4'
4
4
  end
5
5
  end
@@ -0,0 +1,22 @@
1
+ <header class="row">
2
+ <div class="col-sm-10">
3
+ <h3>Queue Metrics</h3>
4
+ </div>
5
+ </header>
6
+
7
+ <% @queue_metrics.each do |queue, metrics| %>
8
+ <table class="table table-striped table-bordered table-white">
9
+ <thead>
10
+ <tr>
11
+ <th><%= queue %></th>
12
+ <th style="width: 150px">Count</th>
13
+ </tr>
14
+ </thead>
15
+ <% metrics.each do |q, count| %>
16
+ <tr>
17
+ <td><%= q %></td>
18
+ <td><%= count %></td>
19
+ </tr>
20
+ <% end %>
21
+ </table>
22
+ <% end %>
@@ -0,0 +1,12 @@
1
+ module Sidekiq::QueueMetrics
2
+ module WebExtension
3
+ def self.registered(app)
4
+ view_path = File.join(File.expand_path("..", __FILE__), "views")
5
+
6
+ app.get "/queue_metrics" do
7
+ @queue_metrics = Sidekiq::QueueMetrics.fetch
8
+ render(:erb, File.read(File.join(view_path, "queue_metrics.erb")))
9
+ end
10
+ end
11
+ end
12
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sidekiq_queue_metrics
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ajit Singh
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-07-22 00:00:00.000000000 Z
11
+ date: 2018-07-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: sidekiq
@@ -87,6 +87,8 @@ files:
87
87
  - lib/sidekiq_queue_metrics/queue_metrics.rb
88
88
  - lib/sidekiq_queue_metrics/storage.rb
89
89
  - lib/sidekiq_queue_metrics/version.rb
90
+ - lib/sidekiq_queue_metrics/views/queue_metrics.erb
91
+ - lib/sidekiq_queue_metrics/web_extension.rb
90
92
  - sidekiq_queue_metrics.gemspec
91
93
  - spec/lib/sidekiq_queue_metrics/monitor/job_death_monitor_spec.rb
92
94
  - spec/lib/sidekiq_queue_metrics/monitor/job_success_monitor_spec.rb