funktor 0.7.10 → 0.7.13

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.
@@ -67,3 +67,9 @@ queues:
67
67
  # https://zaccharles.medium.com/reproducing-the-sqs-trigger-and-lambda-concurrency-limit-issue-f4c09d384a18
68
68
  reservedConcurrency: 10
69
69
 
70
+ # Here you can specify a list of worker that you want to monitor closely
71
+ primaryWorkers:
72
+ - HelloWorker
73
+ - GreetingsWorker
74
+ - AuditWorker
75
+ - SingleThreadAuditWorker
@@ -141,6 +141,10 @@ module Funktor
141
141
 
142
142
  private
143
143
 
144
+ def primary_workers
145
+ funktor_config["primaryWorkers"] || app_worker_names
146
+ end
147
+
144
148
  def app_worker_names
145
149
  app_worker_files.map do |file|
146
150
  File.basename(file, ".rb").camelize
@@ -21,8 +21,298 @@ Resources:
21
21
  },
22
22
  <% current_y += 3 %>
23
23
 
24
+ { <% "Processed Jobs By Worker" %>
25
+ "height": 4,
26
+ "width": 12,
27
+ "y": <%= current_y %>,
28
+ "x": 0,
29
+ "type": "metric",
30
+ "properties": {
31
+ "metrics": [
32
+ <%- primary_workers.each do |worker_name| -%>
33
+ [ "${self:custom.funktor.DashboardNamespace}", "processed", "WorkerClassName", "<%= worker_name %>" ]<%= worker_name == primary_workers.last ? "" : "," %>
34
+ <%- end -%>
35
+ ],
36
+ "view": "timeSeries",
37
+ "stacked": false,
38
+ "region": "us-east-1",
39
+ "title": "Processed Jobs By Worker",
40
+ "period": 60,
41
+ "stat": "Sum"
42
+ }
43
+ },
44
+ { <% "p90 By Worker" %>
45
+ "height": 4,
46
+ "width": 12,
47
+ "y": <%= current_y %>,
48
+ "x": 12,
49
+ "type": "metric",
50
+ "properties": {
51
+ "metrics": [
52
+ <%- primary_workers.each do |worker_name| -%>
53
+ [ "${self:custom.funktor.DashboardNamespace}", "Duration", "WorkerClassName", "<%= worker_name %>" ]<%= worker_name == primary_workers.last ? "" : "," %>
54
+ <%- end -%>
55
+ ],
56
+ "view": "timeSeries",
57
+ "stacked": false,
58
+ "region": "us-east-1",
59
+ "stat": "p90",
60
+ "period": 60,
61
+ "title": "p90 by Worker"
62
+ }
63
+ },
64
+ <% current_y += 3 %>
65
+
66
+ { <% "Failed Jobs By Worker" %>
67
+ "height": 4,
68
+ "width": 12,
69
+ "y": <%= current_y %>,
70
+ "x": 0,
71
+ "type": "metric",
72
+ "properties": {
73
+ "metrics": [
74
+ <%- primary_workers.each do |worker_name| -%>
75
+ [ "${self:custom.funktor.DashboardNamespace}", "failed", "WorkerClassName", "<%= worker_name %>" ]<%= worker_name == primary_workers.last ? "" : "," %>
76
+ <%- end -%>
77
+ ],
78
+ "view": "timeSeries",
79
+ "stacked": false,
80
+ "region": "us-east-1",
81
+ "title": "Failed Jobs By Worker",
82
+ "period": 60,
83
+ "stat": "Sum"
84
+ }
85
+ },
86
+ { <% "p50 By Worker" %>
87
+ "height": 4,
88
+ "width": 12,
89
+ "y": <%= current_y %>,
90
+ "x": 12,
91
+ "type": "metric",
92
+ "properties": {
93
+ "metrics": [
94
+ <%- primary_workers.each do |worker_name| -%>
95
+ [ "${self:custom.funktor.DashboardNamespace}", "Duration", "WorkerClassName", "<%= worker_name %>" ]<%= worker_name == primary_workers.last ? "" : "," %>
96
+ <%- end -%>
97
+ ],
98
+ "view": "timeSeries",
99
+ "stacked": false,
100
+ "region": "us-east-1",
101
+ "stat": "p50",
102
+ "period": 60,
103
+ "title": "p50 by Worker"
104
+ }
105
+ },
106
+ <% current_y += 3 %>
107
+
108
+ { <% "Processed Jobs By Queue" %>
109
+ "height": 4,
110
+ "width": 12,
111
+ "y": <%= current_y %>,
112
+ "x": 0,
113
+ "type": "metric",
114
+ "properties": {
115
+ "metrics": [
116
+ <%- queue_names.each do |queue_name| -%>
117
+ [ "${self:custom.funktor.DashboardNamespace}", "processed", "Queue", "<%= queue_name.underscore %>" ]<%= queue_name == queue_names.last ? "" : "," %>
118
+ <%- end -%>
119
+ ],
120
+ "view": "timeSeries",
121
+ "stacked": false,
122
+ "region": "us-east-1",
123
+ "title": "Processed Jobs By Queue",
124
+ "period": 60,
125
+ "stat": "Sum"
126
+ }
127
+ },
128
+ { <% "p90 By Queue" %>
129
+ "height": 4,
130
+ "width": 12,
131
+ "y": <%= current_y %>,
132
+ "x": 12,
133
+ "type": "metric",
134
+ "properties": {
135
+ "metrics": [
136
+ <%- queue_names.each do |queue_name| -%>
137
+ [ "${self:custom.funktor.DashboardNamespace}", "Duration", "Queue", "<%= queue_name.underscore %>" ]<%= queue_name == queue_names.last ? "" : "," %>
138
+ <%- end -%>
139
+ ],
140
+ "view": "timeSeries",
141
+ "stacked": false,
142
+ "region": "us-east-1",
143
+ "stat": "p90",
144
+ "period": 60,
145
+ "title": "p90 by Queue"
146
+ }
147
+ },
148
+
149
+ <% current_y += 3 %>
150
+ { <% "Failed Jobs By Queue" %>
151
+ "height": 4,
152
+ "width": 12,
153
+ "y": <%= current_y %>,
154
+ "x": 0,
155
+ "type": "metric",
156
+ "properties": {
157
+ "metrics": [
158
+ <%- queue_names.each do |queue_name| -%>
159
+ [ "${self:custom.funktor.DashboardNamespace}", "failed", "Queue", "<%= queue_name.underscore %>" ]<%= queue_name == queue_names.last ? "" : "," %>
160
+ <%- end -%>
161
+ ],
162
+ "view": "timeSeries",
163
+ "stacked": false,
164
+ "region": "us-east-1",
165
+ "title": "Failed Jobs By Queue",
166
+ "period": 60,
167
+ "stat": "Sum"
168
+ }
169
+ },
170
+ { <% "p50 By Queue" %>
171
+ "height": 4,
172
+ "width": 12,
173
+ "y": <%= current_y %>,
174
+ "x": 12,
175
+ "type": "metric",
176
+ "properties": {
177
+ "metrics": [
178
+ <%- queue_names.each do |queue_name| -%>
179
+ [ "${self:custom.funktor.DashboardNamespace}", "Duration", "Queue", "<%= queue_name.underscore %>" ]<%= queue_name == queue_names.last ? "" : "," %>
180
+ <%- end -%>
181
+ ],
182
+ "view": "timeSeries",
183
+ "stacked": false,
184
+ "region": "us-east-1",
185
+ "stat": "p50",
186
+ "period": 60,
187
+ "title": "p50 by Queue"
188
+ }
189
+ },
190
+ <% current_y += 3 %>
191
+
192
+ { <% "Jobs/Minute Section" %>
193
+ "height": 1,
194
+ "width": 24,
195
+ "y": <%= current_y %>,
196
+ "x": 0,
197
+ "type": "text",
198
+ "properties": {
199
+ "markdown": "\n# Jobs Per Minute By Worker\n"
200
+ }
201
+ },
202
+ <% current_y += 1 %>
203
+
204
+
205
+ <%- primary_workers.each_with_index do |worker_name, index| -%>
206
+ <%- current_y += 3 if (index > 0 && (index % 6) == 0) %>
207
+ { <% "Processed Jobs By Worker" %>
208
+ "height": 3,
209
+ "width": 4,
210
+ "y": <%= current_y %>,
211
+ "x": <%= (index % 6) * 4 %>,
212
+ "type": "metric",
213
+ "properties": {
214
+ "metrics": [
215
+ [ "${self:custom.funktor.DashboardNamespace}", "processed", "WorkerClassName", "<%= worker_name %>" ]
216
+ ],
217
+ "view": "timeSeries",
218
+ "stacked": false,
219
+ "region": "us-east-1",
220
+ "title": "<%= worker_name %> Jobs/Min",
221
+ "period": 60,
222
+ "stat": "Sum",
223
+ "legend": {
224
+ "position": "hidden"
225
+ }
226
+ }
227
+ },
228
+ <%- end -%>
229
+ <%- current_y += 3 if (primary_workers.count - 1) % 6 != 0 %>
230
+
231
+
232
+ { <% "Failures/Minute Section" %>
233
+ "height": 1,
234
+ "width": 24,
235
+ "y": <%= current_y %>,
236
+ "x": 0,
237
+ "type": "text",
238
+ "properties": {
239
+ "markdown": "\n# Failures Per Minute By Worker\n"
240
+ }
241
+ },
242
+ <% current_y += 1 %>
243
+
244
+
245
+ <%- primary_workers.each_with_index do |worker_name, index| -%>
246
+ <%- current_y += 3 if (index > 0 && (index % 6) == 0) %>
247
+ { <% "Failed Jobs By Worker" %>
248
+ "height": 3,
249
+ "width": 4,
250
+ "y": <%= current_y %>,
251
+ "x": <%= (index % 6) * 4 %>,
252
+ "type": "metric",
253
+ "properties": {
254
+ "metrics": [
255
+ [ "${self:custom.funktor.DashboardNamespace}", "failed", "WorkerClassName", "<%= worker_name %>", { "color": "#d62728" } ]
256
+ ],
257
+ "view": "timeSeries",
258
+ "stacked": false,
259
+ "region": "us-east-1",
260
+ "title": "<%= worker_name %> Fails/Min",
261
+ "period": 60,
262
+ "stat": "Sum",
263
+ "legend": {
264
+ "position": "hidden"
265
+ }
266
+ }
267
+ },
268
+ <%- end -%>
269
+ <%- current_y += 3 if (primary_workers.count - 1) % 6 != 0 %>
270
+
271
+
272
+ { <% "Duration Percentiles Section" %>
273
+ "height": 1,
274
+ "width": 24,
275
+ "y": <%= current_y %>,
276
+ "x": 0,
277
+ "type": "text",
278
+ "properties": {
279
+ "markdown": "\n# Duration Percentiles By Worker\n"
280
+ }
281
+ },
282
+ <% current_y += 1 %>
24
283
 
