skylight 5.0.0.beta4 → 5.1.0.beta2

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