skylight 5.1.0.beta → 5.1.0.beta2

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.
Files changed (78) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +390 -371
  3. data/CLA.md +1 -1
  4. data/LICENSE.md +7 -17
  5. data/README.md +1 -1
  6. data/ext/extconf.rb +42 -54
  7. data/lib/skylight.rb +20 -30
  8. data/lib/skylight/api.rb +22 -18
  9. data/lib/skylight/cli.rb +47 -46
  10. data/lib/skylight/cli/doctor.rb +50 -50
  11. data/lib/skylight/cli/helpers.rb +19 -19
  12. data/lib/skylight/cli/merger.rb +141 -139
  13. data/lib/skylight/config.rb +265 -302
  14. data/lib/skylight/deprecation.rb +4 -4
  15. data/lib/skylight/errors.rb +3 -4
  16. data/lib/skylight/extensions.rb +17 -29
  17. data/lib/skylight/extensions/source_location.rb +128 -128
  18. data/lib/skylight/formatters/http.rb +1 -3
  19. data/lib/skylight/gc.rb +30 -40
  20. data/lib/skylight/helpers.rb +43 -41
  21. data/lib/skylight/instrumenter.rb +25 -18
  22. data/lib/skylight/middleware.rb +31 -35
  23. data/lib/skylight/native.rb +8 -10
  24. data/lib/skylight/native_ext_fetcher.rb +10 -12
  25. data/lib/skylight/normalizers.rb +43 -39
  26. data/lib/skylight/normalizers/action_controller/process_action.rb +24 -25
  27. data/lib/skylight/normalizers/action_controller/send_file.rb +7 -6
  28. data/lib/skylight/normalizers/action_dispatch/route_set.rb +7 -7
  29. data/lib/skylight/normalizers/active_job/perform.rb +48 -44
  30. data/lib/skylight/normalizers/active_model_serializers/render.rb +7 -3
  31. data/lib/skylight/normalizers/active_storage.rb +11 -13
  32. data/lib/skylight/normalizers/active_support/cache.rb +1 -12
  33. data/lib/skylight/normalizers/coach/handler_finish.rb +1 -3
  34. data/lib/skylight/normalizers/default.rb +1 -9
  35. data/lib/skylight/normalizers/faraday/request.rb +1 -3
  36. data/lib/skylight/normalizers/grape/endpoint.rb +13 -19
  37. data/lib/skylight/normalizers/grape/endpoint_run.rb +16 -18
  38. data/lib/skylight/normalizers/grape/endpoint_run_filters.rb +1 -3
  39. data/lib/skylight/normalizers/graphql/base.rb +23 -28
  40. data/lib/skylight/normalizers/render.rb +19 -21
  41. data/lib/skylight/normalizers/shrine.rb +15 -17
  42. data/lib/skylight/normalizers/sql.rb +4 -4
  43. data/lib/skylight/probes.rb +38 -46
  44. data/lib/skylight/probes/action_controller.rb +32 -28
  45. data/lib/skylight/probes/action_dispatch/request_id.rb +9 -5
  46. data/lib/skylight/probes/action_dispatch/routing/route_set.rb +7 -5
  47. data/lib/skylight/probes/action_view.rb +9 -10
  48. data/lib/skylight/probes/active_job_enqueue.rb +3 -9
  49. data/lib/skylight/probes/active_model_serializers.rb +8 -8
  50. data/lib/skylight/probes/delayed_job.rb +37 -42
  51. data/lib/skylight/probes/elasticsearch.rb +3 -5
  52. data/lib/skylight/probes/excon.rb +1 -1
  53. data/lib/skylight/probes/excon/middleware.rb +22 -23
  54. data/lib/skylight/probes/graphql.rb +2 -7
  55. data/lib/skylight/probes/middleware.rb +14 -5
  56. data/lib/skylight/probes/mongo.rb +83 -91
  57. data/lib/skylight/probes/net_http.rb +1 -1
  58. data/lib/skylight/probes/redis.rb +5 -17
  59. data/lib/skylight/probes/sequel.rb +7 -11
  60. data/lib/skylight/probes/sinatra.rb +8 -5
  61. data/lib/skylight/probes/tilt.rb +2 -4
  62. data/lib/skylight/railtie.rb +121 -135
  63. data/lib/skylight/sidekiq.rb +4 -5
  64. data/lib/skylight/subscriber.rb +31 -33
  65. data/lib/skylight/test.rb +89 -84
  66. data/lib/skylight/trace.rb +121 -115
  67. data/lib/skylight/user_config.rb +14 -17
  68. data/lib/skylight/util/clock.rb +1 -0
  69. data/lib/skylight/util/component.rb +18 -21
  70. data/lib/skylight/util/deploy.rb +11 -13
  71. data/lib/skylight/util/http.rb +104 -105
  72. data/lib/skylight/util/logging.rb +4 -6
  73. data/lib/skylight/util/lru_cache.rb +2 -6
  74. data/lib/skylight/util/platform.rb +2 -6
  75. data/lib/skylight/util/ssl.rb +1 -3
  76. data/lib/skylight/version.rb +1 -1
  77. data/lib/skylight/vm/gc.rb +1 -9
  78. metadata +4 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 818b5bba3a23f9c4f7a500ded64f762b5668297637909031990a6c5796ddc47d
4
- data.tar.gz: ef0978c64b52908ced68a488e2df81deb90c296e98343e5dd3cb9753077c0420
3
+ metadata.gz: 2408af8db40888f35f7f2ccf657d3416c920ba31083662c522b019e59e3defff
4
+ data.tar.gz: c5e5b186b5ceca84e4189437e1e9efd7d65658a20dcf1d0db17f0657f13f5d61
5
5
  SHA512:
6
- metadata.gz: 3a2d763e05629403025d99ff3ae61c845aaf410ba8081a0711ecc57de4d45c830b010ec41963834ee87630a88e09823e5ef03b07451f0e5ba53be6e2c0fb32d3
7
- data.tar.gz: 2621fad8395b383e927cbc84c695b5cd253f92b079f94bb2bde7e1f5b7f23e90ad55b23119958ab1b5edf1e2de6713db938441ae0bcbedafa1c8859aa23c232b
6
+ metadata.gz: 57fdb5863f9e7395fd507364c4be051cf9e79ff0f5a966f4c0831015d9d01d3c43e289927408102f72d1db54e8bd6b42d494fce0234ac9c8e28a178c94871013
7
+ data.tar.gz: 6c79d95938d6130d9dec39bae7d31b3cc3127713f07cf5818e8ce2fcb38996a01f06912c124b95390a2a11c62591bab3f3ea5999fcef328f6e48112771db567f
data/CHANGELOG.md CHANGED
@@ -1,678 +1,697 @@
1
- ## 5.1.0 (April 26 2021)
2
- * [FEATURE] Add experimental tcp-based `skylightd` (may be enabled with `SKYLIGHT_ENABLE_TCP=true`)
1
+ ## 5.1.0-beta2 (May 17, 2021)
3
2
 
4
- * [IMPROVEMENT] Support aarch64-darwin targets (Apple M1)
5
- * [IMPROVEMENT] Support aarch64-linux-gnu targets
6
- * [IMPROVEMENT] Support aarch64-linux-musl targets
3
+ - [IMPROVEMENT] Avoid 'invalid option' warnings when instrumenting certain Tilt templates in Sinatra
4
+ - [IMPROVEMENT] Decrease verbosity of source locations logs in the debug level.
7
5
 
8
- * [BREAKING] Remove `SKYLIGHT_SSL_CERT_DIR` config
9
- * [BREAKING] Drop support for Ruby 2.5
6
+ ## 5.1.0-beta (April 26, 2021)
7
+
8
+ - [FEATURE] Add experimental tcp-based `skylightd` (may be enabled with `SKYLIGHT_ENABLE_TCP=true`)
9
+
10
+ - [IMPROVEMENT] Support aarch64-darwin targets (Apple M1)
11
+ - [IMPROVEMENT] Support aarch64-linux-gnu targets
12
+ - [IMPROVEMENT] Support aarch64-linux-musl targets
13
+
14
+ - [BREAKING] Remove `SKYLIGHT_SSL_CERT_DIR` config
15
+ - [BREAKING] Drop support for Ruby 2.5
10
16
 
11
17
  ## 5.0.1 (March 11, 2021)
12
- * [IMPROVEMENT] Use argument-forwarding (...) where available in custom instrumentation
18
+
19
+ - [IMPROVEMENT] Use argument-forwarding (...) where available in custom instrumentation
13
20
 
14
21
  ## 5.0.0 (March 5, 2021)
15
22
 