25
- <%- app_worker_names.each do |worker_name| -%>
284
+
285
+ <%- primary_workers.each_with_index do |worker_name, index| -%>
286
+ <%- current_y += 4 if (index > 0 && (index % 6) == 0) %>
287
+ { <% "Job Duration By Worker" %>
288
+ "height": 4,
289
+ "width": 4,
290
+ "y": <%= current_y %>,
291
+ "x": <%= (index % 6) * 4 %>,
292
+ "type": "metric",
293
+ "properties": {
294
+ "metrics": [
295
+ [ "${self:custom.funktor.DashboardNamespace}", "Duration", "WorkerClassName", "<%= worker_name %>", { "label": "p90", "stat": "p90", "color": "#d62728" } ],
296
+ [ "...", { "label": "p80", "stat": "p80", "color": "#2ca02c" } ],
297
+ [ "...", { "label": "p70", "stat": "p70", "color": "#ff7f0e" } ],
298
+ [ "...", { "label": "p60", "color": "#1f77b4" } ]
299
+ ],
300
+ "view": "timeSeries",
301
+ "stacked": false,
302
+ "region": "us-east-1",
303
+ "stat": "p60",
304
+ "period": 60,
305
+ "title": "<%= worker_name %> Duration Percentiles",
306
+ "legend": {
307
+ "position": "bottom"
308
+ }
309
+ }
310
+ },
311
+ <%- end -%>
312
+ <%- current_y += 3 if (primary_workers.count - 1) % 6 != 0 %>
313
+
314
+
315
+ <%- primary_workers.each do |worker_name| -%>
26
316
  { <% "Worker" %>
27
317
  "height": 1,
28
318
  "width": 24,
@@ -36,7 +326,7 @@ Resources:
36
326
  <% current_y += 1 %>
37
327
 
38
328
  { <% "Worker Jobs per minute" %>
39
- "height": 2,
329
+ "height": 3,
40
330
  "width": 3,
41
331
  "y": <%= current_y %>,
42
332
  "x": 0,
@@ -49,12 +339,12 @@ Resources:
49
339
  "region": "us-east-1",
50
340
  "stat": "Sum",
51
341
  "period": 60,
52
- "sparkline": false,
342
+ "sparkline": true,
53
343
  "title": "<%= worker_name %> Processed/Min"
54
344
  }
55
345
  },
