sidekiq 7.0.3 → 7.1.2

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of sidekiq might be problematic. Click here for more details.

Files changed (45) hide show
  1. checksums.yaml +4 -4
  2. data/Changes.md +82 -9
  3. data/README.md +29 -22
  4. data/bin/sidekiqload +204 -109
  5. data/bin/sidekiqmon +3 -0
  6. data/lib/sidekiq/api.rb +33 -10
  7. data/lib/sidekiq/capsule.rb +1 -0
  8. data/lib/sidekiq/cli.rb +3 -2
  9. data/lib/sidekiq/client.rb +33 -20
  10. data/lib/sidekiq/component.rb +3 -1
  11. data/lib/sidekiq/config.rb +12 -4
  12. data/lib/sidekiq/embedded.rb +1 -1
  13. data/lib/sidekiq/fetch.rb +1 -1
  14. data/lib/sidekiq/job.rb +1 -5
  15. data/lib/sidekiq/job_retry.rb +8 -5
  16. data/lib/sidekiq/job_util.rb +49 -15
  17. data/lib/sidekiq/launcher.rb +3 -2
  18. data/lib/sidekiq/metrics/query.rb +1 -1
  19. data/lib/sidekiq/metrics/shared.rb +3 -3
  20. data/lib/sidekiq/metrics/tracking.rb +2 -0
  21. data/lib/sidekiq/middleware/chain.rb +12 -9
  22. data/lib/sidekiq/middleware/current_attributes.rb +55 -16
  23. data/lib/sidekiq/monitor.rb +1 -3
  24. data/lib/sidekiq/paginator.rb +1 -1
  25. data/lib/sidekiq/processor.rb +4 -1
  26. data/lib/sidekiq/rails.rb +10 -0
  27. data/lib/sidekiq/redis_client_adapter.rb +5 -24
  28. data/lib/sidekiq/scheduled.rb +1 -1
  29. data/lib/sidekiq/version.rb +1 -1
  30. data/lib/sidekiq/web/application.rb +14 -2
  31. data/lib/sidekiq/web/helpers.rb +2 -2
  32. data/lib/sidekiq/web.rb +1 -1
  33. data/sidekiq.gemspec +7 -15
  34. data/web/assets/javascripts/metrics.js +30 -2
  35. data/web/assets/stylesheets/application.css +1 -1
  36. data/web/locales/da.yml +11 -4
  37. data/web/locales/fr.yml +14 -0
  38. data/web/locales/gd.yml +99 -0
  39. data/web/locales/ja.yml +3 -1
  40. data/web/views/_footer.erb +2 -2
  41. data/web/views/_metrics_period_select.erb +12 -0
  42. data/web/views/busy.erb +3 -3
  43. data/web/views/metrics.erb +6 -4
  44. data/web/views/metrics_for_job.erb +11 -12
  45. metadata +14 -19
@@ -12,10 +12,10 @@
12
12
  <p id="serverUtcTime" class="navbar-text server-utc-time"><%= server_utc_time %></p>
13
13
  </li>
14
14
  <li>
15
- <p class="navbar-text"><a rel=help href="https://github.com/mperham/sidekiq/wiki">docs</a></p>
15
+ <p class="navbar-text"><a rel=help href="https://github.com/sidekiq/sidekiq/wiki">docs</a></p>
16
16
  </li>
17
17
  <li>
18
- <p class="navbar-text"><a rel=external href="https://github.com/mperham/sidekiq/tree/main/web/locales"><%= locale %></a></p>
18
+ <p class="navbar-text"><a rel=external href="https://github.com/sidekiq/sidekiq/tree/main/web/locales"><%= locale %></a></p>
19
19
  </li>
20
20
  </ul>
21
21
  </div>
@@ -0,0 +1,12 @@
1
+ <div>
2
+ <select class="form-control" onchange="window.location.href = '<%= path %>?period=' + event.target.value">
3
+ <% periods.each_key do |code| %>
4
+
5
+ <% if code == period %>
6
+ <option selected value="<%= code %>"><%= code %></option>
7
+ <% else %>
8
+ <option value="<%= code %>"><%= code %></option>
9
+ <% end %>
10
+ <% end %>
11
+ </select>
12
+ </div>
data/web/views/busy.erb CHANGED
@@ -33,8 +33,8 @@
33
33
  <form method="POST" class="warning-messages">
