skylight 4.3.2 → 5.0.0.beta

Sign up to get free protection for your applications and to get access to all the features.
Files changed (112) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +14 -5
  3. data/CONTRIBUTING.md +1 -7
  4. data/ext/extconf.rb +4 -3
  5. data/ext/libskylight.yml +5 -6
  6. data/ext/skylight_native.c +22 -99
  7. data/lib/skylight.rb +204 -14
  8. data/lib/skylight/api.rb +7 -3
  9. data/lib/skylight/cli.rb +4 -3
  10. data/lib/skylight/cli/doctor.rb +3 -2
  11. data/lib/skylight/cli/merger.rb +6 -4
  12. data/lib/skylight/config.rb +603 -126
  13. data/lib/skylight/deprecation.rb +15 -0
  14. data/lib/skylight/errors.rb +17 -2
  15. data/lib/skylight/extensions.rb +99 -0
  16. data/lib/skylight/extensions/source_location.rb +249 -0
  17. data/lib/skylight/fanout.rb +0 -0
  18. data/lib/skylight/formatters/http.rb +19 -0
  19. data/lib/skylight/gc.rb +109 -0
  20. data/lib/skylight/helpers.rb +18 -2
  21. data/lib/skylight/instrumenter.rb +325 -15
  22. data/lib/skylight/middleware.rb +138 -1
  23. data/lib/skylight/native.rb +51 -1
  24. data/lib/skylight/native_ext_fetcher.rb +2 -1
  25. data/lib/skylight/normalizers.rb +151 -0
  26. data/lib/skylight/normalizers/action_controller/process_action.rb +69 -0
  27. data/lib/skylight/normalizers/action_controller/send_file.rb +50 -0
  28. data/lib/skylight/normalizers/action_dispatch/process_middleware.rb +22 -0
  29. data/lib/skylight/normalizers/action_dispatch/route_set.rb +27 -0
  30. data/lib/skylight/normalizers/action_view/render_collection.rb +24 -0
  31. data/lib/skylight/normalizers/action_view/render_layout.rb +25 -0
  32. data/lib/skylight/normalizers/action_view/render_partial.rb +23 -0
  33. data/lib/skylight/normalizers/action_view/render_template.rb +23 -0
  34. data/lib/skylight/normalizers/active_job/perform.rb +81 -0
  35. data/lib/skylight/normalizers/active_model_serializers/render.rb +28 -0
  36. data/lib/skylight/normalizers/active_record/instantiation.rb +16 -0
  37. data/lib/skylight/normalizers/active_record/sql.rb +12 -0
  38. data/lib/skylight/normalizers/active_storage.rb +30 -0
  39. data/lib/skylight/normalizers/active_support/cache.rb +22 -0
  40. data/lib/skylight/normalizers/active_support/cache_clear.rb +16 -0
  41. data/lib/skylight/normalizers/active_support/cache_decrement.rb +16 -0
  42. data/lib/skylight/normalizers/active_support/cache_delete.rb +16 -0
  43. data/lib/skylight/normalizers/active_support/cache_exist.rb +16 -0
  44. data/lib/skylight/normalizers/active_support/cache_fetch_hit.rb +16 -0
  45. data/lib/skylight/normalizers/active_support/cache_generate.rb +16 -0
  46. data/lib/skylight/normalizers/active_support/cache_increment.rb +16 -0
  47. data/lib/skylight/normalizers/active_support/cache_read.rb +16 -0
  48. data/lib/skylight/normalizers/active_support/cache_read_multi.rb +16 -0
  49. data/lib/skylight/normalizers/active_support/cache_write.rb +16 -0
  50. data/lib/skylight/normalizers/coach/handler_finish.rb +46 -0
  51. data/lib/skylight/normalizers/coach/middleware_finish.rb +33 -0
  52. data/lib/skylight/normalizers/couch_potato/query.rb +20 -0
  53. data/lib/skylight/normalizers/data_mapper/sql.rb +12 -0
  54. data/lib/skylight/normalizers/default.rb +32 -0
  55. data/lib/skylight/normalizers/elasticsearch/request.rb +20 -0
  56. data/lib/skylight/normalizers/faraday/request.rb +40 -0
  57. data/lib/skylight/normalizers/grape/endpoint.rb +34 -0
  58. data/lib/skylight/normalizers/grape/endpoint_render.rb +25 -0
  59. data/lib/skylight/normalizers/grape/endpoint_run.rb +41 -0
  60. data/lib/skylight/normalizers/grape/endpoint_run_filters.rb +22 -0
  61. data/lib/skylight/normalizers/grape/format_response.rb +20 -0
  62. data/lib/skylight/normalizers/graphiti/render.rb +22 -0
  63. data/lib/skylight/normalizers/graphiti/resolve.rb +31 -0
  64. data/lib/skylight/normalizers/graphql/base.rb +131 -0
  65. data/lib/skylight/normalizers/render.rb +81 -0
  66. data/lib/skylight/normalizers/sequel/sql.rb +12 -0
  67. data/lib/skylight/normalizers/sql.rb +44 -0
  68. data/lib/skylight/probes.rb +153 -0
  69. data/lib/skylight/probes/action_controller.rb +48 -0
  70. data/lib/skylight/probes/action_dispatch.rb +2 -0
  71. data/lib/skylight/probes/action_dispatch/request_id.rb +29 -0
  72. data/lib/skylight/probes/action_dispatch/routing/route_set.rb +28 -0
  73. data/lib/skylight/probes/action_view.rb +43 -0
  74. data/lib/skylight/probes/active_job.rb +29 -0
  75. data/lib/skylight/probes/active_job_enqueue.rb +37 -0
  76. data/lib/skylight/probes/active_model_serializers.rb +54 -0
  77. data/lib/skylight/probes/delayed_job.rb +62 -0
  78. data/lib/skylight/probes/elasticsearch.rb +38 -0
  79. data/lib/skylight/probes/excon.rb +25 -0
  80. data/lib/skylight/probes/excon/middleware.rb +66 -0
  81. data/lib/skylight/probes/faraday.rb +23 -0
  82. data/lib/skylight/probes/graphql.rb +43 -0
  83. data/lib/skylight/probes/httpclient.rb +44 -0
  84. data/lib/skylight/probes/middleware.rb +125 -0
  85. data/lib/skylight/probes/mongo.rb +163 -0
  86. data/lib/skylight/probes/mongoid.rb +13 -0
  87. data/lib/skylight/probes/net_http.rb +55 -0
  88. data/lib/skylight/probes/redis.rb +60 -0
  89. data/lib/skylight/probes/sequel.rb +33 -0
  90. data/lib/skylight/probes/sinatra.rb +63 -0
  91. data/lib/skylight/probes/sinatra_add_middleware.rb +10 -10
  92. data/lib/skylight/probes/tilt.rb +27 -0
  93. data/lib/skylight/railtie.rb +162 -18
  94. data/lib/skylight/sidekiq.rb +43 -0
  95. data/lib/skylight/subscriber.rb +110 -0
  96. data/lib/skylight/test.rb +146 -0
  97. data/lib/skylight/trace.rb +301 -10
  98. data/lib/skylight/user_config.rb +61 -0
  99. data/lib/skylight/util.rb +12 -0
  100. data/lib/skylight/util/allocation_free.rb +26 -0
  101. data/lib/skylight/util/clock.rb +56 -0
  102. data/lib/skylight/util/component.rb +5 -2
  103. data/lib/skylight/util/deploy.rb +4 -4
  104. data/lib/skylight/util/gzip.rb +20 -0
  105. data/lib/skylight/util/http.rb +4 -10
  106. data/lib/skylight/util/instrumenter_method.rb +26 -0
  107. data/lib/skylight/util/logging.rb +138 -0
  108. data/lib/skylight/util/lru_cache.rb +42 -0
  109. data/lib/skylight/vendor/cli/thor/rake_compat.rb +1 -1
  110. data/lib/skylight/version.rb +5 -1
  111. data/lib/skylight/vm/gc.rb +68 -0
  112. metadata +110 -11