56
346
  { <% "Worker Jobs per minute" %>
57
- "height": 2,
347
+ "height": 3,
58
348
  "width": 3,
59
349
  "y": <%= current_y %>,
60
350
  "x": 3,
@@ -67,12 +357,12 @@ Resources:
67
357
  "region": "us-east-1",
68
358
  "stat": "Sum",
69
359
  "period": 60,
70
- "sparkline": false,
360
+ "sparkline": true,
71
361
  "title": "<%= worker_name %> Failed/Min"
72
362
  }
73
363
  },
74
364
  { <% "Worker Duration Percentiles" %>
75
- "height": 2,
365
+ "height": 3,
76
366
  "width": 3,
77
367
  "y": <%= current_y %>,
78
368
  "x": 6,
@@ -85,12 +375,12 @@ Resources:
85
375
  "region": "us-east-1",
86
376
  "stat": "p60",
87
377
  "period": 60,
88
- "sparkline": false,
378
+ "sparkline": true,
89
379
  "title": "<%= worker_name %> p60"
90
380
  }
91
381
  },
92
382
  { <% "Worker Duration Percentiles" %>
93
- "height": 2,
383
+ "height": 3,
94
384
  "width": 3,
95
385
  "y": <%= current_y %>,
96
386
  "x": 9,
@@ -103,12 +393,12 @@ Resources:
103
393
  "region": "us-east-1",
104
394
  "stat": "p70",
105
395
  "period": 60,
106
- "sparkline": false,
396
+ "sparkline": true,
107
397
  "title": "<%= worker_name %> p70"
108
398
  }
