workerholic 0.0.8 → 0.0.9
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/Gemfile.lock +1 -1
- data/app_test/job_test.rb +1 -6
- data/app_test/run.rb +47 -39
- data/lib/workerholic/adapters/active_job_adapter.rb +8 -6
- data/lib/workerholic/cli.rb +11 -4
- data/lib/workerholic/job.rb +3 -2
- data/lib/workerholic/job_processor.rb +17 -6
- data/lib/workerholic/job_retry.rb +5 -2
- data/lib/workerholic/job_scheduler.rb +5 -2
- data/lib/workerholic/job_serializer.rb +8 -0
- data/lib/workerholic/job_statistics.rb +38 -0
- data/lib/workerholic/job_wrapper.rb +14 -5
- data/lib/workerholic/manager.rb +5 -0
- data/lib/workerholic/statistics_api.rb +77 -0
- data/lib/workerholic/statistics_storage.rb +19 -0
- data/lib/workerholic/storage.rb +25 -0
- data/lib/workerholic/version.rb +1 -1
- data/lib/workerholic/worker.rb +3 -0
- data/lib/workerholic/worker_balancer.rb +0 -1
- data/lib/workerholic.rb +7 -1
- data/pkg/workerholic-0.0.8.gem +0 -0
- data/spec/integration/enqueuing_jobs_spec.rb +5 -3
- data/spec/job_processor_spec.rb +7 -7
- data/spec/{statistics_spec.rb → job_statistics.rb} +10 -5
- data/spec/job_wrapper_spec.rb +7 -4
- data/spec/worker_spec.rb +2 -2
- data/web/application.rb +13 -6
- data/web/public/javascripts/application.js +109 -0
- data/web/public/stylesheets/application.css +30 -14
- data/web/views/details.erb +48 -31
- data/web/views/failed.erb +27 -0
- data/web/views/index.erb +38 -33
- data/web/views/layout.erb +36 -0
- data/web/views/queues.erb +31 -0
- data/web/views/scheduled.erb +27 -0
- data/web/views/workers.erb +41 -41
- metadata +13 -5
- data/lib/workerholic/statistics.rb +0 -21
data/web/views/workers.erb
CHANGED
@@ -1,45 +1,45 @@
|
|
1
|
-
<
|
2
|
-
<
|
3
|
-
<
|
4
|
-
|
5
|
-
|
6
|
-
|
1
|
+
<table class='table'>
|
2
|
+
<thead>
|
3
|
+
<tr>
|
4
|
+
<th>Worker</th>
|
5
|
+
<th>Queue</th>
|
6
|
+
<th>Class</th>
|
7
|
+
<th>Arguments</th>
|
8
|
+
</tr>
|
9
|
+
</thead>
|
7
10
|
|
8
|
-
<
|
9
|
-
<
|
10
|
-
|
11
|
-
</
|
12
|
-
<
|
13
|
-
|
14
|
-
<li><a href='/'>Overview</a></li>
|
15
|
-
<li><a href='/details'>Job Details</a></li>
|
16
|
-
<li><a href='/placehold'>Queues</a></li>
|
17
|
-
<li><a href='/workers'>Workers</a></li>
|
18
|
-
<li><a href='/what'>Failed</a></li>
|
19
|
-
<li><a href='/what'>Scheduled</a></li>
|
20
|
-
</ul>
|
21
|
-
</nav>
|
11
|
+
<tr>
|
12
|
+
<td>Worker 1</td>
|
13
|
+
<td>workerholic:queue:main</td>
|
14
|
+
<td>GetPrimes</td>
|
15
|
+
<td>[n, 1000000]</td>
|
16
|
+
</tr>
|
22
17
|
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
<th>Arguments</th>
|
30
|
-
</tr>
|
31
|
-
<tr>
|
32
|
-
<td>Worker 1</td>
|
33
|
-
<td>workerholic:queue:main</td>
|
34
|
-
<td>GetPrimes</td>
|
35
|
-
<td>[n, 1000000]</td>
|
36
|
-
</tr>
|
37
|
-
</table>
|
38
|
-
</div>
|
18
|
+
<tr>
|
19
|
+
<td>Worker 2</td>
|
20
|
+
<td>workerholic:queue:main</td>
|
21
|
+
<td>GetPrimes</td>
|
22
|
+
<td>[n, 1000000]</td>
|
23
|
+
</tr>
|
39
24
|
|
40
|
-
|
41
|
-
|
42
|
-
</
|
25
|
+
<tr>
|
26
|
+
<td>Worker 3</td>
|
27
|
+
<td>workerholic:queue:email</td>
|
28
|
+
<td>SendWelcomeEmail</td>
|
29
|
+
<td>[{ email_address: 'kminevsky@email.com', title: 'I\'m Konstantine', body: 'please hire me' }]</td>
|
30
|
+
</tr>
|
43
31
|
|
44
|
-
|
45
|
-
</
|
32
|
+
<tr>
|
33
|
+
<td>Worker 4</td>
|
34
|
+
<td>workerholic:queue:scheduled</td>
|
35
|
+
<td>RequestAPI</td>
|
36
|
+
<td>[n, 1000000]</td>
|
37
|
+
</tr>
|
38
|
+
|
39
|
+
<tr>
|
40
|
+
<td>Worker 5</td>
|
41
|
+
<td>workerholic:queue:main</td>
|
42
|
+
<td>GetPrimes</td>
|
43
|
+
<td>[n, 1000000]</td>
|
44
|
+
</tr>
|
45
|
+
</table>
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: workerholic
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Antoine Leclercq
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2017-07-
|
13
|
+
date: 2017-07-31 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: redis
|
@@ -128,12 +128,14 @@ files:
|
|
128
128
|
- lib/workerholic/job_retry.rb
|
129
129
|
- lib/workerholic/job_scheduler.rb
|
130
130
|
- lib/workerholic/job_serializer.rb
|
131
|
+
- lib/workerholic/job_statistics.rb
|
131
132
|
- lib/workerholic/job_wrapper.rb
|
132
133
|
- lib/workerholic/log_manager.rb
|
133
134
|
- lib/workerholic/manager.rb
|
134
135
|
- lib/workerholic/queue.rb
|
135
136
|
- lib/workerholic/sorted_set.rb
|
136
|
-
- lib/workerholic/
|
137
|
+
- lib/workerholic/statistics_api.rb
|
138
|
+
- lib/workerholic/statistics_storage.rb
|
137
139
|
- lib/workerholic/storage.rb
|
138
140
|
- lib/workerholic/version.rb
|
139
141
|
- lib/workerholic/worker.rb
|
@@ -144,6 +146,7 @@ files:
|
|
144
146
|
- pkg/workerholic-0.0.5.gem
|
145
147
|
- pkg/workerholic-0.0.6.gem
|
146
148
|
- pkg/workerholic-0.0.7.gem
|
149
|
+
- pkg/workerholic-0.0.8.gem
|
147
150
|
- spec/helpers/helper_methods.rb
|
148
151
|
- spec/helpers/job_tests.rb
|
149
152
|
- spec/integration/dequeuing_and_job_processing_spec.rb
|
@@ -152,20 +155,25 @@ files:
|
|
152
155
|
- spec/job_retry_spec.rb
|
153
156
|
- spec/job_scheduler_spec.rb
|
154
157
|
- spec/job_serializer_spec.rb
|
158
|
+
- spec/job_statistics.rb
|
155
159
|
- spec/job_wrapper_spec.rb
|
156
160
|
- spec/manager_spec.rb
|
157
161
|
- spec/queue_spec.rb
|
158
162
|
- spec/sorted_set_spec.rb
|
159
163
|
- spec/spec_helper.rb
|
160
|
-
- spec/statistics_spec.rb
|
161
164
|
- spec/storage_spec.rb
|
162
165
|
- spec/worker_balancer_spec.rb
|
163
166
|
- spec/worker_spec.rb
|
164
167
|
- web/application.rb
|
168
|
+
- web/public/javascripts/application.js
|
165
169
|
- web/public/stylesheets/application.css
|
166
170
|
- web/public/stylesheets/whitespace-reset.css
|
167
171
|
- web/views/details.erb
|
172
|
+
- web/views/failed.erb
|
168
173
|
- web/views/index.erb
|
174
|
+
- web/views/layout.erb
|
175
|
+
- web/views/queues.erb
|
176
|
+
- web/views/scheduled.erb
|
169
177
|
- web/views/workers.erb
|
170
178
|
- workerholic.gemspec
|
171
179
|
homepage: https://github.com/workerholic/workerholic
|
@@ -201,12 +209,12 @@ test_files:
|
|
201
209
|
- spec/job_retry_spec.rb
|
202
210
|
- spec/job_scheduler_spec.rb
|
203
211
|
- spec/job_serializer_spec.rb
|
212
|
+
- spec/job_statistics.rb
|
204
213
|
- spec/job_wrapper_spec.rb
|
205
214
|
- spec/manager_spec.rb
|
206
215
|
- spec/queue_spec.rb
|
207
216
|
- spec/sorted_set_spec.rb
|
208
217
|
- spec/spec_helper.rb
|
209
|
-
- spec/statistics_spec.rb
|
210
218
|
- spec/storage_spec.rb
|
211
219
|
- spec/worker_balancer_spec.rb
|
212
220
|
- spec/worker_spec.rb
|
@@ -1,21 +0,0 @@
|
|
1
|
-
module Workerholic
|
2
|
-
class Statistics
|
3
|
-
attr_accessor :enqueued_at, :retry_count, :errors, :started_at, :completed_at
|
4
|
-
|
5
|
-
def initialize(options={})
|
6
|
-
@enqueued_at = options[:enqueued_at]
|
7
|
-
@errors = options[:errors] || []
|
8
|
-
@started_at = options[:started_at]
|
9
|
-
@completed_at = options[:completed_at]
|
10
|
-
end
|
11
|
-
|
12
|
-
def to_hash
|
13
|
-
{
|
14
|
-
enqueued_at: enqueued_at,
|
15
|
-
errors: errors,
|
16
|
-
started_at: started_at,
|
17
|
-
completed_at: completed_at
|
18
|
-
}
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|