sidekiq-undertaker 1.6.0 → 1.7.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (34) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ruby-build.yml +6 -6
  3. data/.rubocop.yml +4 -4
  4. data/.rubocop_codeclimate.yml +1 -1
  5. data/.rubocop_todo.yml +13 -5
  6. data/CHANGELOG.md +10 -0
  7. data/Gemfile +19 -2
  8. data/lib/sidekiq/undertaker/dead_job.rb +1 -1
  9. data/lib/sidekiq/undertaker/version.rb +1 -1
  10. data/lib/sidekiq/undertaker/web_extension/api_helpers.rb +1 -1
  11. data/sidekiq-undertaker.gemspec +2 -23
  12. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_filter/when_filter_page_is_called/behaves_like_a_page/the_displayed_page_is_correct_for_sidekiqv7.approved.txt +9 -9
  13. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_filter/when_job_classbucket_page_is_called/behaves_like_a_page/the_displayed_page_is_correct_for_sidekiqv7.approved.txt +9 -9
  14. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_filter/when_job_classbucket_page_is_polled/behaves_like_a_page/the_displayed_page_is_correct_for_sidekiqv7.approved.txt +9 -9
  15. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_filter/when_job_classerror_classbucket_page_is_called/behaves_like_a_page/the_displayed_page_is_correct_for_sidekiqv7.approved.txt +9 -9
  16. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_filter/when_job_classerror_classbucket_page_is_polled/behaves_like_a_page/the_displayed_page_is_correct_for_sidekiqv7.approved.txt +9 -9
  17. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_morgue/when_job_classerrorbucket_is_called/with_all_failures_and_errors/behaves_like_a_page/the_displayed_page_is_correct_for_sidekiqv7.approved.txt +12 -10
  18. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_morgue/when_job_classerrorbucket_is_called/with_job_class_error_and_specific_error_message/behaves_like_a_page/the_displayed_page_is_correct_for_sidekiqv7.approved.txt +12 -10
  19. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_morgue/when_job_classerrorbucket_is_called/with_job_class_error_and_specific_error_message/with_pagination/behaves_like_a_page/the_displayed_page_is_correct_for_sidekiqv7.approved.txt +12 -10
  20. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_morgue/when_job_classerrorbucket_is_called/with_specific_job_class_and_a_specific_error/behaves_like_a_page/the_displayed_page_is_correct_for_sidekiqv7.approved.txt +12 -10
  21. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_morgue/when_job_classerrorbucket_is_called/with_specific_job_class_and_a_specific_error/with_pagination/behaves_like_a_page/the_displayed_page_is_correct_for_sidekiqv7.approved.txt +12 -10
  22. data/spec/sidekiq/undertaker/dead_jobs_spec.rb +2 -2
  23. data/spec/spec_helper.rb +1 -1
  24. metadata +8 -296
  25. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_filter/when_filter_page_is_called/behaves_like_a_page/the_displayed_page_is_correct_for_sidekiqv6.approved.txt +0 -256
  26. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_filter/when_job_classbucket_page_is_called/behaves_like_a_page/the_displayed_page_is_correct_for_sidekiqv6.approved.txt +0 -241
  27. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_filter/when_job_classbucket_page_is_polled/behaves_like_a_page/the_displayed_page_is_correct_for_sidekiqv6.approved.txt +0 -241
  28. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_filter/when_job_classerror_classbucket_page_is_called/behaves_like_a_page/the_displayed_page_is_correct_for_sidekiqv6.approved.txt +0 -231
  29. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_filter/when_job_classerror_classbucket_page_is_polled/behaves_like_a_page/the_displayed_page_is_correct_for_sidekiqv6.approved.txt +0 -231
  30. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_morgue/when_job_classerrorbucket_is_called/with_all_failures_and_errors/behaves_like_a_page/the_displayed_page_is_correct_for_sidekiqv6.approved.txt +0 -326
  31. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_morgue/when_job_classerrorbucket_is_called/with_job_class_error_and_specific_error_message/behaves_like_a_page/the_displayed_page_is_correct_for_sidekiqv6.approved.txt +0 -284
  32. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_morgue/when_job_classerrorbucket_is_called/with_job_class_error_and_specific_error_message/with_pagination/behaves_like_a_page/the_displayed_page_is_correct_for_sidekiqv6.approved.txt +0 -1310
  33. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_morgue/when_job_classerrorbucket_is_called/with_specific_job_class_and_a_specific_error/behaves_like_a_page/the_displayed_page_is_correct_for_sidekiqv6.approved.txt +0 -284
  34. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_morgue/when_job_classerrorbucket_is_called/with_specific_job_class_and_a_specific_error/with_pagination/behaves_like_a_page/the_displayed_page_is_correct_for_sidekiqv6.approved.txt +0 -1310