109
399
  },
110
400
  { <% "Worker Duration Percentiles" %>
111
- "height": 2,
401
+ "height": 3,
112
402
  "width": 3,
113
403
  "y": <%= current_y %>,
114
404
  "x": 12,
@@ -121,12 +411,12 @@ Resources:
121
411
  "region": "us-east-1",
122
412
  "stat": "p80",
123
413
  "period": 60,
124
- "sparkline": false,
414
+ "sparkline": true,
125
415
  "title": "<%= worker_name %> p80"
126
416
  }
127
417
  },
128
418
  { <% "Worker Duration Percentiles" %>
129
- "height": 2,
419
+ "height": 3,
130
420
  "width": 3,
131
421
  "y": <%= current_y %>,
132
422
  "x": 15,
@@ -139,12 +429,12 @@ Resources:
139
429
  "region": "us-east-1",
140
430
  "stat": "p90",
141
431
  "period": 60,
142
- "sparkline": false,
432
+ "sparkline": true,
143
433
  "title": "<%= worker_name %> p90"
144
434
  }
145
435
  },
146
436
  { <% "Worker Min/Max" %>
147
- "height": 2,
437
+ "height": 3,
148
438
  "width": 3,
149
439
  "y": <%= current_y %>,
150
440
  "x": 18,
@@ -157,12 +447,12 @@ Resources:
157
447
  "region": "us-east-1",
158
448
  "stat": "Minimum",
159
449
  "period": 60,
160
- "sparkline": false,
450
+ "sparkline": true,
161
451
  "title": "<%= worker_name %> Min"
162
452
  }