34
34
  <%= csrf_tag %>
35
35
  <div class="btn-group pull-right flip">
36
- <button class="btn btn-warn" type="submit" name="quiet" value="1" data-confirm="<%= t('AreYouSure') %>"><%= t('QuietAll') %></button>
37
- <button class="btn btn-danger" type="submit" name="stop" value="1" data-confirm="<%= t('AreYouSure') %>"><%= t('StopAll') %></button>
36
+ <input class="btn btn-warn" type="submit" name="quiet" value="<%= t('QuietAll') %>" data-confirm="<%= t('AreYouSure') %>"/>
37
+ <input class="btn btn-danger" type="submit" name="stop" value="<%= t('StopAll') %>" data-confirm="<%= t('AreYouSure') %>"/>
38
38
  </div>
39
39
  </form>
40
40
  </div>
@@ -45,7 +45,7 @@
45
45
  <thead>
46
46
  <th><%= t('Name') %></th>
47
47
  <th><%= t('Started') %></th>
48
- <th class="col-sm-1"><%= t('RSS') %><a target="blank" href="https://github.com/mperham/sidekiq/wiki/Memory#rss"><span class="info-circle" title="Click to learn more about RSS">?</span></a></th>
48
+ <th class="col-sm-1"><%= t('RSS') %><a target="blank" href="https://github.com/sidekiq/sidekiq/wiki/Memory#rss"><span class="info-circle" title="Click to learn more about RSS">?</span></a></th>
49
49
  <th class="col-sm-1"><%= t('Threads') %></th>
50
50
  <th class="col-sm-1"><%= t('Busy') %></th>
51
51
  <th>&nbsp;</th>
@@ -4,11 +4,13 @@
4
4
  <script type="text/javascript" src="<%= root_path %>javascripts/metrics.js"></script>
5
5
 
6
6
  <div class="header-container">
7
- <h1><%= t('Metrics') %></h1>
7
+ <div class="page-title-container">
8
+ <h1><%= t('Metrics') %></h1>
8
9
 
9
- <div>
10
- <a target="blank" href="https://github.com/mperham/sidekiq/wiki/Metrics"><span class="info-circle" title="Click to learn more about metrics">?</span></a>
10
+ <a target="blank" href="https://github.com/sidekiq/sidekiq/wiki/Metrics"><span class="info-circle" title="Click to learn more about metrics">?</span></a>
11
11
  </div>
12
+
13
+ <%= erb :_metrics_period_select, locals: { periods: @periods, period: @period, path: "#{root_path}metrics" } %>
12
14
  </div>
13
15
 
14
16
  <%
@@ -60,7 +62,7 @@
60
62
  value="<%= kls %>"
61
63
  <%= visible_kls.include?(kls) ? 'checked' : '' %>
62
64
  />
63
- <code><a href="<%= root_path %>metrics/<%= kls %>"><%= kls %></a></code>
65
+ <code><a href="<%= root_path %>metrics/<%= kls %>?period=<%= @period %>"><%= kls %></a></code>
64
66
  </div>
65
67
  <script>jobMetricsChart.registerSwatch("<%= id %>")</script>
66
68
  </td>
@@ -5,24 +5,23 @@
5
5
 
6
6
  <%
7
7
  job_result = @query_result.job_results[@name]
8
- hist_totals = job_result.hist.values.first.zip(*job_result.hist.values[1..-1]).map(&:sum)
9
- bucket_labels =Sidekiq::Metrics::Histogram::LABELS
10
- bucket_intervals =Sidekiq::Metrics::Histogram::BUCKET_INTERVALS.reverse
11
-
12
- # Replace INFINITY since it can't be represented as JSON
13
- bucket_intervals[0] = bucket_intervals[1] * 2
8
+ hist_totals = job_result.hist.values.first.zip(*job_result.hist.values[1..-1]).map(&:sum).reverse
9
+ bucket_labels = Sidekiq::Metrics::Histogram::LABELS
10
+ bucket_intervals = Sidekiq::Metrics::Histogram::BUCKET_INTERVALS
14
11
  %>
15
12
 
16
13
  <% if job_result.totals["s"] > 0 %>
17
14
  <div class="header-container">
