vinted-resque-metrics 0.0.9 → 0.0.11

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
  SHA1:
3
- metadata.gz: 73195eb6742bfda14f028c14bd649ba39d655b6e
4
- data.tar.gz: 9d62fd17a960a456328cc8d314bbd06d8e6549c9
3
+ metadata.gz: f8f42e1e9a49a03fc261d95a4cd2accc527e3787
4
+ data.tar.gz: 1ded893cb6028293b4705ca763936b4ed5d93bb4
5
5
  SHA512:
6
- metadata.gz: 8316ad9a9120cda254d0a016eb1586f8169f87c8d65e82c60d0176e83b80fdacd4722df893411c50a3be454f5f072febb399ca9024dc3a165239fee36fca4505
7
- data.tar.gz: 7c265c7c692e6a45a645f6dc58ebce7a3e788864a6bbaaafbe7de3db1b66364268e68f2792d9396fedf609b7c760c9009af30f5bbd27883925ecd294f771e897
6
+ metadata.gz: 2398dc2a46f9a0512ba4986144016d37de009487b33aa8a88478fedde6baa2e22982b2364238ebd5790c987b7279c7686631617151851304124fe6511dc71138
7
+ data.tar.gz: da92809652719dd962419390ac1c9f4606d902de6b2cf7dc088360179623973f150c1665a3d70e3036479140ed3da4a216118252090c0e9dce4d7b1215d42a69
@@ -25,6 +25,13 @@ module Resque
25
25
  redis.get("_metrics_:#{metric}").to_i
26
26
  end
27
27
 
28
+ def register_job(job)
29
+ redis.sadd('_metrics_:known_jobs', job)
30
+ end
31
+
32
+ def known_jobs
33
+ redis.smembers('_metrics_:known_jobs')
34
+ end
28
35
  end
29
36
  end
30
37
  end
@@ -62,3 +62,24 @@
62
62
  </tr>
63
63
  </tbody>
64
64
  </table>
65
+
66
+ <h2>Individual job metrics</h2>
67
+
68
+ <table class="queues">
69
+ <tbody>
70
+ <tr>
71
+ <th>Job</th>
72
+ <th>Jobs completed</th>
73
+ <th>Jobs failed</th>
74
+ </tr>
75
+
76
+ <% Resque::Metrics.known_jobs.each do |job| %>
77
+ <tr>
78
+ <td class="queue"><%= job %></td>
79
+ <td class="size"><%= Resque::Metrics.total_job_count_by_job(job) %></td>
80
+ <td class="size"><%= Resque::Metrics.failed_job_count_by_job(job) %></td>
81
+ <td class="size"><%= metrics_formatted_ms(Resque::Metrics.avg_job_time_by_job(job)) %></td>
82
+ </tr>
83
+ <% end %>
84
+ </tbody>
85
+ </table>
@@ -143,6 +143,7 @@ module Resque
143
143
  increment_metric "enqueue_count"
144
144
  increment_metric "enqueue_count:job:#{job_class}"
145
145
  increment_metric "enqueue_count:queue:#{queue}"
146
+ run_first_backend(:register_job, job_class)
146
147
 
147
148
  size = Resque.encode(args).length
148
149
  multi do
@@ -175,13 +176,13 @@ module Resque
175
176
 
176
177
  def self.record_job_failure(job_class, e)
177
178
  queue = Resque.queue_from_class(job_class)
178
-
179
+
179
180
  multi do
180
181
  increment_metric "failed_job_count"
181
182
  increment_metric "failed_job_count:queue:#{queue}"
182
183
  increment_metric "failed_job_count:job:#{job_class}"
183
184
  end
184
-
185
+
185
186
  run_callback(:on_job_failure, job_class, queue)
186
187
  end
187
188
 
@@ -201,6 +202,10 @@ module Resque
201
202
  run_backends(:set_avg, metric, num, total)
202
203
  end
203
204
 
205
+ def self.known_jobs
206
+ run_first_backend(:known_jobs)
207
+ end
208
+
204
209
  def self.get_metric(metric)
205
210
  run_first_backend(:get_metric, metric)
206
211
  end
@@ -6,7 +6,7 @@
6
6
 
7
7
  Gem::Specification.new do |s|
8
8
  s.name = "vinted-resque-metrics"
9
- s.version = "0.0.9"
9
+ s.version = "0.0.11"
10
10
 
11
11
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
12
12
  s.require_paths = ["lib"]
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vinted-resque-metrics
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.9
4
+ version: 0.0.11
5
5
  platform: ruby
6
6
  authors:
7
7
  - Aaron Quint