163
453
  },
164
454
  { <% "Worker Min/Max" %>
165
- "height": 2,
455
+ "height": 3,
166
456
  "width": 3,
167
457
  "y": <%= current_y %>,
168
458
  "x": 21,
@@ -175,7 +465,7 @@ Resources:
175
465
  "region": "us-east-1",
176
466
  "stat": "Maximum",
177
467
  "period": 60,
178
- "sparkline": false,
468
+ "sparkline": true,
179
469
  "title": "<%= worker_name %> Max"
180
470
  }
181
471
  },
@@ -292,54 +582,54 @@ Resources:
292
582
  }
293
583
  }
294
584
  },
295
-
296
585
  <% current_y += 6 %>
297
586
  <%- end -%>
298
587
 
299
-
300
- { <% "Job Duration By Worker" %>
588
+ { <% "Processed/Failed Jobs By Worker" %>
301
589
  "height": 6,
302
590
  "width": 12,
303
591
  "y": <%= current_y %>,
304
- "x": 12,
592
+ "x": 0,
305
593
  "type": "metric",
306
594
  "properties": {
307
595
  "metrics": [
308
- <%- app_worker_names.each do |worker_name| -%>
309
- [ "${self:custom.funktor.DashboardNamespace}", "Duration", "WorkerClassName", "<%= worker_name %>" ],
310
- [ "...", { "stat": "p99" } ]<%= worker_name == app_worker_names.last ? "" : "," %>
596
+ <%- primary_workers.each do |worker_name| -%>
597
+ [ "${self:custom.funktor.DashboardNamespace}", "processed", "WorkerClassName", "<%= worker_name %>" ],
598
+ [ ".", "failed", ".", "." ]<%= worker_name == primary_workers.last ? "" : "," %>
311
599
  <%- end -%>
312
600
  ],
313
601
  "view": "timeSeries",
314
602
  "stacked": false,
315
603
  "region": "us-east-1",
316
- "stat": "Average",
604
+ "title": "Process/Failed Jobs By Worker",
317
605
  "period": 60,
318
- "title": "Job Duration by Worker"
319
- }
606
+ "stat": "Sum"
607
+ }
320
608
  },
321
609
 
322
- { <% "Processed/Failed Jobs By Worker" %>
610
+ { <% "Job Duration By Worker" %>
323
611
  "height": 6,
324
612
  "width": 12,
325
613
  "y": <%= current_y %>,
326
- "x": 0,
614
+ "x": 12,
327
615
  "type": "metric",
328
616
  "properties": {
329
617
  "metrics": [
330
- <%- app_worker_names.each do |worker_name| -%>
331
- [ "${self:custom.funktor.DashboardNamespace}", "processed", "WorkerClassName", "<%= worker_name %>" ],
332
- [ ".", "failed", ".", "." ]<%= worker_name == app_worker_names.last ? "" : "," %>
618
+ <%- primary_workers.each do |worker_name| -%>
619
+ [ "${self:custom.funktor.DashboardNamespace}", "Duration", "WorkerClassName", "<%= worker_name %>" ],
620
+ [ "...", { "stat": "p99" } ]<%= worker_name == primary_workers.last ? "" : "," %>
333
621
  <%- end -%>
334
622
  ],
335
623
  "view": "timeSeries",
336
624
  "stacked": false,
337
625
  "region": "us-east-1",
338
- "title": "Process/Failed Jobs By Worker",
626
+ "stat": "Average",
339
627
  "period": 60,
340
- "stat": "Sum"
341
- }
628
+ "title": "Job Duration by Worker"
629
+ }
342
630
  },