@@ -1,326 +0,0 @@
1
- <!doctype html>
2
- <html dir="ltr">
3
- <head>
4
- <title>[TEST] Sidekiq</title>
5
- <meta charset="utf-8" />
6
- <meta name="viewport" content="width=device-width,initial-scale=1.0" />
7
-
8
- <link href="/sidekiq/stylesheets/bootstrap.css" media="screen" rel="stylesheet" type="text/css" />
9
-
10
-
11
- <link href="/sidekiq/stylesheets/application.css" media="screen" rel="stylesheet" type="text/css" />
12
- <link href="/sidekiq/stylesheets/application-dark.css" media="screen and (prefers-color-scheme: dark)" rel="stylesheet" type="text/css" />
13
-
14
-
15
- <link rel="apple-touch-icon" href="/sidekiq/images/apple-touch-icon.png">
16
- <link rel="shortcut icon" type="image/ico" href="/sidekiq/images/favicon.ico" />
17
- <script type="text/javascript" src="/sidekiq/javascripts/application.js"></script>
18
- <meta name="google" content="notranslate" />
19
-
20
- </head>
21
- <body class="admin" data-locale="en">
22
- <div class="navbar navbar-default navbar-fixed-top">
23
- <div class="container-fluid">
24
- <div class="navbar-header" data-navbar="static">
25
- <button type="button" class="navbar-toggle collapsed" data-toggle="navbar-menu" data-target="#navbar-menu">
26
- <span class="icon-bar"></span>
27
- <span class="icon-bar"></span>
28
- <span class="icon-bar"></span>
29
- </button>
30
- <div class="navbar-toggle collapsed navbar-livereload">
31
-
32
- <a class="live-poll-start live-poll btn btn-primary">Live Poll</a>
33
- <a class="live-poll-stop live-poll btn btn-primary active">Stop Polling</a>
34
-
35
-
36
-
37
- </div>
38
- <a class="navbar-brand" href="/sidekiq/">
39
- Sidekiq
40
- <span class="status">
41
- <i class="status-sprite status-idle"></i>
42
- idle
43
- </span>
44
-
45
- </a>
46
- </div>
47
-
48
- <div class="collapse navbar-collapse" id="navbar-menu">
49
- <ul class="nav navbar-nav" data-navbar="static">
50
-
51
-
52
- <li class="">
53
- <a href="/sidekiq/">Dashboard</a>
54
- </li>
55
-
56
-
57
-
58
- <li class="">
59
- <a href="/sidekiq/busy">Busy</a>
60
- </li>
61
-
62
-
63
-
64
- <li class="">
65
- <a href="/sidekiq/queues">Queues</a>
66
- </li>
67
-
68
-
69
-
70
- <li class="">
71
- <a href="/sidekiq/retries">Retries</a>
72
- </li>
73
-
74
-
75
-
76
- <li class="">
77
- <a href="/sidekiq/scheduled">Scheduled</a>
78
- </li>
79
-
80
-
81
-
82
- <li class="">
83
- <a href="/sidekiq/morgue">Dead</a>
84
- </li>
85
-
86
-
87
-
88
-
89
- <li class="" data-navbar="custom-tab">
90
- <a href="/sidekiq/undertaker/filter">Undertaker</a>
91
- </li>
92
-
93
-
94
- <li class="navbar-livereload">
95
- <div class="poll-wrapper">
96
-
97
- <a class="live-poll-start live-poll btn btn-primary">Live Poll</a>
98
- <a class="live-poll-stop live-poll btn btn-primary active">Stop Polling</a>
99
-
100
-
101
-
102
- </div>
103
- </li>
104
- </ul>
105
- </div>
106
- </div>
107
- </div>
108
-
109
- <div id="page">
110
- <div class="container">
111
- <div class="row">
112
- <div class="col-sm-12 summary_bar">
113
- <ul class="list-unstyled summary row">
114
- <li class="processed col-sm-1">
115
- <span id="txtProcessed" class="count">0</span>
116
- <span class="desc">Processed</span>
117
- </li>
118
- <li class="failed col-sm-1">
119
- <span id="txtFailed" class="count">0</span>
120
- <span class="desc">Failed</span>
121
- </li>
122
- <li class="busy col-sm-1">
123
- <a href="/sidekiq/busy">
124
- <span id="txtBusy" class="count">0</span>
125
- <span class="desc">Busy</span>
126
- </a>
127
- </li>
128
- <li class="enqueued col-sm-1">
129
- <a href="/sidekiq/queues">
130
- <span id="txtEnqueued" class="count">0</span>
131
- <span class="desc">Enqueued</span>
132
- </a>
133
- </li>
134
- <li class="retries col-sm-1">
135
- <a href="/sidekiq/retries">
136
- <span id="txtRetries" class="count">0</span>
137
- <span class="desc">Retries</span>
138
- </a>
139
- </li>
140
- <li class="scheduled col-sm-1">
141
- <a href="/sidekiq/scheduled">
142
- <span id="txtScheduled" class="count">0</span>
143
- <span class="desc">Scheduled</span>
144
- </a>
145
- </li>
146
- <li class="dead col-sm-1">
147
- <a href="/sidekiq/morgue">
148
- <span id="txtDead" class="count">4</span>
149
- <span class="desc">Dead</span>
150
- </a>
151
- </li>
152
- </ul>
153
-
154
- </div>
155
-
156
- <div class="col-sm-12">
157
- <header class="row head">
158
- <div class="col-sm-12">
159
- <h3>
160
- <b>4</b> dead jobs
161
-
162
-
163
-
164
- in <b>total_dead</b> bucket
165
- </h3>
166
- </div>
167
- <div class="col-sm-12">
168
- <div class="col-sm-4">
169
-
170
-
171
- </div>
172
- </div>
173
- </header>
174
-
175
-
176
- <form action="/sidekiq/undertaker/morgue" method="post">
177
- <input type='hidden' name='authenticity_token' value='stubbed-csrf-token'/>
178
- <table class="table table-striped table-bordered table-white">
179
- <thead>
180
- <tr>
181
- <th width="20px" class="table-checkbox">
182
- <label>
183
- <input type="checkbox" class="check_all" />
184
- </label>
185
- </th>
186
- <th width="25%">Last Retry</th>
187
- <th>Queue</th>
188
- <th>Job</th>
189
- <th>Arguments</th>
190
- <th>Error</th>
191
- </tr>
192
- </thead>
193
-
194
- <tr>
195
- <td class="table-checkbox">
196
- <label>
197
- <input type='checkbox' name='key[]' value='1544993820.0-bfa4a272cdcac8bfac7b9f1a' />
198
- </label>
199
- </td>
200
- <td>
201
- <a href="/sidekiq/morgue/1544993820.0-bfa4a272cdcac8bfac7b9f1a"><time class="ltr" dir="ltr" title="2018-12-16T20:57:00Z" datetime="2018-12-16T20:57:00Z">2018-12-16 20:57:00 UTC</time></a>
202
- </td>
203
- <td>
204
- <a href="/sidekiq/queues/foo">foo</a>
205
- </td>
206
- <td>HardWorker1</td>
207
- <td>
208
- <div class="args">&quot;asdf&quot;, 1234</div>
209
- </td>
210
- <td>
211
- <div>NoMethodError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
212
- </td>
213
- </tr>
214
-
215
- <tr>
216
- <td class="table-checkbox">
217
- <label>
218
- <input type='checkbox' name='key[]' value='1544993820.0-4416aa76eb8cf03f56a49220' />
219
- </label>
220
- </td>
221
- <td>
222
- <a href="/sidekiq/morgue/1544993820.0-4416aa76eb8cf03f56a49220"><time class="ltr" dir="ltr" title="2018-12-16T20:57:00Z" datetime="2018-12-16T20:57:00Z">2018-12-16 20:57:00 UTC</time></a>
223
- </td>
224
- <td>
225
- <a href="/sidekiq/queues/foo">foo</a>
226
- </td>
227
- <td>HardWorker</td>
228
- <td>
229
- <div class="args">&quot;asdf&quot;, 1234</div>
230
- </td>
231
- <td>
232
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
233
- </td>
234
- </tr>
235
-
236
- <tr>
237
- <td class="table-checkbox">
238
- <label>
239
- <input type='checkbox' name='key[]' value='1544993820.0-34e79a46b1956d3a1180767b' />
240
- </label>
241
- </td>
242
- <td>
243
- <a href="/sidekiq/morgue/1544993820.0-34e79a46b1956d3a1180767b"><time class="ltr" dir="ltr" title="2018-12-16T20:57:00Z" datetime="2018-12-16T20:57:00Z">2018-12-16 20:57:00 UTC</time></a>
244
- </td>
245
- <td>
246
- <a href="/sidekiq/queues/foo">foo</a>
247
- </td>
248
- <td>HardWorker</td>
249
- <td>
250
- <div class="args">&quot;asdf&quot;, 1234</div>
251
- </td>
252
- <td>
253
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
254
- </td>
255
- </tr>
256
-
257
- <tr>
258
- <td class="table-checkbox">
259
- <label>
260
- <input type='checkbox' name='key[]' value='1544993820.0-8d08674fce759ac75d1a6e75' />
261
- </label>
262
- </td>
263
- <td>
264
- <a href="/sidekiq/morgue/1544993820.0-8d08674fce759ac75d1a6e75"><time class="ltr" dir="ltr" title="2018-12-16T20:57:00Z" datetime="2018-12-16T20:57:00Z">2018-12-16 20:57:00 UTC</time></a>
265
- </td>
266
- <td>
267
- <a href="/sidekiq/queues/foo">foo</a>
268
- </td>
269
- <td>HardWorker</td>
270
- <td>
271
- <div class="args">&quot;asdf&quot;, 1234</div>
272
- </td>
273
- <td>
274
- <div>NoMethodError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
275
- </td>
276
- </tr>
277
-
278
- </table>
279
- <input class="btn btn-primary btn-xs pull-left" type="submit" name="retry" value="Revive" />
280
- <input class="btn btn-secondary btn-xs pull-left" type="submit" name="export" value="Export" />
281
- <input class="btn btn-danger btn-xs pull-left" type="submit" name="delete" value="Bury" />
282
- </form>
283
-
284
- <form action="/sidekiq/undertaker/morgue/all/all/YWxs/total_dead/delete" method="post">
285
- <input type='hidden' name='authenticity_token' value='stubbed-csrf-token'/>
286
- <input class="btn btn-danger btn-xs pull-right" type="submit" name="delete" value="Bury All" data-confirm="Are you sure?" />
287
- </form>
288
-
289
- <form action="/sidekiq/undertaker/morgue/all/all/YWxs/total_dead/export" method="post">
290
- <input type='hidden' name='authenticity_token' value='stubbed-csrf-token'/>
291
- <input class="btn btn-secondary btn-xs pull-right" type="submit" name="export" value="Export All" />
292
- </form>
293
-
294
- <form action="/sidekiq/undertaker/morgue/all/all/YWxs/total_dead/retry" method="post">
295
- <input type='hidden' name='authenticity_token' value='stubbed-csrf-token'/>
296
- <input class="btn btn-danger btn-xs pull-right" type="submit" name="retry" value="Revive All" data-confirm="Are you sure?" />
297
- </form>
298
-
299
-
300
- </div>
301
- </div>
302
- </div>
303
- </div>
304
- <div class="navbar navbar-fixed-bottom navbar-inverse ltr">
305
- <div class="navbar-inner">
306
- <div class="container text-center">
307
- <ul class="nav">
308
- <li>
309
- <p class="navbar-text product-version">Sidekiq v*EXCLUDED*</p>
310
- </li>
311
- <li>
312
- <p class="navbar-text redis-url" title="redis://127.0.0.1:6379/0">redis://127.0.0.1:6379/0</p>
313
- </li>
314
- <li>
315
- <p id="serverUtcTime" class="navbar-text server-utc-time">20:57:00 UTC</p>
316
- </li>
317
- <li>
318
- <p class="navbar-text"><a style="color: gray;" href="https://github.com/mperham/sidekiq/wiki">docs</a></p>
319
- </li>
320
- </ul>
321
- </div>
322
- </div>
323
- </div>
324
-
325
- </body>
326
- </html>
@@ -1,284 +0,0 @@
1
- <!doctype html>
2
- <html dir="ltr">
3
- <head>
4
- <title>[TEST] Sidekiq</title>
5
- <meta charset="utf-8" />
6
- <meta name="viewport" content="width=device-width,initial-scale=1.0" />
7
-
8
- <link href="/sidekiq/stylesheets/bootstrap.css" media="screen" rel="stylesheet" type="text/css" />
9
-
10
-
11
- <link href="/sidekiq/stylesheets/application.css" media="screen" rel="stylesheet" type="text/css" />
12
- <link href="/sidekiq/stylesheets/application-dark.css" media="screen and (prefers-color-scheme: dark)" rel="stylesheet" type="text/css" />
13
-
14
-
15
- <link rel="apple-touch-icon" href="/sidekiq/images/apple-touch-icon.png">
16
- <link rel="shortcut icon" type="image/ico" href="/sidekiq/images/favicon.ico" />
17
- <script type="text/javascript" src="/sidekiq/javascripts/application.js"></script>
18
- <meta name="google" content="notranslate" />
19
-
20
- </head>
21
- <body class="admin" data-locale="en">
22
- <div class="navbar navbar-default navbar-fixed-top">
23
- <div class="container-fluid">
24
- <div class="navbar-header" data-navbar="static">
25
- <button type="button" class="navbar-toggle collapsed" data-toggle="navbar-menu" data-target="#navbar-menu">
26
- <span class="icon-bar"></span>
27
- <span class="icon-bar"></span>
28
- <span class="icon-bar"></span>
29
- </button>
30
- <div class="navbar-toggle collapsed navbar-livereload">
31
-
32
- <a class="live-poll-start live-poll btn btn-primary">Live Poll</a>
33
- <a class="live-poll-stop live-poll btn btn-primary active">Stop Polling</a>
34
-
35
-
36
-
37
- </div>
38
- <a class="navbar-brand" href="/sidekiq/">
39
- Sidekiq
40
- <span class="status">
41
- <i class="status-sprite status-idle"></i>
42
- idle
43
- </span>
44
-
45
- </a>
46
- </div>
47
-
48
- <div class="collapse navbar-collapse" id="navbar-menu">
49
- <ul class="nav navbar-nav" data-navbar="static">
50
-
51
-
52
- <li class="">
53
- <a href="/sidekiq/">Dashboard</a>
54
- </li>
55
-
56
-
57
-
58
- <li class="">
59
- <a href="/sidekiq/busy">Busy</a>
60
- </li>
61
-
62
-
63
-
64
- <li class="">
65
- <a href="/sidekiq/queues">Queues</a>
66
- </li>
67
-
68
-
69
-
70
- <li class="">
71
- <a href="/sidekiq/retries">Retries</a>
72
- </li>
73
-
74
-
75
-
76
- <li class="">
77
- <a href="/sidekiq/scheduled">Scheduled</a>
78
- </li>
79
-
80
-
81
-
82
- <li class="">
83
- <a href="/sidekiq/morgue">Dead</a>
84
- </li>
85
-
86
-
87
-
88
-
89
- <li class="" data-navbar="custom-tab">
90
- <a href="/sidekiq/undertaker/filter">Undertaker</a>
91
- </li>
92
-
93
-
94
- <li class="navbar-livereload">
95
- <div class="poll-wrapper">
96
-
97
- <a class="live-poll-start live-poll btn btn-primary">Live Poll</a>
98
- <a class="live-poll-stop live-poll btn btn-primary active">Stop Polling</a>
99
-
100
-
101
-
102
- </div>
103
- </li>
104
- </ul>
105
- </div>
106
- </div>
107
- </div>
108
-
109
- <div id="page">
110
- <div class="container">
111
- <div class="row">
112
- <div class="col-sm-12 summary_bar">
113
- <ul class="list-unstyled summary row">
114
- <li class="processed col-sm-1">
115
- <span id="txtProcessed" class="count">0</span>
116
- <span class="desc">Processed</span>
117
- </li>
118
- <li class="failed col-sm-1">
119
- <span id="txtFailed" class="count">0</span>
120
- <span class="desc">Failed</span>
121
- </li>
122
- <li class="busy col-sm-1">
123
- <a href="/sidekiq/busy">
124
- <span id="txtBusy" class="count">0</span>
125
- <span class="desc">Busy</span>
126
- </a>
127
- </li>
128
- <li class="enqueued col-sm-1">
129
- <a href="/sidekiq/queues">
130
- <span id="txtEnqueued" class="count">0</span>
131
- <span class="desc">Enqueued</span>
132
- </a>
133
- </li>
134
- <li class="retries col-sm-1">
135
- <a href="/sidekiq/retries">
136
- <span id="txtRetries" class="count">0</span>
137
- <span class="desc">Retries</span>
138
- </a>
139
- </li>
140
- <li class="scheduled col-sm-1">
141
- <a href="/sidekiq/scheduled">
142
- <span id="txtScheduled" class="count">0</span>
143
- <span class="desc">Scheduled</span>
144
- </a>
145
- </li>
146
- <li class="dead col-sm-1">
147
- <a href="/sidekiq/morgue">
148
- <span id="txtDead" class="count">4</span>
149
- <span class="desc">Dead</span>
150
- </a>
151
- </li>
152
- </ul>
153
-
154
- </div>
155
-
156
- <div class="col-sm-12">
157
- <header class="row head">
158
- <div class="col-sm-12">
159
- <h3>
160
- <b>2</b> dead jobs
161
- of <b>HardWorker</b> class
162
- with <b>RuntimeError</b> exception
163
- with <b>Option 'data/file_name' is req...</b> message
164
- in <b>1_hour</b> bucket
165
- </h3>
166
- </div>
167
- <div class="col-sm-12">
168
- <div class="col-sm-4">
169
-
170
-
171
- </div>
172
- </div>
173
- </header>
174
-
175
-
176
- <form action="/sidekiq/undertaker/morgue" method="post">
177
- <input type='hidden' name='authenticity_token' value='stubbed-csrf-token'/>
178
- <table class="table table-striped table-bordered table-white">
179
- <thead>
180
- <tr>
181
- <th width="20px" class="table-checkbox">
182
- <label>
183
- <input type="checkbox" class="check_all" />
184
- </label>
185
- </th>
186
- <th width="25%">Last Retry</th>
187
- <th>Queue</th>
188
- <th>Job</th>
189
- <th>Arguments</th>
190
- <th>Error</th>
191
- </tr>
192
- </thead>
193
-
194
- <tr>
195
- <td class="table-checkbox">
196
- <label>
197
- <input type='checkbox' name='key[]' value='1544993820.0-4416aa76eb8cf03f56a49220' />
198
- </label>
199
- </td>
200
- <td>
201
- <a href="/sidekiq/morgue/1544993820.0-4416aa76eb8cf03f56a49220"><time class="ltr" dir="ltr" title="2018-12-16T20:57:00Z" datetime="2018-12-16T20:57:00Z">2018-12-16 20:57:00 UTC</time></a>
202
- </td>
203
- <td>
204
- <a href="/sidekiq/queues/foo">foo</a>
205
- </td>
206
- <td>HardWorker</td>
207
- <td>
208
- <div class="args">&quot;asdf&quot;, 1234</div>
209
- </td>
210
- <td>
211
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
212
- </td>
213
- </tr>
214
-
215
- <tr>
216
- <td class="table-checkbox">
217
- <label>
218
- <input type='checkbox' name='key[]' value='1544993820.0-34e79a46b1956d3a1180767b' />
219
- </label>
220
- </td>
221
- <td>
222
- <a href="/sidekiq/morgue/1544993820.0-34e79a46b1956d3a1180767b"><time class="ltr" dir="ltr" title="2018-12-16T20:57:00Z" datetime="2018-12-16T20:57:00Z">2018-12-16 20:57:00 UTC</time></a>
223
- </td>
224
- <td>
225
- <a href="/sidekiq/queues/foo">foo</a>
226
- </td>
227
- <td>HardWorker</td>
228
- <td>
229
- <div class="args">&quot;asdf&quot;, 1234</div>
230
- </td>
231
- <td>
232
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
233
- </td>
234
- </tr>
235
-
236
- </table>
237
- <input class="btn btn-primary btn-xs pull-left" type="submit" name="retry" value="Revive" />
238
- <input class="btn btn-secondary btn-xs pull-left" type="submit" name="export" value="Export" />
239
- <input class="btn btn-danger btn-xs pull-left" type="submit" name="delete" value="Bury" />
240
- </form>
241
-
242
- <form action="/sidekiq/undertaker/morgue/HardWorker/RuntimeError/T3B0aW9uICdkYXRhL2ZpbGVfbmFtZScgaXMgcmVxLi4u/1_hour/delete" method="post">
243
- <input type='hidden' name='authenticity_token' value='stubbed-csrf-token'/>
244
- <input class="btn btn-danger btn-xs pull-right" type="submit" name="delete" value="Bury All" data-confirm="Are you sure?" />
245
- </form>
246
-
247
- <form action="/sidekiq/undertaker/morgue/HardWorker/RuntimeError/T3B0aW9uICdkYXRhL2ZpbGVfbmFtZScgaXMgcmVxLi4u/1_hour/export" method="post">
248
- <input type='hidden' name='authenticity_token' value='stubbed-csrf-token'/>
249
- <input class="btn btn-secondary btn-xs pull-right" type="submit" name="export" value="Export All" />
250
- </form>
251
-
252
- <form action="/sidekiq/undertaker/morgue/HardWorker/RuntimeError/T3B0aW9uICdkYXRhL2ZpbGVfbmFtZScgaXMgcmVxLi4u/1_hour/retry" method="post">
253
- <input type='hidden' name='authenticity_token' value='stubbed-csrf-token'/>
254
- <input class="btn btn-danger btn-xs pull-right" type="submit" name="retry" value="Revive All" data-confirm="Are you sure?" />
255
- </form>
256
-
257
-
258
- </div>
259
- </div>
260
- </div>
261
- </div>
262
- <div class="navbar navbar-fixed-bottom navbar-inverse ltr">
263
- <div class="navbar-inner">
264
- <div class="container text-center">
265
- <ul class="nav">
266
- <li>
267
- <p class="navbar-text product-version">Sidekiq v*EXCLUDED*</p>
268
- </li>
269
- <li>
270
- <p class="navbar-text redis-url" title="redis://127.0.0.1:6379/0">redis://127.0.0.1:6379/0</p>
271
- </li>
272
- <li>
273
- <p id="serverUtcTime" class="navbar-text server-utc-time">20:57:00 UTC</p>
274
- </li>
275
- <li>
276
- <p class="navbar-text"><a style="color: gray;" href="https://github.com/mperham/sidekiq/wiki">docs</a></p>
277
- </li>
278
- </ul>
279
- </div>
280
- </div>
281
- </div>
282
-
283
- </body>
284
- </html>