18
- <h1>
19
- <a href="<%= root_path %>metrics"><%= t('Metrics') %></a> /
20
- <%= h @name %>
21
- </h1>
15
+ <div class="page-title-container">
16
+ <h1>
17
+ <a href="<%= root_path %>metrics?period=<%= @period %>"><%= t('Metrics') %></a> /
18
+ <%= h @name %>
19
+ </h1>
22
20
 
23
- <div>
24
- <a target="blank" href="https://github.com/mperham/sidekiq/wiki/Metrics"><span class="info-circle" title="Click to learn more about metrics">?</span></a>
21
+ <a target="blank" href="https://github.com/sidekiq/sidekiq/wiki/Metrics"><span class="info-circle" title="Click to learn more about metrics">?</span></a>
25
22
  </div>
23
+
24
+ <%= erb :_metrics_period_select, locals: { periods: @periods, period: @period, path: "#{root_path}metrics/#{@name}" } %>
26
25
  </div>
27
26
 
28
27
  <canvas id="hist-totals-chart"></canvas>
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sidekiq
3
3
  version: !ruby/object:Gem::Version
4
- version: 7.0.3
4
+ version: 7.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mike Perham
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-01-11 00:00:00.000000000 Z
11
+ date: 2023-06-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: redis-client
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 0.11.0
19
+ version: 0.14.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: 0.11.0
26
+ version: 0.14.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: connection_pool
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -68,7 +68,7 @@ dependencies:
68
68
  version: '2'
69
69
  description: Simple, efficient background processing for Ruby.
70
70
  email:
71
- - mperham@gmail.com
71
+ - info@contribsys.com
72
72
  executables:
73
73
  - sidekiq
74
74
  - sidekiqmon
@@ -156,6 +156,7 @@ files:
156
156
  - web/locales/es.yml
157
157
  - web/locales/fa.yml
158
158
  - web/locales/fr.yml
159
+ - web/locales/gd.yml
159
160
  - web/locales/he.yml
160
161
  - web/locales/hi.yml
161
162
  - web/locales/it.yml
@@ -177,6 +178,7 @@ files:
177
178
  - web/locales/zh-tw.yml
178
179
  - web/views/_footer.erb
179
180
  - web/views/_job_info.erb
181
+ - web/views/_metrics_period_select.erb
180
182
  - web/views/_nav.erb
181
183
  - web/views/_paging.erb
182
184
  - web/views/_poll_link.erb
@@ -200,18 +202,12 @@ licenses:
200
202
  - LGPL-3.0
201
203
  metadata:
202
204
  homepage_uri: https://sidekiq.org
203
- bug_tracker_uri: https://github.com/mperham/sidekiq/issues
204
- documentation_uri: https://github.com/mperham/sidekiq/wiki
205
- changelog_uri: https://github.com/mperham/sidekiq/blob/main/Changes.md
206
- source_code_uri: https://github.com/mperham/sidekiq
207
- post_install_message: |2+
208
-
209
- Welcome to Sidekiq 7.0!
210
-
211
- 1. Use `gem 'sidekiq', '<7'` in your Gemfile if you don't want this new version.
212
- 2. Read the release notes at https://github.com/mperham/sidekiq/blob/main/docs/7.0-Upgrade.md
213
- 3. If you have problems, search for open/closed issues at https://github.com/mperham/sidekiq/issues/
214
-
205
+ bug_tracker_uri: https://github.com/sidekiq/sidekiq/issues
206
+ documentation_uri: https://github.com/sidekiq/sidekiq/wiki
207
+ changelog_uri: https://github.com/sidekiq/sidekiq/blob/main/Changes.md
208
+ source_code_uri: https://github.com/sidekiq/sidekiq
209
+ rubygems_mfa_required: 'true'
210
+ post_install_message:
215
211
  rdoc_options: []
216
212
  require_paths:
217
213
  - lib
@@ -226,9 +222,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
226
222
  - !ruby/object:Gem::Version
227
223
  version: '0'
228
224
  requirements: []
229
- rubygems_version: 3.2.32
225
+ rubygems_version: 3.4.7
230
226
  signing_key:
231
227
  specification_version: 4
232
228
  summary: Simple, efficient background processing for Ruby
233
229
  test_files: []
234
- ...