631
+
632
+
343
633
  <% current_y += 6 %>
344
634
 
345
635
  { <% "Job Duration By Queue" %>
@@ -436,17 +726,17 @@ Resources:
436
726
  "type": "metric",
437
727
  "properties": {
438
728
  "metrics": [
439
- [ "AWS/Lambda", "Duration", "FunctionName", "${self:custom.funktor.IncomingJobHandlerName}", "Resource", "${self:custom.funktor.IncomingJobHandlerName}", { "label": "p10" } ],
440
- [ "...", { "label": "p50", "stat": "p50" } ],
441
- [ "...", { "label": "p99", "stat": "p99" } ],
442
- [ "...", { "label": "Average", "stat": "Average" } ]
729
+ [ "AWS/Lambda", "Duration", "FunctionName", "${self:custom.funktor.IncomingJobHandlerName}", "Resource", "${self:custom.funktor.IncomingJobHandlerName}", { "label": "p60" } ],
730
+ [ "...", { "label": "p70", "stat": "p70" } ],
731
+ [ "...", { "label": "p80", "stat": "p80" } ],
732
+ [ "...", { "label": "p90", "stat": "p90" } ]
443
733
  ],
444
734
  "view": "singleValue",
445
735
  "region": "us-east-1",
446
- "stat": "p10",
736
+ "stat": "p60",
447
737
  "period": 60,
448
738
  "sparkline": true,
449
- "title": "Handler Duration"
739
+ "title": "Handler Duration Percentiles"
450
740
  }
451
741
  },
452
742
 
@@ -487,9 +777,10 @@ Resources:
487
777
  "properties": {
488
778
  "period": 60,
489
779
  "metrics": [
490
- [ "AWS/Lambda", "Duration", "FunctionName", "${self:custom.funktor.IncomingJobHandlerName}", { "stat": "Minimum" } ],
491
- [ "...", { "stat": "Average" } ],
492
- [ "...", { "stat": "Maximum" } ]
780
+ [ "AWS/Lambda", "Duration", "FunctionName", "${self:custom.funktor.IncomingJobHandlerName}", { "stat": "p60" } ],
781
+ [ "...", { "stat": "p70" } ],
782
+ [ "...", { "stat": "p80" } ],
783
+ [ "...", { "stat": "p90" } ]
493
784
  ],
494
785
  "region": "us-east-1",
495
786
  "title": "Incoming Job Handler Duration in Milliseconds",
@@ -587,14 +878,14 @@ Resources:
587
878
  "metrics": [
588
879
  [ "AWS/Lambda", "Duration", "FunctionName",
589
880
  "${self:custom.funktor.<%= queue_name.camelize %>QueueHandlerName}", "Resource",
590
- "${self:custom.funktor.<%= queue_name.camelize %>QueueHandlerName}", { "label": "p10" } ],
591
- [ "...", { "label": "p50", "stat": "p50" } ],
592
- [ "...", { "label": "p99", "stat": "p99" } ],
593
- [ "...", { "label": "Average", "stat": "Average" } ]
881
+ "${self:custom.funktor.<%= queue_name.camelize %>QueueHandlerName}", { "label": "p60" } ],
882
+ [ "...", { "label": "p70", "stat": "p70" } ],
883
+ [ "...", { "label": "p80", "stat": "p80" } ],
884
+ [ "...", { "label": "p90", "stat": "p90" } ]
594
885
  ],
595
886
  "view": "singleValue",
596
887
  "region": "us-east-1",
597
- "stat": "p10",
888
+ "stat": "p60",
598
889
  "period": 60,