metadata CHANGED
@@ -1,29 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: skylight
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.3.2
4
+ version: 5.0.0.beta
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tilde, Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-12-15 00:00:00.000000000 Z
11
+ date: 2020-07-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: skylight-core
14
+ name: activesupport
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - '='
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 4.3.2
19
+ version: 5.2.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - '='
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: 4.3.2
26
+ version: 5.2.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: beefcake
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -136,6 +136,20 @@ dependencies:
136
136
  - - "~>"
137
137
  - !ruby/object:Gem::Version
138
138
  version: '1.1'
139
+ - !ruby/object:Gem::Dependency
140
+ name: rubocop
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - "~>"
144
+ - !ruby/object:Gem::Version
145
+ version: 0.79.0
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - "~>"
151
+ - !ruby/object:Gem::Version
152
+ version: 0.79.0
139
153
  - !ruby/object:Gem::Dependency
140
154
  name: timecop
141
155
  requirement: !ruby/object:Gem::Requirement
@@ -193,20 +207,104 @@ files:
193
207
  - lib/skylight/cli/merger.rb
194
208
  - lib/skylight/config.rb
195
209
  - lib/skylight/data/cacert.pem
210
+ - lib/skylight/deprecation.rb
196
211
  - lib/skylight/errors.rb
212
+ - lib/skylight/extensions.rb
213
+ - lib/skylight/extensions/source_location.rb
214
+ - lib/skylight/fanout.rb
215
+ - lib/skylight/formatters/http.rb
216
+ - lib/skylight/gc.rb
197
217
  - lib/skylight/helpers.rb
