sidekiq-undertaker 1.1.1 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.github/workflows/ruby-build.yml +31 -3
- data/.rubocop.yml +4 -0
- data/.rubocop_codeclimate.yml +9 -0
- data/CHANGELOG.md +19 -0
- data/README.md +8 -6
- data/assets/Undertaker_demo_1_job_1_error.png +0 -0
- data/assets/Undertaker_demo_1_job_all_errors.png +0 -0
- data/assets/Undertaker_demo_all_errors.png +0 -0
- data/assets/Undertaker_demo_all_jobs.png +0 -0
- data/assets/Undertaker_demo_all_jobs_1_error.png +0 -0
- data/lib/sidekiq/undertaker/dead_job.rb +10 -2
- data/lib/sidekiq/undertaker/job_distributor.rb +4 -0
- data/lib/sidekiq/undertaker/job_filter.rb +7 -2
- data/lib/sidekiq/undertaker/version.rb +1 -1
- data/lib/sidekiq/undertaker/web_extension/api_helpers.rb +104 -26
- data/lib/sidekiq/undertaker/web_extension.rb +17 -8
- data/sidekiq-undertaker.gemspec +6 -5
- 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 +32 -18
- 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 +37 -39
- 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 +37 -39
- 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 +231 -0
- 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 +231 -0
- 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 +26 -21
- 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 +284 -0
- 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 +1310 -0
- 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 +24 -19
- 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 +72 -67
- data/spec/sidekiq/undertaker/dead_jobs_spec.rb +7 -4
- data/spec/sidekiq/undertaker/job_distributor_spec.rb +41 -19
- data/spec/sidekiq/undertaker/job_filter_spec.rb +26 -9
- data/spec/sidekiq/undertaker/web_extension_spec.rb +172 -14
- data/spec/spec_helper.rb +4 -0
- data/web/locales/en.yml +2 -0
- data/web/views/filter.erb +17 -1
- data/web/views/filter_job_class.erb +8 -8
- data/web/views/filter_job_class_error_class.erb +36 -0
- data/web/views/morgue.erb +9 -2
- metadata +38 -30
- data/.travis.yml +0 -51
- data/Demo_Filter.png +0 -0
- data/Demo_Job_Filter.png +0 -0
- data/Demo_Morgue_1_Job.png +0 -0
- data/Demo_Morgue_all.png +0 -0
@@ -18,7 +18,7 @@
|
|
18
18
|
<meta name="google" content="notranslate" />
|
19
19
|
|
20
20
|
</head>
|
21
|
-
<body class="admin" data-
|
21
|
+
<body class="admin" data-locale="en">
|
22
22
|
<div class="navbar navbar-default navbar-fixed-top">
|
23
23
|
<div class="container-fluid">
|
24
24
|
<div class="navbar-header" data-navbar="static">
|
@@ -29,9 +29,8 @@
|
|
29
29
|
</button>
|
30
30
|
<div class="navbar-toggle collapsed navbar-livereload">
|
31
31
|
|
32
|
-
|
33
|
-
<a
|
34
|
-
|
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>
|
35
34
|
|
36
35
|
|
37
36
|
|
@@ -95,9 +94,8 @@
|
|
95
94
|
<li class="navbar-livereload">
|
96
95
|
<div class="poll-wrapper">
|
97
96
|
|
98
|
-
|
99
|
-
<a
|
100
|
-
|
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>
|
101
99
|
|
102
100
|
|
103
101
|
|
@@ -114,40 +112,40 @@
|
|
114
112
|
<div class="col-sm-12 summary_bar">
|
115
113
|
<ul class="list-unstyled summary row">
|
116
114
|
<li class="processed col-sm-1">
|
117
|
-
<span class="count">0</span>
|
115
|
+
<span id="txtProcessed" class="count">0</span>
|
118
116
|
<span class="desc">Processed</span>
|
119
117
|
</li>
|
120
118
|
<li class="failed col-sm-1">
|
121
|
-
<span class="count">0</span>
|
119
|
+
<span id="txtFailed" class="count">0</span>
|
122
120
|
<span class="desc">Failed</span>
|
123
121
|
</li>
|
124
122
|
<li class="busy col-sm-1">
|
125
123
|
<a href="/sidekiq/busy">
|
126
|
-
<span class="count">0</span>
|
124
|
+
<span id="txtBusy" class="count">0</span>
|
127
125
|
<span class="desc">Busy</span>
|
128
126
|
</a>
|
129
127
|
</li>
|
130
128
|
<li class="enqueued col-sm-1">
|
131
129
|
<a href="/sidekiq/queues">
|
132
|
-
<span class="count">0</span>
|
130
|
+
<span id="txtEnqueued" class="count">0</span>
|
133
131
|
<span class="desc">Enqueued</span>
|
134
132
|
</a>
|
135
133
|
</li>
|
136
134
|
<li class="retries col-sm-1">
|
137
135
|
<a href="/sidekiq/retries">
|
138
|
-
<span class="count">0</span>
|
136
|
+
<span id="txtRetries" class="count">0</span>
|
139
137
|
<span class="desc">Retries</span>
|
140
138
|
</a>
|
141
139
|
</li>
|
142
140
|
<li class="scheduled col-sm-1">
|
143
141
|
<a href="/sidekiq/scheduled">
|
144
|
-
<span class="count">0</span>
|
142
|
+
<span id="txtScheduled" class="count">0</span>
|
145
143
|
<span class="desc">Scheduled</span>
|
146
144
|
</a>
|
147
145
|
</li>
|
148
146
|
<li class="dead col-sm-1">
|
149
147
|
<a href="/sidekiq/morgue">
|
150
|
-
<span class="count">54</span>
|
148
|
+
<span id="txtDead" class="count">54</span>
|
151
149
|
<span class="desc">Dead</span>
|
152
150
|
</a>
|
153
151
|
</li>
|
@@ -162,6 +160,7 @@
|
|
162
160
|
<b>52</b> dead jobs
|
163
161
|
of <b>HardWorker</b> class
|
164
162
|
with <b>RuntimeError</b> exception
|
163
|
+
|
165
164
|
in <b>1_hour</b> bucket
|
166
165
|
</h3>
|
167
166
|
</div>
|
@@ -227,7 +226,7 @@
|
|
227
226
|
<div class="args">"asdf", 1234</div>
|
228
227
|
</td>
|
229
228
|
<td>
|
230
|
-
<div>RuntimeError:
|
229
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
231
230
|
</td>
|
232
231
|
</tr>
|
233
232
|
|
@@ -248,7 +247,7 @@
|
|
248
247
|
<div class="args">"asdf", 1234</div>
|
249
248
|
</td>
|
250
249
|
<td>
|
251
|
-
<div>RuntimeError:
|
250
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
252
251
|
</td>
|
253
252
|
</tr>
|
254
253
|
|
@@ -269,7 +268,7 @@
|
|
269
268
|
<div class="args">"asdf", 1234</div>
|
270
269
|
</td>
|
271
270
|
<td>
|
272
|
-
<div>RuntimeError:
|
271
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
273
272
|
</td>
|
274
273
|
</tr>
|
275
274
|
|
@@ -290,7 +289,7 @@
|
|
290
289
|
<div class="args">"asdf", 1234</div>
|
291
290
|
</td>
|
292
291
|
<td>
|
293
|
-
<div>RuntimeError:
|
292
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
294
293
|
</td>
|
295
294
|
</tr>
|
296
295
|
|
@@ -311,7 +310,7 @@
|
|
311
310
|
<div class="args">"asdf", 1234</div>
|
312
311
|
</td>
|
313
312
|
<td>
|
314
|
-
<div>RuntimeError:
|
313
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
315
314
|
</td>
|
316
315
|
</tr>
|
317
316
|
|
@@ -332,7 +331,7 @@
|
|
332
331
|
<div class="args">"asdf", 1234</div>
|
333
332
|
</td>
|
334
333
|
<td>
|
335
|
-
<div>RuntimeError:
|
334
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
336
335
|
</td>
|
337
336
|
</tr>
|
338
337
|
|
@@ -353,7 +352,7 @@
|
|
353
352
|
<div class="args">"asdf", 1234</div>
|
354
353
|
</td>
|
355
354
|
<td>
|
356
|
-
<div>RuntimeError:
|
355
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
357
356
|
</td>
|
358
357
|
</tr>
|
359
358
|
|
@@ -374,7 +373,7 @@
|
|
374
373
|
<div class="args">"asdf", 1234</div>
|
375
374
|
</td>
|
376
375
|
<td>
|
377
|
-
<div>RuntimeError:
|
376
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
378
377
|
</td>
|
379
378
|
</tr>
|
380
379
|
|
@@ -395,7 +394,7 @@
|
|
395
394
|
<div class="args">"asdf", 1234</div>
|
396
395
|
</td>
|
397
396
|
<td>
|
398
|
-
<div>RuntimeError:
|
397
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
399
398
|
</td>
|
400
399
|
</tr>
|
401
400
|
|
@@ -416,7 +415,7 @@
|
|
416
415
|
<div class="args">"asdf", 1234</div>
|
417
416
|
</td>
|
418
417
|
<td>
|
419
|
-
<div>RuntimeError:
|
418
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
420
419
|
</td>
|
421
420
|
</tr>
|
422
421
|
|
@@ -437,7 +436,7 @@
|
|
437
436
|
<div class="args">"asdf", 1234</div>
|
438
437
|
</td>
|
439
438
|
<td>
|
440
|
-
<div>RuntimeError:
|
439
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
441
440
|
</td>
|
442
441
|
</tr>
|
443
442
|
|
@@ -458,7 +457,7 @@
|
|
458
457
|
<div class="args">"asdf", 1234</div>
|
459
458
|
</td>
|
460
459
|
<td>
|
461
|
-
<div>RuntimeError:
|
460
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
462
461
|
</td>
|
463
462
|
</tr>
|
464
463
|
|
@@ -479,7 +478,7 @@
|
|
479
478
|
<div class="args">"asdf", 1234</div>
|
480
479
|
</td>
|
481
480
|
<td>
|
482
|
-
<div>RuntimeError:
|
481
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
483
482
|
</td>
|
484
483
|
</tr>
|
485
484
|
|
@@ -500,7 +499,7 @@
|
|
500
499
|
<div class="args">"asdf", 1234</div>
|
501
500
|
</td>
|
502
501
|
<td>
|
503
|
-
<div>RuntimeError:
|
502
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
504
503
|
</td>
|
505
504
|
</tr>
|
506
505
|
|
@@ -521,7 +520,7 @@
|
|
521
520
|
<div class="args">"asdf", 1234</div>
|
522
521
|
</td>
|
523
522
|
<td>
|
524
|
-
<div>RuntimeError:
|
523
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
525
524
|
</td>
|
526
525
|
</tr>
|
527
526
|
|
@@ -542,7 +541,7 @@
|
|
542
541
|
<div class="args">"asdf", 1234</div>
|
543
542
|
</td>
|
544
543
|
<td>
|
545
|
-
<div>RuntimeError:
|
544
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
546
545
|
</td>
|
547
546
|
</tr>
|
548
547
|
|
@@ -563,7 +562,7 @@
|
|
563
562
|
<div class="args">"asdf", 1234</div>
|
564
563
|
</td>
|
565
564
|
<td>
|
566
|
-
<div>RuntimeError:
|
565
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
567
566
|
</td>
|
568
567
|
</tr>
|
569
568
|
|
@@ -584,7 +583,7 @@
|
|
584
583
|
<div class="args">"asdf", 1234</div>
|
585
584
|
</td>
|
586
585
|
<td>
|
587
|
-
<div>RuntimeError:
|
586
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
588
587
|
</td>
|
589
588
|
</tr>
|
590
589
|
|
@@ -605,7 +604,7 @@
|
|
605
604
|
<div class="args">"asdf", 1234</div>
|
606
605
|
</td>
|
607
606
|
<td>
|
608
|
-
<div>RuntimeError:
|
607
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
609
608
|
</td>
|
610
609
|
</tr>
|
611
610
|
|
@@ -626,7 +625,7 @@
|
|
626
625
|
<div class="args">"asdf", 1234</div>
|
627
626
|
</td>
|
628
627
|
<td>
|
629
|
-
<div>RuntimeError:
|
628
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
630
629
|
</td>
|
631
630
|
</tr>
|
632
631
|
|
@@ -647,7 +646,7 @@
|
|
647
646
|
<div class="args">"asdf", 1234</div>
|
648
647
|
</td>
|
649
648
|
<td>
|
650
|
-
<div>RuntimeError:
|
649
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
651
650
|
</td>
|
652
651
|
</tr>
|
653
652
|
|
@@ -668,7 +667,7 @@
|
|
668
667
|
<div class="args">"asdf", 1234</div>
|
669
668
|
</td>
|
670
669
|
<td>
|
671
|
-
<div>RuntimeError:
|
670
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
672
671
|
</td>
|
673
672
|
</tr>
|
674
673
|
|
@@ -689,7 +688,7 @@
|
|
689
688
|
<div class="args">"asdf", 1234</div>
|
690
689
|
</td>
|
691
690
|
<td>
|
692
|
-
<div>RuntimeError:
|
691
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
693
692
|
</td>
|
694
693
|
</tr>
|
695
694
|
|
@@ -710,7 +709,7 @@
|
|
710
709
|
<div class="args">"asdf", 1234</div>
|
711
710
|
</td>
|
712
711
|
<td>
|
713
|
-
<div>RuntimeError:
|
712
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
714
713
|
</td>
|
715
714
|
</tr>
|
716
715
|
|
@@ -731,7 +730,7 @@
|
|
731
730
|
<div class="args">"asdf", 1234</div>
|
732
731
|
</td>
|
733
732
|
<td>
|
734
|
-
<div>RuntimeError:
|
733
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
735
734
|
</td>
|
736
735
|
</tr>
|
737
736
|
|
@@ -752,7 +751,7 @@
|
|
752
751
|
<div class="args">"asdf", 1234</div>
|
753
752
|
</td>
|
754
753
|
<td>
|
755
|
-
<div>RuntimeError:
|
754
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
756
755
|
</td>
|
757
756
|
</tr>
|
758
757
|
|
@@ -773,7 +772,7 @@
|
|
773
772
|
<div class="args">"asdf", 1234</div>
|
774
773
|
</td>
|
775
774
|
<td>
|
776
|
-
<div>RuntimeError:
|
775
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
777
776
|
</td>
|
778
777
|
</tr>
|
779
778
|
|
@@ -794,7 +793,7 @@
|
|
794
793
|
<div class="args">"asdf", 1234</div>
|
795
794
|
</td>
|
796
795
|
<td>
|
797
|
-
<div>RuntimeError:
|
796
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
798
797
|
</td>
|
799
798
|
</tr>
|
800
799
|
|
@@ -815,7 +814,7 @@
|
|
815
814
|
<div class="args">"asdf", 1234</div>
|
816
815
|
</td>
|
817
816
|
<td>
|
818
|
-
<div>RuntimeError:
|
817
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
819
818
|
</td>
|
820
819
|
</tr>
|
821
820
|
|
@@ -836,7 +835,7 @@
|
|
836
835
|
<div class="args">"asdf", 1234</div>
|
837
836
|
</td>
|
838
837
|
<td>
|
839
|
-
<div>RuntimeError:
|
838
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
840
839
|
</td>
|
841
840
|
</tr>
|
842
841
|
|
@@ -857,7 +856,7 @@
|
|
857
856
|
<div class="args">"asdf", 1234</div>
|
858
857
|
</td>
|
859
858
|
<td>
|
860
|
-
<div>RuntimeError:
|
859
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
861
860
|
</td>
|
862
861
|
</tr>
|
863
862
|
|
@@ -878,7 +877,7 @@
|
|
878
877
|
<div class="args">"asdf", 1234</div>
|
879
878
|
</td>
|
880
879
|
<td>
|
881
|
-
<div>RuntimeError:
|
880
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
882
881
|
</td>
|
883
882
|
</tr>
|
884
883
|
|
@@ -899,7 +898,7 @@
|
|
899
898
|
<div class="args">"asdf", 1234</div>
|
900
899
|
</td>
|
901
900
|
<td>
|
902
|
-
<div>RuntimeError:
|
901
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
903
902
|
</td>
|
904
903
|
</tr>
|
905
904
|
|
@@ -920,7 +919,7 @@
|
|
920
919
|
<div class="args">"asdf", 1234</div>
|
921
920
|
</td>
|
922
921
|
<td>
|
923
|
-
<div>RuntimeError:
|
922
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
924
923
|
</td>
|
925
924
|
</tr>
|
926
925
|
|
@@ -941,7 +940,7 @@
|
|
941
940
|
<div class="args">"asdf", 1234</div>
|
942
941
|
</td>
|
943
942
|
<td>
|
944
|
-
<div>RuntimeError:
|
943
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
945
944
|
</td>
|
946
945
|
</tr>
|
947
946
|
|
@@ -962,7 +961,7 @@
|
|
962
961
|
<div class="args">"asdf", 1234</div>
|
963
962
|
</td>
|
964
963
|
<td>
|
965
|
-
<div>RuntimeError:
|
964
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
966
965
|
</td>
|
967
966
|
</tr>
|
968
967
|
|
@@ -983,7 +982,7 @@
|
|
983
982
|
<div class="args">"asdf", 1234</div>
|
984
983
|
</td>
|
985
984
|
<td>
|
986
|
-
<div>RuntimeError:
|
985
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
987
986
|
</td>
|
988
987
|
</tr>
|
989
988
|
|
@@ -1004,7 +1003,7 @@
|
|
1004
1003
|
<div class="args">"asdf", 1234</div>
|
1005
1004
|
</td>
|
1006
1005
|
<td>
|
1007
|
-
<div>RuntimeError:
|
1006
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
1008
1007
|
</td>
|
1009
1008
|
</tr>
|
1010
1009
|
|
@@ -1025,7 +1024,7 @@
|
|
1025
1024
|
<div class="args">"asdf", 1234</div>
|
1026
1025
|
</td>
|
1027
1026
|
<td>
|
1028
|
-
<div>RuntimeError:
|
1027
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
1029
1028
|
</td>
|
1030
1029
|
</tr>
|
1031
1030
|
|
@@ -1046,7 +1045,7 @@
|
|
1046
1045
|
<div class="args">"asdf", 1234</div>
|
1047
1046
|
</td>
|
1048
1047
|
<td>
|
1049
|
-
<div>RuntimeError:
|
1048
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
1050
1049
|
</td>
|
1051
1050
|
</tr>
|
1052
1051
|
|
@@ -1067,7 +1066,7 @@
|
|
1067
1066
|
<div class="args">"asdf", 1234</div>
|
1068
1067
|
</td>
|
1069
1068
|
<td>
|
1070
|
-
<div>RuntimeError:
|
1069
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
1071
1070
|
</td>
|
1072
1071
|
</tr>
|
1073
1072
|
|
@@ -1088,7 +1087,7 @@
|
|
1088
1087
|
<div class="args">"asdf", 1234</div>
|
1089
1088
|
</td>
|
1090
1089
|
<td>
|
1091
|
-
<div>RuntimeError:
|
1090
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
1092
1091
|
</td>
|
1093
1092
|
</tr>
|
1094
1093
|
|
@@ -1109,7 +1108,7 @@
|
|
1109
1108
|
<div class="args">"asdf", 1234</div>
|
1110
1109
|
</td>
|
1111
1110
|
<td>
|
1112
|
-
<div>RuntimeError:
|
1111
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
1113
1112
|
</td>
|
1114
1113
|
</tr>
|
1115
1114
|
|
@@ -1130,7 +1129,7 @@
|
|
1130
1129
|
<div class="args">"asdf", 1234</div>
|
1131
1130
|
</td>
|
1132
1131
|
<td>
|
1133
|
-
<div>RuntimeError:
|
1132
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
1134
1133
|
</td>
|
1135
1134
|
</tr>
|
1136
1135
|
|
@@ -1151,7 +1150,7 @@
|
|
1151
1150
|
<div class="args">"asdf", 1234</div>
|
1152
1151
|
</td>
|
1153
1152
|
<td>
|
1154
|
-
<div>RuntimeError:
|
1153
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
1155
1154
|
</td>
|
1156
1155
|
</tr>
|
1157
1156
|
|
@@ -1172,7 +1171,7 @@
|
|
1172
1171
|
<div class="args">"asdf", 1234</div>
|
1173
1172
|
</td>
|
1174
1173
|
<td>
|
1175
|
-
<div>RuntimeError:
|
1174
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
1176
1175
|
</td>
|
1177
1176
|
</tr>
|
1178
1177
|
|
@@ -1193,7 +1192,7 @@
|
|
1193
1192
|
<div class="args">"asdf", 1234</div>
|
1194
1193
|
</td>
|
1195
1194
|
<td>
|
1196
|
-
<div>RuntimeError:
|
1195
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
1197
1196
|
</td>
|
1198
1197
|
</tr>
|
1199
1198
|
|
@@ -1214,7 +1213,7 @@
|
|
1214
1213
|
<div class="args">"asdf", 1234</div>
|
1215
1214
|
</td>
|
1216
1215
|
<td>
|
1217
|
-
<div>RuntimeError:
|
1216
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
1218
1217
|
</td>
|
1219
1218
|
</tr>
|
1220
1219
|
|
@@ -1235,7 +1234,7 @@
|
|
1235
1234
|
<div class="args">"asdf", 1234</div>
|
1236
1235
|
</td>
|
1237
1236
|
<td>
|
1238
|
-
<div>RuntimeError:
|
1237
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
1239
1238
|
</td>
|
1240
1239
|
</tr>
|
1241
1240
|
|
@@ -1256,21 +1255,27 @@
|
|
1256
1255
|
<div class="args">"asdf", 1234</div>
|
1257
1256
|
</td>
|
1258
1257
|
<td>
|
1259
|
-
<div>RuntimeError:
|
1258
|
+
<div>RuntimeError: Option 'data/file_name' is required! This is an extra long error message.</div>
|
1260
1259
|
</td>
|
1261
1260
|
</tr>
|
1262
1261
|
|
1263
1262
|
</table>
|
1264
1263
|
<input class="btn btn-primary btn-xs pull-left" type="submit" name="retry" value="Revive" />
|
1264
|
+
<input class="btn btn-secondary btn-xs pull-left" type="submit" name="export" value="Export" />
|
1265
1265
|
<input class="btn btn-danger btn-xs pull-left" type="submit" name="delete" value="Bury" />
|
1266
1266
|
</form>
|
1267
1267
|
|
1268
|
-
<form action="/sidekiq/undertaker/morgue/HardWorker/RuntimeError/1_hour/delete" method="post">
|
1268
|
+
<form action="/sidekiq/undertaker/morgue/HardWorker/RuntimeError/YWxs/1_hour/delete" method="post">
|
1269
1269
|
<input type='hidden' name='authenticity_token' value='stubbed-csrf-token'/>
|
1270
1270
|
<input class="btn btn-danger btn-xs pull-right" type="submit" name="delete" value="Bury All" data-confirm="Are you sure?" />
|
1271
1271
|
</form>
|
1272
1272
|
|
1273
|
-
<form action="/sidekiq/undertaker/morgue/HardWorker/RuntimeError/1_hour/
|
1273
|
+
<form action="/sidekiq/undertaker/morgue/HardWorker/RuntimeError/YWxs/1_hour/export" method="post">
|
1274
|
+
<input type='hidden' name='authenticity_token' value='stubbed-csrf-token'/>
|
1275
|
+
<input class="btn btn-secondary btn-xs pull-right" type="submit" name="export" value="Export All" />
|
1276
|
+
</form>
|
1277
|
+
|
1278
|
+
<form action="/sidekiq/undertaker/morgue/HardWorker/RuntimeError/YWxs/1_hour/retry" method="post">
|
1274
1279
|
<input type='hidden' name='authenticity_token' value='stubbed-csrf-token'/>
|
1275
1280
|
<input class="btn btn-danger btn-xs pull-right" type="submit" name="retry" value="Revive All" data-confirm="Are you sure?" />
|
1276
1281
|
</form>
|
@@ -1291,7 +1296,7 @@
|
|
1291
1296
|
<p class="navbar-text redis-url" title="redis://127.0.0.1:6379/0">redis://127.0.0.1:6379/0</p>
|
1292
1297
|
</li>
|
1293
1298
|
<li>
|
1294
|
-
<p class="navbar-text server-utc-time">20:57:00 UTC</p>
|
1299
|
+
<p id="serverUtcTime" class="navbar-text server-utc-time">20:57:00 UTC</p>
|
1295
1300
|
</li>
|
1296
1301
|
<li>
|
1297
1302
|
<p class="navbar-text"><a style="color: gray;" href="https://github.com/mperham/sidekiq/wiki">docs</a></p>
|
@@ -7,10 +7,11 @@ module Sidekiq
|
|
7
7
|
describe DeadJob do
|
8
8
|
let(:job) do
|
9
9
|
build_job(
|
10
|
-
"class"
|
11
|
-
"failed_at"
|
12
|
-
"error_class"
|
13
|
-
"queue"
|
10
|
+
"class" => "HardWorkTask",
|
11
|
+
"failed_at" => Time.now,
|
12
|
+
"error_class" => "NoMethodError",
|
13
|
+
"queue" => "SomeQueue",
|
14
|
+
"error_message" => "undefined method `pause` for HardWork:Class"
|
14
15
|
)
|
15
16
|
end
|
16
17
|
|
@@ -20,6 +21,7 @@ module Sidekiq
|
|
20
21
|
job_class: "HardWorkTask",
|
21
22
|
time_elapsed_since_failure: 9,
|
22
23
|
error_class: "NoMethodError",
|
24
|
+
error_msg: "undefined method `pause` for H...",
|
23
25
|
bucket_name: "1_hour",
|
24
26
|
job: job
|
25
27
|
}
|
@@ -54,6 +56,7 @@ module Sidekiq
|
|
54
56
|
job_class: "HardWorkTask",
|
55
57
|
time_elapsed_since_failure: time_elapsed,
|
56
58
|
error_class: "NoMethodError",
|
59
|
+
error_msg: "undefined method `pause` for H...",
|
57
60
|
bucket_name: "1_hour",
|
58
61
|
job: killed_job
|
59
62
|
)
|