599
890
  "sparkline": true,
600
891
  "title": "Handler Duration"
@@ -639,9 +930,10 @@ Resources:
639
930
  "properties": {
640
931
  "period": 60,
641
932
  "metrics": [
642
- [ "AWS/Lambda", "Duration", "FunctionName", "${self:custom.funktor.<%= queue_name.camelize %>QueueHandlerName}", { "stat": "Minimum" } ],
643
- [ "...", { "stat": "Average" } ],
644
- [ "...", { "stat": "Maximum" } ]
933
+ [ "AWS/Lambda", "Duration", "FunctionName", "${self:custom.funktor.<%= queue_name.camelize %>QueueHandlerName}", { "stat": "p60" } ],
934
+ [ "...", { "stat": "p70" } ],
935
+ [ "...", { "stat": "p80" } ],
936
+ [ "...", { "stat": "p90" } ]
645
937
  ],
646
938
  "region": "us-east-1",
647
939
  "title": "<%= queue_name.camelize %> Queue Handler Duration in Milliseconds",
@@ -737,14 +1029,14 @@ Resources:
737
1029
  "type": "metric",
738
1030
  "properties": {
739
1031
  "metrics": [
740
- [ "AWS/Lambda", "Duration", "FunctionName", "${self:custom.funktor.JobActivatorName}", "Resource", "${self:custom.funktor.JobActivatorName}", { "label": "p10" } ],
741
- [ "...", { "label": "p50", "stat": "p50" } ],
742
- [ "...", { "label": "p99", "stat": "p99" } ],
743
- [ "...", { "label": "Average", "stat": "Average" } ]
1032
+ [ "AWS/Lambda", "Duration", "FunctionName", "${self:custom.funktor.JobActivatorName}", "Resource", "${self:custom.funktor.JobActivatorName}", { "label": "p60" } ],
1033
+ [ "...", { "label": "p70", "stat": "p70" } ],
1034
+ [ "...", { "label": "p80", "stat": "p80" } ],
1035
+ [ "...", { "label": "p90", "stat": "p90" } ]
744
1036
  ],
745
1037
  "view": "singleValue",
746
1038
  "region": "us-east-1",
747
- "stat": "p10",
1039
+ "stat": "p60",
748
1040
  "period": 60,
749
1041
  "sparkline": true,
750
1042
  "title": "Handler Duration"
@@ -788,9 +1080,10 @@ Resources:
788
1080
  "properties": {
789
1081
  "period": 60,
790
1082
  "metrics": [
791
- [ "AWS/Lambda", "Duration", "FunctionName", "${self:custom.funktor.JobActivatorName}", { "stat": "Minimum" } ],
792
- [ "...", { "stat": "Average" } ],
793
- [ "...", { "stat": "Maximum" } ]
1083
+ [ "AWS/Lambda", "Duration", "FunctionName", "${self:custom.funktor.JobActivatorName}", { "stat": "p60" } ],
1084
+ [ "...", { "stat": "p70" } ],
1085
+ [ "...", { "stat": "p80" } ],
1086
+ [ "...", { "stat": "p90" } ]
794
1087
  ],
795
1088
  "region": "us-east-1",
796
1089
  "title": "Delayed Job Scheduler Duration",
@@ -67,3 +67,7 @@ queues:
67
67
  # https://zaccharles.medium.com/reproducing-the-sqs-trigger-and-lambda-concurrency-limit-issue-f4c09d384a18
68
68
  reservedConcurrency: 10
69
69
 
70
+ # Here you can specify a list of worker that you want to monitor closely.
71
+ # If you don't specify a list we'll set up detailed monitoring for all workers.
72
+ #primaryWorkers:
73
+ #- HelloWorker
@@ -1,3 +1,3 @@
1
1
  module Funktor
2
- VERSION = "0.7.10"
2
+ VERSION = "0.7.13"
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.10
4
+ version: 0.7.13
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-18 00:00:00.000000000 Z
11
+ date: 2022-05-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-sqs