198
218
  - lib/skylight/instrumenter.rb
199
219
  - lib/skylight/middleware.rb
200
220
  - lib/skylight/native.rb
201
221
  - lib/skylight/native_ext_fetcher.rb
222
+ - lib/skylight/normalizers.rb
223
+ - lib/skylight/normalizers/action_controller/process_action.rb
224
+ - lib/skylight/normalizers/action_controller/send_file.rb
225
+ - lib/skylight/normalizers/action_dispatch/process_middleware.rb
226
+ - lib/skylight/normalizers/action_dispatch/route_set.rb
227
+ - lib/skylight/normalizers/action_view/render_collection.rb
228
+ - lib/skylight/normalizers/action_view/render_layout.rb
229
+ - lib/skylight/normalizers/action_view/render_partial.rb
230
+ - lib/skylight/normalizers/action_view/render_template.rb
231
+ - lib/skylight/normalizers/active_job/perform.rb
232
+ - lib/skylight/normalizers/active_model_serializers/render.rb
233
+ - lib/skylight/normalizers/active_record/instantiation.rb
234
+ - lib/skylight/normalizers/active_record/sql.rb
235
+ - lib/skylight/normalizers/active_storage.rb
236
+ - lib/skylight/normalizers/active_support/cache.rb
237
+ - lib/skylight/normalizers/active_support/cache_clear.rb
238
+ - lib/skylight/normalizers/active_support/cache_decrement.rb
239
+ - lib/skylight/normalizers/active_support/cache_delete.rb
240
+ - lib/skylight/normalizers/active_support/cache_exist.rb
241
+ - lib/skylight/normalizers/active_support/cache_fetch_hit.rb
242
+ - lib/skylight/normalizers/active_support/cache_generate.rb
243
+ - lib/skylight/normalizers/active_support/cache_increment.rb
244
+ - lib/skylight/normalizers/active_support/cache_read.rb
245
+ - lib/skylight/normalizers/active_support/cache_read_multi.rb
246
+ - lib/skylight/normalizers/active_support/cache_write.rb
247
+ - lib/skylight/normalizers/coach/handler_finish.rb
248
+ - lib/skylight/normalizers/coach/middleware_finish.rb
249
+ - lib/skylight/normalizers/couch_potato/query.rb
250
+ - lib/skylight/normalizers/data_mapper/sql.rb
251
+ - lib/skylight/normalizers/default.rb
252
+ - lib/skylight/normalizers/elasticsearch/request.rb
253
+ - lib/skylight/normalizers/faraday/request.rb
254
+ - lib/skylight/normalizers/grape/endpoint.rb
255
+ - lib/skylight/normalizers/grape/endpoint_render.rb
256
+ - lib/skylight/normalizers/grape/endpoint_run.rb
257
+ - lib/skylight/normalizers/grape/endpoint_run_filters.rb
258
+ - lib/skylight/normalizers/grape/format_response.rb
259
+ - lib/skylight/normalizers/graphiti/render.rb
260
+ - lib/skylight/normalizers/graphiti/resolve.rb
261
+ - lib/skylight/normalizers/graphql/base.rb
262
+ - lib/skylight/normalizers/render.rb
263
+ - lib/skylight/normalizers/sequel/sql.rb
264
+ - lib/skylight/normalizers/sql.rb
265
+ - lib/skylight/probes.rb
266
+ - lib/skylight/probes/action_controller.rb
267
+ - lib/skylight/probes/action_dispatch.rb
268
+ - lib/skylight/probes/action_dispatch/request_id.rb
269
+ - lib/skylight/probes/action_dispatch/routing/route_set.rb
270
+ - lib/skylight/probes/action_view.rb
271
+ - lib/skylight/probes/active_job.rb
272
+ - lib/skylight/probes/active_job_enqueue.rb
273
+ - lib/skylight/probes/active_model_serializers.rb
274
+ - lib/skylight/probes/delayed_job.rb
275
+ - lib/skylight/probes/elasticsearch.rb
276
+ - lib/skylight/probes/excon.rb
277
+ - lib/skylight/probes/excon/middleware.rb
278
+ - lib/skylight/probes/faraday.rb
279
+ - lib/skylight/probes/graphql.rb
280
+ - lib/skylight/probes/httpclient.rb
281
+ - lib/skylight/probes/middleware.rb
282
+ - lib/skylight/probes/mongo.rb
283
+ - lib/skylight/probes/mongoid.rb
284
+ - lib/skylight/probes/net_http.rb
285
+ - lib/skylight/probes/redis.rb
286
+ - lib/skylight/probes/sequel.rb
287
+ - lib/skylight/probes/sinatra.rb
202
288
  - lib/skylight/probes/sinatra_add_middleware.rb
