appmap 0.53.0 → 0.54.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (52) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +16 -10
  3. data/CHANGELOG.md +41 -0
  4. data/Rakefile +13 -4
  5. data/appmap.gemspec +1 -0
  6. data/lib/appmap.rb +31 -112
  7. data/lib/appmap/agent.rb +115 -0
  8. data/lib/appmap/class_map.rb +2 -2
  9. data/lib/appmap/config.rb +11 -3
  10. data/lib/appmap/handler/net_http.rb +3 -2
  11. data/lib/appmap/handler/rails/request_handler.rb +2 -1
  12. data/lib/appmap/handler/rails/template.rb +2 -1
  13. data/lib/appmap/hook.rb +7 -3
  14. data/lib/appmap/hook/method.rb +36 -28
  15. data/lib/appmap/metadata.rb +4 -2
  16. data/lib/appmap/minitest.rb +2 -0
  17. data/lib/appmap/railtie.rb +2 -2
  18. data/lib/appmap/rspec.rb +5 -3
  19. data/lib/appmap/swagger.rb +2 -0
  20. data/lib/appmap/swagger/configuration.rb +70 -0
  21. data/lib/appmap/swagger/markdown_descriptions.rb +43 -0
  22. data/lib/appmap/swagger/rake_tasks.rb +43 -0
  23. data/lib/appmap/swagger/stable.rb +37 -0
  24. data/lib/appmap/trace.rb +2 -0
  25. data/lib/appmap/util.rb +17 -1
  26. data/lib/appmap/version.rb +1 -1
  27. data/package.json +0 -1
  28. data/release.sh +0 -1
  29. data/spec/config_spec.rb +0 -1
  30. data/spec/fixtures/hook/.gitignore +2 -0
  31. data/spec/fixtures/hook/app/controllers/api/api_keys_controller.rb +1 -0
  32. data/spec/fixtures/hook/app/controllers/organizations_controller.rb +1 -0
  33. data/spec/fixtures/hook/app/models/api_key.rb +1 -0
  34. data/spec/fixtures/hook/app/models/configuration.rb +1 -0
  35. data/spec/fixtures/hook/app/models/show.rb +1 -0
  36. data/spec/fixtures/hook/app/models/user.rb +1 -0
  37. data/spec/fixtures/hook/kwargs.rb +11 -0
  38. data/spec/fixtures/hook/revoke_api_key.appmap.json +847 -0
  39. data/spec/fixtures/hook/spec/api_spec.rb +1 -0
  40. data/spec/fixtures/hook/spec/user_spec.rb +1 -0
  41. data/spec/fixtures/hook/user_page_scenario.appmap.json +1722 -0
  42. data/spec/fixtures/rails5_users_app/config/environments/test.rb +3 -0
  43. data/spec/fixtures/rails6_users_app/Dockerfile +0 -1
  44. data/spec/fixtures/rails6_users_app/appmap.yml +3 -1
  45. data/spec/fixtures/rails6_users_app/config/environments/test.rb +3 -0
  46. data/spec/fixtures/rails6_users_app/lib/tasks/appmap.rake +13 -0
  47. data/spec/hook_spec.rb +9 -0
  48. data/spec/rails_recording_spec.rb +1 -1
  49. data/spec/record_net_http_spec.rb +1 -0
  50. data/spec/swagger/swagger_spec.rb +47 -0
  51. data/test/gem_test.rb +1 -0
  52. metadata +36 -2