16
- * [FEATURE] Add normalizer for Shrine events (thanks @janko!)
17
- * [FEATURE] Source Locations detection and reporting is now enabled by default (can be disabled with `SKYLIGHT_ENABLE_SOURCE_LOCATIONS=false`)
18
- * [FEATURE] Configuration for the Source Locations caches via `SYLIGHT_SOURCE_LOCATION_CACHE_SIZE`
19
-
20
- * [IMPROVEMENT] Improve keyword argument handling in Skylight::Helpers (thanks @lukebooth!)
21
- * [IMPROVEMENT] Replace a Kernel.puts with Skylight.log (thanks @johnnyshields!)
22
- * [IMPROVEMENT] Various updates to the SQL lexer
23
- * [IMPROVEMENT] Reduce volume of log messages sent to the native logger in debug level
24
- * [IMPROVEMENT] Optimizations for the Source Locations extension
25
- * [IMPROVEMENT] Improved Delayed::Job probe
26
- * [IMPROVEMENT] Maintain method visibility when instrumenting with `instrument_method`
27
- * [IMPROVEMENT] Update probes to use `Module#prepend` where possible
28
- * [IMPROVEMENT] New tokio-based skylightd
29
- * [IMPROVEMENT] Support `render_layout` notifications in Rails 6.1
30
- * [IMPROVEMENT] Support `ActionMailer::MailDeliveryJob` in Rails 6.1
31
- * [IMPROVEMENT] Better logging config. `SKYLIGHT_NATIVE_LOG_LEVEL` now defaults to `warn`.
32
-
33
- * [BREAKING] Rename `environment` keyword argument to `priority_key`. Note `env` has not changed.
34
- * [BREAKING] Merge skylight-core into skylight. All classes previously namespaced under `Skylight::Core` have been moved to `Skylight`.
35
- * [BREAKING] Remove `Skylight::Util::Inflector`
36
- * [BREAKING] Drop support for Rails 4
37
- * [BREAKING] Drop support for Ruby 2.3 and 2.4
38
- * [BREAKING] Drop support for glibc < 2.23
39
-
40
- * [BUGFIX] Fix issue with missing metadata in MongoDB probe
41
- * [BUGFIX] Resolve an inability to parse certain SQL queries containing arrays
42
- * [BUGFIX] Allow multiple probes to be registered under the same key
43
- * [BUGFIX] Do not refer to Redis constant until the probe is installed
44
- * [BUGFIX] Fix nested calls to `Normalizers::Faraday::Request.disable`
23
+ - [FEATURE] Add normalizer for Shrine events (thanks @janko!)
24
+ - [FEATURE] Source Locations detection and reporting is now enabled by default (can be disabled with `SKYLIGHT_ENABLE_SOURCE_LOCATIONS=false`)
25
+ - [FEATURE] Configuration for the Source Locations caches via `SYLIGHT_SOURCE_LOCATION_CACHE_SIZE`
26
+
27
+ - [IMPROVEMENT] Improve keyword argument handling in Skylight::Helpers (thanks @lukebooth!)
28
+ - [IMPROVEMENT] Replace a Kernel.puts with Skylight.log (thanks @johnnyshields!)
29
+ - [IMPROVEMENT] Various updates to the SQL lexer
30
+ - [IMPROVEMENT] Reduce volume of log messages sent to the native logger in debug level
31
+ - [IMPROVEMENT] Optimizations for the Source Locations extension
32
+ - [IMPROVEMENT] Improved Delayed::Job probe
33
+ - [IMPROVEMENT] Maintain method visibility when instrumenting with `instrument_method`
34
+ - [IMPROVEMENT] Update probes to use `Module#prepend` where possible
35
+ - [IMPROVEMENT] New tokio-based skylightd
36
+ - [IMPROVEMENT] Support `render_layout` notifications in Rails 6.1
37
+ - [IMPROVEMENT] Support `ActionMailer::MailDeliveryJob` in Rails 6.1
38
+ - [IMPROVEMENT] Better logging config. `SKYLIGHT_NATIVE_LOG_LEVEL` now defaults to `warn`.
39
+
40
+ - [BREAKING] Rename `environment` keyword argument to `priority_key`. Note `env` has not changed.
41
+ - [BREAKING] Merge skylight-core into skylight. All classes previously namespaced under `Skylight::Core` have been moved to `Skylight`.
42
+ - [BREAKING] Remove `Skylight::Util::Inflector`
43
+ - [BREAKING] Drop support for Rails 4
44
+ - [BREAKING] Drop support for Ruby 2.3 and 2.4
45
+ - [BREAKING] Drop support for glibc < 2.23
46
+
47
+ - [BUGFIX] Fix issue with missing metadata in MongoDB probe
48
+ - [BUGFIX] Resolve an inability to parse certain SQL queries containing arrays
49
+ - [BUGFIX] Allow multiple probes to be registered under the same key
50
+ - [BUGFIX] Do not refer to Redis constant until the probe is installed
51
+ - [BUGFIX] Fix nested calls to `Normalizers::Faraday::Request.disable`
45
52
 
46
53
  ## 4.3.2 (December 14, 2020)
47
- * [BUGFIX] Backport an ActionView fix from Skylight 5 (makes Skylight 4 compatible with Rails 6.1)
54
+
55
+ - [BUGFIX] Backport an ActionView fix from Skylight 5 (makes Skylight 4 compatible with Rails 6.1)
48
56
 
49
57
  ## 4.3.1 (June 24, 2020)
50
- * [BUGFIX] Fix an issue in which `Mime::NullType` would result in an exception
58
+
59
+ - [BUGFIX] Fix an issue in which `Mime::NullType` would result in an exception
51
60
 
52
61
  ## 4.3.0 (March 18, 2020)
53
- * [IMPROVEMENT] Fix Ruby 2.7 warnings
54
- * [IMPROVEMENT] Update Grape normalizer for version 1.3.1
55
- * [BUGFIX] Fix an issue where GraphQL normalizers could fail to load in non-Rails contexts
62
+
63
+ - [IMPROVEMENT] Fix Ruby 2.7 warnings
64
+ - [IMPROVEMENT] Update Grape normalizer for version 1.3.1
65
+ - [BUGFIX] Fix an issue where GraphQL normalizers could fail to load in non-Rails contexts
56
66
 
57
67
  ## 4.2.2 (February 25, 2020)
58
- * Support graphql-ruby version 1.10
68
+
69
+ - Support graphql-ruby version 1.10
59
70
 
60
71
  ## 4.2.1 (January 14, 2020)
61
- * [IMPROVEMENT] Enable instrumentation for ActionMailer::MailDeliveryJob
62
- * [BUGFIX] Improved handling for non-SPEC compliant Rack middleware
72
+
73
+ - [IMPROVEMENT] Enable instrumentation for ActionMailer::MailDeliveryJob
74
+ - [BUGFIX] Improved handling for non-SPEC compliant Rack middleware
63
75
 
64
76
  ## 4.2.0 (October 30, 2019)
65
- * [FEATURE] Add GraphQL probe
66
- * [FEATURE] Optionally add Rack mount point to Sinatra endpoint names
67
- * [FEATURE] Add `Skylight.mute` and `Skylight.unmute` blocks to selectively disable and re-enable
68
- * [IMPROVEMENT] Shut down the native instrumenter when the remote daemon is unreachable
69
- instrumentation
70
- * [IMPROVEMENT] Revise agent authorization strategy (fixes some issues related to activation for background jobs)
71
- * [IMPROVEMENT] Fix Rails 6 deprecation warnings
72
- * [BUGFIX] Skip the Sidekiq probe if Sidekiq is not present
77
+
78
+ - [FEATURE] Add GraphQL probe
79
+ - [FEATURE] Optionally add Rack mount point to Sinatra endpoint names
80
+ - [FEATURE] Add `Skylight.mute` and `Skylight.unmute` blocks to selectively disable and re-enable
81
+ - [IMPROVEMENT] Shut down the native instrumenter when the remote daemon is unreachable
82
+ instrumentation
83
+ - [IMPROVEMENT] Revise agent authorization strategy (fixes some issues related to activation for background jobs)
84
+ - [IMPROVEMENT] Fix Rails 6 deprecation warnings
85
+ - [BUGFIX] Skip the Sidekiq probe if Sidekiq is not present
73
86
 
74
87
  ## 4.1.2 (June 27, 2019)
75
- * [BUGFIX] Correct an issue where the delayed_job probe may not be activated on startup
88
+
89
+ - [BUGFIX] Correct an issue where the delayed_job probe may not be activated on startup
76
90
 
77
91
  ## 4.1.1 (June 25, 2019)