289
+ - lib/skylight/probes/tilt.rb
203
290
  - lib/skylight/railtie.rb
291
+ - lib/skylight/sidekiq.rb
204
292
  - lib/skylight/sinatra.rb
293
+ - lib/skylight/subscriber.rb
294
+ - lib/skylight/test.rb
205
295
  - lib/skylight/trace.rb
296
+ - lib/skylight/user_config.rb
297
+ - lib/skylight/util.rb
298
+ - lib/skylight/util/allocation_free.rb
299
+ - lib/skylight/util/clock.rb
206
300
  - lib/skylight/util/component.rb
207
301
  - lib/skylight/util/deploy.rb
302
+ - lib/skylight/util/gzip.rb
208
303
  - lib/skylight/util/hostname.rb
209
304
  - lib/skylight/util/http.rb
305
+ - lib/skylight/util/instrumenter_method.rb
306
+ - lib/skylight/util/logging.rb
307
+ - lib/skylight/util/lru_cache.rb
210
308
  - lib/skylight/util/platform.rb
211
309
  - lib/skylight/util/proxy.rb
212
310
  - lib/skylight/util/ssl.rb
@@ -250,6 +348,7 @@ files:
250
348
  - lib/skylight/vendor/cli/thor/util.rb
251
349
  - lib/skylight/vendor/cli/thor/version.rb
252
350
  - lib/skylight/version.rb
351
+ - lib/skylight/vm/gc.rb
253
352
  homepage: https://www.skylight.io
254
353
  licenses:
255
354
  - Nonstandard
@@ -262,14 +361,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
262
361
  requirements:
263
362
  - - ">="
264
363
  - !ruby/object:Gem::Version
265
- version: '2.3'
364
+ version: '2.4'
266
365
  required_rubygems_version: !ruby/object:Gem::Requirement
267
366
  requirements:
268
- - - ">="
367
+ - - ">"
269
368
  - !ruby/object:Gem::Version
270
- version: '0'
369
+ version: 1.3.1
271
370
  requirements: []
272
- rubygems_version: 3.1.4
371
+ rubygems_version: 3.1.2
273
372
  signing_key:
274
373
  specification_version: 4
275
374
  summary: Skylight is a smart profiler for Rails, Sinatra, and other Ruby apps.