rorvswild 1.7.0 → 1.8.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -96,24 +96,61 @@
96
96
  /* Panel Header */
97
97
  .rorvswild-local-panel__header {
98
98
  background: rgb(26 29 36) !important;
99
- padding: 12px !important;
100
99
  box-shadow: 0 1px 2px 0 rgba(14,18,26, .8) !important;
101
- display: flex;
102
100
  }
103
101
 
104
- .rorvswild-local-panel__header__title {
105
- color: rgb(199 203 214) !important;
102
+ .rorvswild-local-panel__header .rorvswild-local-panel__width-limiter {
103
+ display: flex !important;
104
+ align-items: center !important;
105
+ gap: 24px !important;
106
+ padding: 0 12px !important;
107
+ }
108
+
109
+ .rorvswild-local-panel__header nav {
106
110
  text-transform: uppercase !important;
107
111
  font-size: 12px !important;
108
- letter-spacing: 2px !important;
109
- text-align: center !important;
110
- flex: 1;
112
+ font-weight: 700 !important;
113
+ letter-spacing: 1px !important;
114
+ flex: 1 !important;
115
+ }
116
+
117
+ .rorvswild-local-panel__header nav ul {
118
+ padding: 0 !important;
119
+ margin: 0 !important;
120
+ list-style-type: none !important;
121
+ display: flex !important;
122
+ gap: 12px !important;
123
+ }
124
+
125
+ .rorvswild-local-panel__header nav li {
126
+ color: rgb(146 149 159) !important;
127
+ cursor: pointer !important;
128
+ line-height: 48px !important;
129
+ }
130
+
131
+ .rorvswild-local-panel__header nav li:hover {
132
+ color: rgb(199 203 214) !important;
133
+ }
134
+
135
+ [data-tab="requests"] .tab--requests {
136
+ color: rgb(199 203 214) !important;
137
+ box-shadow: 0 -3px 0 0 rgb(199 203 214) inset !important;
138
+ }
139
+
140
+ [data-tab="jobs"] .tab--jobs {
141
+ color: rgb(199 203 214) !important;
142
+ box-shadow: 0 -3px 0 0 rgb(199 203 214) inset !important;
143
+ }
144
+
145
+ [data-tab="errors"] .tab--errors {
146
+ color: rgb(199 203 214) !important;
147
+ box-shadow: 0 -3px 0 0 rgb(199 203 214) inset !important;
111
148
  }
112
149
 
113
150
  .rorvswild-local-panel svg {
114
151
  height: 24px !important;
115
152
  width: 24px !important;
116
- stroke-width: 2 !important;
153
+ stroke-width: 2.5 !important;
117
154
  fill: none !important;
118
155
  stroke-linecap: square !important;
119
156
  stroke: rgb(146 149 159) !important;
@@ -123,8 +160,6 @@
123
160
 
124
161
  .rorvswild-local-panel svg:hover { stroke: rgb(199 203 214) !important; }
125
162
 
126
- .rorvswild-local-panel__logo { width: 60px !important; }
127
-
128
163
  .rorvswild-local-panel__header__icons {
129
164
  width: 60px !important;
130
165
  display: flex !important;
@@ -150,10 +185,18 @@
150
185
  .rorvswild-local-panel__content {
151
186
  flex: 1 !important;
152
187
  height: calc(100% - 48px) !important;
153
- overflow-y: auto;
188
+ overflow-y: scroll;
154
189
  overscroll-behavior: contain;
155
190
  }
156
191
 
192
+ .rorvswild-local-panel--blank {
193
+ text-align: center !important;
194
+ margin: 0 auto !important;
195
+ font-size: 31px !important;
196
+ line-height: calc(100dvh - 120px) !important;
197
+ color: rgb(26 29 36) !important;
198
+ }
199
+
157
200
  .rorvswild-local-panel__content::-webkit-scrollbar { width: 4px !important; }
158
201
 
159
202
  .rorvswild-local-panel__content::-webkit-scrollbar-corner { background: transparent !important; }
@@ -169,7 +212,7 @@
169
212
  }
170
213
 
171
214
  /* Panel request summary */
172
- .rorvswild-local-panel__request {
215
+ .rorvswild-local-panel__row {
173
216
  display: flex !important;
174
217
  padding: 12px 12px 11px !important;
175
218
  border-bottom: 1px solid rgb(26 29 36) !important;
@@ -177,28 +220,66 @@
177
220
  flex-wrap: wrap !important;
178
221
  }
179
222
 
180
- .rorvswild-local-panel__request:hover { background: rgb(26 29 36) !important; }
223
+ .rorvswild-local-panel__row:first-of-type {
224
+ margin-top: 12px !important;
225
+ }
226
+
227
+ .rorvswild-local-panel__row:hover { background: rgb(26 29 36) !important; }
181
228
 
182
- .rorvswild-local-panel__request__name {
229
+ .rorvswild-local-panel__name {
183
230
  word-break: break-all !important;
184
231
  overflow-wrap: break-word !important;
185
232
  width: 100% !important;
186
233
  color: rgb(199 203 214) !important;
187
- font-weight: 700;
234
+ font-weight: 700 !important;
235
+ }
236
+
237
+ .rorvswild-local-panel__row:hover .rorvswild-local-panel__name { color: rgb(223 228 242) !important; }
238
+
239
+ .rorvswild-local-panel__row .rorvswild-local-panel__name > span {
240
+ text-decoration-color: rgb(146 149 159) !important;
241
+ text-decoration: underline !important;
242
+ text-decoration-thickness: 1px !important;
243
+ text-underline-offset: 1px !important;
244
+ }
245
+
246
+ .rorvswild-local-panel__row.rorvswild-local-panel__error .rorvswild-local-panel__name {
247
+ color: rgb(146 149 159) !important;
248
+ font-weight: 400 !important;
249
+ word-break: keep-all;
250
+ text-overflow: ellipsis;
251
+ white-space: nowrap;
252
+ overflow: hidden;
253
+ }
254
+
255
+ .rorvswild-local-panel__row.rorvswild-local-panel__error .rorvswild-local-panel__name > span,
256
+ .rorvswild-local-panel__error .rorvswild-local-panel__title {
257
+ color: rgb(255 184 172) !important;
258
+ font-weight: 700 !important;
259
+ }
260
+
261
+ .rorvswild-local-panel__row.rorvswild-local-panel__error:hover .rorvswild-local-panel__name > span { color: rgb(255 220 214) !important; }
262
+
263
+
264
+ .rorvswild-local-panel__error .rorvswild-local-panel__path {
265
+ color: rgb(199 203 214) !important;
188
266
  }
189
267
 
190
- .rorvswild-local-panel__request__path {
268
+ .rorvswild-local-panel__path {
191
269
  color: rgb(146 149 159) !important;
192
270
  font-weight: 400;
193
271
  display: block !important;
272
+ text-decoration: none !important;
273
+ text-decoration-thickness: 0 !important;
274
+ text-decoration-color: transparent !important;
194
275
  }
195
276
 
196
- .rorvswild-local-panel__request__started-at {
277
+ .rorvswild-local-panel__started-at {
197
278
  color: rgb(146 149 159) !important;
198
279
  margin-left: 12px !important;
199
280
  }
200
281
 
201
- .rorvswild-local-panel__request__runtime {
282
+ .rorvswild-local-panel__runtime {
202
283
  color: rgb(182 202 255) !important;
203
284
  font-weight: 700 !important;
204
285
  }
@@ -210,14 +291,14 @@
210
291
  display: block !important;
211
292
  }
212
293
 
213
- .rorvswild-local-panel__request-details__request {
294
+ .rorvswild-local-panel__details__header {
214
295
  display: flex !important;
215
- margin-bottom: 48px !important;
216
- padding: 12px 12px 0 !important;
296
+ margin-bottom: 36px !important;
297
+ padding: 48px 12px 0 !important;
217
298
  flex-wrap: wrap !important;
218
299
  }
219
300
 
220
- h2.rorvswild-local-panel__request__name__title {
301
+ h2.rorvswild-local-panel__title {
221
302
  margin:-18px 0 0 !important;
222
303
  padding:0 !important;
223
304
  font-size: 31px !important;
@@ -228,41 +309,82 @@ h2.rorvswild-local-panel__request__name__title {
228
309
  }
229
310
 
230
311
  /* details sections */
231
- .rorvswild-local-panel__request-details__section {
312
+ .rorvswild-local-panel__breakdown {
313
+ display: flex !important;
314
+ position: relative !important;
315
+ width: calc(100% - 24px) !important;
316
+ margin: 0 12px 12px !important;
317
+ padding: 0 !important;
318
+ text-align: center !important;
319
+ }
320
+
321
+ .rorvswild-local-panel__breakdown li {
322
+ display: inline-block !important;
323
+ margin: 0 !important;
324
+ padding: 0 8px !important;
325
+ white-space: nowrap !important;
326
+ overflow: hidden !important;
327
+ border: 1px solid rgb(26 29 36) !important;
328
+ font-size: 10px !important;
329
+ text-transform: uppercase !important;
330
+ letter-spacing: 1px !important;
331
+ }
332
+
333
+ .rorvswild-local-panel__breakdown li:first-of-type { background-color:rgba(199, 203, 214, .08) !important; }
334
+
335
+ .rorvswild-local-panel__breakdown li:nth-of-type(2) { background-color:rgba(199, 203, 214, .04) !important; }
336
+
337
+ .rorvswild-local-panel__breakdown li:nth-of-type(3) { background-color:rgba(199, 203, 214, .02) !important; }
338
+
339
+ .rorvswild-local-panel__breakdown__label {
340
+ display: inline-block;
341
+ font-weight: 400;
342
+ margin-right: 4px;
343
+ }
344
+
345
+ .rorvswild-local-panel__breakdown__value { font-weight: 700; }
346
+
347
+ .rorvswild-local-panel__details__section {
232
348
  padding: 12px 12px 11px !important;
233
349
  border-bottom: 1px solid rgb(26 29 36) !important;
234
350
  display: block !important;
235
351
  }
236
352
 
237
- .rorvswild-local-panel__request-details__section:hover {
353
+ .rorvswild-local-panel__details__section:hover {
238
354
  background: rgb(26 29 36) !important;
239
355
  transition: all .3s !important;
240
356
  }
241
357
 
242
- .rorvswild-local-panel__request-details__section__main {
358
+ .rorvswild-local-panel__details__section__main {
243
359
  display: flex !important;
360
+ gap: 8px;
244
361
  width: 100% !important;
245
362
  flex-wrap: wrap !important;
246
363
  }
247
364
 
248
- .rorvswild-local-panel__request-details__section__file {
365
+ .rorvswild-local-panel__details__section__file {
249
366
  width: 100% !important;
250
367
  word-break: break-all !important;
251
368
  overflow-wrap: break-word !important;
252
369
  min-width: 0 !important;
253
370
  color: rgb(199 203 214) !important;
371
+ display: flex;
372
+ gap: 8px;
254
373
  }
255
374
 
256
- a.rorvswild-local-panel__request-details__section__file__name {
375
+ a.rorvswild-local-panel__file__name {
257
376
  text-decoration-color: rgb(146 149 159);
258
377
  font-weight: 700;
378
+ text-decoration-thickness: 1px;
379
+ text-underline-offset: 1px;
259
380
  }
260
381
 
261
- a.rorvswild-local-panel__request-details__section__file__name:hover {
382
+ a.rorvswild-local-panel__file__name:hover {
383
+ color: rgb(223 228 242) !important;
262
384
  text-decoration-color: rgb(199 203 214);
263
385
  }
264
386
 
265
- a.rorvswild-local-panel__request-details__section__file__name::after {
387
+ a.rorvswild-local-panel__file__name::after {
266
388
  content: '↗';
267
389
  text-decoration: none;
268
390
  display: inline-block;
@@ -270,57 +392,205 @@ a.rorvswild-local-panel__request-details__section__file__name::after {
270
392
  opacity: 0.5;
271
393
  }
272
394
 
273
- a.rorvswild-local-panel__request-details__section__file__name:hover::after { opacity: 1; }
395
+ a.rorvswild-local-panel__file__name:hover::after { opacity: 1; }
274
396
 
275
- .rorvswild-local-panel__request-details__section__file__name span {
397
+ .rorvswild-local-panel__file__name span {
276
398
  background: rgb(38 41 49);
277
399
  text-decoration: none;
278
400
  display: inline-block;
279
401
  }
280
402
 
281
- .rorvswild-local-panel__request-details__section__average {
403
+ .rorvswild-local-panel__details__section__average {
282
404
  color: rgb(182 202 255) !important;
283
405
  font-weight: 700 !important;
284
406
  width: 48px !important;
285
- margin:0 12px 0 0 !important;
407
+ text-align: right;
408
+ margin-left: auto;
286
409
  }
287
410
 
288
- .rorvswild-local-panel__request-details__section__calls {
411
+ .rorvswild-local-panel__details__section__calls {
289
412
  color: rgb(199 203 214) !important;
290
413
  width: 48px !important;
291
- margin: 0 12px 0 0 !important;
414
+ text-align: right;
292
415
  }
293
416
 
294
- .rorvswild-local-panel__request-details__section__impact {
417
+ .rorvswild-local-panel__details__section__impact {
295
418
  color: rgb(199 203 214) !important;
296
419
  width: 48px !important;
297
420
  font-weight: 700 !important;
298
- margin: 0 12px 0 0 !important;
421
+ text-align: right;
299
422
  }
300
423
 
301
- .rorvswild-local-panel__request-details__section__code {
302
- display: flex !important;
424
+ .rorvswild-local-panel__details__section__code {
303
425
  color: rgb(146 149 159) !important;
304
- margin-top: 8px !important;
426
+ background: rgb(14 15 20);
427
+ padding: 12px;
428
+ margin: 12px -12px -12px;
429
+ overflow: hidden !important;
430
+ display: none;
305
431
  }
306
432
 
307
- .rorvswild-local-panel__request-details__section__kind {
308
- background: rgb(38 41 49) !important;
433
+ .rorvswild-local-panel__details__section__code dl {
434
+ display: flex;
435
+ align-items: baseline;
436
+ justify-content: flex-end;
437
+ flex-wrap: wrap;
438
+ margin: 0;
439
+ padding: 0;
440
+ text-align: right;
441
+ gap: 12px 24px;
442
+ }
443
+
444
+ .rorvswild-local-panel__details__section__code dt {
445
+ white-space: nowrap;
446
+ margin: 0;
447
+ text-transform: uppercase;
448
+ letter-spacing: 1px;
449
+ font-size: 9px !important;
450
+ }
451
+
452
+ .rorvswild-local-panel__details__section__code dd {
453
+ margin: 0;
454
+ color: rgb(182 202 255) !important;
455
+ font-weight: 700;
456
+ }
457
+
458
+ .rorvswild-local-panel__details__section__code dd.dd--calls {
459
+ color: rgb(199 203 214) !important;
460
+ }
461
+
462
+ .rorvswild-local-panel__details__section__code dl + pre[class*="language-"] {
463
+ margin-top: 12px !important;
464
+ }
465
+
466
+ .rorvswild-local-panel__details__section__kind {
467
+ background: rgb(38 41 49);
309
468
  font-size: 10px !important;
310
469
  text-transform: uppercase !important;
311
470
  text-align: center !important;
312
- letter-spacing: 2px !important;
313
- width: 72px !important;
471
+ letter-spacing: 1px !important;
472
+ width: 64px !important;
314
473
  height: 24px !important;
474
+ min-height: 24px;
475
+ padding: 0;
315
476
  display: inline-block !important;
477
+ flex-shrink: 0;
478
+ }
479
+
480
+ button.rorvswild-local-panel__details__section__kind {
481
+ box-shadow: 0 0 0 1px rgb(72 75 80) inset !important;
482
+ border: none !important;
483
+ font-weight: 700 !important;
484
+ position: relative !important;
485
+ cursor: pointer !important;
486
+ }
487
+
488
+ button.rorvswild-local-panel__details__section__kind span {
489
+ display: inline-block;
490
+ max-width: calc(5ch + 5px);
491
+ white-space: nowrap;
492
+ overflow: hidden;
493
+ }
494
+
495
+ button.rorvswild-local-panel__details__section__kind:hover {
496
+ box-shadow: 0 0 0 1px rgb(147 149 156) inset;
497
+ background-color: rgb(14 15 20) !important;
498
+ }
499
+
500
+ button.rorvswild-local-panel__details__section__kind::after {
501
+ content: "";
502
+ display: block;
503
+ box-sizing: border-box;
504
+ position: absolute;
505
+ width: 4px;
506
+ height: 4px;
507
+ border-bottom: 1px solid rgb(146 149 159);
508
+ border-right: 1px solid rgb(146 149 159);
509
+ transform: rotate(45deg);
510
+ right: 6px;
511
+ top:calc(50% - 3px);
512
+ }
513
+
514
+ button.rorvswild-local-panel__details__section__kind:hover::after { border-color: inherit; }
515
+
516
+ span.rorvswild-local-panel__details__section__kind {
517
+ background: rgb(14 15 20) !important;
518
+ color: rgb(146 149 159)!important;
519
+ }
520
+
521
+ .rorvswild-local-panel__details__section.is-open .rorvswild-local-panel__details__section__code {
522
+ display: block;
523
+ border-bottom: 1px solid rgb(26 29 36) !important
524
+ }
525
+
526
+ .rorvswild-local-panel__details__section.is-open .rorvswild-local-panel__details__section__kind {
527
+ color: rgb(182 202 255) !important;
528
+ background-color: rgb(14 15 20) !important;
529
+ }
530
+
531
+ .rorvswild-local-panel__details__section.is-open .rorvswild-local-panel__details__section__kind::after {
532
+ transform: rotate(225deg);
533
+ transform-origin: 2.5px 3px;
534
+ }
535
+
536
+ .rorvswild-local-panel__card {
537
+ padding: 12px;
538
+ border: 1px solid rgb(26 29 36) !important;
539
+ }
540
+
541
+ .rorvswild-local-panel__card + .rorvswild-local-panel__card {
542
+ margin-top: 24px;
316
543
  }
317
544
 
318
- .rorvswild-local-panel__request-details__section__command {
545
+ .rorvswild-local-panel__card__title {
319
546
  color: rgb(146 149 159) !important;
320
- flex: 1 !important;
321
- margin-left: 12px !important;
322
- opacity: 1;
323
- overflow: hidden !important;
547
+ text-align: center;
548
+ text-transform: uppercase;
549
+ font-size: 10px !important;
550
+ letter-spacing: 1px;
551
+ margin: 0 !important;
552
+ padding: 0 0 12px !important;
553
+ line-height: 24px !important;
554
+ }
555
+
556
+ .rorvswild-local-panel__card > * + * {
557
+ margin-top: 12px;
558
+ }
559
+
560
+ .rorvswild-local-panel__card summary:hover {
561
+ cursor: pointer;
562
+ color: rgb(223 228 242) !important;
563
+ }
564
+
565
+ .rorvswild-local-panel__card dl {
566
+ padding: 0;
567
+ margin: 0 -12px -12px;
568
+ }
569
+
570
+ .rorvswild-local-panel__card dl div {
571
+ display: grid;
572
+ grid-template-columns: 112px auto;
573
+ padding: 12px;
574
+ }
575
+
576
+ .rorvswild-local-panel__card dl div:hover {
577
+ background:rgb(26 29 36);
578
+ }
579
+
580
+ .rorvswild-local-panel__card dl div + div {
581
+ border-top: 1px solid rgb(26 29 36);
582
+ }
583
+
584
+ .rorvswild-local-panel__card dt {
585
+ color: rgb(146 149 159) !important;
586
+ text-transform: uppercase;
587
+ font-size: 10px !important;
588
+ letter-spacing: 1px;
589
+ }
590
+
591
+ .rorvswild-local-panel__card dd {
592
+ word-break: break-all !important;
593
+ overflow-wrap: break-word !important;
324
594
  }
325
595
 
326
596
  /* Panel Footer */
@@ -339,17 +609,15 @@ a.rorvswild-local-panel__footer__link {
339
609
  }
340
610
 
341
611
  @media screen and (min-width: 720px) {
342
- .rorvswild-local-panel__request-details__section__main { flex-wrap: nowrap !important; }
612
+ .rorvswild-local-panel__details__section__main { flex-wrap: nowrap !important; }
343
613
 
344
- .rorvswild-local-panel__request__name,
345
- .rorvswild-local-panel__request-details__section__file { flex: 1 !important; }
614
+ .rorvswild-local-panel__name,
615
+ .rorvswild-local-panel__details__section__file { flex: 1 !important; }
346
616
 
347
- .rorvswild-local-panel__request__runtime { margin-left: 12px !important; }
617
+ .rorvswild-local-panel__runtime { margin-left: 12px !important; }
348
618
 
349
- .rorvswild-local-panel__request-details__section__average,
350
- .rorvswild-local-panel__request-details__section__calls,
351
- .rorvswild-local-panel__request-details__section__impact {
352
- text-align: right !important;
353
- margin: 0 0 0 12px !important;
619
+ .rorvswild-local-panel__width-limiter {
620
+ max-width: 1520px;
621
+ margin: 0 auto;
354
622
  }
355
- }
623
+ }
@@ -18,7 +18,7 @@ http://prismjs.com/download.html?themes=prism-twilight&languages=markup+css+clik
18
18
  line-height: 24px !important;
19
19
  font-weight: 300 !important;
20
20
 
21
- white-space: pre-line !important;
21
+ white-space: pre-wrap !important;
22
22
  word-wrap: break-word !important;
23
23
  word-break: keep-all !important;
24
24
 
@@ -4,8 +4,8 @@ require "rorvswild/local/queue"
4
4
  module RorVsWild
5
5
  module Local
6
6
  def self.start(config = {})
7
- Rails.application.config.middleware.unshift(RorVsWild::Local::Middleware, nil)
8
7
  RorVsWild.start(config.merge(queue: RorVsWild::Local::Queue.new))
8
+ Rails.application.config.middleware.unshift(RorVsWild::Local::Middleware, nil)
9
9
  end
10
10
  end
11
11
  end
@@ -22,7 +22,7 @@ module RorVsWild
22
22
  if method_name = controller.send(:method_for_action, controller.action_name)
23
23
  section.file, section.line = controller.method(method_name).source_location
24
24
  section.file = RorVsWild.agent.locator.relative_path(section.file)
25
- section.command = "#{controller.class}##{method_name}"
25
+ section.commands << "#{controller.class}##{method_name}"
26
26
  end
27
27
  RorVsWild.agent.current_data[:name] = controller_action if RorVsWild.agent.current_data
28
28
  end
@@ -14,7 +14,7 @@ module RorVsWild
14
14
 
15
15
  def finish(name, id, payload)
16
16
  RorVsWild::Section.stop do |section|
17
- section.command = payload[:mailer]
17
+ section.commands << payload[:mailer]
18
18
  section.kind = "mail".freeze
19
19
  end
20
20
  end
@@ -16,7 +16,7 @@ module RorVsWild
16
16
  def finish(name, id, payload)
17
17
  RorVsWild::Section.stop do |section|
18
18
  section.kind = "view".freeze
19
- section.command = RorVsWild.agent.locator.relative_path(payload[:identifier])
19
+ section.commands << RorVsWild.agent.locator.relative_path(payload[:identifier])
20
20
  section.file = section.command
21
21
  section.line = 1
22
22
  end
@@ -12,7 +12,7 @@ module RorVsWild
12
12
  RorVsWild.agent.measure_job(job.class.name, parameters: job.arguments) do
13
13
  begin
14
14
  section = RorVsWild::Section.start
15
- section.command = "#{job.class}#perform"
15
+ section.commands << "#{job.class}#perform"
16
16
  section.file, section.line = job.method(:perform).source_location
17
17
  section.file = RorVsWild.agent.locator.relative_path(section.file)
18
18
  block.call
@@ -15,13 +15,11 @@ module RorVsWild
15
15
  end
16
16
 
17
17
  IGNORED_QUERIES = %w[EXPLAIN SCHEMA].freeze
18
- APPENDABLE_QUERIES = ["BEGIN", "COMMIT"].freeze
19
18
 
20
19
  def start(name, id, payload)
21
20
  return if IGNORED_QUERIES.include?(payload[:name])
22
21
  RorVsWild::Section.start do |section|
23
- section.appendable_command = APPENDABLE_QUERIES.include?(payload[:sql])
24
- section.command = normalize_sql_query(payload[:sql])
22
+ section.commands << normalize_sql_query(payload[:sql])
25
23
  section.kind = "sql"
26
24
  end
27
25
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RorVsWild
2
4
  module Plugin
3
5
  module DelayedJob
@@ -7,7 +9,14 @@ module RorVsWild
7
9
  Delayed::Worker.plugins << Class.new(Delayed::Plugin) do
8
10
  callbacks do |lifecycle|
9
11
  lifecycle.around(:invoke_job) do |job, *args, &block|
10
- RorVsWild.agent.measure_job(job.name, parameters: job.payload_object) { block.call(job) }
12
+ if job.payload_object.class.name == "ActiveJob::QueueAdapters::DelayedJobAdapter::JobWrapper"
13
+ job_name, job_args = job.payload_object.job_data.values_at("job_class", "arguments")
14
+ elsif job.payload_object.is_a?(Delayed::PerformableMethod)
15
+ job_name, job_args = job.name, job.payload_object.args
16
+ else
17
+ job_name, job_args = job.name, job.payload_object
18
+ end
19
+ RorVsWild.agent.measure_job(job_name, parameters: job_args) { block.call(job) }
11
20
  end
12
21
  end
13
22
  end