78
- * [BUGFIX] Fix Skylight installation when bundled with edge rails [Issue #132](https://github.com/skylightio/skylight-ruby/issues/132)
79
- * [IMPROVEMENT] Improve socket retry handling in skylightd
92
+
93
+ - [BUGFIX] Fix Skylight installation when bundled with edge rails [Issue #132](https://github.com/skylightio/skylight-ruby/issues/132)
94
+ - [IMPROVEMENT] Improve socket retry handling in skylightd
80
95
 
81
96
  ## 4.1.0 (June 3, 2019)
82
- * [FEATURE] add normalizers for Graphiti >= 1.2
83
- * [BUGFIX] re-enable aliases in skylight.yml
97
+
98
+ - [FEATURE] add normalizers for Graphiti >= 1.2
99
+ - [BUGFIX] re-enable aliases in skylight.yml
84
100
 
85
101
  ## 4.0.2 (May 21, 2019)
86
- * [BUGFIX] Fix an issue with Delayed::Job worker name formatting
102
+
103
+ - [BUGFIX] Fix an issue with Delayed::Job worker name formatting
87
104
 
88
105
  ## 4.0.1 (May 9, 2019)
89
- * [BUGFIX] Better detection of known web servers
106
+
107
+ - [BUGFIX] Better detection of known web servers
90
108
 
91
109
  ## 4.0.0 (May 6, 2019)
92
110
 
93
- * [FEATURE] Skylight for Background Jobs
94
- * [FEATURE] instrument ActiveStorage notifications
95
- * [FEATURE] Probe for Delayed::Job (standalone)
96
- * [FEATURE] Add Skylight#started? method
97
- * [IMPROVEMENT] Support anonymous ActiveModelSerializer classes
98
- * [IMPROVEMENT] Improve error handling in normalizers
99
- * [IMPROVEMENT] Handle Rails 6's middleware instrumentation
100
- * [IMPROVEMENT] Better rendered format detection in Rails controllers
101
- * [IMPROVEMENT] Recognize the Passenger startup script as 'web'
102
- * [IMPROVEMENT] ActionMailer::DeliveryJob are now reported using the mailer name and method
103
- * [IMPROVEMENT] Better content type handling for ActionController normalizer
104
- * [IMPROVEMENT] Better handle some things in Ruby 2.6
105
- * [IMPROVEMENT] Better logging in a couple places
106
- * [IMPROVEMENT] Fixed a couple Ruby warnings (thanks, @y-yagi!)
107
- * [IMPROVEMENT] Handle 403 config validation response
108
- * [IMPROVEMENT] Config for `prune_large_traces` is now true by default
109
- * [BUGFIX] Require http formatters for Faraday (thanks, @serkin!)
110
- * [BREAKING] Drop support for Ruby 2.2 since it is EOL
111
- * [BREAKING] New method for assigning 'segment' to a trace endpoint name
111
+ - [FEATURE] Skylight for Background Jobs
112
+ - [FEATURE] instrument ActiveStorage notifications
113
+ - [FEATURE] Probe for Delayed::Job (standalone)
114
+ - [FEATURE] Add Skylight#started? method
115
+ - [IMPROVEMENT] Support anonymous ActiveModelSerializer classes
116
+ - [IMPROVEMENT] Improve error handling in normalizers
117
+ - [IMPROVEMENT] Handle Rails 6's middleware instrumentation
118
+ - [IMPROVEMENT] Better rendered format detection in Rails controllers
119
+ - [IMPROVEMENT] Recognize the Passenger startup script as 'web'
120
+ - [IMPROVEMENT] ActionMailer::DeliveryJob are now reported using the mailer name and method
121
+ - [IMPROVEMENT] Better content type handling for ActionController normalizer
122
+ - [IMPROVEMENT] Better handle some things in Ruby 2.6
123
+ - [IMPROVEMENT] Better logging in a couple places
124
+ - [IMPROVEMENT] Fixed a couple Ruby warnings (thanks, @y-yagi!)
125
+ - [IMPROVEMENT] Handle 403 config validation response
126
+ - [IMPROVEMENT] Config for `prune_large_traces` is now true by default
127
+ - [BUGFIX] Require http formatters for Faraday (thanks, @serkin!)
128
+ - [BREAKING] Drop support for Ruby 2.2 since it is EOL
129
+ - [BREAKING] New method for assigning 'segment' to a trace endpoint name
112
130
 
113
131
  ## 3.1.4 (January 24, 2019)
114
132
 
115
- * [BUGFIX] ActiveJob#perform_now should not reassign the endpoint name
133
+ - [BUGFIX] ActiveJob#perform_now should not reassign the endpoint name
116
134
 
117
135
  ## 3.1.3 (January 23, 2019)
118
136
 
119
- * [BUGFIX] skylightd correctly closes cloned file descriptors on startup
120
- * [BUGFIX] Convert numeric git shas to strings
137
+ - [BUGFIX] skylightd correctly closes cloned file descriptors on startup
138
+ - [BUGFIX] Convert numeric git shas to strings
121
139
 
122
140
  ## 3.1.2 (November 29, 2018)
123
141
 
124
- * [BUGFIX] Fix derived endpoint names under Grape 1.2
142
+ - [BUGFIX] Fix derived endpoint names under Grape 1.2
125
143
 
126
144
  ## 3.1.1 (October 25, 2018)
127
145
 
128
- * [IMPROVEMENT] Get AMS version from `Gem.loaded_specs` (thanks @mattias-lundell!)
146
+ - [IMPROVEMENT] Get AMS version from `Gem.loaded_specs` (thanks @mattias-lundell!)
129
147
 
130
148
  ## 3.1.0 (October 22, 2018)
131
149
 
132
- * [IMPROVEMENT] Trace Mongo aggregate queries
133
- * [BUGFIX] Correct configuration keys in skylight.yml
134
- * [BUGFIX] SQL queries with schema-qualified table names are parsed correctly
135
- * [BUGFIX] `SELECT ... FOR UPDATE` queries are parsed correctly
136
- * [BUGFIX] Revision to SQL string escaping rules
137
- * [BUGFIX] Fix issue where Rails routing errors could result in a broken trace.
150
+ - [IMPROVEMENT] Trace Mongo aggregate queries
151
+ - [BUGFIX] Correct configuration keys in skylight.yml
152
+ - [BUGFIX] SQL queries with schema-qualified table names are parsed correctly
153
+ - [BUGFIX] `SELECT ... FOR UPDATE` queries are parsed correctly
154
+ - [BUGFIX] Revision to SQL string escaping rules
155
+ - [BUGFIX] Fix issue where Rails routing errors could result in a broken trace.
138
156
 
139
157
  ## 3.0.0 (September 5, 2018)
140
158
 
141
- * [FEATURE] First class support for [multiple application environments](https://www.skylight.io/support/environments)
142
- * [IMPROVEMENT] Better instrumentation of ActiveJob enqueues
143
- * [BREAKING] The ActiveJob enqueue_at normalizer is now a probe that is enabled by default. The normalizer no longer needs to be required.
144
- * [BREAKING] Remove SKYLIGHT_USE_OLD_SQL_LEXER config option
159
+ - [FEATURE] First class support for [multiple application environments](https://www.skylight.io/support/environments)
160
+ - [IMPROVEMENT] Better instrumentation of ActiveJob enqueues
161
+ - [BREAKING] The ActiveJob enqueue_at normalizer is now a probe that is enabled by default. The normalizer no longer needs to be required.
162
+ - [BREAKING] Remove SKYLIGHT_USE_OLD_SQL_LEXER config option
145
163
 
146
164
  ## 2.0.2 (June 4, 2018)
147
165
 
148
- * [IMPROVEMENT] Improve handling of broken middleware traces
149
- * [IMPROVEMENT] Don't rely on ActiveSupport's String#first (Thanks @foxtacles!)
150
- * [BUGFIX] Susbcribe to AS::Notifications events individually
151
- * [IMPROVEMENT] add normalizer for 'format_response.grape' notifications
152
- * [BUGFIX] Correctly deprecate the Grape probe
166
+ - [IMPROVEMENT] Improve handling of broken middleware traces
167
+ - [IMPROVEMENT] Don't rely on ActiveSupport's String#first (Thanks @foxtacles!)
168
+ - [BUGFIX] Susbcribe to AS::Notifications events individually
169
+ - [IMPROVEMENT] add normalizer for 'format_response.grape' notifications
170
+ - [BUGFIX] Correctly deprecate the Grape probe
153
171
 
154
172
  ## 2.0.1 (May 1, 2018)
155
173
 
156
- * [BUGFIX] Correctly deprecate the now unncessary Grape probe.
174
+ - [BUGFIX] Correctly deprecate the now unncessary Grape probe.
157
175
 
158
176
  ## 2.0.0 (April 25, 2018)
159
177
 
160
- * [FEATURE] New SQL lexer to support a wider variety of SQL queries.
161
- * [BREAKING] Drop support for Ruby versions prior to 2.2
162
- * [BREAKING] Drop support for Rails versions prior to 4.2
163
- * [BREAKING] Drop support for Tilt versions prior to 1.4.1
164
- * [BREAKING] Drop support for Sinatra versions prior to 1.4
165
- * [BREAKING] Drop support for Grape versions prior to 0.13.0
166
- * [BREAKING] Drop support for Linux with glibc versions prior to 2.15
167
- * [BREAKING] Remove couch_potato normalizer as it doesn't appear to have ever worked
168
- * [BREAKING] `log_sql_parse_errors` config option is now on by default.
169
- * [IMPROVEMENT] Auto-disable Middleware probe if it appears to be causing issues
170
- * [IMPROVEMENT] More detailed logging and improved error handling
171
- * [IMPROVEMENT] Fix Ruby Warnings (Thanks @amatsuda!)
172
- * [IMPROVEMENT] Improved handling of errors generated in the Rust agent.
173
- * [IMRPOVEMENT] Add logging to Instrumentable for easier access
174
- * [IMPROVEMENT] Improved logging during startup
178
+ - [FEATURE] New SQL lexer to support a wider variety of SQL queries.
179
+ - [BREAKING] Drop support for Ruby versions prior to 2.2
180
+ - [BREAKING] Drop support for Rails versions prior to 4.2
181
+ - [BREAKING] Drop support for Tilt versions prior to 1.4.1
182
+ - [BREAKING] Drop support for Sinatra versions prior to 1.4
183
+ - [BREAKING] Drop support for Grape versions prior to 0.13.0
184
+ - [BREAKING] Drop support for Linux with glibc versions prior to 2.15
185
+ - [BREAKING] Remove couch_potato normalizer as it doesn't appear to have ever worked
186
+ - [BREAKING] `log_sql_parse_errors` config option is now on by default.
187
+ - [IMPROVEMENT] Auto-disable Middleware probe if it appears to be causing issues
188
+ - [IMPROVEMENT] More detailed logging and improved error handling
189
+ - [IMPROVEMENT] Fix Ruby Warnings (Thanks @amatsuda!)
190
+ - [IMPROVEMENT] Improved handling of errors generated in the Rust agent.
191
+ - [IMRPOVEMENT] Add logging to Instrumentable for easier access
192
+ - [IMPROVEMENT] Improved logging during startup
175
193
 
176
194
  ## 1.7.0 (April 24, 2018)
177
195
 
178
- * [FEATURE] New API for loading Probes. Example: `Skylight.probe(:excon')`
179
- * [FEATURE] New API for enabling non-default Normalizers. Example: `Skylight.enable_normalizer('active_job')`
180
- * [DEPRECATION] Support for Rails versions prior to 4.2
181
- * [DEPRECATION] Support for Tilt versions prior to 1.4.1
182
- * [DEPRECATION] Support for Sinatra versions prior to 1.4
183
- * [DEPRECATION] Support for Grape versions prior to 0.13.0
196
+ - [FEATURE] New API for loading Probes. Example: `Skylight.probe(:excon')`
197
+ - [FEATURE] New API for enabling non-default Normalizers. Example: `Skylight.enable_normalizer('active_job')`
198
+ - [DEPRECATION] Support for Rails versions prior to 4.2
199
+ - [DEPRECATION] Support for Tilt versions prior to 1.4.1
200
+ - [DEPRECATION] Support for Sinatra versions prior to 1.4
201
+ - [DEPRECATION] Support for Grape versions prior to 0.13.0
184
202
 
185
203
  ## 1.6.1 (April 12, 2018)
186
204
 
187
- * [IMPROVEMENT] Include endpoint name in error logging
188
- * [BUGFIX] Make sure to correctly release broken traces
189
- * [BUGFIX] Keep the `require` method private when overwriting
205
+ - [IMPROVEMENT] Include endpoint name in error logging
206
+ - [BUGFIX] Make sure to correctly release broken traces
207
+ - [BUGFIX] Keep the `require` method private when overwriting
190
208
 
191
209
  ## 1.6.0 (March 21, 2018)
192
210
 
193
- * [FEATURE] Time spent the Rails router is now identified separately in the trace
194
- * [IMPROVEMENT] Switch logger to debug mode if tracing is enabled
195
- * [IMPROVEMENT] Improved logging for a number of error cases
196
- * [IMPROVEMENT] Middleware probe should now accept anything allowed by Rack::Lint
197
- * [IMPROVEMENT] We were using arity checks to determine Rails version but due to other libraries' monkey patches this could sometimes fail. We just check version numbers now.
198
- * [BUGFIX] Middleware probe no longer errors when Middleware returns a frozen array
211
+ - [FEATURE] Time spent the Rails router is now identified separately in the trace
212
+ - [IMPROVEMENT] Switch logger to debug mode if tracing is enabled
213
+ - [IMPROVEMENT] Improved logging for a number of error cases
214
+ - [IMPROVEMENT] Middleware probe should now accept anything allowed by Rack::Lint
215
+ - [IMPROVEMENT] We were using arity checks to determine Rails version but due to other libraries' monkey patches this could sometimes fail. We just check version numbers now.
216
+ - [BUGFIX] Middleware probe no longer errors when Middleware returns a frozen array
199
217
 
200
218
  ## 1.5.1 (February 7, 2018)
201
219
 
202
- * [BUGFIX] `skylight doctor` no longer erroneously reports inability to reach Skylight servers.
220
+ - [BUGFIX] `skylight doctor` no longer erroneously reports inability to reach Skylight servers.
203
221
 
204
222
  ## 1.5.0 (December 6, 2017)
205
223
 
206
- * [FEATURE] [Coach](https://github.com/gocardless/coach) instrumentation. Enabled automatically via ActiveSupport::Notifications.
207
- * [FEATURE] Option to enable or disable agent by setting SKYLIGHT_ENABLED via ENV.
208
- * [IMPROVEMENT] Better logging for certain error cases.
209
- * [BUGFIX] Backport a SPEC compliance fix for older Rack::ETag to resolve case where the Middleware probe could cause empty traces.
210
- * [BUGFIX] Fix a case where using the non-block form of `Skylight.instrument` with `Skylight.done` could cause lost trace data.
224
+ - [FEATURE] [Coach](https://github.com/gocardless/coach) instrumentation. Enabled automatically via ActiveSupport::Notifications.
225
+ - [FEATURE] Option to enable or disable agent by setting SKYLIGHT_ENABLED via ENV.
226
+ - [IMPROVEMENT] Better logging for certain error cases.
227
+ - [BUGFIX] Backport a SPEC compliance fix for older Rack::ETag to resolve case where the Middleware probe could cause empty traces.
228
+ - [BUGFIX] Fix a case where using the non-block form of `Skylight.instrument` with `Skylight.done` could cause lost trace data.
211
229
 
212
230
  ## 1.4.4 (November 7, 2017)
213
231
 
214
- * [BUGFIX] The minimum glibc requirement was errorneously bumped to 2.15. We have returned it to 2.5.
232
+ - [BUGFIX] The minimum glibc requirement was errorneously bumped to 2.15. We have returned it to 2.5.
215
233
 
216
234
  ## 1.4.3 (October 18, 2017)
217
235
 
218
- * [BUGFIX] In rare cases, Rails Middleware can be anonymous classes. We now handle those without raising an exception.
236
+ - [BUGFIX] In rare cases, Rails Middleware can be anonymous classes. We now handle those without raising an exception.
219
237
 
220
238
  ## 1.4.2 (October 11, 2017)
221
239
 
222
- * [BUGFIX] For experimental deploy tracking support, resolve an error that occurred if the Git SHA and description were not set.
240
+ - [BUGFIX] For experimental deploy tracking support, resolve an error that occurred if the Git SHA and description were not set.
223
241
 
224
242
  ## 1.4.1 (October 10, 2017)
225
243
 
226
- * [BUGFIX] Fix an issue that would prevent the daemon from starting up on FreeBSD.
244
+ - [BUGFIX] Fix an issue that would prevent the daemon from starting up on FreeBSD.
227
245
 
228
246
  ## 1.4.0 (October 4, 2017)
229
247
 
230
- * [FEATURE] Add probe for Rack Middlewares
231
- * [FEATURE] ActiveRecord Instantiation instrumentation
232
- * [FEATURE] Faraday instrumentation. Add 'faraday' to your probes list.
233
- * [IMPROVEMENT] Increase limit for items tracked in a requests
234
- * [IMPROVEMENT] Allow for more fine-grained control over position of Skylight::Middleware
235
- * [IMPROVEMENT] Improved handling of the user-level configuration options
236
- * [IMPROVEMENT] Avoid processing Skylight::Middleware unnecessarily
237
- * [EXPERIMENTAL] FreeBSD support. (This should work automatically on FreeBSD systems, but real-world testing has been minimal.)
238
- * [EXPERIMENTAL] ActionJob Enqueue instrumentation. (Only tracks the enqueuing of new jobs. Does not instrument jobs themselves. Off by default since it's not clear how useful it is. To enable: `require 'skylight/normalizers/active_job/enqueue_at'`.)
248
+ - [FEATURE] Add probe for Rack Middlewares
249
+ - [FEATURE] ActiveRecord Instantiation instrumentation
250
+ - [FEATURE] Faraday instrumentation. Add 'faraday' to your probes list.
251
+ - [IMPROVEMENT] Increase limit for items tracked in a requests
252
+ - [IMPROVEMENT] Allow for more fine-grained control over position of Skylight::Middleware
253
+ - [IMPROVEMENT] Improved handling of the user-level configuration options
254
+ - [IMPROVEMENT] Avoid processing Skylight::Middleware unnecessarily
255
+ - [EXPERIMENTAL] FreeBSD support. (This should work automatically on FreeBSD systems, but real-world testing has been minimal.)
256
+ - [EXPERIMENTAL] ActionJob Enqueue instrumentation. (Only tracks the enqueuing of new jobs. Does not instrument jobs themselves. Off by default since it's not clear how useful it is. To enable: `require 'skylight/normalizers/active_job/enqueue_at'`.)
239
257
 
240
258
  ## 1.3.1 (May 17, 2017)
241
259
 
242
- * [IMPROVEMENT] Better suggestions in `skylight doctor`.
260
+ - [IMPROVEMENT] Better suggestions in `skylight doctor`.
243
261
 
244
262
  ## 1.3.0 (May 17, 2017)
245
263
 
246
- * [FEATURE] Add normalizer for couch_potato. (Thanks @cobot)
247
- * [IMPROVEMENT] `skylight doctor` now validates SSL configuration
248
- * [IMPROVEMENT] Add ENV option to force use of bundled SSL certificates
264
+ - [FEATURE] Add normalizer for couch_potato. (Thanks @cobot)
265
+ - [IMPROVEMENT] `skylight doctor` now validates SSL configuration
266
+ - [IMPROVEMENT] Add ENV option to force use of bundled SSL certificates
249
267
 
250
268
  ## 1.2.2 (April 28, 2017)
251
269
 
252
- * [BUGFIX] Update bundled SSL certificates to avoid an authentication issue some users encountered due to a new skylight.io certificate.
270
+ - [BUGFIX] Update bundled SSL certificates to avoid an authentication issue some users encountered due to a new skylight.io certificate.
253
271
 
254
272
  ## 1.2.1 (April 20, 2017)
255
273
 
256
- * [BUGFIX] Ignored heartbeat endpoints with response types weren't actually ignored. They now will be!
274
+ - [BUGFIX] Ignored heartbeat endpoints with response types weren't actually ignored. They now will be!
257
275
 
258
276
  ## 1.2.0 (April 10, 2017)
259
277
 
260
- * [FEATURE] Response Type tracking for all applications. (Previously known as Segments.)
278
+ - [FEATURE] Response Type tracking for all applications. (Previously known as Segments.)
261
279
 
262
280
  ## 1.1.0 (March 9, 2017)
263
281
 
264
- * [FEATURE] Support musl-based OSes (including Alpine Linux)
265
- * [FEATURE] Add Elasticsearch Probe
266
- * [FEATURE] Add HTTPClient probe (#76)j
267
- * [IMPROVEMENT] Update tested Ruby versions, drop 1.9.2
268
- * [BUGFIX] Fix HTTP_PROXY handling of empty strings (#90)
269
- * [BUGFIX] Don't crash on empty content_type strings
270
- * [BUGFIX] Use more robust method to detect home dir (#75)
271
- * [BUGFIX] Add option to suppress environment warning (#62)
282
+ - [FEATURE] Support musl-based OSes (including Alpine Linux)
283
+ - [FEATURE] Add Elasticsearch Probe
284
+ - [FEATURE] Add HTTPClient probe (#76)j
285
+ - [IMPROVEMENT] Update tested Ruby versions, drop 1.9.2
286
+ - [BUGFIX] Fix HTTP_PROXY handling of empty strings (#90)
287
+ - [BUGFIX] Don't crash on empty content_type strings
288
+ - [BUGFIX] Use more robust method to detect home dir (#75)
289
+ - [BUGFIX] Add option to suppress environment warning (#62)
272
290
 
273
291
  ## 1.0.1 (November 15, 2016)
274
292
 
275
- * [BUGFIX] Gracefully handle non-writable log files
276
- * [BUGFIX] Fix skylight doctor's handling of config files
277
- * [BUGFIX] Support MetalControllers that don't use ActionController::Rendering
293
+ - [BUGFIX] Gracefully handle non-writable log files
294
+ - [BUGFIX] Fix skylight doctor's handling of config files
295
+ - [BUGFIX] Support MetalControllers that don't use ActionController::Rendering
278
296
 
279
297
  ## 1.0.0 (October 19, 2016)
280
298
 
281
- * [BETA FEATURE] Track separate segments for endpoints. Contact support@skylight.io to have this feature enabled for your account.
282
- * [FEATURE] Initial 'skylight doctor' command
283
- * [BREAKING] Removed old `skylight setup` without creation token
284
- * [BREAKING] Remove Ruby based SQL lexer
285
- * [IMPROVEMENT] Internal refactors
286
- * [BUGFIX] Correctly pass 'false' config values to Rust agent
299
+ - [BETA FEATURE] Track separate segments for endpoints. Contact support@skylight.io to have this feature enabled for your account.
300
+ - [FEATURE] Initial 'skylight doctor' command
301
+ - [BREAKING] Removed old `skylight setup` without creation token
302
+ - [BREAKING] Remove Ruby based SQL lexer
303
+ - [IMPROVEMENT] Internal refactors
304
+ - [BUGFIX] Correctly pass 'false' config values to Rust agent
287
305
 
288
306
  ## 0.10.6 (August 10, 2016)
289
307
 
290
- * [BUGFIX] Turn off -Werror and -pedantic for builds. [Issue #64](https://github.com/skylightio/skylight-ruby/issues/64)
308
+ - [BUGFIX] Turn off -Werror and -pedantic for builds. [Issue #64](https://github.com/skylightio/skylight-ruby/issues/64)
291
309
 
292
310
  ## 0.10.5 (June 22, 2016)
293
311
 
294
- * [BUGFIX] Fix issue with Grape multi-method naming
295
- * [BUGFIX] Add http to proxy_url for native fetching
296
- * [BUGFIX] Fix setting `proxy_url` in config YML
297
- * [IMPROVEMENT] Log errors during authentication validation
312
+ - [BUGFIX] Fix issue with Grape multi-method naming
313
+ - [BUGFIX] Add http to proxy_url for native fetching
314
+ - [BUGFIX] Fix setting `proxy_url` in config YML
315
+ - [IMPROVEMENT] Log errors during authentication validation
298
316
 
299
317
  ## 0.10.4 (June 3, 2016)
300
318
 
301
- * [BUGFIX] Sinatra instrumenation now works for latest master
302
- * [BUGFIX] Sequel support for 4.35.0
303
- * [BUGFIX] Handle latest ActiveModel::Serializers version
304
- * [BUGFIX] More precise check for existence of Rails
305
- * [BREAKING] Drop official support for Sinatra 1.2 (it likely never worked correctly)
306
- * [IMPROVEMENT] On Heroku, logs are now written to STDOUT
307
- * [IMPROVEMENT] Allow Skylight to raise on logged errors, useful for testing and debugging
308
- * [IMPROVEMENT] Finish Rack::Responses in Middleware
309
- * [IMRPOVEMENT] Better message when config/skylight.yml already exists
310
- * [IMPROVEMENT] Update Rust Agent with SQL improvements, including handling for arrays and WITH
319
+ - [BUGFIX] Sinatra instrumenation now works for latest master
320
+ - [BUGFIX] Sequel support for 4.35.0
321
+ - [BUGFIX] Handle latest ActiveModel::Serializers version
322
+ - [BUGFIX] More precise check for existence of Rails
323
+ - [BREAKING] Drop official support for Sinatra 1.2 (it likely never worked correctly)
324
+ - [IMPROVEMENT] On Heroku, logs are now written to STDOUT
325
+ - [IMPROVEMENT] Allow Skylight to raise on logged errors, useful for testing and debugging
326
+ - [IMPROVEMENT] Finish Rack::Responses in Middleware
327
+ - [IMRPOVEMENT] Better message when config/skylight.yml already exists
328
+ - [IMPROVEMENT] Update Rust Agent with SQL improvements, including handling for arrays and WITH
311
329
 
312
330
  ## 0.10.3 (February 2, 2016)
313
331
 
314
- * [BUGFIX] Don't validate configuration on disabled environments.
332
+ - [BUGFIX] Don't validate configuration on disabled environments.
315
333
 
316
334
  ## 0.10.2 (January 19, 2016)
317
335
 
318
- * [BUGFIX] Fix git repository warning on startup. [Issue #58](https://github.com/skylightio/skylight-ruby/issues/58)
336
+ - [BUGFIX] Fix git repository warning on startup. [Issue #58](https://github.com/skylightio/skylight-ruby/issues/58)
319
337
 
320
338
  ## 0.10.1 (January 4, 2016) [YANKED]
321
339
 
322
- * [FEATURE] Preliminary work for deploy tracking (not yet functional)
323
- * [BUGFIX] Don't crash if user config (~/.skylight) is empty
324
- * [BUGFIX] Better handling of unsupported moped versions
325
- * [IMPROVEMENT] Internal refactor of configuration handling
326
- * [IMPROVEMENT] Improve automated tests
327
- * [IMPROVEMENT] Fix tests in Rails 5 (No actual code changes required!)
340
+ - [FEATURE] Preliminary work for deploy tracking (not yet functional)
341
+ - [BUGFIX] Don't crash if user config (~/.skylight) is empty
342
+ - [BUGFIX] Better handling of unsupported moped versions
343
+ - [IMPROVEMENT] Internal refactor of configuration handling
344
+ - [IMPROVEMENT] Improve automated tests
345
+ - [IMPROVEMENT] Fix tests in Rails 5 (No actual code changes required!)
328
346
 
329
347
  ## 0.10.0 (December 3, 2015)
330
348
 
331
- * [FEATURE] ActiveModel::Serializers Instrumentation. Always on in latest HEAD, for previous version add 'active_model_serializers' to probes list.
332
- * [BUGFIX] Handle multi-byte characters in SQL lexer
349
+ - [FEATURE] ActiveModel::Serializers Instrumentation. Always on in latest HEAD, for previous version add 'active_model_serializers' to probes list.
350
+ - [BUGFIX] Handle multi-byte characters in SQL lexer
333
351
 
334
352
  ## 0.9.4 (November 23, 2015)
335
353
 
336
- * [FEATURE] Added instrumentation for official Mongo Ruby Driver (utilized by Mongoid 5+). Add 'mongo' to probes list to enable.
337
- * [BUGFIX] SQL lexer now handles indentifiers beginning with underscores.
338
- * [BUGFIX] Excon instrumentation now works correctly.
339
- * [BUGFIX] Graceful handling of native agent failures on old OS X versions.
340
- * [IMPROVEMENT] Freeze some more strings for (likely very minor) performance improvements.
341
- * [IMPROVEMENT] Better error messages when sockdir is an NFS mount.
342
- * [IMPROVEMENT] On OS X, ensure that Xcode license has been approved before trying to build native agent.
354
+ - [FEATURE] Added instrumentation for official Mongo Ruby Driver (utilized by Mongoid 5+). Add 'mongo' to probes list to enable.
355
+ - [BUGFIX] SQL lexer now handles indentifiers beginning with underscores.
356
+ - [BUGFIX] Excon instrumentation now works correctly.
357
+ - [BUGFIX] Graceful handling of native agent failures on old OS X versions.
358
+ - [IMPROVEMENT] Freeze some more strings for (likely very minor) performance improvements.
359
+ - [IMPROVEMENT] Better error messages when sockdir is an NFS mount.
360
+ - [IMPROVEMENT] On OS X, ensure that Xcode license has been approved before trying to build native agent.
343
361
 
344
362
  ## 0.9.3 (November 17, 2015)
345
363
 
346
- * [BUGFIX] Update SQL lexer to handle more common queries
347
- * [BUGFIX] Correctly report native gem installation failures
364
+ - [BUGFIX] Update SQL lexer to handle more common queries
365
+ - [BUGFIX] Correctly report native gem installation failures
348
366
 
349
367
  ## 0.9.2 (November 13, 2015)
350
368
 
351
- * [BUGFIX] Correctly update Rust agent to include SQL fixes that were supposed to land in 0.9.1.
369
+ - [BUGFIX] Correctly update Rust agent to include SQL fixes that were supposed to land in 0.9.1.
352
370
 
353
371
  ## 0.9.1 (November 10, 2015)
354
372
 
355
- * [BUGFIX] Update Rust SQL lexer to handle `NOT` and `::` typecasting.
373
+ - [BUGFIX] Update Rust SQL lexer to handle `NOT` and `::` typecasting.
356
374
 
357
375
  ## 0.9.0 (November 6, 2015)
358
376
 
359
- * [FEATURE] Expose Skylight::Helpers.instrument_class_method
360
- * [BUGFIX] Allow for instrumentation of setters
361
- * [BUGFIX] Fix an issue where loading some items in the Grape namespace without loading the whole library would cause an exception.
362
- * [IMPROVEMENT] Switch to Rust SQL lexer by default
363
- * [IMPROVEMENT] Add support for Redis pipelined and multi
364
- * [IMPROVEMENT] Updated Rust internals
365
- * [IMPROVEMENT] Agent should now work on current Rails master
366
- * [IMPROVEMENT] Better disabling of development mode warning
377
+ - [FEATURE] Expose Skylight::Helpers.instrument_class_method
378
+ - [BUGFIX] Allow for instrumentation of setters
379
+ - [BUGFIX] Fix an issue where loading some items in the Grape namespace without loading the whole library would cause an exception.
380
+ - [IMPROVEMENT] Switch to Rust SQL lexer by default
381
+ - [IMPROVEMENT] Add support for Redis pipelined and multi
382
+ - [IMPROVEMENT] Updated Rust internals
383
+ - [IMPROVEMENT] Agent should now work on current Rails master
384
+ - [IMPROVEMENT] Better disabling of development mode warning
367
385
 
368
386
  ## 0.8.1 (October 1, 2015)
369
387
 
370
- * [BUGFIX] Fix agent on OS X El Capitan.
371
- * [PERFORMANCE] Explicitly subscribe to normalized events
372
- * [IMPROVEMENT] Use native unique description tracking
373
- * [IMPROVEMENT] Native SQL: Support multistatement queries
388
+ - [BUGFIX] Fix agent on OS X El Capitan.
389
+ - [PERFORMANCE] Explicitly subscribe to normalized events
390
+ - [IMPROVEMENT] Use native unique description tracking
391
+ - [IMPROVEMENT] Native SQL: Support multistatement queries
374
392
 
375
393
  ## 0.8.0 (August 13, 2015)
376
394
 
377
- * [FEATURE] Add Grape instumentation. See https://docs.skylight.io/grape
378
- * [FEATURE] Process ERB in config/skylight.yml
379
- * [FEATURE] Add Rust based SQL lexing. Currently beta. Enable with `config.sql_mode = 'rust'`.
380
- * [BUGFIX] Fixed a case where, With some logger configurations, duplicate messages could be written to STDOUT.
395
+ - [FEATURE] Add Grape instumentation. See https://docs.skylight.io/grape
396
+ - [FEATURE] Process ERB in config/skylight.yml
397
+ - [FEATURE] Add Rust based SQL lexing. Currently beta. Enable with `config.sql_mode = 'rust'`.
398
+ - [BUGFIX] Fixed a case where, With some logger configurations, duplicate messages could be written to STDOUT.
381
399
 
382
400
  ## 0.7.1 (August 4, 2015)
383
401
 
384
- * [BUGFIX] Fix bug in FFI error handling
402
+ - [BUGFIX] Fix bug in FFI error handling
385
403
 
386
404
  ## 0.7.0 (August 3, 2015)
387
405
 
388
- * [BUFIX] Condvar bug in Rust. Updated to latest nightly.
389
- * [BUGFIX] Don't crash on ruby stack overflow
390
- * [IMPROVEMENT] Silence a noisy log message
391
- * [IMPROVEMENT] Update to latest openssl & curl
392
- * [FEATURE] Add probe on ActionView for layout renders
406
+ - [BUFIX] Condvar bug in Rust. Updated to latest nightly.
407
+ - [BUGFIX] Don't crash on ruby stack overflow
408
+ - [IMPROVEMENT] Silence a noisy log message
409
+ - [IMPROVEMENT] Update to latest openssl & curl
410
+ - [FEATURE] Add probe on ActionView for layout renders
393
411
 
394
412
  ## 0.6.1 (June 30, 2015)
395
413
 
396
- * [BUGFIX] Don't use $DEBUG to enable verbose internal logging
414
+ - [BUGFIX] Don't use $DEBUG to enable verbose internal logging
397
415
 
398
416
  ## 0.6.0 (January 27, 2015)
399
417
 
400
- * [IMPROVEMENT] Eliminates runtime dependency on the Rails
418
+ - [IMPROVEMENT] Eliminates runtime dependency on the Rails
401
419
  constant across the entire codebase
402
- * [FEATURE] Support for Sinatra applications. See https://docs.skylight.io/sinatra/
403
- * [FEATURE] Support for the Sequel ORM (off by default for Rails apps)
404
- * [FEATURE] Support for Tilt templates (off by default for Rails apps)
420
+ - [FEATURE] Support for Sinatra applications. See https://docs.skylight.io/sinatra/
421
+ - [FEATURE] Support for the Sequel ORM (off by default for Rails apps)
422
+ - [FEATURE] Support for Tilt templates (off by default for Rails apps)
405
423
 
406
424
  ## 0.5.2 (December 15, 2014)
407
425
 
408
- * [IMPROVEMENT] Support ignoring multiple heartbeat endpoints
409
- * [BUGFIX] Fix compilation errors on old GCC
426
+ - [IMPROVEMENT] Support ignoring multiple heartbeat endpoints
427
+ - [BUGFIX] Fix compilation errors on old GCC
410
428
 
411
429
  ## 0.5.1 (December 5, 2014)
412
430
 
413
- * [BUGFIX] Fix issues with working directory dissappearing
431
+ - [BUGFIX] Fix issues with working directory dissappearing
414
432
 
415
433
  ## 0.5.0 (December 4, 2014)
416
- * [IMPROVEMENT] Automatically load configuration from ENV
417
- * [FEATURE] Track object allocations per span
418
- * [IMPROVEMENT] Fix C warnings
434
+
435
+ - [IMPROVEMENT] Automatically load configuration from ENV
436
+ - [FEATURE] Track object allocations per span
437
+ - [IMPROVEMENT] Fix C warnings
419
438
 
420
439
  ## 0.4.3 (November 17, 2014)
421
440
 
422
- * [BUGFIX] Fix Moped integration when queries include times
441
+ - [BUGFIX] Fix Moped integration when queries include times
423
442
 
424
443
  ## 0.4.2 (November 12, 2014)
425
444
 
426
- * [BUGFIX] Fix exit status on MRI 1.9.2
427
- * [BUGFIX] Strip SQL comments for better aggregation
445
+ - [BUGFIX] Fix exit status on MRI 1.9.2
446
+ - [BUGFIX] Strip SQL comments for better aggregation
428
447
 
429
448
  ## 0.4.1 (November 7, 2014)
430
449
 
431
- * [BUGFIX] Fix downloading native agent on 32bit systems
432
- * [BUGFIX] Support legacy config settings
433
- * [FEATURE] Check FS permissions on instrumenter start
450
+ - [BUGFIX] Fix downloading native agent on 32bit systems
451
+ - [BUGFIX] Support legacy config settings
452
+ - [FEATURE] Check FS permissions on instrumenter start
434
453
 
435
454
  ## 0.4.0 (November 3, 2014)
436
455
 
437
- * Featherweight Agent: lowered CPU and memory overhead
438
- * [IMPROVEMENT] Add support for ignoring an endpoint by name
456
+ - Featherweight Agent: lowered CPU and memory overhead
457
+ - [IMPROVEMENT] Add support for ignoring an endpoint by name
439
458
 
440
459
  ## 0.3.21 (October 8, 2014)
441
460
 
442
- * [BUGFIX] Skylight crashing on start won't crash entire app
461
+ - [BUGFIX] Skylight crashing on start won't crash entire app
443
462
 
444
463
  ## 0.3.20 (September 3, 2014)
445
464
 
446
- * [BUGFIX] Fix app name fetching on Windows for `skylight setup`
465
+ - [BUGFIX] Fix app name fetching on Windows for `skylight setup`
447
466
 
448
467
  ## 0.3.19 (July 30, 2014)
449
468
 
450
- * [IMPROVEMENT] HEAD requests are no longer instrumented and will not count towards usage totals.
451
- * [IMPROVEMENT] Added LICENSE and CLA
452
- * [IMPROVEMENT] Improve how warnings are logged to reduce overall noise and interfere less with cron jobs
453
- * [BUGFIX] Fixed a case where failed app creation raised an exception instead of printing error messages
469
+ - [IMPROVEMENT] HEAD requests are no longer instrumented and will not count towards usage totals.
470
+ - [IMPROVEMENT] Added LICENSE and CLA
471
+ - [IMPROVEMENT] Improve how warnings are logged to reduce overall noise and interfere less with cron jobs
472
+ - [BUGFIX] Fixed a case where failed app creation raised an exception instead of printing error messages
454
473
 
455
474
  ## 0.3.18 (July 17, 2014)
456
475
 
457
- * [FEATURE] Redis probe (Not enabled by default. See https://docs.skylight.io/agent/#railtie)
458
- * [FEATURE] Support app creation with token instead of email/password
459
- * [BUGFIX] App creation now works even when Webmock is enabled
460
- * [BUGFIX] Fix instrumentation for methods ending in special chars
461
- * [BUGFIX] Improved SQL parsing
462
- * [IMPROVEMENT] Respect collector token expiration to reduce token requests
476
+ - [FEATURE] Redis probe (Not enabled by default. See https://docs.skylight.io/agent/#railtie)
477
+ - [FEATURE] Support app creation with token instead of email/password
478
+ - [BUGFIX] App creation now works even when Webmock is enabled
479
+ - [BUGFIX] Fix instrumentation for methods ending in special chars
480
+ - [BUGFIX] Improved SQL parsing
481
+ - [IMPROVEMENT] Respect collector token expiration to reduce token requests
463
482
 
464
483
  ## 0.3.17 (July 1, 2014)
465
484
 
466
- * Fix warning for Cache.instrument overwrite
485
+ - Fix warning for Cache.instrument overwrite
467
486
 
468
487
  ## 0.3.16 (July 1, 2014) [YANKED]
469
488
 
470
- * Fixed ActiveSupport::Cache monkeypatch
489
+ - Fixed ActiveSupport::Cache monkeypatch
471
490
 
472
491
  ## 0.3.15 (June 30, 2014) [YANKED]
473
492
 
474
- * Basic instrumentation for ActiveSupport::Cache
475
- * Fix incompatibility with old version of rack-mini-profiler
476
- * Better error messages when config/skylight.yml is invalid
477
- * Better error messages for non-writeable lock/sockfile path
493
+ - Basic instrumentation for ActiveSupport::Cache
494
+ - Fix incompatibility with old version of rack-mini-profiler
495
+ - Better error messages when config/skylight.yml is invalid
496
+ - Better error messages for non-writeable lock/sockfile path
478
497
 
479
498
  ## 0.3.14 (June 3, 2014)
480
499
 
481
- * Do not build C extension if dependencies (libraries/headers) are
500
+ - Do not build C extension if dependencies (libraries/headers) are
482
501
  missing
483
- * [RUST] Improve performance by not double copying memory when serializing
484
- * Enable the Net::HTTP probe by default
502
+ - [RUST] Improve performance by not double copying memory when serializing
503
+ - Enable the Net::HTTP probe by default
485
504
 
486
505
  ## 0.3.13 (May 12, 2014)
487
506
 
488
- * Load probes even when agent is disabled
489
- * Check for Excon::Middlewares before installing the probe
490
- * SQL error encoder should not operate in-place
491
- * Fix Middleware
492
- * More debug logging
493
- * Log Rails version in MetricsReporter
494
- * Handle missing Net::ReadTimeout in 1.9.3
495
- * Include original exception information in sql_parse errors
496
- * Debugging for failed application creation
497
- * Make double sure that Trace started_at is an Integer
507
+ - Load probes even when agent is disabled
508
+ - Check for Excon::Middlewares before installing the probe
509
+ - SQL error encoder should not operate in-place
510
+ - Fix Middleware
511
+ - More debug logging
512
+ - Log Rails version in MetricsReporter
513
+ - Handle missing Net::ReadTimeout in 1.9.3
514
+ - Include original exception information in sql_parse errors
515
+ - Debugging for failed application creation
516
+ - Make double sure that Trace started_at is an Integer
498
517
 
499
518
  ## 0.3.12 (April 17, 2014)
500
519
 
501
- * Include more information in type check errors
502
- * Use stdlib SecureRandom instead of ActiveSupport::SecureRandom - Fixes Rails 3.1
503
- * Instrumenter#start! should fail if worker not spawned
504
- * Configurable timeouts for Util::HTTP
505
- * Improve proxy handling for Util::HTTP
506
- * Improve HTTP error handling
507
- * Refactor sql_parse errors
520
+ - Include more information in type check errors
521
+ - Use stdlib SecureRandom instead of ActiveSupport::SecureRandom - Fixes Rails 3.1
522
+ - Instrumenter#start! should fail if worker not spawned
523
+ - Configurable timeouts for Util::HTTP
524
+ - Improve proxy handling for Util::HTTP
525
+ - Improve HTTP error handling
526
+ - Refactor sql_parse errors
508
527
 
509
528
  ## 0.3.11 (April 11, 2014)
510
529
 
511
- * Improved error handling and internal metrics
512
- * Improved missing native agent message
513
- * Improved install logging
514
- * Added initial inline docs
515
- * Respects HTTP_PROXY env var during installation
516
- * Don't overwrite sockfile_path if set explicitly
530
+ - Improved error handling and internal metrics
531
+ - Improved missing native agent message
532
+ - Improved install logging
533
+ - Added initial inline docs
534
+ - Respects HTTP_PROXY env var during installation
535
+ - Don't overwrite sockfile_path if set explicitly
517
536
 
518
537
  ## 0.3.10 (April 8, 2014)
519
538
 
520
- * Don't raise on missing native agent path
539
+ - Don't raise on missing native agent path
521
540
 
522
541
  ## 0.3.9 (April 8, 2014)
523
542
 
524
- * Avoid finalizing sockets in the child process
525
- * Fix non-displaying warnings around native agent
526
- * Remove HTTP path information from title for better grouping
543
+ - Avoid finalizing sockets in the child process
544
+ - Fix non-displaying warnings around native agent
545
+ - Remove HTTP path information from title for better grouping
527
546
 
528
547
  ## 0.3.8 (April 3, 2014)
529
548
 
530
- * Update vendored highline to 1.6.21
531
- * Send more information with exceptions for easier debugging
532
- * Instrument and report internal agent metrics for easier debugging
533
- * Fix bug with tracking request counts per endpoint
549
+ - Update vendored highline to 1.6.21
550
+ - Send more information with exceptions for easier debugging
551
+ - Instrument and report internal agent metrics for easier debugging
552
+ - Fix bug with tracking request counts per endpoint
534
553
 
535
554
  ## 0.3.7 (March 31, 2014)
536
555
 
537
- * Use a default event category if none passed to Skylight.instrument
538
- * Fix bugs around disabling the agent
539
- * Fix native extension compilation bugs
556
+ - Use a default event category if none passed to Skylight.instrument
557
+ - Fix bugs around disabling the agent
558
+ - Fix native extension compilation bugs
540
559
 
541
560
  ## 0.3.6 (March 27, 2014)
542
561
 
543
- * Shorter token validation timeout
544
- * Allow validation to be skipped
562
+ - Shorter token validation timeout
563
+ - Allow validation to be skipped
545
564
 
546
565
  ## 0.3.5 (March 26, 2014)
547
566
 
548
- * Update Rust component
549
- * Return true from Task#handle to avoid sutdown
550
- * Fix numeric check that caused crash on some 32-bit systems
551
- * Improve error message for missing Skylight ext
552
- * Better config error messages
553
- * Validate authentication token before starting
554
- * Add proxy support
567
+ - Update Rust component
568
+ - Return true from Task#handle to avoid sutdown
569
+ - Fix numeric check that caused crash on some 32-bit systems
570
+ - Improve error message for missing Skylight ext
571
+ - Better config error messages
572
+ - Validate authentication token before starting
573
+ - Add proxy support
555
574
 
556
575
  ## 0.3.4 (March 13, 2014)
557
576
 
558
- * Don't try to boot Skylight without native agent
559
- * Make exception classes always available
560
- * CLI should require railtie before loading application.rb
577
+ - Don't try to boot Skylight without native agent
578
+ - Make exception classes always available
579
+ - CLI should require railtie before loading application.rb
561
580
 
562
581
  ## 0.3.3 (March 12, 2014)
563
582
 
564
- * Load the railtie even without native agent
583
+ - Load the railtie even without native agent
565
584
 
566
585
  ## 0.3.2 (March 11, 2014)
567
586
 
568
- * Autoload Skylight:Helpers even when native agent isn't available
569
- * Fix SEGV
587
+ - Autoload Skylight:Helpers even when native agent isn't available
588
+ - Fix SEGV
570
589
 
571
590
  ## 0.3.1 (March 8, 2014)
572
591
 
573
- * Fix requires to allow CLI to function without native extension.
592
+ - Fix requires to allow CLI to function without native extension.
574
593
 
575
594
  ## 0.3.0 (February 28, 2014)
576
595
 
577
- * Native Rust agent
578
- * Send exceptions occurring during HTTP requests to the client.
579
- * Warn users when skylight is potentially disabled incorrectly.
580
- * Update SQL Lexer to 0.0.6
581
- * Log the backtraces of unhandled exceptions
582
- * Add support for disabling GC tracking
583
- * Add support for disabling agent
596
+ - Native Rust agent
597
+ - Send exceptions occurring during HTTP requests to the client.
598
+ - Warn users when skylight is potentially disabled incorrectly.
599
+ - Update SQL Lexer to 0.0.6
600
+ - Log the backtraces of unhandled exceptions
601
+ - Add support for disabling GC tracking
602
+ - Add support for disabling agent
584
603
 
585
604
  ## 0.2.7 (February 26, 2014)
586
605
 
587
- * Disable annotations to reduce memory load.
606
+ - Disable annotations to reduce memory load.
588
607
 
589
608
  ## 0.2.6 (February 25, 2014)
590
609
 
591
- * `inspect` even whitelisted payload props
592
- * Ignore Errno::EINTR for 'ps' call
610
+ - `inspect` even whitelisted payload props
611
+ - Ignore Errno::EINTR for 'ps' call
593
612
 
594
613
  ## 0.2.5 (February 21, 2014)
595
614
 
596
- * Revert "Update SqlLexer to 0.0.4"
615
+ - Revert "Update SqlLexer to 0.0.4"
597
616
 
598
617
  ## 0.2.4 (February 20, 2014)
599
618
 
600
- * Whitelist process action annotation keys.
601
- * Update SqlLexer to 0.0.4
619
+ - Whitelist process action annotation keys.
620
+ - Update SqlLexer to 0.0.4
602
621
 
603
622
  ## 0.2.3 (December 20, 2013)
604
623
 
605
- * Fix SQL lexing for comments, arrays, double-colon casting, and multiple queries
606
- * Handle template paths from gems
607
- * Status and exception reports for agent debugging
624
+ - Fix SQL lexing for comments, arrays, double-colon casting, and multiple queries
625
+ - Handle template paths from gems
626
+ - Status and exception reports for agent debugging
608
627
 
609
628
  ## 0.2.2 (December 10, 2013)
610
629
 
611
- * Added support for Mongoid/Moped
612
- * Fix probe enabling
613
- * Improved error reporting
614
- * Fix bug with multiple subscribers to same notification
630
+ - Added support for Mongoid/Moped
631
+ - Fix probe enabling
632
+ - Improved error reporting
633
+ - Fix bug with multiple subscribers to same notification
615
634
 
616
635
  ## 0.2.1 (December 4, 2013)
617
636
 
618
- * Fix bin/skylight
637
+ - Fix bin/skylight
619
638
 
620
639
  ## 0.2.0 (December 3, 2013)
621
640
 
622
- * Added Probes, initially Net::HTTP and Excon
623
- * Wide-ranging memory cleanup
624
- * Better resiliance to binary and encoding errors
625
- * Add support for disabling
626
- * De-dupe rendering instrumentation better
627
- * Fix send_file event to not spew a gazillion nodes
628
- * Rails 3.0 compatibility
629
- * Detailed SQL annotations
641
+ - Added Probes, initially Net::HTTP and Excon
642
+ - Wide-ranging memory cleanup
643
+ - Better resiliance to binary and encoding errors
644
+ - Add support for disabling
645
+ - De-dupe rendering instrumentation better
646
+ - Fix send_file event to not spew a gazillion nodes
647
+ - Rails 3.0 compatibility
648
+ - Detailed SQL annotations
630
649
 
631
650
  ## 0.1.8 (July 19, 2013)
632
651
 
633
- * Update agent for new authentication scheme
634
- * Change ENV variable prefix from SK_ to SKYLIGHT_
652
+ - Update agent for new authentication scheme
653
+ - Change ENV variable prefix from SK* to SKYLIGHT*
635
654
 
636
655
  ## 0.1.7 (July 11, 2013)
637
656
 
638
- * Add instrument_method helper
639
- * Add the ability to configure logging from railtie
640
- * Tracks the current host
641
- * [BUG] Handle AS::N monkey patching when there are already subscribers
642
- * [BUG] Handle ruby 1.9.2 encoding bug
657
+ - Add instrument_method helper
658
+ - Add the ability to configure logging from railtie
659
+ - Tracks the current host
660
+ - [BUG] Handle AS::N monkey patching when there are already subscribers
661
+ - [BUG] Handle ruby 1.9.2 encoding bug
643
662
 
644
663
  ## 0.1.6 (June 11, 2013)
645
664
 
646
- * [BUG] Fix unix domain socket write function in standalone agent
647
- * Performance improvements
648
- * Tolerate invalid trace building
649
- * Fix Skylight on Rails 4
665
+ - [BUG] Fix unix domain socket write function in standalone agent
666
+ - Performance improvements
667
+ - Tolerate invalid trace building
668
+ - Fix Skylight on Rails 4
650
669
 
651
670
  ## 0.1.5 (May 31, 2013)
652
671
 
653
- * Provide a default CA cert when one is not already present
654
- * Expose Skylight.start! and Skylight.trace as APIs
655
- * Expose Skylight.instrument as an API for custom instrumentation.
672
+ - Provide a default CA cert when one is not already present
673
+ - Expose Skylight.start! and Skylight.trace as APIs
674
+ - Expose Skylight.instrument as an API for custom instrumentation.
656
675
 
657
676
  ## 0.1.4 (May 30, 2013)
658
677
 
659
- * [BUG] Fix some errors caused by floating point rounding
660
- * [BUG] Handle clock skew caused by system clock changes
678
+ - [BUG] Fix some errors caused by floating point rounding
679
+ - [BUG] Handle clock skew caused by system clock changes
661
680
 
662
681
  ## 0.1.3 (May 29, 2013)
663
682
 
664
- * [BUG] Require net/https and openssl
665
- * [BUG] Rails' logger does not respond to #log. Use level methods
683
+ - [BUG] Require net/https and openssl
684
+ - [BUG] Rails' logger does not respond to #log. Use level methods
666
685
  instead
667
686
 
668
687
  ## 0.1.2 (May 29, 2013)
669
688
 
670
- * [BUG] Disable GC profiling on JRuby
689
+ - [BUG] Disable GC profiling on JRuby
671
690
 
672
691
  ## 0.1.1 (May 29, 2013)
673
692
 
674
- * [BUG] GC Profiling was not getting enabled
693
+ - [BUG] GC Profiling was not getting enabled
675
694
 
676
695
  ## 0.1.0 (May 24, 2013)
677
696
 
678
- * Initial release
697
+ - Initial release