funktor 0.7.7 → 0.7.8

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: db4cbaf6480b6d6284a6370fbe9a87826647c72485ad75728ec7e28eae541836
4
- data.tar.gz: 9b87f5a0ca280e84c4e321a8a86fa9926d32c420382737eb37ee59ca5f0cc73e
3
+ metadata.gz: 55a26178c2cc3afd27da38d8322aba99cb8b05b707a0c69651531ec44471bf79
4
+ data.tar.gz: 8d96412765a0711319b73137b295fdf2c2e90da61e6c2f38caa11aa0c91774f6
5
5
  SHA512:
6
- metadata.gz: 1bd98cffe465815f6aa168fc9ec81eee8c7bcda99e7d65e01116204ee55c415877b4125dc119c3ea6e8cc3d17126d123baabe06e03f7bca92112a64eb108a2fd
7
- data.tar.gz: 86c0c79b8d031b88a623489160a04cfc3e2d115c5bf4d460011b8a6a4a3539810fb931a607f8ed27a3e9a174914671d367b3238d33aa0bf4e5da10029011f588
6
+ metadata.gz: 6e31ed84ec9c743a74c7f77db2859dfbadcbb6d1553c5e945185e60afaf2b0657274d4e18502bb1f7794ea9585fa5f90d91a550da29524ae5e9cd92a8f4c4533
7
+ data.tar.gz: 9b61c9c412003860d61c22f4626f9c91c6193e95aaa3e6fe45951905da80b90699f3c08e9dbb6ae3e84c1b32fa77b9850ca19c499905cbd6cd0e42b8287d2f70
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- funktor (0.7.7)
4
+ funktor (0.7.8)
5
5
  activesupport
6
6
  aws-sdk-dynamodb (~> 1.62)
7
7
  aws-sdk-sqs (~> 1.37)
@@ -23,7 +23,7 @@ GEM
23
23
  public_suffix (>= 2.0.2, < 5.0)
24
24
  aws-eventstream (1.2.0)
25
25
  aws-partitions (1.587.0)
26
- aws-sdk-core (3.130.2)
26
+ aws-sdk-core (3.131.0)
27
27
  aws-eventstream (~> 1, >= 1.0.2)
28
28
  aws-partitions (~> 1, >= 1.525.0)
29
29
  aws-sigv4 (~> 1.1)
@@ -23,7 +23,7 @@ class JobFlood
23
23
  job_target_time = Time.now + (minute * 60) + rand(60)
24
24
  job_sleep = rand(0.0..max_job_length_in_seconds.to_f)
25
25
  puts job_target_time
