sidekiq 7.0.1 → 7.0.8
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.
- checksums.yaml +4 -4
- data/Changes.md +69 -9
- data/README.md +29 -22
- data/bin/sidekiqload +186 -109
- data/bin/sidekiqmon +3 -0
- data/lib/sidekiq/api.rb +43 -4
- data/lib/sidekiq/capsule.rb +17 -0
- data/lib/sidekiq/cli.rb +3 -2
- data/lib/sidekiq/client.rb +1 -1
- data/lib/sidekiq/component.rb +2 -0
- data/lib/sidekiq/config.rb +2 -3
- data/lib/sidekiq/deploy.rb +3 -3
- data/lib/sidekiq/embedded.rb +1 -1
- data/lib/sidekiq/fetch.rb +3 -5
- data/lib/sidekiq/job.rb +2 -2
- data/lib/sidekiq/job_logger.rb +1 -1
- data/lib/sidekiq/job_retry.rb +5 -4
- data/lib/sidekiq/job_util.rb +48 -14
- data/lib/sidekiq/launcher.rb +13 -7
- data/lib/sidekiq/metrics/query.rb +1 -1
- data/lib/sidekiq/metrics/tracking.rb +2 -0
- data/lib/sidekiq/middleware/chain.rb +12 -9
- data/lib/sidekiq/middleware/current_attributes.rb +5 -7
- data/lib/sidekiq/monitor.rb +17 -4
- data/lib/sidekiq/paginator.rb +2 -2
- data/lib/sidekiq/processor.rb +4 -1
- data/lib/sidekiq/rails.rb +2 -1
- data/lib/sidekiq/redis_client_adapter.rb +3 -6
- data/lib/sidekiq/scheduled.rb +1 -1
- data/lib/sidekiq/version.rb +1 -1
- data/lib/sidekiq/web/application.rb +20 -5
- data/lib/sidekiq/web/helpers.rb +15 -7
- data/lib/sidekiq/web.rb +4 -0
- data/sidekiq.gemspec +11 -22
- data/web/assets/javascripts/application.js +18 -0
- data/web/assets/javascripts/metrics.js +30 -2
- data/web/assets/stylesheets/application-dark.css +4 -0
- data/web/assets/stylesheets/application.css +3 -3
- data/web/locales/da.yml +11 -4
- data/web/locales/ja.yml +3 -1
- data/web/views/_footer.erb +2 -2
- data/web/views/_job_info.erb +18 -2
- data/web/views/_metrics_period_select.erb +12 -0
- data/web/views/_paging.erb +2 -0
- data/web/views/busy.erb +37 -26
- data/web/views/metrics.erb +6 -4
- data/web/views/metrics_for_job.erb +9 -7
- data/web/views/morgue.erb +5 -9
- data/web/views/queue.erb +10 -14
- data/web/views/queues.erb +3 -1
- data/web/views/retries.erb +5 -9
- data/web/views/scheduled.erb +12 -13
- metadata +17 -26
@@ -15,14 +15,16 @@
|
|
15
15
|
|
16
16
|
<% if job_result.totals["s"] > 0 %>
|
17
17
|
<div class="header-container">
|
18
|
-
<
|
19
|
-
<
|
20
|
-
|
21
|
-
|
18
|
+
<div class="page-title-container">
|
19
|
+
<h1>
|
20
|
+
<a href="<%= root_path %>metrics?period=<%= @period %>"><%= t('Metrics') %></a> /
|
21
|
+
<%= h @name %>
|
22
|
+
</h1>
|
22
23
|
|
23
|
-
|
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>
|
24
|
+
<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
25
|
</div>
|
26
|
+
|
27
|
+
<%= erb :_metrics_period_select, locals: { periods: @periods, period: @period, path: "#{root_path}metrics/#{@name}" } %>
|
26
28
|
</div>
|
27
29
|
|
28
30
|
<canvas id="hist-totals-chart"></canvas>
|
@@ -61,7 +63,7 @@
|
|
61
63
|
<p><small>Data from <%= @query_result.starts_at %> to <%= @query_result.ends_at %></small></p>
|
62
64
|
<% else %>
|
63
65
|
<h1>
|
64
|
-
<a href="<%= root_path %>/metrics"><%= t(
|
66
|
+
<a href="<%= root_path %>/metrics"><%= t('Metrics') %></a> /
|
65
67
|
<%= h @name %>
|
66
68
|
</h1>
|
67
69
|
|
data/web/views/morgue.erb
CHANGED
@@ -1,14 +1,10 @@
|
|
1
|
-
<
|
2
|
-
<
|
3
|
-
<h3><%= t('DeadJobs') %></h3>
|
4
|
-
</div>
|
1
|
+
<div class="header-container">
|
2
|
+
<h1><%= t('DeadJobs') %></h1>
|
5
3
|
<% if @dead.size > 0 && @total_size > @count %>
|
6
|
-
|
7
|
-
<%= erb :_paging, locals: { url: "#{root_path}morgue" } %>
|
8
|
-
</div>
|
4
|
+
<%= erb :_paging, locals: { url: "#{root_path}morgue" } %>
|
9
5
|
<% end %>
|
10
6
|
<%= filtering('dead') %>
|
11
|
-
</
|
7
|
+
</div>
|
12
8
|
|
13
9
|
<% if @dead.size > 0 %>
|
14
10
|
<form action="<%= root_path %>morgue" method="post">
|
@@ -33,7 +29,7 @@
|
|
33
29
|
<tr>
|
34
30
|
<td class="table-checkbox">
|
35
31
|
<label>
|
36
|
-
<input type='checkbox' name='key[]' value='<%= job_params(entry.item, entry.score) %>' />
|
32
|
+
<input type='checkbox' name='key[]' value='<%= job_params(entry.item, entry.score) %>' class='shift_clickable' />
|
37
33
|
</label>
|
38
34
|
</td>
|
39
35
|
<td>
|
data/web/views/queue.erb
CHANGED
@@ -1,17 +1,13 @@
|
|
1
|
-
<
|
2
|
-
<
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
<div class="col-sm-4 pull-right flip">
|
12
|
-
<%= erb :_paging, locals: { url: "#{root_path}queues/#{CGI.escape(@name)}" } %>
|
13
|
-
</div>
|
14
|
-
</header>
|
1
|
+
<div class="header-container">
|
2
|
+
<h1><%= t('CurrentMessagesInQueue', :queue => h(@name)) %>
|
3
|
+
<% if @queue.paused? %>
|
4
|
+
<span class="label label-danger"><%= t('Paused') %></span>
|
5
|
+
<% end %>
|
6
|
+
<span class="badge badge-secondary"><%= number_with_delimiter(@total_size) %></span>
|
7
|
+
</h1>
|
8
|
+
<%= erb :_paging, locals: { url: "#{root_path}queues/#{CGI.escape(@name)}" } %>
|
9
|
+
</div>
|
10
|
+
|
15
11
|
<div class="table_container">
|
16
12
|
<table class="queue table table-hover table-bordered table-striped">
|
17
13
|
<thead>
|
data/web/views/queues.erb
CHANGED
data/web/views/retries.erb
CHANGED
@@ -1,14 +1,10 @@
|
|
1
|
-
<
|
2
|
-
<
|
3
|
-
<h3><%= t('Retries') %></h3>
|
4
|
-
</div>
|
1
|
+
<div class="header-container">
|
2
|
+
<h1><%= t('Retries') %></h1>
|
5
3
|
<% if @retries.size > 0 && @total_size > @count %>
|
6
|
-
|
7
|
-
<%= erb :_paging, locals: { url: "#{root_path}retries" } %>
|
8
|
-
</div>
|
4
|
+
<%= erb :_paging, locals: { url: "#{root_path}retries" } %>
|
9
5
|
<% end %>
|
10
6
|
<%= filtering('retries') %>
|
11
|
-
</
|
7
|
+
</div>
|
12
8
|
|
13
9
|
<% if @retries.size > 0 %>
|
14
10
|
<form action="<%= root_path %>retries" method="post">
|
@@ -34,7 +30,7 @@
|
|
34
30
|
<tr>
|
35
31
|
<td class="table-checkbox">
|
36
32
|
<label>
|
37
|
-
<input type='checkbox' name='key[]' value='<%= job_params(entry.item, entry.score) %>' />
|
33
|
+
<input type='checkbox' name='key[]' value='<%= job_params(entry.item, entry.score) %>' class='shift_clickable' />
|
38
34
|
</label>
|
39
35
|
</td>
|
40
36
|
<td>
|
data/web/views/scheduled.erb
CHANGED
@@ -1,25 +1,22 @@
|
|
1
|
-
<
|
2
|
-
<
|
3
|
-
<h3><%= t('ScheduledJobs') %></h3>
|
4
|
-
</div>
|
1
|
+
<div class="header-container">
|
2
|
+
<h1><%= t('ScheduledJobs') %></h1>
|
5
3
|
<% if @scheduled.size > 0 && @total_size > @count %>
|
6
|
-
|
7
|
-
<%= erb :_paging, locals: { url: "#{root_path}scheduled" } %>
|
8
|
-
</div>
|
4
|
+
<%= erb :_paging, locals: { url: "#{root_path}scheduled" } %>
|
9
5
|
<% end %>
|
10
6
|
<%= filtering('scheduled') %>
|
11
|
-
</
|
7
|
+
</div>
|
12
8
|
|
13
9
|
<% if @scheduled.size > 0 %>
|
14
|
-
|
15
10
|
<form action="<%= root_path %>scheduled" method="post">
|
16
11
|
<%= csrf_tag %>
|
17
12
|
<div class="table_container">
|
18
13
|
<table class="table table-striped table-bordered table-hover">
|
19
14
|
<thead>
|
20
15
|
<tr>
|
21
|
-
<th class="checkbox-column">
|
22
|
-
<
|
16
|
+
<th class="table-checkbox checkbox-column">
|
17
|
+
<label>
|
18
|
+
<input type="checkbox" class="check_all" />
|
19
|
+
</label>
|
23
20
|
</th>
|
24
21
|
<th><%= t('When') %></th>
|
25
22
|
<th><%= t('Queue') %></th>
|
@@ -29,8 +26,10 @@
|
|
29
26
|
</thead>
|
30
27
|
<% @scheduled.each do |entry| %>
|
31
28
|
<tr>
|
32
|
-
<td>
|
33
|
-
<
|
29
|
+
<td class="table-checkbox">
|
30
|
+
<label>
|
31
|
+
<input type='checkbox' name='key[]' value='<%= job_params(entry.item, entry.score) %>' class='shift_clickable' />
|
32
|
+
</label>
|
34
33
|
</td>
|
35
34
|
<td>
|
36
35
|
<a href="<%= root_path %>scheduled/<%= job_params(entry.item, entry.score) %>"><%= relative_time(entry.at) %></a>
|
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.
|
4
|
+
version: 7.0.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mike Perham
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-04-05 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.
|
19
|
+
version: 0.11.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.
|
26
|
+
version: 0.11.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
|
-
-
|
71
|
+
- info@contribsys.com
|
72
72
|
executables:
|
73
73
|
- sidekiq
|
74
74
|
- sidekiqmon
|
@@ -177,6 +177,7 @@ files:
|
|
177
177
|
- web/locales/zh-tw.yml
|
178
178
|
- web/views/_footer.erb
|
179
179
|
- web/views/_job_info.erb
|
180
|
+
- web/views/_metrics_period_select.erb
|
180
181
|
- web/views/_nav.erb
|
181
182
|
- web/views/_paging.erb
|
182
183
|
- web/views/_poll_link.erb
|
@@ -200,30 +201,19 @@ licenses:
|
|
200
201
|
- LGPL-3.0
|
201
202
|
metadata:
|
202
203
|
homepage_uri: https://sidekiq.org
|
203
|
-
bug_tracker_uri: https://github.com/
|
204
|
-
documentation_uri: https://github.com/
|
205
|
-
changelog_uri: https://github.com/
|
206
|
-
source_code_uri: https://github.com/
|
207
|
-
|
208
|
-
|
209
|
-
####################################################
|
210
|
-
|
211
|
-
|
212
|
-
█████████ █████ ██████████ ██████████ █████ ████ █████ ██████ ██████████ █████
|
213
|
-
███░░░░░███░░███ ░░███░░░░███ ░░███░░░░░█░░███ ███░ ░░███ ███░░░░███ ░███░░░░███ ███░░░███
|
214
|
-
░███ ░░░ ░███ ░███ ░░███ ░███ █ ░ ░███ ███ ░███ ███ ░░███ ░░░ ███ ███ ░░███
|
215
|
-
░░█████████ ░███ ░███ ░███ ░██████ ░███████ ░███ ░███ ░███ ███ ░███ ░███
|
216
|
-
░░░░░░░░███ ░███ ░███ ░███ ░███░░█ ░███░░███ ░███ ░███ ██░███ ███ ░███ ░███
|
217
|
-
███ ░███ ░███ ░███ ███ ░███ ░ █ ░███ ░░███ ░███ ░░███ ░░████ ███ ░░███ ███
|
218
|
-
░░█████████ █████ ██████████ ██████████ █████ ░░████ █████ ░░░██████░██ ███ ██ ░░░█████░
|
219
|
-
░░░░░░░░░ ░░░░░ ░░░░░░░░░░ ░░░░░░░░░░ ░░░░░ ░░░░ ░░░░░ ░░░░░░ ░░ ░░░ ░░ ░░░░░░
|
204
|
+
bug_tracker_uri: https://github.com/sidekiq/sidekiq/issues
|
205
|
+
documentation_uri: https://github.com/sidekiq/sidekiq/wiki
|
206
|
+
changelog_uri: https://github.com/sidekiq/sidekiq/blob/main/Changes.md
|
207
|
+
source_code_uri: https://github.com/sidekiq/sidekiq
|
208
|
+
rubygems_mfa_required: 'true'
|
209
|
+
post_install_message: |2+
|
220
210
|
|
211
|
+
Welcome to Sidekiq 7.0!
|
221
212
|
|
222
213
|
1. Use `gem 'sidekiq', '<7'` in your Gemfile if you don't want this new version.
|
223
|
-
2. Read the release notes at https://github.com/
|
224
|
-
3.
|
214
|
+
2. Read the release notes at https://github.com/sidekiq/sidekiq/blob/main/docs/7.0-Upgrade.md
|
215
|
+
3. If you have problems, search for open/closed issues at https://github.com/sidekiq/sidekiq/issues/
|
225
216
|
|
226
|
-
####################################################
|
227
217
|
rdoc_options: []
|
228
218
|
require_paths:
|
229
219
|
- lib
|
@@ -238,8 +228,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
238
228
|
- !ruby/object:Gem::Version
|
239
229
|
version: '0'
|
240
230
|
requirements: []
|
241
|
-
rubygems_version: 3.
|
231
|
+
rubygems_version: 3.4.7
|
242
232
|
signing_key:
|
243
233
|
specification_version: 4
|
244
234
|
summary: Simple, efficient background processing for Ruby
|
245
235
|
test_files: []
|
236
|
+
...
|