@@ -0,0 +1 @@
1
+ # dummy
@@ -0,0 +1 @@
1
+ # dummy
@@ -0,0 +1,1722 @@
1
+ {
2
+ "version": "1.3",
3
+ "metadata": {
4
+ "app": "appland/AppLand",
5
+ "language": {
6
+ "name": "ruby",
7
+ "engine": "ruby",
8
+ "version": "2.6.6"
9
+ },
10
+ "client": {
11
+ "name": "appmap",
12
+ "url": "https://github.com/applandinc/appmap-ruby",
13
+ "version": "0.37.2"
14
+ },
15
+ "frameworks": [
16
+ {
17
+ "name": "rails",
18
+ "version": "5.2.4.2"
19
+ },
20
+ {
21
+ "name": "rspec",
22
+ "version": "3.9.1"
23
+ }
24
+ ],
25
+ "git": {
26
+ "repository": "git@github.com:applandinc/appland.git",
27
+ "branch": "add-notifications",
28
+ "commit": "2e7738908480aeefab818ddd17c91dff57db1ab0",
29
+ "status_code": [],
30
+ "git_last_annotated_tag": null,
31
+ "git_last_tag": "v0.13.0",
32
+ "git_commits_since_last_annotated_tag": null,
33
+ "git_commits_since_last_tag": 0
34
+ },
35
+ "name": "User page for an admin user organization list has a link to create an organization",
36
+ "feature": "User page for an admin user",
37
+ "feature_group": "User page",
38
+ "recorder": {
39
+ "name": "rspec"
40
+ },
41
+ "source_location": "spec/fixtures/spec/user_spec.rb",
42
+ "test_status": "failed",
43
+ "fingerprints": [
44
+ {
45
+ "appmap_digest": "4a2f6e28befc256c3cdc3ad05f3e51156e0fb805300f095a74f7719cc2bcb650",
46
+ "canonicalization_algorithm": "trace_v1",
47
+ "digest": "7bbb5f3044129d4a93adc347a1ca6901edf6111e7b6cdb520cf21d890498a97e",
48
+ "fingerprint_algorithm": "sha256"
49
+ },
50
+ {
51
+ "appmap_digest": "4a2f6e28befc256c3cdc3ad05f3e51156e0fb805300f095a74f7719cc2bcb650",
52
+ "canonicalization_algorithm": "info_v1",
53
+ "digest": "cec1d48810b037d61d5643a096c1c57eb6ee74f9e5d8f8905b36f87fae52068c",
54
+ "fingerprint_algorithm": "sha256"
55
+ },
56
+ {
57
+ "appmap_digest": "4a2f6e28befc256c3cdc3ad05f3e51156e0fb805300f095a74f7719cc2bcb650",
58
+ "canonicalization_algorithm": "update_v1",
59
+ "digest": "997ec23276e3bfb491dcf6aefc138a7681fd9d4e6b74af6615878d238c968170",
60
+ "fingerprint_algorithm": "sha256"
61
+ }
62
+ ]
63
+ },
64
+ "classMap": [
65
+ {
66
+ "name": "json",
67
+ "type": "package",
68
+ "children": [
69
+ {
70
+ "name": "JSON",
71
+ "type": "class",
72
+ "children": [
73
+ {
74
+ "name": "Ext",
75
+ "type": "class",
76
+ "children": [
77
+ {
78
+ "name": "Generator",
79
+ "type": "class",
80
+ "children": [
81
+ {
82
+ "name": "State",
83
+ "type": "class",
84
+ "children": [
85
+ {
86
+ "name": "generate",
87
+ "type": "function",
88
+ "location": "JSON::Ext::Generator::State#generate",
89
+ "static": false,
90
+ "labels": [
91
+ "serialization",
92
+ "json"
93
+ ]
94
+ }
95
+ ]
96
+ }
97
+ ]
98
+ },
99
+ {
100
+ "name": "Parser",
101
+ "type": "class",
102
+ "children": [
103
+ {
104
+ "name": "parse",
105
+ "type": "function",
106
+ "location": "JSON::Ext::Parser#parse",
107
+ "static": false,
108
+ "labels": [
109
+ "serialization",
110
+ "json"
111
+ ]
112
+ }
113
+ ]
114
+ }
115
+ ]
116
+ }
117
+ ]
118
+ }
119
+ ]
120
+ },
121
+ {
122
+ "name": "net/http",
123
+ "type": "package",
124
+ "children": [
125
+ {
126
+ "name": "Net",
127
+ "type": "class",
128
+ "children": [
129
+ {
130
+ "name": "HTTP",
131
+ "type": "class",
132
+ "children": [
133
+ {
134
+ "name": "request",
135
+ "type": "function",
136
+ "location": "/Users/kgilpin/source/appland/appmap-ruby/lib/appmap/hook/method.rb:49",
137
+ "static": false,
138
+ "labels": [
139
+ "http",
140
+ "io"
141
+ ]
142
+ },
143
+ {
144
+ "name": "request",
145
+ "type": "function",
146
+ "location": "/Users/kgilpin/.rbenv/versions/2.6.6/lib/ruby/2.6.0/net/http.rb:1468",
147
+ "static": false,
148
+ "labels": [
149
+ "http",
150
+ "io"
151
+ ]
152
+ }
153
+ ]
154
+ }
155
+ ]
156
+ }
157
+ ]
158
+ },
159
+ {
160
+ "name": "openssl",
161
+ "type": "package",
162
+ "children": [
163
+ {
164
+ "name": "OpenSSL",
165
+ "type": "class",
166
+ "children": [
167
+ {
168
+ "name": "Cipher",
169
+ "type": "class",
170
+ "children": [
171
+ {
172
+ "name": "decrypt",
173
+ "type": "function",
174
+ "location": "OpenSSL::Cipher#decrypt",
175
+ "static": false,
176
+ "labels": [
177
+ "security",
178
+ "crypto"
179
+ ]
180
+ },
181
+ {
182
+ "name": "final",
183
+ "type": "function",
184
+ "location": "OpenSSL::Cipher#final",
185
+ "static": false,
186
+ "labels": [
187
+ "security",
188
+ "crypto"
189
+ ]
190
+ },
191
+ {
192
+ "name": "encrypt",
193
+ "type": "function",
194
+ "location": "OpenSSL::Cipher#encrypt",
195
+ "static": false,
196
+ "labels": [
197
+ "security",
198
+ "crypto"
199
+ ]
200
+ }
201
+ ]
202
+ }
203
+ ]
204
+ },
205
+ {
206
+ "name": "Digest",
207
+ "type": "class",
208
+ "children": [
209
+ {
210
+ "name": "Instance",
211
+ "type": "class",
212
+ "children": [
213
+ {
214
+ "name": "digest",
215
+ "type": "function",
216
+ "location": "Digest::Instance#digest",
217
+ "static": false,
218
+ "labels": [
219
+ "security",
220
+ "crypto"
221
+ ]
222
+ }
223
+ ]
224
+ }
225
+ ]
226
+ }
227
+ ]
228
+ },
229
+ {
230
+ "name": "app/models",
231
+ "type": "package",
232
+ "children": [
233
+ {
234
+ "name": "User",
235
+ "type": "class",
236
+ "children": [
237
+ {
238
+ "name": "find_by_id!",
239
+ "type": "function",
240
+ "location": "app/models/user.rb:31",
241
+ "static": true
242
+ },
243
+ {
244
+ "name": "Show",
245
+ "type": "class",
246
+ "children": [
247
+ {
248
+ "name": "accept_eula?",
249
+ "type": "function",
250
+ "location": "app/models/user.rb:109",
251
+ "static": false
252
+ }
253
+ ]
254
+ }
255
+ ]
256
+ },
257
+ {
258
+ "name": "Configuration",
259
+ "type": "class",
260
+ "children": [
261
+ {
262
+ "name": "find",
263
+ "type": "function",
264
+ "location": "app/models/configuration.rb:8",
265
+ "static": true
266
+ },
267
+ {
268
+ "name": "attributes=",
269
+ "type": "function",
270
+ "location": "app/models/configuration.rb:33",
271
+ "static": false
272
+ },
273
+ {
274
+ "name": "attributes",
275
+ "type": "function",
276
+ "location": "app/models/configuration.rb:22",
277
+ "static": false
278
+ }
279
+ ]
280
+ }
281
+ ]
282
+ },
283
+ {
284
+ "name": "app/controllers",
285
+ "type": "package",
286
+ "children": [
287
+ {
288
+ "name": "OrganizationsController",
289
+ "type": "class",
290
+ "children": [
291
+ {
292
+ "name": "new",
293
+ "type": "function",
294
+ "location": "app/controllers/organizations_controller.rb:11",
295
+ "static": false
296
+ }
297
+ ]
298
+ }
299
+ ]
300
+ }
301
+ ],
302
+ "events": [
303
+ {
304
+ "id": 1,
305
+ "event": "call",
306
+ "thread_id": 70301203546120,
307
+ "defined_class": "JSON::Ext::Generator::State",
308
+ "method_id": "generate",
309
+ "path": "JSON::Ext::Generator::State#generate",
310
+ "static": false,
311
+ "parameters": [
312
+ {
313
+ "name": "arg",
314
+ "class": "Hash",
315
+ "object_id": 70301205941280,
316
+ "value": "{:using=>\"xpath\", :value=>\".//a[./@href][((((./@id = 'Create a new organization') or (normalize-spac",
317
+ "kind": "req"
318
+ }
319
+ ],
320
+ "receiver": {
321
+ "class": "JSON::Ext::Generator::State",
322
+ "object_id": 70301205946080,
323
+ "value": "#<JSON::Ext::Generator::State:0x00007fe08cd0bdc0>"
324
+ }
325
+ },
326
+ {
327
+ "id": 2,
328
+ "event": "return",
329
+ "thread_id": 70301203546120,
330
+ "parent_id": 1,
331
+ "elapsed": 0.000025,
332
+ "return_value": {
333
+ "class": "String",
334
+ "value": "{\"using\":\"xpath\",\"value\":\".//a[./@href][((((./@id = 'Create a new organization') or (normalize-space",
335
+ "object_id": 70301205944080
336
+ }
337
+ },
338
+ {
339
+ "id": 3,
340
+ "event": "call",
341
+ "thread_id": 70301203546120,
342
+ "defined_class": "Net::HTTP",
343
+ "method_id": "request",
344
+ "path": "/Users/kgilpin/source/appland/appmap-ruby/lib/appmap/hook/method.rb",
345
+ "lineno": 49,
346
+ "static": false,
347
+ "parameters": [
348
+ {
349
+ "name": "args",
350
+ "class": "Array",
351
+ "object_id": 70301205939560,
352
+ "value": "[#<Net::HTTP::Post POST>]",
353
+ "kind": "rest"
354
+ },
355
+ {
356
+ "name": "block",
357
+ "class": "NilClass",
358
+ "object_id": 8,
359
+ "value": null,
360
+ "kind": "block"
361
+ }
362
+ ],
363
+ "receiver": {
364
+ "class": "Net::HTTP",
365
+ "object_id": 70301205235520,
366
+ "value": "Net::HTTP[127.0.0.1:9515]"
367
+ }
368
+ },
369
+ {
370
+ "id": 4,
371
+ "event": "call",
372
+ "thread_id": 70301203546120,
373
+ "defined_class": "Net::HTTP",
374
+ "method_id": "request",
375
+ "path": "/Users/kgilpin/.rbenv/versions/2.6.6/lib/ruby/2.6.0/net/http.rb",
376
+ "lineno": 1468,
377
+ "static": false,
378
+ "parameters": [
379
+ {
380
+ "name": "req",
381
+ "class": "Net::HTTP::Post",
382
+ "object_id": 70301205943000,
383
+ "value": "Net::HTTP::Post[POST /session/a6781fa7e36446596e111a62fa53c68f/elements]",
384
+ "kind": "req"
385
+ },
386
+ {
387
+ "name": "body",
388
+ "class": "NilClass",
389
+ "object_id": 8,
390
+ "value": null,
391
+ "kind": "opt"
392
+ },
393
+ {
394
+ "name": "block",
395
+ "class": "NilClass",
396
+ "object_id": 8,
397
+ "value": null,
398
+ "kind": "block"
399
+ }
400
+ ],
401
+ "receiver": {
402
+ "class": "Net::HTTP",
403
+ "object_id": 70301205235520,
404
+ "value": "Net::HTTP[127.0.0.1:9515]"
405
+ }
406
+ },
407
+ {
408
+ "id": 5,
409
+ "event": "return",
410
+ "thread_id": 70301203546120,
411
+ "parent_id": 4,
412
+ "elapsed": 0.007965,
413
+ "return_value": {
414
+ "class": "Net::HTTPOK",
415
+ "value": "#<Net::HTTPOK:0x00007fe08cd17210>",
416
+ "object_id": 70301205969160
417
+ }
418
+ },
419
+ {
420
+ "id": 6,
421
+ "event": "return",
422
+ "thread_id": 70301203546120,
423
+ "parent_id": 3,
424
+ "elapsed": 0.008069,
425
+ "return_value": {
426
+ "class": "Net::HTTPOK",
427
+ "value": "#<Net::HTTPOK:0x00007fe08cd17210>",
428
+ "object_id": 70301205969160
429
+ }
430
+ },
431
+ {
432
+ "id": 7,
433
+ "event": "call",
434
+ "thread_id": 70301203546120,
435
+ "defined_class": "JSON::Ext::Parser",
436
+ "method_id": "parse",
437
+ "path": "JSON::Ext::Parser#parse",
438
+ "static": false,
439
+ "parameters": [],
440
+ "receiver": {
441
+ "class": "JSON::Ext::Parser",
442
+ "object_id": 70301222477120,
443
+ "value": "#<JSON::Ext::Parser:0x00007fe08ec93a80>"
444
+ }
445
+ },
446
+ {
447
+ "id": 8,
448
+ "event": "return",
449
+ "thread_id": 70301203546120,
450
+ "parent_id": 7,
451
+ "elapsed": 0.00001,
452
+ "return_value": {
453
+ "class": "Hash",
454
+ "value": "{\"value\"=>[{\"element-6066-11e4-a52e-4f735466cecf\"=>\"e3e572c1-ad74-4ec0-832f-04bf16149693\"}]}",
455
+ "object_id": 70301222475540
456
+ }
457
+ },
458
+ {
459
+ "id": 9,
460
+ "event": "call",
461
+ "thread_id": 70301203546120,
462
+ "defined_class": "JSON::Ext::Generator::State",
463
+ "method_id": "generate",
464
+ "path": "JSON::Ext::Generator::State#generate",
465
+ "static": false,
466
+ "parameters": [
467
+ {
468
+ "name": "arg",
469
+ "class": "Hash",
470
+ "object_id": 70301222471640,
471
+ "value": "{:script=>\"return ((function(){function d(t,e,n){function r(t){var e=x(t);if(0<e.height&&0<e.width)r",
472
+ "kind": "req"
473
+ }
474
+ ],
475
+ "receiver": {
476
+ "class": "JSON::Ext::Generator::State",
477
+ "object_id": 70301279887220,
478
+ "value": "#<JSON::Ext::Generator::State:0x00007fe095a13ee8>"
479
+ }
480
+ },
481
+ {
482
+ "id": 10,
483
+ "event": "call",
484
+ "thread_id": 70301203546120,
485
+ "defined_class": "JSON::Ext::Generator::State",
486
+ "method_id": "generate",
487
+ "path": "JSON::Ext::Generator::State#generate",
488
+ "static": false,
489
+ "parameters": [
490
+ {
491
+ "name": "arg",
492
+ "class": "Hash",
493
+ "object_id": 70301279884560,
494
+ "value": "{\"element-6066-11e4-a52e-4f735466cecf\"=>\"e3e572c1-ad74-4ec0-832f-04bf16149693\"}",
495
+ "kind": "req"
496
+ }
497
+ ],
498
+ "receiver": {
499
+ "class": "JSON::Ext::Generator::State",
500
+ "object_id": 70301279884540,
501
+ "value": "#<JSON::Ext::Generator::State:0x00007fe095a129f8>"
502
+ }
503
+ },
504
+ {
505
+ "id": 11,
506
+ "event": "return",
507
+ "thread_id": 70301203546120,
508
+ "parent_id": 10,
509
+ "elapsed": 0.000008,
510
+ "return_value": {
511
+ "class": "String",
512
+ "value": "{\"element-6066-11e4-a52e-4f735466cecf\":\"e3e572c1-ad74-4ec0-832f-04bf16149693\"}",
513
+ "object_id": 70301279882220
514
+ }
515
+ },
516
+ {
517
+ "id": 12,
518
+ "event": "return",
519
+ "thread_id": 70301203546120,
520
+ "parent_id": 9,
521
+ "elapsed": 0.000088,
522
+ "return_value": {
523
+ "class": "String",
524
+ "value": "{\"script\":\"return ((function(){function d(t,e,n){function r(t){var e=x(t);if(0<e.height&&0<e.width)r",
525
+ "object_id": 70301279881800
526
+ }
527
+ },
528
+ {
529
+ "id": 13,
530
+ "event": "call",
531
+ "thread_id": 70301203546120,
532
+ "defined_class": "Net::HTTP",
533
+ "method_id": "request",
534
+ "path": "/Users/kgilpin/source/appland/appmap-ruby/lib/appmap/hook/method.rb",
535
+ "lineno": 49,
536
+ "static": false,
537
+ "parameters": [
538
+ {
539
+ "name": "args",
540
+ "class": "Array",
541
+ "object_id": 70301226375960,
542
+ "value": "[#<Net::HTTP::Post POST>]",
543
+ "kind": "rest"
544
+ },
545
+ {
546
+ "name": "block",
547
+ "class": "NilClass",
548
+ "object_id": 8,
549
+ "value": null,
550
+ "kind": "block"
551
+ }
552
+ ],
553
+ "receiver": {
554
+ "class": "Net::HTTP",
555
+ "object_id": 70301205235520,
556
+ "value": "Net::HTTP[127.0.0.1:9515]"
557
+ }
558
+ },
559
+ {
560
+ "id": 14,
561
+ "event": "call",
562
+ "thread_id": 70301203546120,
563
+ "defined_class": "Net::HTTP",
564
+ "method_id": "request",
565
+ "path": "/Users/kgilpin/.rbenv/versions/2.6.6/lib/ruby/2.6.0/net/http.rb",
566
+ "lineno": 1468,
567
+ "static": false,
568
+ "parameters": [
569
+ {
570
+ "name": "req",
571
+ "class": "Net::HTTP::Post",
572
+ "object_id": 70301279880720,
573
+ "value": "Net::HTTP::Post[POST /session/a6781fa7e36446596e111a62fa53c68f/execute/sync]",
574
+ "kind": "req"
575
+ },
576
+ {
577
+ "name": "body",
578
+ "class": "NilClass",
579
+ "object_id": 8,
580
+ "value": null,
581
+ "kind": "opt"
582
+ },
583
+ {
584
+ "name": "block",
585
+ "class": "NilClass",
586
+ "object_id": 8,
587
+ "value": null,
588
+ "kind": "block"
589
+ }
590
+ ],
591
+ "receiver": {
592
+ "class": "Net::HTTP",
593
+ "object_id": 70301205235520,
594
+ "value": "Net::HTTP[127.0.0.1:9515]"
595
+ }
596
+ },
597
+ {
598
+ "id": 15,
599
+ "event": "return",
600
+ "thread_id": 70301203546120,
601
+ "parent_id": 14,
602
+ "elapsed": 0.00345,
603
+ "return_value": {
604
+ "class": "Net::HTTPOK",
605
+ "value": "#<Net::HTTPOK:0x00007fe098d49c68>",
606
+ "object_id": 70301306736180
607
+ }
608
+ },
609
+ {
610
+ "id": 16,
611
+ "event": "return",
612
+ "thread_id": 70301203546120,
613
+ "parent_id": 13,
614
+ "elapsed": 0.003546,
615
+ "return_value": {
616
+ "class": "Net::HTTPOK",
617
+ "value": "#<Net::HTTPOK:0x00007fe098d49c68>",
618
+ "object_id": 70301306736180
619
+ }
620
+ },
621
+ {
622
+ "id": 17,
623
+ "event": "call",
624
+ "thread_id": 70301203546120,
625
+ "defined_class": "JSON::Ext::Parser",
626
+ "method_id": "parse",
627
+ "path": "JSON::Ext::Parser#parse",
628
+ "static": false,
629
+ "parameters": [],
630
+ "receiver": {
631
+ "class": "JSON::Ext::Parser",
632
+ "object_id": 70301306771140,
633
+ "value": "#<JSON::Ext::Parser:0x00007fe098d5ad88>"
634
+ }
635
+ },
636
+ {
637
+ "id": 18,
638
+ "event": "return",
639
+ "thread_id": 70301203546120,
640
+ "parent_id": 17,
641
+ "elapsed": 0.000007,
642
+ "return_value": {
643
+ "class": "Hash",
644
+ "value": "{\"value\"=>true}",
645
+ "object_id": 70301306769840
646
+ }
647
+ },
648
+ {
649
+ "id": 19,
650
+ "event": "call",
651
+ "thread_id": 70301203546120,
652
+ "defined_class": "JSON::Ext::Generator::State",
653
+ "method_id": "generate",
654
+ "path": "JSON::Ext::Generator::State#generate",
655
+ "static": false,
656
+ "parameters": [
657
+ {
658
+ "name": "arg",
659
+ "class": "Hash",
660
+ "object_id": 70301306768760,
661
+ "value": "{:script=>\"return arguments[0].matches(':disabled, select:disabled *')\", :args=>[#<Selenium::WebDriv",
662
+ "kind": "req"
663
+ }
664
+ ],
665
+ "receiver": {
666
+ "class": "JSON::Ext::Generator::State",
667
+ "object_id": 70301306767780,
668
+ "value": "#<JSON::Ext::Generator::State:0x00007fe098d59348>"
669
+ }
670
+ },
671
+ {
672
+ "id": 20,
673
+ "event": "call",
674
+ "thread_id": 70301203546120,
675
+ "defined_class": "JSON::Ext::Generator::State",
676
+ "method_id": "generate",
677
+ "path": "JSON::Ext::Generator::State#generate",
678
+ "static": false,
679
+ "parameters": [
680
+ {
681
+ "name": "arg",
682
+ "class": "Hash",
683
+ "object_id": 70301306805180,
684
+ "value": "{\"element-6066-11e4-a52e-4f735466cecf\"=>\"e3e572c1-ad74-4ec0-832f-04bf16149693\"}",
685
+ "kind": "req"
686
+ }
687
+ ],
688
+ "receiver": {
689
+ "class": "JSON::Ext::Generator::State",
690
+ "object_id": 70301306805160,
691
+ "value": "#<JSON::Ext::Generator::State:0x00007fe098d6b750>"
692
+ }
693
+ },
694
+ {
695
+ "id": 21,
696
+ "event": "return",
697
+ "thread_id": 70301203546120,
698
+ "parent_id": 20,
699
+ "elapsed": 0.000007,
700
+ "return_value": {
701
+ "class": "String",
702
+ "value": "{\"element-6066-11e4-a52e-4f735466cecf\":\"e3e572c1-ad74-4ec0-832f-04bf16149693\"}",
703
+ "object_id": 70301306803300
704
+ }
705
+ },
706
+ {
707
+ "id": 22,
708
+ "event": "return",
709
+ "thread_id": 70301203546120,
710
+ "parent_id": 19,
711
+ "elapsed": 0.00006,
712
+ "return_value": {
713
+ "class": "String",
714
+ "value": "{\"script\":\"return arguments[0].matches(':disabled, select:disabled *')\",\"args\":[{\"element-6066-11e4-",
715
+ "object_id": 70301306802740
716
+ }
717
+ },
718
+ {
719
+ "id": 23,
720
+ "event": "call",
721
+ "thread_id": 70301203546120,
722
+ "defined_class": "Net::HTTP",
723
+ "method_id": "request",
724
+ "path": "/Users/kgilpin/source/appland/appmap-ruby/lib/appmap/hook/method.rb",
725
+ "lineno": 49,
726
+ "static": false,
727
+ "parameters": [
728
+ {
729
+ "name": "args",
730
+ "class": "Array",
731
+ "object_id": 70301306838000,
732
+ "value": "[#<Net::HTTP::Post POST>]",
733
+ "kind": "rest"
734
+ },
735
+ {
736
+ "name": "block",
737
+ "class": "NilClass",
738
+ "object_id": 8,
739
+ "value": null,
740
+ "kind": "block"
741
+ }
742
+ ],
743
+ "receiver": {
744
+ "class": "Net::HTTP",
745
+ "object_id": 70301205235520,
746
+ "value": "Net::HTTP[127.0.0.1:9515]"
747
+ }
748
+ },
749
+ {
750
+ "id": 24,
751
+ "event": "call",
752
+ "thread_id": 70301203546120,
753
+ "defined_class": "Net::HTTP",
754
+ "method_id": "request",
755
+ "path": "/Users/kgilpin/.rbenv/versions/2.6.6/lib/ruby/2.6.0/net/http.rb",
756
+ "lineno": 1468,
757
+ "static": false,
758
+ "parameters": [
759
+ {
760
+ "name": "req",
761
+ "class": "Net::HTTP::Post",
762
+ "object_id": 70301306801560,
763
+ "value": "Net::HTTP::Post[POST /session/a6781fa7e36446596e111a62fa53c68f/execute/sync]",
764
+ "kind": "req"
765
+ },
766
+ {
767
+ "name": "body",
768
+ "class": "NilClass",
769
+ "object_id": 8,
770
+ "value": null,
771
+ "kind": "opt"
772
+ },
773
+ {
774
+ "name": "block",
775
+ "class": "NilClass",
776
+ "object_id": 8,
777
+ "value": null,
778
+ "kind": "block"
779
+ }
780
+ ],
781
+ "receiver": {
782
+ "class": "Net::HTTP",
783
+ "object_id": 70301205235520,
784
+ "value": "Net::HTTP[127.0.0.1:9515]"
785
+ }
786
+ },
787
+ {
788
+ "id": 25,
789
+ "event": "return",
790
+ "thread_id": 70301203546120,
791
+ "parent_id": 24,
792
+ "elapsed": 0.002601,
793
+ "return_value": {
794
+ "class": "Net::HTTPOK",
795
+ "value": "#<Net::HTTPOK:0x00007fe098d89ae8>",
796
+ "object_id": 70301306867060
797
+ }
798
+ },
799
+ {
800
+ "id": 26,
801
+ "event": "return",
802
+ "thread_id": 70301203546120,
803
+ "parent_id": 23,
804
+ "elapsed": 0.002683,
805
+ "return_value": {
806
+ "class": "Net::HTTPOK",
807
+ "value": "#<Net::HTTPOK:0x00007fe098d89ae8>",
808
+ "object_id": 70301306867060
809
+ }
810
+ },
811
+ {
812
+ "id": 27,
813
+ "event": "call",
814
+ "thread_id": 70301203546120,
815
+ "defined_class": "JSON::Ext::Parser",
816
+ "method_id": "parse",
817
+ "path": "JSON::Ext::Parser#parse",
818
+ "static": false,
819
+ "parameters": [],
820
+ "receiver": {
821
+ "class": "JSON::Ext::Parser",
822
+ "object_id": 70301306900200,
823
+ "value": "#<JSON::Ext::Parser:0x00007fe098d99dd0>"
824
+ }
825
+ },
826
+ {
827
+ "id": 28,
828
+ "event": "return",
829
+ "thread_id": 70301203546120,
830
+ "parent_id": 27,
831
+ "elapsed": 0.000006,
832
+ "return_value": {
833
+ "class": "Hash",
834
+ "value": "{\"value\"=>false}",
835
+ "object_id": 70301306898540
836
+ }
837
+ },
838
+ {
839
+ "id": 29,
840
+ "event": "call",
841
+ "thread_id": 70301203546120,
842
+ "defined_class": "Net::HTTP",
843
+ "method_id": "request",
844
+ "path": "/Users/kgilpin/source/appland/appmap-ruby/lib/appmap/hook/method.rb",
845
+ "lineno": 49,
846
+ "static": false,
847
+ "parameters": [
848
+ {
849
+ "name": "args",
850
+ "class": "Array",
851
+ "object_id": 70301306932600,
852
+ "value": "[#<Net::HTTP::Post POST>]",
853
+ "kind": "rest"
854
+ },
855
+ {
856
+ "name": "block",
857
+ "class": "NilClass",
858
+ "object_id": 8,
859
+ "value": null,
860
+ "kind": "block"
861
+ }
862
+ ],
863
+ "receiver": {
864
+ "class": "Net::HTTP",
865
+ "object_id": 70301205235520,
866
+ "value": "Net::HTTP[127.0.0.1:9515]"
867
+ }
868
+ },
869
+ {
870
+ "id": 30,
871
+ "event": "call",
872
+ "thread_id": 70301203546120,
873
+ "defined_class": "Net::HTTP",
874
+ "method_id": "request",
875
+ "path": "/Users/kgilpin/.rbenv/versions/2.6.6/lib/ruby/2.6.0/net/http.rb",
876
+ "lineno": 1468,
877
+ "static": false,
878
+ "parameters": [
879
+ {
880
+ "name": "req",
881
+ "class": "Net::HTTP::Post",
882
+ "object_id": 70301306936040,
883
+ "value": "Net::HTTP::Post[POST /session/a6781fa7e36446596e111a62fa53c68f/element/e3e572c1-ad74-4ec0-832f-04bf1",
884
+ "kind": "req"
885
+ },
886
+ {
887
+ "name": "body",
888
+ "class": "NilClass",
889
+ "object_id": 8,
890
+ "value": null,
891
+ "kind": "opt"
892
+ },
893
+ {
894
+ "name": "block",
895
+ "class": "NilClass",
896
+ "object_id": 8,
897
+ "value": null,
898
+ "kind": "block"
899
+ }
900
+ ],
901
+ "receiver": {
902
+ "class": "Net::HTTP",
903
+ "object_id": 70301205235520,
904
+ "value": "Net::HTTP[127.0.0.1:9515]"
905
+ }
906
+ },
907
+ {
908
+ "id": 31,
909
+ "event": "call",
910
+ "thread_id": 70301283309360,
911
+ "http_server_request": {
912
+ "request_method": "GET",
913
+ "path_info": "/organizations/new"
914
+ },
915
+ "message": [
916
+ {
917
+ "name": "_method",
918
+ "class": "String",
919
+ "value": "get",
920
+ "object_id": 70301206015280
921
+ },
922
+ {
923
+ "name": "controller",
924
+ "class": "String",
925
+ "value": "organizations",
926
+ "object_id": 70301208859520
927
+ },
928
+ {
929
+ "name": "action",
930
+ "class": "String",
931
+ "value": "new",
932
+ "object_id": 70301209377440
933
+ }
934
+ ]
935
+ },
936
+ {
937
+ "id": 32,
938
+ "event": "call",
939
+ "thread_id": 70301283309360,
940
+ "defined_class": "OpenSSL::Cipher",
941
+ "method_id": "decrypt",
942
+ "path": "OpenSSL::Cipher#decrypt",
943
+ "static": false,
944
+ "parameters": [
945
+ {
946
+ "name": "arg",
947
+ "class": "Array",
948
+ "object_id": 70301209586400,
949
+ "value": "[]",
950
+ "kind": "rest"
951
+ }
952
+ ],
953
+ "receiver": {
954
+ "class": "OpenSSL::Cipher",
955
+ "object_id": 70301209590380,
956
+ "value": "#<OpenSSL::Cipher:0x00007fe08d3ff4d8>"
957
+ }
958
+ },
959
+ {
960
+ "id": 33,
961
+ "event": "return",
962
+ "thread_id": 70301283309360,
963
+ "parent_id": 32,
964
+ "elapsed": 0.000008,
965
+ "return_value": {
966
+ "class": "OpenSSL::Cipher",
967
+ "value": "#<OpenSSL::Cipher:0x00007fe08d3ff4d8>",
968
+ "object_id": 70301209590380
969
+ }
970
+ },
971
+ {
972
+ "id": 34,
973
+ "event": "call",
974
+ "thread_id": 70301283309360,
975
+ "defined_class": "OpenSSL::Cipher",
976
+ "method_id": "final",
977
+ "path": "OpenSSL::Cipher#final",
978
+ "static": false,
979
+ "parameters": [],
980
+ "receiver": {
981
+ "class": "OpenSSL::Cipher",
982
+ "object_id": 70301209590380,
983
+ "value": "#<OpenSSL::Cipher:0x00007fe08d3ff4d8>"
984
+ }
985
+ },
986
+ {
987
+ "id": 35,
988
+ "event": "return",
989
+ "thread_id": 70301283309360,
990
+ "parent_id": 34,
991
+ "elapsed": 0.000006,
992
+ "return_value": {
993
+ "class": "String",
994
+ "value": "",
995
+ "object_id": 70301209458780
996
+ }
997
+ },
998
+ {
999
+ "id": 36,
1000
+ "event": "call",
1001
+ "thread_id": 70301283309360,
1002
+ "defined_class": "JSON::Ext::Parser",
1003
+ "method_id": "parse",
1004
+ "path": "JSON::Ext::Parser#parse",
1005
+ "static": false,
1006
+ "parameters": [],
1007
+ "receiver": {
1008
+ "class": "JSON::Ext::Parser",
1009
+ "object_id": 70301209457180,
1010
+ "value": "#<JSON::Ext::Parser:0x00007fe08d3be438>"
1011
+ }
1012
+ },
1013
+ {
1014
+ "id": 37,
1015
+ "event": "return",
1016
+ "thread_id": 70301283309360,
1017
+ "parent_id": 36,
1018
+ "elapsed": 0.000015,
1019
+ "return_value": {
1020
+ "class": "Hash",
1021
+ "value": "{\"_rails\"=>{\"message\"=>\"eyJzZXNzaW9uX2lkIjoiZDFlN2VjYTI2Mjc3NWQ1ZTRjYmE5MTg0MzNmY2UyMzAiLCJ1c2VyX2lk",
1022
+ "object_id": 70301209453540
1023
+ }
1024
+ },
1025
+ {
1026
+ "id": 38,
1027
+ "event": "call",
1028
+ "thread_id": 70301283309360,
1029
+ "defined_class": "JSON::Ext::Parser",
1030
+ "method_id": "parse",
1031
+ "path": "JSON::Ext::Parser#parse",
1032
+ "static": false,
1033
+ "parameters": [],
1034
+ "receiver": {
1035
+ "class": "JSON::Ext::Parser",
1036
+ "object_id": 70301210245800,
1037
+ "value": "#<JSON::Ext::Parser:0x00007fe08d53f550>"
1038
+ }
1039
+ },
1040
+ {
1041
+ "id": 39,
1042
+ "event": "return",
1043
+ "thread_id": 70301283309360,
1044
+ "parent_id": 38,
1045
+ "elapsed": 0.000012,
1046
+ "return_value": {
1047
+ "class": "Hash",
1048
+ "value": "{\"session_id\"=>\"d1e7eca262775d5e4cba918433fce230\", \"user_id\"=>1, \"configuration\"=>\"{}\"}",
1049
+ "object_id": 70301210241780
1050
+ }
1051
+ },
1052
+ {
1053
+ "id": 40,
1054
+ "event": "call",
1055
+ "thread_id": 70301283309360,
1056
+ "sql_query": {
1057
+ "sql": "BEGIN",
1058
+ "database_type": "postgres",
1059
+ "server_version": 120003
1060
+ }
1061
+ },
1062
+ {
1063
+ "id": 41,
1064
+ "event": "return",
1065
+ "thread_id": 70301283309360,
1066
+ "parent_id": 40,
1067
+ "elapsed": 0.001056
1068
+ },
1069
+ {
1070
+ "id": 42,
1071
+ "event": "call",
1072
+ "thread_id": 70301283309360,
1073
+ "defined_class": "User",
1074
+ "method_id": "find_by_id!",
1075
+ "path": "app/models/user.rb",
1076
+ "lineno": 31,
1077
+ "static": true,
1078
+ "parameters": [
1079
+ {
1080
+ "name": "id",
1081
+ "class": "Integer",
1082
+ "object_id": 3,
1083
+ "value": "1",
1084
+ "kind": "req"
1085
+ }
1086
+ ],
1087
+ "receiver": {
1088
+ "class": "Class",
1089
+ "object_id": 70301244140020,
1090
+ "value": "User"
1091
+ }
1092
+ },
1093
+ {
1094
+ "id": 43,
1095
+ "event": "call",
1096
+ "thread_id": 70301283309360,
1097
+ "sql_query": {
1098
+ "sql": "SELECT * FROM \"users\" WHERE (\"id\" = 1) LIMIT 1",
1099
+ "database_type": "postgres",
1100
+ "server_version": 120003
1101
+ }
1102
+ },
1103
+ {
1104
+ "id": 44,
1105
+ "event": "return",
1106
+ "thread_id": 70301283309360,
1107
+ "parent_id": 43,
1108
+ "elapsed": 0.001443
1109
+ },
1110
+ {
1111
+ "id": 45,
1112
+ "event": "return",
1113
+ "thread_id": 70301283309360,
1114
+ "parent_id": 42,
1115
+ "elapsed": 0.014981,
1116
+ "return_value": {
1117
+ "class": "User::Show",
1118
+ "value": "#<User::Show:0x00007fe09588a608>",
1119
+ "object_id": 70301279081220
1120
+ }
1121
+ },
1122
+ {
1123
+ "id": 46,
1124
+ "event": "call",
1125
+ "thread_id": 70301283309360,
1126
+ "defined_class": "User::Show",
1127
+ "method_id": "accept_eula?",
1128
+ "path": "app/models/user.rb",
1129
+ "lineno": 109,
1130
+ "static": false,
1131
+ "parameters": [],
1132
+ "receiver": {
1133
+ "class": "User::Show",
1134
+ "object_id": 70301279081220,
1135
+ "value": "#<User::Show:0x00007fe09588a608>"
1136
+ }
1137
+ },
1138
+ {
1139
+ "id": 47,
1140
+ "event": "return",
1141
+ "thread_id": 70301283309360,
1142
+ "parent_id": 46,
1143
+ "elapsed": 0.000007,
1144
+ "return_value": {
1145
+ "class": "TrueClass",
1146
+ "value": "true",
1147
+ "object_id": 20
1148
+ }
1149
+ },
1150
+ {
1151
+ "id": 48,
1152
+ "event": "call",
1153
+ "thread_id": 70301283309360,
1154
+ "defined_class": "Configuration",
1155
+ "method_id": "find",
1156
+ "path": "app/models/configuration.rb",
1157
+ "lineno": 8,
1158
+ "static": true,
1159
+ "parameters": [
1160
+ {
1161
+ "name": "session",
1162
+ "class": "ActionDispatch::Request::Session",
1163
+ "object_id": 70301206013280,
1164
+ "value": "#<ActionDispatch::Request::Session:0x00007fe08cd2cac0>",
1165
+ "kind": "req"
1166
+ }
1167
+ ],
1168
+ "receiver": {
1169
+ "class": "Class",
1170
+ "object_id": 70301205343820,
1171
+ "value": "Configuration"
1172
+ }
1173
+ },
1174
+ {
1175
+ "id": 49,
1176
+ "event": "call",
1177
+ "thread_id": 70301283309360,
1178
+ "defined_class": "JSON::Ext::Parser",
1179
+ "method_id": "parse",
1180
+ "path": "JSON::Ext::Parser#parse",
1181
+ "static": false,
1182
+ "parameters": [],
1183
+ "receiver": {
1184
+ "class": "JSON::Ext::Parser",
1185
+ "object_id": 70301279215020,
1186
+ "value": "#<JSON::Ext::Parser:0x00007fe0958cbb58>"
1187
+ }
1188
+ },
1189
+ {
1190
+ "id": 50,
1191
+ "event": "return",
1192
+ "thread_id": 70301283309360,
1193
+ "parent_id": 49,
1194
+ "elapsed": 0.000005,
1195
+ "return_value": {
1196
+ "class": "Hash",
1197
+ "value": "{}",
1198
+ "object_id": 70301279213340
1199
+ }
1200
+ },
1201
+ {
1202
+ "id": 51,
1203
+ "event": "call",
1204
+ "thread_id": 70301283309360,
1205
+ "defined_class": "Configuration",
1206
+ "method_id": "attributes=",
1207
+ "path": "app/models/configuration.rb",
1208
+ "lineno": 33,
1209
+ "static": false,
1210
+ "parameters": [
1211
+ {
1212
+ "name": "attrs",
1213
+ "class": "Hash",
1214
+ "object_id": 70301279213340,
1215
+ "value": "{}",
1216
+ "kind": "req"
1217
+ }
1218
+ ],
1219
+ "receiver": {
1220
+ "class": "Configuration",
1221
+ "object_id": 70301279215080,
1222
+ "value": "#<Configuration:0x00007fe0958cbbd0>"
1223
+ }
1224
+ },
1225
+ {
1226
+ "id": 52,
1227
+ "event": "return",
1228
+ "thread_id": 70301283309360,
1229
+ "parent_id": 51,
1230
+ "elapsed": 0.000005,
1231
+ "return_value": {
1232
+ "class": "Hash",
1233
+ "value": "{}",
1234
+ "object_id": 70301279213340
1235
+ }
1236
+ },
1237
+ {
1238
+ "id": 53,
1239
+ "event": "return",
1240
+ "thread_id": 70301283309360,
1241
+ "parent_id": 48,
1242
+ "elapsed": 0.00017,
1243
+ "return_value": {
1244
+ "class": "Configuration",
1245
+ "value": "#<Configuration:0x00007fe0958cbbd0>",
1246
+ "object_id": 70301279215080
1247
+ }
1248
+ },
1249
+ {
1250
+ "id": 54,
1251
+ "event": "call",
1252
+ "thread_id": 70301283309360,
1253
+ "defined_class": "Configuration",
1254
+ "method_id": "attributes",
1255
+ "path": "app/models/configuration.rb",
1256
+ "lineno": 22,
1257
+ "static": false,
1258
+ "parameters": [],
1259
+ "receiver": {
1260
+ "class": "Configuration",
1261
+ "object_id": 70301279215080,
1262
+ "value": "#<Configuration:0x00007fe0958cbbd0>"
1263
+ }
1264
+ },
1265
+ {
1266
+ "id": 55,
1267
+ "event": "return",
1268
+ "thread_id": 70301283309360,
1269
+ "parent_id": 54,
1270
+ "elapsed": 0.000006,
1271
+ "return_value": {
1272
+ "class": "Hash",
1273
+ "value": "{\"show_search\"=>nil, \"show_codegen\"=>nil, \"show_mini_profiler\"=>nil, \"show_mockups\"=>nil, \"show_noti",
1274
+ "object_id": 70301279182140
1275
+ }
1276
+ },
1277
+ {
1278
+ "id": 56,
1279
+ "event": "call",
1280
+ "thread_id": 70301283309360,
1281
+ "defined_class": "OrganizationsController",
1282
+ "method_id": "new",
1283
+ "path": "app/controllers/organizations_controller.rb",
1284
+ "lineno": 11,
1285
+ "static": false,
1286
+ "parameters": [],
1287
+ "receiver": {
1288
+ "class": "OrganizationsController",
1289
+ "object_id": 70301213376940,
1290
+ "value": "#<OrganizationsController:0x00007fe08db38358>"
1291
+ }
1292
+ },
1293
+ {
1294
+ "id": 57,
1295
+ "event": "return",
1296
+ "thread_id": 70301283309360,
1297
+ "parent_id": 56,
1298
+ "elapsed": 0.000005
1299
+ },
1300
+ {
1301
+ "id": 58,
1302
+ "event": "call",
1303
+ "thread_id": 70301283309360,
1304
+ "defined_class": "Digest::Instance",
1305
+ "method_id": "digest",
1306
+ "path": "Digest::Instance#digest",
1307
+ "static": false,
1308
+ "parameters": [
1309
+ {
1310
+ "name": "arg",
1311
+ "class": "Array",
1312
+ "object_id": 70301284008740,
1313
+ "value": "[\"dataStore.js/b3b290cea6ab572b97ebfaf525b6dc874087082b/eventSource.js/677ac9ebfc7bea61a50046eb4c3c1",
1314
+ "kind": "rest"
1315
+ }
1316
+ ],
1317
+ "receiver": {
1318
+ "class": "Digest::SHA1",
1319
+ "object_id": 70301284010580,
1320
+ "value": "da39a3ee5e6b4b0d3255bfef95601890afd80709"
1321
+ }
1322
+ },
1323
+ {
1324
+ "id": 59,
1325
+ "event": "return",
1326
+ "thread_id": 70301283309360,
1327
+ "parent_id": 58,
1328
+ "elapsed": 0.00002,
1329
+ "return_value": {
1330
+ "class": "String",
1331
+ "value": ";__U__D|__\u0018o__e__t_*",
1332
+ "object_id": 70301283979840
1333
+ }
1334
+ },
1335
+ {
1336
+ "id": 60,
1337
+ "event": "call",
1338
+ "thread_id": 70301283309360,
1339
+ "defined_class": "JSON::Ext::Parser",
1340
+ "method_id": "parse",
1341
+ "path": "JSON::Ext::Parser#parse",
1342
+ "static": false,
1343
+ "parameters": [],
1344
+ "receiver": {
1345
+ "class": "JSON::Ext::Parser",
1346
+ "object_id": 70301284048640,
1347
+ "value": "#<JSON::Ext::Parser:0x00007fe096203e00>"
1348
+ }
1349
+ },
1350
+ {
1351
+ "id": 61,
1352
+ "event": "return",
1353
+ "thread_id": 70301283309360,
1354
+ "parent_id": 60,
1355
+ "elapsed": 0.000647,
1356
+ "return_value": {
1357
+ "class": "Hash",
1358
+ "value": "{\"application.css\"=>\"/packs-test/css/application-1e3921c8.css\", \"application.css.map\"=>\"/packs-test/",
1359
+ "object_id": 70301284046180
1360
+ }
1361
+ },
1362
+ {
1363
+ "id": 62,
1364
+ "event": "call",
1365
+ "thread_id": 70301283309360,
1366
+ "defined_class": "Configuration",
1367
+ "method_id": "attributes",
1368
+ "path": "app/models/configuration.rb",
1369
+ "lineno": 22,
1370
+ "static": false,
1371
+ "parameters": [],
1372
+ "receiver": {
1373
+ "class": "Configuration",
1374
+ "object_id": 70301279215080,
1375
+ "value": "#<Configuration:0x00007fe0958cbbd0>"
1376
+ }
1377
+ },
1378
+ {
1379
+ "id": 63,
1380
+ "event": "return",
1381
+ "thread_id": 70301283309360,
1382
+ "parent_id": 62,
1383
+ "elapsed": 0.000008,
1384
+ "return_value": {
1385
+ "class": "Hash",
1386
+ "value": "{\"show_search\"=>nil, \"show_codegen\"=>nil, \"show_mini_profiler\"=>nil, \"show_mockups\"=>nil, \"show_noti",
1387
+ "object_id": 70301284535720
1388
+ }
1389
+ },
1390
+ {
1391
+ "id": 64,
1392
+ "event": "call",
1393
+ "thread_id": 70301283309360,
1394
+ "sql_query": {
1395
+ "sql": "COMMIT",
1396
+ "database_type": "postgres",
1397
+ "server_version": 120003
1398
+ }
1399
+ },
1400
+ {
1401
+ "id": 65,
1402
+ "event": "return",
1403
+ "thread_id": 70301283309360,
1404
+ "parent_id": 64,
1405
+ "elapsed": 0.002439
1406
+ },
1407
+ {
1408
+ "id": 66,
1409
+ "event": "return",
1410
+ "thread_id": 70301283309360,
1411
+ "parent_id": 31,
1412
+ "elapsed": 0.082122,
1413
+ "http_server_response": {
1414
+ "mime_type": "text/html; charset=utf-8",
1415
+ "status": 200
1416
+ }
1417
+ },
1418
+ {
1419
+ "id": 67,
1420
+ "event": "call",
1421
+ "thread_id": 70301283309360,
1422
+ "defined_class": "JSON::Ext::Generator::State",
1423
+ "method_id": "generate",
1424
+ "path": "JSON::Ext::Generator::State#generate",
1425
+ "static": false,
1426
+ "parameters": [
1427
+ {
1428
+ "name": "arg",
1429
+ "class": "Hash",
1430
+ "object_id": 70301244270060,
1431
+ "value": "{\"session_id\"=>\"d1e7eca262775d5e4cba918433fce230\", \"user_id\"=>1, \"configuration\"=>\"{}\"}",
1432
+ "kind": "req"
1433
+ }
1434
+ ],
1435
+ "receiver": {
1436
+ "class": "JSON::Ext::Generator::State",
1437
+ "object_id": 70301244270020,
1438
+ "value": "#<JSON::Ext::Generator::State:0x00007fe091624b88>"
1439
+ }
1440
+ },
1441
+ {
1442
+ "id": 68,
1443
+ "event": "return",
1444
+ "thread_id": 70301283309360,
1445
+ "parent_id": 67,
1446
+ "elapsed": 0.00064,
1447
+ "return_value": {
1448
+ "class": "String",
1449
+ "value": "{\"session_id\":\"d1e7eca262775d5e4cba918433fce230\",\"user_id\":1,\"configuration\":\"{}\"}",
1450
+ "object_id": 70301244374540
1451
+ }
1452
+ },
1453
+ {
1454
+ "id": 69,
1455
+ "event": "call",
1456
+ "thread_id": 70301283309360,
1457
+ "defined_class": "OpenSSL::Cipher",
1458
+ "method_id": "encrypt",
1459
+ "path": "OpenSSL::Cipher#encrypt",
1460
+ "static": false,
1461
+ "parameters": [
1462
+ {
1463
+ "name": "arg",
1464
+ "class": "Array",
1465
+ "object_id": 70301244373460,
1466
+ "value": "[]",
1467
+ "kind": "rest"
1468
+ }
1469
+ ],
1470
+ "receiver": {
1471
+ "class": "OpenSSL::Cipher",
1472
+ "object_id": 70301244374100,
1473
+ "value": "#<OpenSSL::Cipher:0x00007fe0916578a8>"
1474
+ }
1475
+ },
1476
+ {
1477
+ "id": 70,
1478
+ "event": "return",
1479
+ "thread_id": 70301283309360,
1480
+ "parent_id": 69,
1481
+ "elapsed": 0.000006,
1482
+ "return_value": {
1483
+ "class": "OpenSSL::Cipher",
1484
+ "value": "#<OpenSSL::Cipher:0x00007fe0916578a8>",
1485
+ "object_id": 70301244374100
1486
+ }
1487
+ },
1488
+ {
1489
+ "id": 71,
1490
+ "event": "call",
1491
+ "thread_id": 70301283309360,
1492
+ "defined_class": "JSON::Ext::Generator::State",
1493
+ "method_id": "generate",
1494
+ "path": "JSON::Ext::Generator::State#generate",
1495
+ "static": false,
1496
+ "parameters": [
1497
+ {
1498
+ "name": "arg",
1499
+ "class": "Hash",
1500
+ "object_id": 70301244371800,
1501
+ "value": "{\"_rails\"=>{\"message\"=>\"eyJzZXNzaW9uX2lkIjoiZDFlN2VjYTI2Mjc3NWQ1ZTRjYmE5MTg0MzNmY2UyMzAiLCJ1c2VyX2lk",
1502
+ "kind": "req"
1503
+ }
1504
+ ],
1505
+ "receiver": {
1506
+ "class": "JSON::Ext::Generator::State",
1507
+ "object_id": 70301244371760,
1508
+ "value": "#<JSON::Ext::Generator::State:0x00007fe091656660>"
1509
+ }
1510
+ },
1511
+ {
1512
+ "id": 72,
1513
+ "event": "return",
1514
+ "thread_id": 70301283309360,
1515
+ "parent_id": 71,
1516
+ "elapsed": 0.000029,
1517
+ "return_value": {
1518
+ "class": "String",
1519
+ "value": "{\"_rails\":{\"message\":\"eyJzZXNzaW9uX2lkIjoiZDFlN2VjYTI2Mjc3NWQ1ZTRjYmE5MTg0MzNmY2UyMzAiLCJ1c2VyX2lkIj",
1520
+ "object_id": 70301244369740
1521
+ }
1522
+ },
1523
+ {
1524
+ "id": 73,
1525
+ "event": "call",
1526
+ "thread_id": 70301283309360,
1527
+ "defined_class": "OpenSSL::Cipher",
1528
+ "method_id": "final",
1529
+ "path": "OpenSSL::Cipher#final",
1530
+ "static": false,
1531
+ "parameters": [],
1532
+ "receiver": {
1533
+ "class": "OpenSSL::Cipher",
1534
+ "object_id": 70301244374100,
1535
+ "value": "#<OpenSSL::Cipher:0x00007fe0916578a8>"
1536
+ }
1537
+ },
1538
+ {
1539
+ "id": 74,
1540
+ "event": "return",
1541
+ "thread_id": 70301283309360,
1542
+ "parent_id": 73,
1543
+ "elapsed": 0.000005,
1544
+ "return_value": {
1545
+ "class": "String",
1546
+ "value": "",
1547
+ "object_id": 70301244368360
1548
+ }
1549
+ },
1550
+ {
1551
+ "id": 75,
1552
+ "event": "return",
1553
+ "thread_id": 70301203546120,
1554
+ "parent_id": 30,
1555
+ "elapsed": 0.148859,
1556
+ "return_value": {
1557
+ "class": "Net::HTTPOK",
1558
+ "value": "#<Net::HTTPOK:0x00007fe0916445c8>",
1559
+ "object_id": 70301244334820
1560
+ }
1561
+ },
1562
+ {
1563
+ "id": 76,
1564
+ "event": "return",
1565
+ "thread_id": 70301203546120,
1566
+ "parent_id": 29,
1567
+ "elapsed": 0.148957,
1568
+ "return_value": {
1569
+ "class": "Net::HTTPOK",
1570
+ "value": "#<Net::HTTPOK:0x00007fe0916445c8>",
1571
+ "object_id": 70301244334820
1572
+ }
1573
+ },
1574
+ {
1575
+ "id": 77,
1576
+ "event": "call",
1577
+ "thread_id": 70301203546120,
1578
+ "defined_class": "JSON::Ext::Parser",
1579
+ "method_id": "parse",
1580
+ "path": "JSON::Ext::Parser#parse",
1581
+ "static": false,
1582
+ "parameters": [],
1583
+ "receiver": {
1584
+ "class": "JSON::Ext::Parser",
1585
+ "object_id": 70301244436740,
1586
+ "value": "#<JSON::Ext::Parser:0x00007fe091676208>"
1587
+ }
1588
+ },
1589
+ {
1590
+ "id": 78,
1591
+ "event": "return",
1592
+ "thread_id": 70301203546120,
1593
+ "parent_id": 77,
1594
+ "elapsed": 0.000007,
1595
+ "return_value": {
1596
+ "class": "Hash",
1597
+ "value": "{\"value\"=>nil}",
1598
+ "object_id": 70301244435640
1599
+ }
1600
+ },
1601
+ {
1602
+ "id": 79,
1603
+ "event": "call",
1604
+ "thread_id": 70301203546120,
1605
+ "defined_class": "Net::HTTP",
1606
+ "method_id": "request",
1607
+ "path": "/Users/kgilpin/source/appland/appmap-ruby/lib/appmap/hook/method.rb",
1608
+ "lineno": 49,
1609
+ "static": false,
1610
+ "parameters": [
1611
+ {
1612
+ "name": "args",
1613
+ "class": "Array",
1614
+ "object_id": 70301244405920,
1615
+ "value": "[#<Net::HTTP::Get GET>]",
1616
+ "kind": "rest"
1617
+ },
1618
+ {
1619
+ "name": "block",
1620
+ "class": "NilClass",
1621
+ "object_id": 8,
1622
+ "value": null,
1623
+ "kind": "block"
1624
+ }
1625
+ ],
1626
+ "receiver": {
1627
+ "class": "Net::HTTP",
1628
+ "object_id": 70301205235520,
1629
+ "value": "Net::HTTP[127.0.0.1:9515]"
1630
+ }
1631
+ },
1632
+ {
1633
+ "id": 80,
1634
+ "event": "call",
1635
+ "thread_id": 70301203546120,
1636
+ "defined_class": "Net::HTTP",
1637
+ "method_id": "request",
1638
+ "path": "/Users/kgilpin/.rbenv/versions/2.6.6/lib/ruby/2.6.0/net/http.rb",
1639
+ "lineno": 1468,
1640
+ "static": false,
1641
+ "parameters": [
1642
+ {
1643
+ "name": "req",
1644
+ "class": "Net::HTTP::Get",
1645
+ "object_id": 70301244433160,
1646
+ "value": "Net::HTTP::Get[GET /session/a6781fa7e36446596e111a62fa53c68f/url]",
1647
+ "kind": "req"
1648
+ },
1649
+ {
1650
+ "name": "body",
1651
+ "class": "NilClass",
1652
+ "object_id": 8,
1653
+ "value": null,
1654
+ "kind": "opt"
1655
+ },
1656
+ {
1657
+ "name": "block",
1658
+ "class": "NilClass",
1659
+ "object_id": 8,
1660
+ "value": null,
1661
+ "kind": "block"
1662
+ }
1663
+ ],
1664
+ "receiver": {
1665
+ "class": "Net::HTTP",
1666
+ "object_id": 70301205235520,
1667
+ "value": "Net::HTTP[127.0.0.1:9515]"
1668
+ }
1669
+ },
1670
+ {
1671
+ "id": 81,
1672
+ "event": "return",
1673
+ "thread_id": 70301203546120,
1674
+ "parent_id": 80,
1675
+ "elapsed": 0.002975,
1676
+ "return_value": {
1677
+ "class": "Net::HTTPOK",
1678
+ "value": "#<Net::HTTPOK:0x00007fe091664af8>",
1679
+ "object_id": 70301244401020
1680
+ }
1681
+ },
1682
+ {
1683
+ "id": 82,
1684
+ "event": "return",
1685
+ "thread_id": 70301203546120,
1686
+ "parent_id": 79,
1687
+ "elapsed": 0.003069,
1688
+ "return_value": {
1689
+ "class": "Net::HTTPOK",
1690
+ "value": "#<Net::HTTPOK:0x00007fe091664af8>",
1691
+ "object_id": 70301244401020
1692
+ }
1693
+ },
1694
+ {
1695
+ "id": 83,
1696
+ "event": "call",
1697
+ "thread_id": 70301203546120,
1698
+ "defined_class": "JSON::Ext::Parser",
1699
+ "method_id": "parse",
1700
+ "path": "JSON::Ext::Parser#parse",
1701
+ "static": false,
1702
+ "parameters": [],
1703
+ "receiver": {
1704
+ "class": "JSON::Ext::Parser",
1705
+ "object_id": 70301279736280,
1706
+ "value": "#<JSON::Ext::Parser:0x00007fe0959ca3b0>"
1707
+ }
1708
+ },
1709
+ {
1710
+ "id": 84,
1711
+ "event": "return",
1712
+ "thread_id": 70301203546120,
1713
+ "parent_id": 83,
1714
+ "elapsed": 0.000008,
1715
+ "return_value": {
1716
+ "class": "Hash",
1717
+ "value": "{\"value\"=>\"http://127.0.0.1:52537/organizations/new\"}",
1718
+ "object_id": 70301279735240
1719
+ }
1720
+ }
1721
+ ]
1722
+ }