26
- [AuditWorker, AuditWorker, SingleThreadAuditWorker].sample.perform_at(job_target_time, {
26
+ [AuditWorker, AuditWorker, SingleThreadAuditWorker, HelloWorker, GreetingsWorker].sample.perform_at(job_target_time, {
27
27
  mode: 'later',
28
28
  message: 'msg: from random JobFlood - ' + SecureRandom.hex,
29
29
  target_time: job_target_time,
@@ -21,10 +21,609 @@ Resources:
21
21
  },
22
22
 
23
23
 
24
+
25
+ {
26
+ "height": 3,
27
+ "width": 6,
28
+ "y": 3,
29
+ "x": 0,
30
+ "type": "text",
31
+ "properties": {
32
+ "markdown": "\n# AuditWorker\n"
33
+ }
34
+ },
35
+ {
36
+ "height": 3,
37
+ "width": 6,
38
+ "y": 3,
39
+ "x": 6,
40
+ "type": "metric",
41
+ "properties": {
42
+ "metrics": [
43
+ [ "${self:custom.funktor.DashboardNamespace}", "processed", "WorkerClassName", "AuditWorker" ],
44
+ [ "${self:custom.funktor.DashboardNamespace}", "failed", "WorkerClassName", "AuditWorker", { "color": "#d62728" } ]
45
+ ],
46
+ "view": "singleValue",
47
+ "region": "us-east-1",
48
+ "stat": "Sum",
49
+ "period": 60,
50
+ "sparkline": true,
51
+ "title": "AuditWorker Jobs Per Minute"
52
+ }
53
+ },
54
+ {
55
+ "height": 3,
56
+ "width": 12,
57
+ "y": 3,
58
+ "x": 12,
59
+ "type": "metric",
60
+ "properties": {
61
+ "metrics": [
62
+ [ "${self:custom.funktor.DashboardNamespace}", "Duration", "WorkerClassName", "AuditWorker", { "label": "p10" } ],
63
+ [ "...", { "label": "p50", "stat": "p50" } ],
64
+ [ "...", { "label": "p99", "stat": "p99" } ],
65
+ [ "...", { "label": "Average", "stat": "Average" } ]
66
+ ],
67
+ "view": "singleValue",
68
+ "region": "us-east-1",
69
+ "stat": "p10",
70
+ "period": 60,
71
+ "sparkline": true,
72
+ "title": "AuditWorker Duration"
73
+ }
74
+ },
75
+
76
+
77
+
78
+
79
+
80
+ {
81
+ "height": 3,
82
+ "width": 6,
83
+ "y": 6,
84
+ "x": 0,
85
+ "type": "metric",
86
+ "properties": {
87
+ "metrics": [
88
+ [ "${self:custom.funktor.DashboardNamespace}", "processed", "WorkerClassName", "AuditWorker" ]
89
+ ],
90
+ "view": "timeSeries",
91
+ "stacked": false,
92
+ "region": "us-east-1",
93
+ "title": "AuditWorker Processed Jobs",
94
+ "period": 60,
95
+ "stat": "Sum"
96
+ }
97
+ },
98
+ {
99
+ "height": 3,
100
+ "width": 6,
101
+ "y": 9,
102
+ "x": 0,
103
+ "type": "metric",
104
+ "properties": {
105
+ "metrics": [
106
+ [ "${self:custom.funktor.DashboardNamespace}", "failed", "WorkerClassName", "AuditWorker", { "color": "#d62728" }]
107
+ ],
108
+ "view": "timeSeries",
109
+ "stacked": false,
110
+ "region": "us-east-1",
111
+ "title": "AuditWorker Failed Jobs",
112
+ "period": 60,
113
+ "stat": "Sum"
114
+ }
115
+ },
116
+ {
117
+ "height": 6,
118
+ "width": 12,
119
+ "y": 6,
120
+ "x": 6,
121
+ "type": "metric",
122
+ "properties": {
123
+ "metrics": [
124
+ [ "${self:custom.funktor.DashboardNamespace}", "Duration", "WorkerClassName", "AuditWorker" ],
125
+ [ "...", { "stat": "p80" } ],
126
+ [ "...", { "stat": "p70" } ],
127
+ [ "...", { "stat": "p60" } ]
128
+ ],
129
+ "view": "timeSeries",
130
+ "stacked": false,
131
+ "region": "us-east-1",
132
+ "stat": "p90",
133
+ "period": 60,
134
+ "title": "AuditWorker Duration Percentiles"
135
+ }
136
+ },
137
+ {
138
+ "height": 3,
139
+ "width": 6,
140
+ "y": 6,
141
+ "x": 18,
142
+ "type": "metric",
143
+ "properties": {
144
+ "metrics": [
145
+ [ "${self:custom.funktor.DashboardNamespace}", "Duration", "WorkerClassName", "AuditWorker" ]
146
+ ],
147
+ "view": "timeSeries",
148
+ "stacked": false,
149
+ "region": "us-east-1",
150
+ "stat": "Maximum",
151
+ "period": 60,
152
+ "title": "AuditWorker Max"
153
+ }
154
+ },
155
+ {
156
+ "height": 3,
157
+ "width": 6,
158
+ "y": 6,
159
+ "x": 18,
160
+ "type": "metric",
161
+ "properties": {
162
+ "metrics": [
163
+ [ "${self:custom.funktor.DashboardNamespace}", "Duration", "WorkerClassName", "AuditWorker" ]
164
+ ],
165
+ "view": "timeSeries",
166
+ "stacked": false,
167
+ "region": "us-east-1",
168
+ "stat": "Minimum",
169
+ "period": 60,
170
+ "title": "AuditWorker Min"
171
+ }
172
+ },
173
+
174
+ {
175
+ "height": 3,
176
+ "width": 6,
177
+ "y": 12,
178
+ "x": 0,
179
+ "type": "text",
180
+ "properties": {
181
+ "markdown": "\n# GreetingsWorker\n"
182
+ }
183
+ },
184
+ {
185
+ "height": 3,
186
+ "width": 6,
187
+ "y": 12,
188
+ "x": 6,
189
+ "type": "metric",
190
+ "properties": {
191
+ "metrics": [
192
+ [ "${self:custom.funktor.DashboardNamespace}", "processed", "WorkerClassName", "GreetingsWorker" ],
193
+ [ "${self:custom.funktor.DashboardNamespace}", "failed", "WorkerClassName", "GreetingsWorker", { "color": "#d62728" } ]
194
+ ],
195
+ "view": "singleValue",
196
+ "region": "us-east-1",
197
+ "stat": "Sum",
198
+ "period": 60,
199
+ "sparkline": true,
200
+ "title": "GreetingsWorker Jobs Per Minute"
201
+ }
202
+ },
203
+ {
204
+ "height": 3,
205
+ "width": 12,
206
+ "y": 12,
207
+ "x": 12,
208
+ "type": "metric",
209
+ "properties": {
210
+ "metrics": [
211
+ [ "${self:custom.funktor.DashboardNamespace}", "Duration", "WorkerClassName", "GreetingsWorker", { "label": "p10" } ],
212
+ [ "...", { "label": "p50", "stat": "p50" } ],
213
+ [ "...", { "label": "p99", "stat": "p99" } ],
214
+ [ "...", { "label": "Average", "stat": "Average" } ]
215
+ ],
216
+ "view": "singleValue",
217
+ "region": "us-east-1",
218
+ "stat": "p10",
219
+ "period": 60,
220
+ "sparkline": true,
221
+ "title": "GreetingsWorker Duration"
222
+ }
223
+ },
224
+
225
+
226
+
227
+
228
+
229
+ {
230
+ "height": 3,
231
+ "width": 6,
232
+ "y": 15,
233
+ "x": 0,
234
+ "type": "metric",
235
+ "properties": {
236
+ "metrics": [
237
+ [ "${self:custom.funktor.DashboardNamespace}", "processed", "WorkerClassName", "GreetingsWorker" ]
238
+ ],
239
+ "view": "timeSeries",
240
+ "stacked": false,
241
+ "region": "us-east-1",
242
+ "title": "GreetingsWorker Processed Jobs",
243
+ "period": 60,
244
+ "stat": "Sum"
245
+ }
246
+ },
247
+ {
248
+ "height": 3,
249
+ "width": 6,
250
+ "y": 18,
251
+ "x": 0,
252
+ "type": "metric",
253
+ "properties": {
254
+ "metrics": [
255
+ [ "${self:custom.funktor.DashboardNamespace}", "failed", "WorkerClassName", "GreetingsWorker", { "color": "#d62728" }]
256
+ ],
257
+ "view": "timeSeries",
258
+ "stacked": false,
259
+ "region": "us-east-1",
260
+ "title": "GreetingsWorker Failed Jobs",
261
+ "period": 60,
262
+ "stat": "Sum"
263
+ }
264
+ },
265
+ {
266
+ "height": 6,
267
+ "width": 12,
268
+ "y": 15,
269
+ "x": 6,
270
+ "type": "metric",
271
+ "properties": {
272
+ "metrics": [
273
+ [ "${self:custom.funktor.DashboardNamespace}", "Duration", "WorkerClassName", "GreetingsWorker" ],
274
+ [ "...", { "stat": "p80" } ],
275
+ [ "...", { "stat": "p70" } ],
276
+ [ "...", { "stat": "p60" } ]
277
+ ],
278
+ "view": "timeSeries",
279
+ "stacked": false,
280
+ "region": "us-east-1",
281
+ "stat": "p90",
282
+ "period": 60,
283
+ "title": "GreetingsWorker Duration Percentiles"
284
+ }
285
+ },
286
+ {
287
+ "height": 3,
288
+ "width": 6,
289
+ "y": 15,
290
+ "x": 18,
291
+ "type": "metric",
292
+ "properties": {
293
+ "metrics": [
294
+ [ "${self:custom.funktor.DashboardNamespace}", "Duration", "WorkerClassName", "GreetingsWorker" ]
295
+ ],
296
+ "view": "timeSeries",
297
+ "stacked": false,
298
+ "region": "us-east-1",
299
+ "stat": "Maximum",
300
+ "period": 60,
301
+ "title": "GreetingsWorker Max"
302
+ }
303
+ },
304
+ {
305
+ "height": 3,
306
+ "width": 6,
307
+ "y": 15,
308
+ "x": 18,
309
+ "type": "metric",
310
+ "properties": {
311
+ "metrics": [
312
+ [ "${self:custom.funktor.DashboardNamespace}", "Duration", "WorkerClassName", "GreetingsWorker" ]
313
+ ],
314
+ "view": "timeSeries",
315
+ "stacked": false,
316
+ "region": "us-east-1",
317
+ "stat": "Minimum",
318
+ "period": 60,
319
+ "title": "GreetingsWorker Min"
320
+ }
321
+ },
322
+
323
+ {
324
+ "height": 3,
325
+ "width": 6,
326
+ "y": 21,
327
+ "x": 0,
328
+ "type": "text",
329
+ "properties": {
330
+ "markdown": "\n# HelloWorker\n"
331
+ }
332
+ },
333
+ {
334
+ "height": 3,
335
+ "width": 6,
336
+ "y": 21,
337
+ "x": 6,
338
+ "type": "metric",
339
+ "properties": {
340
+ "metrics": [
341
+ [ "${self:custom.funktor.DashboardNamespace}", "processed", "WorkerClassName", "HelloWorker" ],
342
+ [ "${self:custom.funktor.DashboardNamespace}", "failed", "WorkerClassName", "HelloWorker", { "color": "#d62728" } ]
343
+ ],
344
+ "view": "singleValue",
345
+ "region": "us-east-1",
346
+ "stat": "Sum",
347
+ "period": 60,
348
+ "sparkline": true,
349
+ "title": "HelloWorker Jobs Per Minute"
350
+ }
351
+ },
352
+ {
353
+ "height": 3,
354
+ "width": 12,
355
+ "y": 21,
356
+ "x": 12,
357
+ "type": "metric",
358
+ "properties": {
359
+ "metrics": [
360
+ [ "${self:custom.funktor.DashboardNamespace}", "Duration", "WorkerClassName", "HelloWorker", { "label": "p10" } ],
361
+ [ "...", { "label": "p50", "stat": "p50" } ],
362
+ [ "...", { "label": "p99", "stat": "p99" } ],
363
+ [ "...", { "label": "Average", "stat": "Average" } ]
364
+ ],
365
+ "view": "singleValue",
366
+ "region": "us-east-1",
367
+ "stat": "p10",
368
+ "period": 60,
369
+ "sparkline": true,
370
+ "title": "HelloWorker Duration"
371
+ }
372
+ },
373
+
374
+
375
+
376
+
377
+
378
+ {
379
+ "height": 3,
380
+ "width": 6,
381
+ "y": 24,
382
+ "x": 0,
383
+ "type": "metric",
384
+ "properties": {
385
+ "metrics": [
386
+ [ "${self:custom.funktor.DashboardNamespace}", "processed", "WorkerClassName", "HelloWorker" ]
387
+ ],
388
+ "view": "timeSeries",
389
+ "stacked": false,
390
+ "region": "us-east-1",
391
+ "title": "HelloWorker Processed Jobs",
392
+ "period": 60,
393
+ "stat": "Sum"
394
+ }
395
+ },
396
+ {
397
+ "height": 3,
398
+ "width": 6,
399
+ "y": 27,
400
+ "x": 0,
401
+ "type": "metric",
402
+ "properties": {
403
+ "metrics": [
404
+ [ "${self:custom.funktor.DashboardNamespace}", "failed", "WorkerClassName", "HelloWorker", { "color": "#d62728" }]
405
+ ],
406
+ "view": "timeSeries",
407
+ "stacked": false,
408
+ "region": "us-east-1",
409
+ "title": "HelloWorker Failed Jobs",
410
+ "period": 60,
411
+ "stat": "Sum"
412
+ }
413
+ },
414
+ {
415
+ "height": 6,
416
+ "width": 12,
417
+ "y": 24,
418
+ "x": 6,
419
+ "type": "metric",
420
+ "properties": {
421
+ "metrics": [
422
+ [ "${self:custom.funktor.DashboardNamespace}", "Duration", "WorkerClassName", "HelloWorker" ],
423
+ [ "...", { "stat": "p80" } ],
424
+ [ "...", { "stat": "p70" } ],
425
+ [ "...", { "stat": "p60" } ]
426
+ ],
427
+ "view": "timeSeries",
428
+ "stacked": false,
429
+ "region": "us-east-1",
430
+ "stat": "p90",
431
+ "period": 60,
432
+ "title": "HelloWorker Duration Percentiles"
433
+ }
434
+ },
435
+ {
436
+ "height": 3,
437
+ "width": 6,
438
+ "y": 24,
439
+ "x": 18,
440
+ "type": "metric",
441
+ "properties": {
442
+ "metrics": [
443
+ [ "${self:custom.funktor.DashboardNamespace}", "Duration", "WorkerClassName", "HelloWorker" ]
444
+ ],
445
+ "view": "timeSeries",
446
+ "stacked": false,
447
+ "region": "us-east-1",
448
+ "stat": "Maximum",
449
+ "period": 60,
450
+ "title": "HelloWorker Max"
451
+ }
452
+ },
453
+ {
454
+ "height": 3,
455
+ "width": 6,
456
+ "y": 24,
457
+ "x": 18,
458
+ "type": "metric",
459
+ "properties": {
460
+ "metrics": [
461
+ [ "${self:custom.funktor.DashboardNamespace}", "Duration", "WorkerClassName", "HelloWorker" ]
462
+ ],
463
+ "view": "timeSeries",
464
+ "stacked": false,
465
+ "region": "us-east-1",
466
+ "stat": "Minimum",
467
+ "period": 60,
468
+ "title": "HelloWorker Min"
469
+ }
470
+ },
471
+
472
+ {
473
+ "height": 3,
474
+ "width": 6,
475
+ "y": 30,
476
+ "x": 0,
477
+ "type": "text",
478
+ "properties": {
479
+ "markdown": "\n# SingleThreadAuditWorker\n"
480
+ }
481
+ },
482
+ {
483
+ "height": 3,
484
+ "width": 6,
485
+ "y": 30,
486
+ "x": 6,
487
+ "type": "metric",
488
+ "properties": {
489
+ "metrics": [
490
+ [ "${self:custom.funktor.DashboardNamespace}", "processed", "WorkerClassName", "SingleThreadAuditWorker" ],
491
+ [ "${self:custom.funktor.DashboardNamespace}", "failed", "WorkerClassName", "SingleThreadAuditWorker", { "color": "#d62728" } ]
492
+ ],
493
+ "view": "singleValue",
494
+ "region": "us-east-1",
495
+ "stat": "Sum",
496
+ "period": 60,
497
+ "sparkline": true,
498
+ "title": "SingleThreadAuditWorker Jobs Per Minute"
499
+ }
500
+ },
501
+ {
502
+ "height": 3,
503
+ "width": 12,
504
+ "y": 30,
505
+ "x": 12,
506
+ "type": "metric",
507
+ "properties": {
508
+ "metrics": [
509
+ [ "${self:custom.funktor.DashboardNamespace}", "Duration", "WorkerClassName", "SingleThreadAuditWorker", { "label": "p10" } ],
510
+ [ "...", { "label": "p50", "stat": "p50" } ],
511
+ [ "...", { "label": "p99", "stat": "p99" } ],
512
+ [ "...", { "label": "Average", "stat": "Average" } ]
513
+ ],
514
+ "view": "singleValue",
515
+ "region": "us-east-1",
516
+ "stat": "p10",
517
+ "period": 60,
518
+ "sparkline": true,
519
+ "title": "SingleThreadAuditWorker Duration"
520
+ }
521
+ },
522
+
523
+
524
+
525
+
526
+
527
+ {
528
+ "height": 3,
529
+ "width": 6,
530
+ "y": 33,
531
+ "x": 0,
532
+ "type": "metric",
533
+ "properties": {
534
+ "metrics": [
535
+ [ "${self:custom.funktor.DashboardNamespace}", "processed", "WorkerClassName", "SingleThreadAuditWorker" ]
536
+ ],
537
+ "view": "timeSeries",
538
+ "stacked": false,
539
+ "region": "us-east-1",
540
+ "title": "SingleThreadAuditWorker Processed Jobs",
541
+ "period": 60,
542
+ "stat": "Sum"
543
+ }
544
+ },
545
+ {
546
+ "height": 3,
547
+ "width": 6,
548
+ "y": 36,
549
+ "x": 0,
550
+ "type": "metric",
551
+ "properties": {
552
+ "metrics": [
553
+ [ "${self:custom.funktor.DashboardNamespace}", "failed", "WorkerClassName", "SingleThreadAuditWorker", { "color": "#d62728" }]
554
+ ],
555
+ "view": "timeSeries",
556
+ "stacked": false,
557
+ "region": "us-east-1",
558
+ "title": "SingleThreadAuditWorker Failed Jobs",
559
+ "period": 60,
560
+ "stat": "Sum"
561
+ }
562
+ },
563
+ {
564
+ "height": 6,
565
+ "width": 12,
566
+ "y": 33,
567
+ "x": 6,
568
+ "type": "metric",
569
+ "properties": {
570
+ "metrics": [
571
+ [ "${self:custom.funktor.DashboardNamespace}", "Duration", "WorkerClassName", "SingleThreadAuditWorker" ],
572
+ [ "...", { "stat": "p80" } ],
573
+ [ "...", { "stat": "p70" } ],
574
+ [ "...", { "stat": "p60" } ]
575
+ ],
576
+ "view": "timeSeries",
577
+ "stacked": false,
578
+ "region": "us-east-1",
579
+ "stat": "p90",
580
+ "period": 60,
581
+ "title": "SingleThreadAuditWorker Duration Percentiles"
582
+ }
583
+ },
584
+ {
585
+ "height": 3,
586
+ "width": 6,
587
+ "y": 33,
588
+ "x": 18,
589
+ "type": "metric",
590
+ "properties": {
591
+ "metrics": [
592
+ [ "${self:custom.funktor.DashboardNamespace}", "Duration", "WorkerClassName", "SingleThreadAuditWorker" ]
593
+ ],
594
+ "view": "timeSeries",
595
+ "stacked": false,
596
+ "region": "us-east-1",
597
+ "stat": "Maximum",
598
+ "period": 60,
599
+ "title": "SingleThreadAuditWorker Max"
600
+ }
601
+ },
602
+ {
603
+ "height": 3,
604
+ "width": 6,
605
+ "y": 33,
606
+ "x": 18,
607
+ "type": "metric",
608
+ "properties": {
609
+ "metrics": [
610
+ [ "${self:custom.funktor.DashboardNamespace}", "Duration", "WorkerClassName", "SingleThreadAuditWorker" ]
611
+ ],
612
+ "view": "timeSeries",
613
+ "stacked": false,
614
+ "region": "us-east-1",
615
+ "stat": "Minimum",
616
+ "period": 60,
617
+ "title": "SingleThreadAuditWorker Min"
618
+ }
619
+ },
620
+
621
+
622
+
24
623
  {
25
624
  "height": 6,
26
625
  "width": 12,
27
- "y": 3,
626
+ "y": 39,
28
627
  "x": 12,
29
628
  "type": "metric",
30
629
  "properties": {
@@ -50,7 +649,7 @@ Resources:
50
649
  {
51
650
  "height": 6,
52
651
  "width": 12,
53
- "y": 3,
652
+ "y": 39,
54
653
  "x": 0,
55
654
  "type": "metric",
56
655
  "properties": {
@@ -73,10 +672,11 @@ Resources:
73
672
  }
74
673
  },
75
674
 
675
+
76
676
  {
77
677
  "height": 6,
78
678
  "width": 12,
79
- "y": 9,
679
+ "y": 45,
80
680
  "x": 12,
81
681
  "type": "metric",
82
682
  "properties": {
@@ -97,7 +697,7 @@ Resources:
97
697
  {
98
698
  "height": 6,
99
699
  "width": 12,
100
- "y": 9,
700
+ "y": 45,
101
701
  "x": 0,
102
702
  "type": "metric",
103
703
  "properties": {
@@ -121,7 +721,7 @@ Resources:
121
721
  {
122
722
  "height": 3,
123
723
  "width": 24,
124
- "y": 12,
724
+ "y": 48,
125
725
  "x": 0,
126
726
  "type": "text",
127
727
  "properties": {
@@ -134,7 +734,7 @@ Resources:
134
734
  {
135
735
  "height": 3,
136
736
  "width": 6,
137
- "y": 18,
737
+ "y": 54,
138
738
  "x": 0,
139
739
  "type": "text",
140
740
  "properties": {
@@ -144,7 +744,7 @@ Resources:
144
744
  {
145
745
  "height": 3,
146
746
  "width": 3,
147
- "y": 18,
747
+ "y": 54,
148
748
  "x": 6,
149
749
  "type": "metric",
150
750
  "properties": {
@@ -155,13 +755,14 @@ Resources:
155
755
  "region": "us-east-1",
156
756
  "stat": "Sum",
157
757
  "period": 60,
758
+ "sparkline": true,
158
759
  "title": "Messages Per Minute"
159
760
  }
160
761
  },
161
762
  {
162
763
  "height": 3,
163
764
  "width": 15,
164
- "y": 18,
765
+ "y": 54,
165
766
  "x": 9,
166
767
  "type": "metric",
167
768
  "properties": {
@@ -175,6 +776,7 @@ Resources:
175
776
  "region": "us-east-1",
176
777
  "stat": "p10",
177
778
  "period": 60,
779
+ "sparkline": true,
178
780
  "title": "Handler Duration"
179
781
  }
180
782
  },
@@ -184,7 +786,7 @@ Resources:
184
786
  {
185
787
  "height": 6,
186
788
  "width": 9,
187
- "y": 21,
789
+ "y": 57,
188
790
  "x": 0,
189
791
  "type": "metric",
190
792
  "properties": {
@@ -210,7 +812,7 @@ Resources:
210
812
  {
211
813
  "height": 6,
212
814
  "width": 9,
213
- "y": 21,
815
+ "y": 57,
214
816
  "x": 9,
215
817
  "type": "metric",
216
818
  "properties": {
@@ -230,7 +832,7 @@ Resources:
230
832
  {
231
833
  "height": 3,
232
834
  "width": 6,
233
- "y": 21,
835
+ "y": 57,
234
836
  "x": 18,
235
837
  "type": "metric",
236
838
  "properties": {
@@ -257,7 +859,7 @@ Resources:
257
859
  {
258
860
  "height": 3,
259
861
  "width": 6,
260
- "y": 24,
862
+ "y": 60,
261
863
  "x": 18,
262
864
  "type": "metric",
263
865
  "properties": {
@@ -279,7 +881,7 @@ Resources:
279
881
  {
280
882
  "height": 3,
281
883
  "width": 6,
282
- "y": 27,
884
+ "y": 63,
283
885
  "x": 0,
284
886
  "type": "text",
285
887
  "properties": {
@@ -289,7 +891,7 @@ Resources:
289
891
  {
290
892
  "height": 3,
291
893
  "width": 3,
292
- "y": 27,
894
+ "y": 63,
293
895
  "x": 6,
294
896
  "type": "metric",
295
897
  "properties": {
@@ -301,13 +903,14 @@ Resources:
301
903
  "region": "us-east-1",
302
904
  "stat": "Sum",
303
905
  "period": 60,
906
+ "sparkline": true,
304
907
  "title": "Messages Per Minute"
305
908
  }
306
909
  },
307
910
  {
308
911
  "height": 3,
309
912
  "width": 15,
310
- "y": 27,
913
+ "y": 63,
311
914
  "x": 9,
312
915
  "type": "metric",
313
916
  "properties": {
@@ -323,13 +926,14 @@ Resources:
323
926
  "region": "us-east-1",
324
927
  "stat": "p10",
325
928
  "period": 60,
929
+ "sparkline": true,
326
930
  "title": "Handler Duration"
327
931
  }
328
932
  },
329
933
  {
330
934
  "height": 6,
331
935
  "width": 9,
332
- "y": 30,
936
+ "y": 66,
333
937
  "x": 0,
334
938
  "type": "metric",
335
939
  "properties": {
@@ -359,7 +963,7 @@ Resources:
359
963
  {
360
964
  "height": 6,
361
965
  "width": 9,
362
- "y": 30,
966
+ "y": 66,
363
967
  "x": 9,
364
968
  "type": "metric",
365
969
  "properties": {
@@ -379,7 +983,7 @@ Resources:
379
983
  {
380
984
  "height": 3,
381
985
  "width": 6,
382
- "y": 30,
986
+ "y": 66,
383
987
  "x": 18,
384
988
  "type": "metric",
385
989
  "properties": {
@@ -405,7 +1009,7 @@ Resources:
405
1009
  {
406
1010
  "height": 3,
407
1011
  "width": 6,
408
- "y": 33,
1012
+ "y": 69,
409
1013
  "x": 18,
410
1014
  "type": "metric",
411
1015
  "properties": {
@@ -426,7 +1030,7 @@ Resources:
426
1030
  {
427
1031
  "height": 3,
428
1032
  "width": 6,
429
- "y": 36,
1033
+ "y": 72,
430
1034
  "x": 0,
431
1035
  "type": "text",
432
1036
  "properties": {
@@ -436,7 +1040,7 @@ Resources:
436
1040
  {
437
1041
  "height": 3,
438
1042
  "width": 3,
439
- "y": 36,
1043
+ "y": 72,
440
1044
  "x": 6,
441
1045
  "type": "metric",
442
1046
  "properties": {
@@ -448,13 +1052,14 @@ Resources:
448
1052
  "region": "us-east-1",
449
1053
  "stat": "Sum",
450
1054
  "period": 60,
1055
+ "sparkline": true,
451
1056
  "title": "Messages Per Minute"
452
1057
  }
453
1058
  },
454
1059
  {
455
1060
  "height": 3,
456
1061
  "width": 15,
457
- "y": 36,
1062
+ "y": 72,
458
1063
  "x": 9,
459
1064
  "type": "metric",
460
1065
  "properties": {
@@ -470,13 +1075,14 @@ Resources:
470
1075
  "region": "us-east-1",
471
1076
  "stat": "p10",
472
1077
  "period": 60,
1078
+ "sparkline": true,
473
1079
  "title": "Handler Duration"
474
1080
  }
475
1081
  },
476
1082
  {
477
1083
  "height": 6,
478
1084
  "width": 9,
479
- "y": 39,
1085
+ "y": 75,
480
1086
  "x": 0,
481
1087
  "type": "metric",
482
1088
  "properties": {
@@ -506,7 +1112,7 @@ Resources:
506
1112
  {
507
1113
  "height": 6,
508
1114
  "width": 9,
509
- "y": 39,
1115
+ "y": 75,
510
1116
  "x": 9,
511
1117
  "type": "metric",
512
1118
  "properties": {
@@ -526,7 +1132,7 @@ Resources:
526
1132
  {
527
1133
  "height": 3,
528
1134
  "width": 6,
529
- "y": 39,
1135
+ "y": 75,
530
1136
  "x": 18,
531
1137
  "type": "metric",
532
1138
  "properties": {
@@ -552,7 +1158,7 @@ Resources:
552
1158
  {
553
1159
  "height": 3,
554
1160
  "width": 6,
555
- "y": 42,
1161
+ "y": 78,
556
1162
  "x": 18,
557
1163
  "type": "metric",
558
1164
  "properties": {
@@ -576,7 +1182,7 @@ Resources:
576
1182
  {
577
1183
  "height": 3,
578
1184
  "width": 6,
579
- "y": 45,
1185
+ "y": 81,
580
1186
  "x": 0,
581
1187
  "type": "text",
582
1188
  "properties": {
@@ -586,7 +1192,7 @@ Resources:
586
1192
  {
587
1193
  "height": 3,
588
1194
  "width": 3,
589
- "y": 45,
1195
+ "y": 81,
590
1196
  "x": 6,
591
1197
  "type": "metric",
592
1198
  "properties": {
@@ -597,13 +1203,14 @@ Resources:
597
1203
  "region": "us-east-1",
598
1204
  "stat": "Average",
599
1205
  "period": 60,
1206
+ "sparkline": true,
600
1207
  "title": "Messages To Be Scheduled"
601
1208
  }
602
1209
  },
603
1210
  {
604
1211
  "height": 3,
605
1212
  "width": 15,
606
- "y": 45,
1213
+ "y": 81,
607
1214
  "x": 9,
608
1215
  "type": "metric",
609
1216
  "properties": {
@@ -617,6 +1224,7 @@ Resources:
617
1224
  "region": "us-east-1",
618
1225
  "stat": "p10",
619
1226
  "period": 60,
1227
+ "sparkline": true,
620
1228
  "title": "Handler Duration"
621
1229
  }
622
1230
  },
@@ -627,7 +1235,7 @@ Resources:
627
1235
  {
628
1236
  "height": 3,
629
1237
  "width": 6,
630
- "y": 48,
1238
+ "y": 84,
631
1239
  "x": 18,
632
1240
  "type": "metric",
633
1241
  "properties": {
@@ -652,7 +1260,7 @@ Resources:
652
1260
  {
653
1261
  "height": 3,
654
1262
  "width": 9,
655
- "y": 48,
1263
+ "y": 84,
656
1264
  "x": 9,
657
1265
  "type": "metric",
658
1266
  "properties": {
@@ -672,7 +1280,7 @@ Resources:
672
1280
  {
673
1281
  "height": 3,
674
1282
  "width": 9,
675
- "y": 48,
1283
+ "y": 84,
676
1284
  "x": 0,
677
1285
  "type": "metric",
678
1286
  "properties": {
@@ -694,7 +1302,7 @@ Resources:
694
1302
  {
695
1303
  "height": 3,
696
1304
  "width": 9,
697
- "y": 51,
1305
+ "y": 87,
698
1306
  "x": 0,
699
1307
  "type": "metric",
700
1308
  "properties": {
@@ -716,7 +1324,7 @@ Resources:
716
1324
  {
717
1325
  "height": 3,
718
1326
  "width": 6,
719
- "y": 51,
1327
+ "y": 87,
720
1328
  "x": 18,
721
1329
  "type": "metric",
722
1330
  "properties": {
@@ -734,7 +1342,7 @@ Resources:
734
1342
  {
735
1343
  "height": 3,
736
1344
  "width": 9,
737
- "y": 51,
1345
+ "y": 87,
738
1346
  "x": 9,
739
1347
  "type": "metric",
740
1348
  "properties": {
@@ -760,7 +1368,7 @@ Resources:
760
1368
  {
761
1369
  "height": 3,
762
1370
  "width": 18,
763
- "y": 54,
1371
+ "y": 90,
764
1372
  "x": 0,
765
1373
  "type": "metric",
766
1374
  "properties": {
@@ -784,7 +1392,7 @@ Resources:
784
1392
  {
785
1393
  "height": 3,
786
1394
  "width": 6,
787
- "y": 54,
1395
+ "y": 90,
788
1396
  "x": 18,
789
1397
  "type": "metric",
790
1398
  "properties": {
@@ -21,6 +21,160 @@ Resources:
21
21
  },
22
22
  <% current_y += 3 %>
23
23
 
24
+
25
+ <%- app_worker_names.each do |worker_name| -%>
26
+ { <% "Worker" %>
27
+ "height": 3,
28
+ "width": 6,
29
+ "y": <%= current_y %>,
30
+ "x": 0,
31
+ "type": "text",
32
+ "properties": {
33
+ "markdown": "\n# <%= worker_name %>\n"
34
+ }
35
+ },
36
+ { <% "Worker Jobs per minute" %>
37
+ "height": 3,
38
+ "width": 6,
39
+ "y": <%= current_y %>,
40
+ "x": 6,
41
+ "type": "metric",
42
+ "properties": {
43
+ "metrics": [
44
+ [ "${self:custom.funktor.DashboardNamespace}", "processed", "WorkerClassName", "<%= worker_name %>" ],
45
+ [ "${self:custom.funktor.DashboardNamespace}", "failed", "WorkerClassName", "<%= worker_name %>", { "color": "#d62728" } ]
46
+ ],
47
+ "view": "singleValue",
48
+ "region": "us-east-1",
49
+ "stat": "Sum",
50
+ "period": 60,
51
+ "sparkline": true,
52
+ "title": "<%= worker_name %> Jobs Per Minute"
53
+ }
54
+ },
55
+ { <% "Worker Durations" %>
56
+ "height": 3,
57
+ "width": 12,
58
+ "y": <%= current_y %>,
59
+ "x": 12,
60
+ "type": "metric",
61
+ "properties": {
62
+ "metrics": [
63
+ [ "${self:custom.funktor.DashboardNamespace}", "Duration", "WorkerClassName", "<%= worker_name %>", { "label": "p10" } ],
64
+ [ "...", { "label": "p50", "stat": "p50" } ],
65
+ [ "...", { "label": "p99", "stat": "p99" } ],
66
+ [ "...", { "label": "Average", "stat": "Average" } ]
67
+ ],
68
+ "view": "singleValue",
69
+ "region": "us-east-1",
70
+ "stat": "p10",
71
+ "period": 60,
72
+ "sparkline": true,
73
+ "title": "<%= worker_name %> Duration"
74
+ }
75
+ },
76
+ <% current_y += 3 %>
77
+
78
+
79
+
80
+
81
+ { <% "Processed Jobs By Worker" %>
82
+ "height": 3,
83
+ "width": 6,
84
+ "y": <%= current_y %>,
85
+ "x": 0,
86
+ "type": "metric",
87
+ "properties": {
88
+ "metrics": [
89
+ [ "${self:custom.funktor.DashboardNamespace}", "processed", "WorkerClassName", "<%= worker_name %>" ]
90
+ ],
91
+ "view": "timeSeries",
92
+ "stacked": false,
93
+ "region": "us-east-1",
94
+ "title": "<%= worker_name %> Processed Jobs",
95
+ "period": 60,
96
+ "stat": "Sum"
97
+ }
98
+ },
99
+ { <% "Failed Jobs By Worker" %>
100
+ "height": 3,
101
+ "width": 6,
102
+ "y": <%= current_y + 3 %>,
103
+ "x": 0,
104
+ "type": "metric",
105
+ "properties": {
106
+ "metrics": [
107
+ [ "${self:custom.funktor.DashboardNamespace}", "failed", "WorkerClassName", "<%= worker_name %>", { "color": "#d62728" }]
108
+ ],
109
+ "view": "timeSeries",
110
+ "stacked": false,
111
+ "region": "us-east-1",
112
+ "title": "<%= worker_name %> Failed Jobs",
113
+ "period": 60,
114
+ "stat": "Sum"
115
+ }
116
+ },
117
+ { <% "Job Duration By Worker" %>
118
+ "height": 6,
119
+ "width": 12,
120
+ "y": <%= current_y %>,
121
+ "x": 6,
122
+ "type": "metric",
123
+ "properties": {
124
+ "metrics": [
125
+ [ "${self:custom.funktor.DashboardNamespace}", "Duration", "WorkerClassName", "<%= worker_name %>" ],
126
+ [ "...", { "stat": "p80" } ],
127
+ [ "...", { "stat": "p70" } ],
128
+ [ "...", { "stat": "p60" } ]
129
+ ],
130
+ "view": "timeSeries",
131
+ "stacked": false,
132
+ "region": "us-east-1",
133
+ "stat": "p90",
134
+ "period": 60,
135
+ "title": "<%= worker_name %> Duration Percentiles"
136
+ }
137
+ },
138
+ { <% "Maximum By Worker" %>
139
+ "height": 3,
140
+ "width": 6,
141
+ "y": <%= current_y %>,
142
+ "x": 18,
143
+ "type": "metric",
144
+ "properties": {
145
+ "metrics": [
146
+ [ "${self:custom.funktor.DashboardNamespace}", "Duration", "WorkerClassName", "<%= worker_name %>" ]
147
+ ],
148
+ "view": "timeSeries",
149
+ "stacked": false,
150
+ "region": "us-east-1",
151
+ "stat": "Maximum",
152
+ "period": 60,
153
+ "title": "<%= worker_name %> Max"
154
+ }
155
+ },
156
+ { <% "Minimum By Worker" %>
157
+ "height": 3,
158
+ "width": 6,
159
+ "y": <%= current_y %>,
160
+ "x": 18,
161
+ "type": "metric",
162
+ "properties": {
163
+ "metrics": [
164
+ [ "${self:custom.funktor.DashboardNamespace}", "Duration", "WorkerClassName", "<%= worker_name %>" ]
165
+ ],
166
+ "view": "timeSeries",
167
+ "stacked": false,
168
+ "region": "us-east-1",
169
+ "stat": "Minimum",
170
+ "period": 60,
171
+ "title": "<%= worker_name %> Min"
172
+ }
173
+ },
174
+ <% current_y += 6 %>
175
+ <%- end -%>
176
+
177
+
24
178
  { <% "Job Duration By Worker" %>
25
179
  "height": 6,
26
180
  "width": 12,
@@ -65,6 +219,7 @@ Resources:
65
219
  }
66
220
  },
67
221
  <% current_y += 6 %>
222
+
68
223
  { <% "Job Duration By Queue" %>
69
224
  "height": 6,
70
225
  "width": 12,
@@ -147,6 +302,7 @@ Resources:
147
302
  "region": "us-east-1",
148
303
  "stat": "Sum",
149
304
  "period": 60,
305
+ "sparkline": true,
150
306
  "title": "Messages Per Minute"
151
307
  }
152
308
  },
@@ -167,6 +323,7 @@ Resources:
167
323
  "region": "us-east-1",
168
324
  "stat": "p10",
169
325
  "period": 60,
326
+ "sparkline": true,
170
327
  "title": "Handler Duration"
171
328
  }
172
329
  },
@@ -294,6 +451,7 @@ Resources:
294
451
  "region": "us-east-1",
295
452
  "stat": "Sum",
296
453
  "period": 60,
454
+ "sparkline": true,
297
455
  "title": "Messages Per Minute"
298
456
  }
299
457
  },
@@ -316,6 +474,7 @@ Resources:
316
474
  "region": "us-east-1",
317
475
  "stat": "p10",
318
476
  "period": 60,
477
+ "sparkline": true,
319
478
  "title": "Handler Duration"
320
479
  }
321
480
  },
@@ -444,6 +603,7 @@ Resources:
444
603
  "region": "us-east-1",
445
604
  "stat": "Average",
446
605
  "period": 60,
606
+ "sparkline": true,
447
607
  "title": "Messages To Be Scheduled"
448
608
  }
449
609
  },
@@ -464,6 +624,7 @@ Resources:
464
624
  "region": "us-east-1",
465
625
  "stat": "p10",
466
626
  "period": 60,
627
+ "sparkline": true,
467
628
  "title": "Handler Duration"
468
629
  }
469
630
  },
@@ -1,3 +1,3 @@
1
1
  module Funktor
2
- VERSION = "0.7.7"
2
+ VERSION = "0.7.8"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: funktor
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.7
4
+ version: 0.7.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeremy Green
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-05-12 00:00:00.000000000 Z
11
+ date: 2022-05-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-sqs