elastic-apm 4.7.2 → 4.8.0

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/.ci/.exclude.yml +21 -82
  3. data/.ci/.framework.yml +1 -4
  4. data/.ci/.ruby.yml +1 -1
  5. data/.ci/updatecli/values.d/apm-data-spec.yml +1 -0
  6. data/.ci/updatecli/values.d/apm-gherkin.yml +1 -0
  7. data/.ci/updatecli/values.d/apm-json-specs.yml +1 -0
  8. data/.ci/updatecli/values.d/scm.yml +10 -0
  9. data/.ci/updatecli/values.d/update-compose.yml +3 -0
  10. data/.github/PULL_REQUEST_TEMPLATE.md +2 -2
  11. data/.github/dependabot.yml +24 -19
  12. data/.github/workflows/README.md +1 -2
  13. data/.github/workflows/addToProject.yml +19 -2
  14. data/.github/workflows/ci.yml +6 -6
  15. data/.github/workflows/docs-build.yml +19 -0
  16. data/.github/workflows/docs-cleanup.yml +14 -0
  17. data/.github/workflows/github-commands-comment.yml +38 -0
  18. data/.github/workflows/labeler.yml +5 -0
  19. data/.github/workflows/microbenchmark.yml +7 -24
  20. data/.github/workflows/release.yml +39 -24
  21. data/.github/workflows/run-matrix.yml +24 -12
  22. data/.github/workflows/test-reporter.yml +4 -3
  23. data/.github/workflows/updatecli.yml +45 -12
  24. data/Gemfile +13 -0
  25. data/bin/dev +2 -2
  26. data/docs/docset.yml +9 -0
  27. data/docs/reference/advanced-topics.md +12 -0
  28. data/docs/reference/api-reference.md +422 -0
  29. data/docs/reference/configuration.md +734 -0
  30. data/docs/{context.asciidoc → reference/context.md} +21 -21
  31. data/docs/reference/custom-instrumentation.md +72 -0
  32. data/docs/{getting-started-rack.asciidoc → reference/getting-started-rack.md} +20 -29
  33. data/docs/reference/getting-started-rails.md +27 -0
  34. data/docs/reference/graphql.md +21 -0
  35. data/docs/reference/index.md +24 -0
  36. data/docs/{logs.asciidoc → reference/logs.md} +38 -56
  37. data/docs/reference/metrics.md +199 -0
  38. data/docs/reference/opentracing-api.md +70 -0
  39. data/docs/reference/performance-tuning.md +71 -0
  40. data/docs/reference/set-up-apm-ruby-agent.md +16 -0
  41. data/docs/reference/supported-technologies.md +128 -0
  42. data/docs/reference/toc.yml +22 -0
  43. data/docs/reference/upgrading.md +19 -0
  44. data/docs/release-notes/index.md +166 -0
  45. data/docs/release-notes/known-issues.md +24 -0
  46. data/docs/release-notes/toc.yml +3 -0
  47. data/lib/elastic_apm/context_builder.rb +11 -6
  48. data/lib/elastic_apm/spies/sidekiq.rb +2 -1
  49. data/lib/elastic_apm/stacktrace_builder.rb +3 -3
  50. data/lib/elastic_apm/version.rb +1 -1
  51. data/updatecli-compose.yaml +23 -0
  52. metadata +37 -35
  53. data/.ci/snapshoty.yml +0 -33
  54. data/.ci/updatecli.d/update-gherkin-specs.yml +0 -126
  55. data/.ci/updatecli.d/update-json-specs.yml +0 -130
  56. data/.ci/updatecli.d/update-specs.yml +0 -118
  57. data/.github/workflows/coverage-reporter.yml +0 -34
  58. data/.github/workflows/opentelemetry.yml +0 -27
  59. data/.github/workflows/snapshoty.yml +0 -35
  60. data/CHANGELOG.asciidoc +0 -983
  61. data/docs/advanced.asciidoc +0 -14
  62. data/docs/api.asciidoc +0 -487
  63. data/docs/configuration.asciidoc +0 -889
  64. data/docs/custom-instrumentation.asciidoc +0 -80
  65. data/docs/debugging.asciidoc +0 -44
  66. data/docs/getting-started-rails.asciidoc +0 -30
  67. data/docs/graphql.asciidoc +0 -23
  68. data/docs/index.asciidoc +0 -38
  69. data/docs/introduction.asciidoc +0 -36
  70. data/docs/metrics.asciidoc +0 -235
  71. data/docs/opentracing.asciidoc +0 -94
  72. data/docs/performance-tuning.asciidoc +0 -106
  73. data/docs/redirects.asciidoc +0 -9
  74. data/docs/release-notes.asciidoc +0 -15
  75. data/docs/set-up.asciidoc +0 -19
  76. data/docs/supported-technologies.asciidoc +0 -157
  77. data/docs/upgrading.asciidoc +0 -18
  78. /data/docs/{images → reference/images}/dynamic-config.svg +0 -0
data/CHANGELOG.asciidoc DELETED
@@ -1,983 +0,0 @@
1
- ifdef::env-github[]
2
- NOTE: Release notes are best read in our documentation at
3
- https://www.elastic.co/guide/en/apm/agent/ruby/current/release-notes.html[elastic.co]
4
- endif::[]
5
-
6
- ////
7
- [[release-notes-x.x.x]]
8
- ==== x.x.x (YYYY-MM-DD)
9
-
10
- [float]
11
- ===== Breaking changes
12
- - Breaking change
13
-
14
- [float]
15
- ===== Deprecated
16
- - Deprecation {pull}2526[#2526]
17
-
18
- [float]
19
- ===== Added
20
- - Feature {pull}2526[#2526]
21
-
22
- [float]
23
- ===== Changed
24
- - Change {pull}2526[#2526]
25
-
26
- [float]
27
- ===== Fixed
28
-
29
- [float]
30
- [[unreleased]]
31
- ==== Unreleased
32
- ////
33
-
34
- [[release-notes-4.x]]
35
- === Ruby Agent version 4.x
36
-
37
- [[release-notes-4.7.2]
38
- ==== 4.7.2
39
-
40
- [float]
41
- ===== Fixed
42
- - Address machineType not being returned in GCP metadata {pull}1435[#1435]
43
-
44
- [[release-notes-4.7.1]
45
- ==== 4.7.1
46
-
47
- [float]
48
- ===== Fixed
49
- - Skip capturing cookie header when it's set separately {pull}1405[#1405]
50
- - Changes/fixes to metadata.cloud.* fields collected for GCP {pull}1415[#1415]
51
- - Pin version of bigdecimal for ruby 2.4 {pull}1417[#1417]
52
- - Use response method on Faraday error for older versions of the library {pull}1419[#1419]
53
- - Fix ActionDispatchSpy#render_exception for Rails 7.1 {pull}1423[#1423]
54
- - Use graphql < 2.1 when Ruby < 2.7 {pull}1425[#1425]
55
- - Guard against various Faraday exception response formats {pull}1428[#1428]
56
-
57
- [[release-notes-4.7.0]]
58
- ==== 4.7.0
59
-
60
- [float]
61
- ===== Fixed
62
- - Handle Faraday response being nil {pull}1382[#1382]
63
- - Fix error with invalid %-encoding {pull}1400[#1400]
64
-
65
- [float]
66
- ===== Added
67
- - Add keyword args for span_method helper {pull}1395[#1395]
68
-
69
- [[release-notes-4.6.2]]
70
- ==== 4.6.2
71
-
72
- [float]
73
- ===== Fixed
74
- - Fix Faraday::RackBuilder::StackLocked {pull}1371[#1371]
75
-
76
- [[release-notes-4.6.1]]
77
- ==== 4.6.1
78
-
79
- [float]
80
- ===== Fixed
81
-
82
- - Fix growing number of open file descriptors when HTTP request to APM is never sent {pull}1351[#1351]
83
- - Fix setting span http status code when Faraday Middleware is used {pull}1368[#1368]
84
- - Handle whitespace when splitting tracestate entries {pull}1353[#1353]
85
-
86
- [[release-notes-4.6.0]]
87
- ==== 4.6.0
88
-
89
- [float]
90
- ===== Added
91
-
92
- - Added transaction_name to reported error to allow grouping by transaction name {pull}1267[#1267]
93
- - Added ability to query server for version (useful in the future) {pull}1278[#1278]
94
- - Added instrumentation for https://github.com/zendesk/racecar/ Racecar Kafka library {pull}1284[#1284]
95
-
96
- ===== Changed
97
-
98
- - Expanded filtering to sanitize any key that contains the string 'auth' {pull}1266[#1266]
99
- - Rename `log_ecs_formatting` option to `log_ecs_reformatting`, deprecate old option name {pull}1248[#1248]
100
- - When the configuration value for `log_path` is set, override the `logger` to point to that path instead of using e.g. Rails logger {pull}1247[#1247]
101
- - Only send tracestate header for distributed tracing when it has content {pull}1277[#1277]
102
- - Use the hostname as the Kubernetes pod name in the Container Info metadata if the pod id is parsed from cgroup {pull}1314[#1314]
103
-
104
- ====== Fixed
105
-
106
- - Small change to Sidekiq tests to handle new configuration passing method {pull}1283[#1283]
107
- - Set transaction sample rate to 0 when it's unsampled {pull}1339[#1339]
108
- - Don't send unsampled transactions to APM server >= 8.0 {pull}1341[#1341]
109
-
110
- [[release-notes-4.5.1]]
111
- ==== 4.5.1
112
-
113
- [float]
114
- ===== Changed
115
-
116
- - Update elasticsearch spy to use new transport gem name {pull}1257[#1257]
117
- - Standardize placeholder for phone numbers as [PHONENUMBER] per https://github.com/elastic/apm/blob/main/specs/agents/tracing-instrumentation-aws.md {pull}1246[#1246]
118
-
119
- ===== Fixed
120
-
121
- - Fixed dependencies to allow CI to build successfully {pull}1259[#1259]
122
- - Fixed warnings related to TimeTask timeouts {pull}1255[#1255]
123
-
124
- [[release-notes-4.5.0]]
125
- ==== 4.5.0
126
-
127
- [float]
128
- ===== Changed
129
-
130
- - Stop collecting the field `http.request.socket.encrypted` {pull}1181[#1181]
131
-
132
- [float]
133
- ===== Fixed
134
-
135
- - Fixed MongoDB spy thread safety {pull}1202[#1202]
136
- - Fixed span context fields for DynamoDB instrumentation {pull}1178[#1178]
137
- - Fixed span context fields for S3 instrumentation {pull}1179[#1179]
138
- - Update user agent info to match spec {pull}1182[#1182]
139
-
140
- [[release-notes-4.4.0]]
141
- ==== 4.4.0
142
-
143
- [float]
144
- ===== Added
145
- - Optional span to be ended instead of current span {pull}1039[#1039]
146
- - Config option `log_ecs_formatting` {pull}1053[#1053]
147
-
148
- [float]
149
- ===== Fixed
150
- - Fixed detecting Linux on Alpine for CPU/MEM metrics {pull}1057[#1057]
151
-
152
- [[release-notes-4.3.0]]
153
- ==== 4.3.0
154
-
155
- [float]
156
- ===== Added
157
-
158
- - Add JVM memory metrics {pull}1040[#1040]
159
-
160
- [[release-notes-4.2.0]]
161
- ==== 4.2.0
162
-
163
- [float]
164
- ===== Added
165
-
166
- - Add support for AWS Storage Table/CosmosDB {pull}999[#999]
167
-
168
- [float]
169
- ===== Fixed
170
-
171
- - Align HTTP span types/subtypes with spec {pull}1014[#1014]
172
- - Passing a full URL as a path to `Net::HTTP` {pull}1029[#1029]
173
- - Fix growing number of open file descriptors {pull}1033[#1033]
174
-
175
- [[release-notes-4.1.0]]
176
- ==== 4.1.0
177
-
178
- [float]
179
- ===== Added
180
-
181
- - Azure App Services instance metadata {pull}1007[#1007]
182
-
183
- [float]
184
- ===== Changed
185
-
186
- - `hostname` is now reported split by `configured_hostname` and `detected_hostname` {pull}1009[#1009]
187
-
188
- [float]
189
- ===== Fixed
190
- - `service_node_name` is now correctly reported as `service.node.configured_name` {pull}1009[#1009]
191
- - Fix JSON parsing when using yajl-ruby {pull}1012[#1012]
192
- - Fix SpanHelpers when methods take blocks {pull}1013[#1013]
193
- - Fix missing `environment` param when fetching from Central Config {pull}1014[#1014]
194
-
195
- [[release-notes-4.0.0]]
196
- ==== 4.0.0
197
-
198
- [float]
199
- ===== Upgrading
200
-
201
- Be aware that this release changes the agent's general approach to instrumenting third
202
- party libraries.
203
- It now uses `Module#prepend` over alias method chaining.
204
-
205
- This doesn't necessarily impact your application but it could if you are using other gems
206
- that use the old approach to patch the same method.
207
- Mixing the two approaches can lead to infinite recursion.
208
-
209
- [float]
210
- ===== Removed
211
-
212
- - Removed support for Ruby 2.3 and JRuby 9.1 {pull}901[#901]
213
- - Config option `active`, see `enabled` {pull}900[#900]
214
- - Config option `custom_key_filters`, see `sanitize_field_names` {pull}900[#900]
215
- - Config option `default_tags`, see `global_labels` {pull}900[#900]
216
- - Config option `default_labels`, see `global_labels` {pull}900[#900]
217
- - Config option `ignore_url_patterns`, see `transaction_ignore_urls` {pull}900[#900]
218
- - Config option `use_legacy_sql_parser`, legacy parser no longer included {pull}900[#900]
219
-
220
- [float]
221
- ===== Changed
222
-
223
- - Integrations (Spies) use Module#prepend over class_eval {pull}890[#890]
224
- - The secrets filter no longer filters based on values, see `sanitize_field_names` {pull}900[#900]
225
- - The secrets filter is aligned with other agents, see `sanitize_field_names` {pull}900[#900]
226
-
227
- [float]
228
- ===== Added
229
-
230
- - Added `set_service` API {pull}1006[#1006]
231
-
232
- [float]
233
- ===== Fixed
234
-
235
- - AWS S3 spy accepts symbol bucket names {pull}998[#998]
236
- - AWS S3 spy passing on blocks {pull}998[#998]
237
- - SQL scanner now recognizes CQL style comments {pull}1004[#1004]
238
-
239
- [[release-notes-3.x]]
240
- === Ruby Agent version 3.x
241
-
242
- [[release-notes-3.15.0]]
243
- ==== 3.15.0 (2021-03-22)
244
-
245
- [float]
246
- ===== Changed
247
-
248
- - Changed DynamoDB instrumentation to match spec. Span names now follow the format `DynamoDB
249
- Operation [table]` {pull}976[#976]
250
-
251
- [float]
252
- ===== Added
253
- - Support for AWS S3 {pull}977[#977]
254
- - Support for AWS SQS {pull}978[#978]
255
- - Support for AWS SNS {pull}978[#978]
256
-
257
- [[release-notes-3.14.0]]
258
- ==== 3.14.0 (2021-03-17)
259
-
260
- [float]
261
- ===== Added
262
-
263
- - Expanded support for extracting ActiveRecord adapter name from notification payload when using
264
- ActiveRecord versions before 6.0 {pull}953[#953]
265
-
266
- [float]
267
- ===== Fixed
268
-
269
- - Fixed setting outcome in Mongo spy when not traced {pull}937[#937]
270
- - Fixed missing container metadata in payloads {pull}942[#942]
271
- - Fixed outgoing HTTP request spans with no Host {pull}962[#962]
272
-
273
- [[release-notes-3.13.0]]
274
- ==== 3.13.0 (2020-12-22)
275
-
276
- [float]
277
- ===== Fixed
278
-
279
- - Handle invalid utf-8 byte sequences in sql summarizer and DB statement {pull}896[#896]
280
- - Expand Kubernetes metadata discovery {pull}916[#916]
281
- - Fix fetching cloud info on Http.rb 3.x versions {pull}919[#919]
282
-
283
- [float]
284
- ===== Added
285
-
286
- - Support both integer and string log levels, and extra central config values {pull}902[#902]
287
-
288
- [float]
289
- ===== Changed
290
-
291
- - Rename server_ca_cert to server_ca_cert_file {pull}908[#908]
292
-
293
- [[release-notes-3.12.1]]
294
- ==== 3.12.1 (2020-11-16)
295
-
296
- [float]
297
- ===== Fixed
298
-
299
- - `capture_elasticsearch_queries` no longer modifies the original query {pull}894[#894]
300
-
301
- [[release-notes-3.12.0]]
302
- ==== 3.12.0 (2020-11-10)
303
-
304
- [float]
305
- ===== Added
306
-
307
- - Add outcome to transactions and spans {pull}883[#883]
308
-
309
- [[release-notes-3.11.1]]
310
- ==== 3.11.1 (2020-11-05)
311
-
312
- [float]
313
- ===== Fixed
314
-
315
- - Fix reporting from Kubernetes based deploys to APM Server 7.9.x {pull}885[#885]
316
-
317
- [[release-notes-3.11.0]]
318
- ==== 3.11.0 (2020-10-27)
319
-
320
- [float]
321
- ===== Added
322
-
323
- - Add and read sampling info from Tracestate headers {pull}858[#858]
324
- - Add information about cloud hosting environment if available {pull}871[#871]
325
-
326
- [float]
327
- ===== Changed
328
-
329
- - Align the default value of `sanitize_field_names` with other agents {pull}867[#867]
330
- - Ensure max 4 digits of precision for `sample_rate` as per agent spec {pull}880[#880]
331
-
332
- [float]
333
- ===== Fixed
334
-
335
- - Fix Delayed::Job class names when used through ActiveJob {pull}869[#869]
336
- - Fix Delayed::Job when run without the agent running {pull}874[#874]
337
- - Fix Kubernetes related metadata {pull}882[#882]
338
-
339
- [[release-notes-3.10.1]]
340
- ==== 3.10.1 (2020-08-26)
341
-
342
- [float]
343
- ===== Fixed
344
-
345
- - Remove secrets from cookies in errors {pull}863[#863]
346
- - Silence deprecation warning when setting `ignore_url_patterns` to default {pull}865[#865]
347
-
348
- [[release-notes-3.10.0]]
349
- ==== 3.10.0 (2020-08-26)
350
-
351
- [float]
352
- ===== Added
353
-
354
- - Config option `transaction_ignore_urls` to replace `ignore_url_patterns` {pull}844[#844]
355
- - Prepend `(?-i)` to patterns to make them case-sensitive {pull}846[#846]
356
-
357
- [float]
358
- ===== Fixed
359
-
360
- - Reverted {pull}839[#839]
361
- - Improved Kubernetes pod ID detection {pull}859[#859]
362
-
363
- [[release-notes-3.9.0]]
364
- ==== 3.9.0 (2020-08-04)
365
-
366
- [float]
367
- ===== Fixed
368
- - Scrub request body of illegal UTF-8 characters {pull}832[#832]
369
-
370
- [float]
371
- ===== Added
372
-
373
- - Support for DynamoDB {pull}827[#827]
374
-
375
- [float]
376
- ===== Fixed
377
-
378
- - Fix Rails Engine views' paths being reported as absolute {pull}839[#839]
379
- - Fix an issue when using Elasticsearch spy without a running agent {pull}830[#830]
380
-
381
- [[release-notes-3.8.0]]
382
- ==== 3.8.0 (2020-06-18)
383
-
384
- [float]
385
- ===== Added
386
-
387
- - Add the option `capture_elasticsearch_queries` {pull}789[#789]
388
- - Add option to skip patching Kernal#require {pull}812[#812]
389
- - Add option `service_node_name` {pull}820[#820]
390
-
391
- [float]
392
- ===== Fixed
393
-
394
- - Allow underscores in hostnames in Net::HTTP spy {pull}804[#804]
395
- - Don't change log level on logger object via remote config {pull}809[#809]
396
- - Update and fix the Opentracing bridge {pull}791[#791]
397
-
398
- [[release-notes-3.7.0]]
399
- ==== 3.7.0 (2020-05-14)
400
-
401
- [float]
402
- ===== Changed
403
-
404
- - Make config values dynamic so they can be changed via the remote config {pull}747[#747]
405
- - Log the updated options from central config in addition to cumulative modifications {pull}758[#758]
406
-
407
- [float]
408
- ===== Fixed
409
-
410
- - Ensure that the log level is updated for the config's logger when value is changed {pull}755[#755]
411
- - Set config `false` values to `false`, not `nil` {pull}761[#761]
412
- - Ensure that the previously running agent's config is used in `ElasticAPM.restart` {pull}763[#763]
413
- - Handle the Resque spy's payload class value being a String or Class and update docs {pull}768[#768]
414
- - Add finalizer on ProxyPipe::Write so Zlib::GzipWriter is properly closed {pull}787[#787]
415
-
416
- [float]
417
- ===== Added
418
-
419
- - Add enabled config option, replacing active {pull}669[#669]
420
- - Add recording config option {pull}765[#765]
421
- - Add support for `SuckerPunch` {pull}775[#775]
422
- - Support forking: Detect forking and restart agent tasks and background threads {pull}783[#783]
423
-
424
- [[release-notes-3.6.0]]
425
- ==== 3.6.0 (2020-03-10)
426
-
427
- [float]
428
- ===== Added
429
-
430
- - Support for gRPC using the `grpc` gem (Experimental) {pull}669[#669]
431
- - GraphQL support (experimental) {pull}721[#721]
432
- - Add `span.context.destination.address` and `span.context.destination.port` when available. {pull}722[#722]
433
- - Add support for Resque. {pull}729[#729]
434
-
435
- [float]
436
- ===== Changed
437
-
438
- - The new SQL parser is used by default {pull}730[#730]
439
-
440
- [[release-notes-3.5.0]]
441
- ==== 3.5.0 (2020-02-12)
442
-
443
- [float]
444
- ===== Added
445
-
446
- - Pass along tracestate headers and add prefixless Traceparent header {pull}694[#694]
447
- - Add sanitize_field_names to replace custom_key_filters {pull}708[#708]
448
- - Add `rows_affected` to database related spans (Sequel only for now) {pull}668[#668]
449
-
450
- [float]
451
- ===== Changed
452
-
453
- - Rename disabled_instrumentations to disable_instrumentations {pull}695[#695]
454
-
455
- [float]
456
- ===== Fixed
457
-
458
- - Fix thread race condition in metrics collection (JRuby) {pull}669[#669]
459
-
460
- [[release-notes-3.4.0]]
461
- ==== 3.4.0 (2020-01-10)
462
-
463
- [float]
464
- ===== Added
465
-
466
- - Add `span.context.destination` fields {pull}647[#647]
467
- - Add more precise (experimental) SQL summarizer {pull}640[#640]
468
- - Add support for Shoryuken (AWS SQS) {pull}674[#674]
469
- - Add support for Sneakers (Experimental) {pull}676[#676]
470
- - Add option `api_key` (experimental) to specify an Api key to use with the apm server {pull}655[#655]
471
-
472
- [float]
473
- ===== Changed
474
-
475
- - Allow action dispatch spy to be disabled via `disabled_instrumentations` {pull}657[#657]
476
-
477
- [float]
478
- ===== Fixed
479
-
480
- - Fix Rails Console detection when top-level `Console` constant defined {pull}664[#664]
481
- - Fix Ruby 2.7 related deprecation warnings {pull}667[#667]
482
- - Fix HTTP response header values not being converted to strings {pull}675[#675]
483
-
484
- [[release-notes-3.3.0]]
485
- ==== 3.3.0 (2019-12-05)
486
-
487
- [float]
488
- ===== Added
489
-
490
- - Add option `disable_metrics` {pull}625[#625]
491
-
492
- [float]
493
- ===== Fixed
494
-
495
- - Make Filters thread-safe {pull}624[#624]
496
- - Omit passwords in outgoing urls {pull}629[#629]
497
- - Add missing mutex to Counter metrics {pull}636[#636]
498
- - Correct span context collection name for Mongo getMore commands {pull}637[#637]
499
-
500
- [[release-notes-3.2.0]]
501
- ==== 3.2.0 (2019-11-19)
502
-
503
- [float]
504
- ===== Added
505
-
506
- - Add Grape support. {pull}562[#562]
507
- - Add Breakdown Metrics {pull}526[#526]
508
-
509
- [float]
510
- ===== Changes
511
-
512
- - Set remote_addr to immediate socket {pull}615[#615]
513
-
514
- [float]
515
- ===== Fixed
516
-
517
- - Fixed pulling config from Kibana {pull}594[#594]
518
- - Fixed a bug where the agent would alter the original cookies hash {pull}616[#616]
519
-
520
- [[release-notes-3.1.0]]
521
- ==== 3.1.0 (2019-10-21)
522
-
523
- [float]
524
- ===== Added
525
-
526
- - Add `ElasticAPM::Sinatra.start` API. {pull}556[#566]
527
-
528
- [float]
529
- ===== Changes
530
-
531
- - Log 404s from CentralConfig on debug level {pull}553[#553]
532
-
533
- [float]
534
- ===== Fixed
535
-
536
- - Fix Central Config url path {pull}578[#578]
537
-
538
- [[release-notes-3.0.0]]
539
- ==== 3.0.0 (2019-10-08)
540
-
541
- [float]
542
- ===== Breaking Changes
543
-
544
- The following changes are breaking, as they may change the way data is grouped or shown in Kibana or how your app
545
- defines agent settings.
546
-
547
- - Decrease stack_trace_limit to 50 {pull}515[#515]
548
- - Errors' `message` no longer include their `type` {pull}323[#323]
549
- - External request spans now have type `external.http.{library}` {pull}514[#514]
550
- - Durations are measured using monotonic time {pull}550[#550]
551
- - Rename set_tag to set_label {pull}543[#543]
552
- - Rename disabled_spies to disabled_instrumentations {pull}539[#539]
553
-
554
- [[release-notes-2.x]]
555
- === Ruby Agent version 2.x
556
-
557
- [[release-notes-2.12.0]]
558
- ==== 2.12.0 (2019-10-01)
559
-
560
- [float]
561
- ===== Changed
562
-
563
- - `disabled_spies` renamed to `disabled_instrumentations` with fallback {pull}539[#539]
564
- - Rename `set_tag` to `set_label` and deprecate `set_tag` {pull}543[#543]
565
- - Allow non-String label values {pull}543[#543]
566
-
567
- [float]
568
- ===== Fixed
569
-
570
- - Handles a case where stacktrace frames are empty {pull}538[#538]
571
-
572
- [float]
573
- ===== Deprecated
574
-
575
- - Deprecate `set_tag` {pull}543[#543]
576
-
577
- [[release-notes-2.11.0]]
578
- ==== 2.11.0 (2019-09-23)
579
-
580
- [float]
581
- ===== Added
582
-
583
- - Add `Rails` module with `#start` method to run Rails setup explicitly {pull}522[#522]
584
- - Support for log/trace correlation {pull}527[#527]
585
-
586
- [float]
587
- ===== Changed
588
-
589
- - Split dot-separated `span.type` into `.type`, `.subtype` and `.action` (auto-upgrades dot style) {pull}531[#531]
590
-
591
- [[release-notes-2.10.1]]
592
- ==== 2.10.1
593
-
594
- [float]
595
- ===== Fixed
596
-
597
- - Fixed loading options from a config file specified by `ELASTIC_APM_CONFIG_FILE` {pull}518[#518]
598
- - Fixed an issue with CentralConfig polling not starting {pull}525[#525]
599
-
600
- [float]
601
- ===== Added
602
-
603
- - Support for chained exceptions {pull}488[#488]
604
-
605
- [[release-notes-2.10.0]]
606
- ==== 2.10.0
607
-
608
- [float]
609
- ===== Added
610
-
611
- - Add Ruby specific metrics {pull}437[#437]
612
- - Support for APM Agent Configuration via Kibana {pull}464[#464]
613
- - Change span name format and add command to context's db.statement for `MongoSpy` {pull}488[#488]
614
-
615
- [float]
616
- ===== Changed
617
-
618
- - `ElasticAPM.report` and `ElasticAPM.report_message` return the string ID of the generated `Error` objects {pull}507[#507]
619
-
620
- [[release-notes-2.9.1]]
621
- ==== 2.9.1 (2019-06-28)
622
-
623
- [float]
624
- ===== Fixed
625
-
626
- - Use system CA certificate if none is specified {pull}460[#460]
627
-
628
- [[release-notes-2.9.0]]
629
- ==== 2.9.0 (2019-06-25)
630
-
631
- [float]
632
- ===== Security
633
-
634
- - **NB:** If you are using a custom CA cert via `server_ca_cert`, versions of the agent prior to 2.9.0 may not have validated the certificate of APM Server correctly.
635
-
636
- [float]
637
- ===== Added
638
-
639
- - Add `transaction.type` to errors {pull}434[#434]
640
- - Add cookies to `request.cookies` {pull}448[#448]
641
-
642
- [float]
643
- ===== Fixed
644
-
645
- - Fix support for older versions of Http.rb {pull}438[#438]
646
- - Strip `Cookie` and `Set-Cookie` from headers {pull}448[#448]
647
- - Fix disabling SSL verification {pull}449[#449]
648
-
649
- [[release-notes-2.8.1]]
650
- ==== 2.8.1 (2019-05-29)
651
-
652
- [float]
653
- ===== Fixed
654
-
655
- - Database statements are properly truncated {pull}431[#431]
656
-
657
- [[release-notes-2.8.0]]
658
- ==== 2.8.0 (2019-05-20)
659
-
660
- [float]
661
- ===== Added
662
-
663
- - The option `stack_trace_limit` {pull}424[#424]
664
-
665
- [float]
666
- ===== Changed
667
-
668
- - Use standardized User-Agent {pull}419[#419]
669
-
670
- [float]
671
- ===== Fixed
672
-
673
- - `error.culprit` is properly truncated to 1024 characters {pull}418[#418]
674
- - Force convert `transaction.context.response.status_code` to integer {pull}423[#423]
675
-
676
- [[release-notes-2.7.0]]
677
- ==== 2.7.0 (2019-05-07)
678
-
679
- [float]
680
- ===== Added
681
-
682
- - Added `disable_start_message` for those wanting complete silence on boot {pull}397[#397]
683
-
684
- [float]
685
- ===== Changed
686
-
687
- - Attempt to strip secrets from `request.env` {pull}410[#410]
688
-
689
- [float]
690
- ===== Fixed
691
-
692
- - Rewritten most of the internal transport code, streaming events to APM Server {pull}372[#372]
693
- - Re-added `default_tags` {pull}395[#395]
694
- - A bug in the Faraday spy when disabling the Net::HTTP spy {pull}396[#396]
695
- - Fix disabling the ActionDispatch spy {pull}399[#399]
696
-
697
- [[release-notes-2.6.1]]
698
- ==== 2.6.1 (2019-03-28)
699
-
700
- [float]
701
- ===== Fixed
702
-
703
- - Setting `config_file` via `ELASTIC_APM_CONFIG_FILE` {pull}363[#363]
704
- - Stopping the Metrics collector when it is disabled {pull}357[#357]
705
- - HTTP proxy settings can now be set by ENV variable {pull}367[#367]
706
-
707
- [[release-notes-2.6.0]]
708
- ==== 2.6.0 (2019-03-19)
709
-
710
- [float]
711
- ===== Deprecated
712
-
713
- - `ElasticAPM.build_context` now takes two keyword arguments instead of a single, normal argument. https://www.elastic.co/guide/en/apm/agent/ruby/2.x/api.html#api-agent-build-context[Docs].
714
- - The option `capture_body` has a string value instead of boolean. https://www.elastic.co/guide/en/apm/agent/ruby/2.x/configuration.html#config-capture-body[Docs].
715
-
716
- Both APIs are backwards compatible with fallbacks and deprecation warnings, scheduled for removal in next major release.
717
-
718
- [float]
719
- ===== Added
720
-
721
- - Configuration options to use an HTTP proxy {pull}352[#352]
722
-
723
- [float]
724
- ===== Changed
725
-
726
- - Errors get their own contexts, perhaps leading to slightly different (but more correct) results. {pull}335[#335]
727
- - The agent no longer starts automatically inside Rails' console {pull}343[#343]
728
-
729
- [float]
730
- ===== Fixed
731
-
732
- - Fixed reading available memory on older Linux kernels {pull}351[#351]
733
- - Don't apply filters to original response headers {pull}354[#354]
734
-
735
- [[release-notes-2.5.0]]
736
- ==== 2.5.0 (2019-03-01)
737
-
738
- [float]
739
- ===== Added
740
-
741
- - Added the option `active` that will prevent the agent from starting if set to `false` {pull}338[#338]
742
-
743
- [float]
744
- ===== Fixed
745
-
746
- - Fix error with `capture_body` and nested request bodies {pull}339[#339]
747
-
748
- [[release-notes-2.4.0]]
749
- ==== 2.4.0 (2019-02-27)
750
-
751
- [float]
752
- ===== Added
753
-
754
- - Added option to specify a custom server CA certificate {pull}315[#315]
755
-
756
- [float]
757
- ===== Changed
758
-
759
- - **NB:** Default value of option `capture_body` flipped to `false` to align with other agents. Set `capture_body: true` in your configuration to get them back. {pull}324[#324]
760
-
761
- [float]
762
- ===== Fixed
763
-
764
- - Reading CPU stats from `/proc/stat` on RHEL {pull}312[#312]
765
- - Change TraceContext to differentiate between `id` and `parent_id` {pull}326[#326]
766
- - `capture_body` will now force encode text bodies to utf-8 when possible {pull}332[#332]
767
-
768
- [[release-notes-2.3.1]]
769
- ==== 2.3.1 (2019-01-31)
770
-
771
- [float]
772
- ===== Added
773
-
774
- - Read container info from Docker or Kupernetes {pull}303[#303]
775
-
776
- [float]
777
- ===== Fixed
778
-
779
- - Fix logging exceptions when booting via Railtie {pull}306[#306]
780
-
781
- [[release-notes-2.3.0]]
782
- ==== 2.3.0 (2019-01-29)
783
-
784
- [float]
785
- ===== Added
786
-
787
- - Support for Metrics {pull}276[#276]
788
-
789
- [[release-notes-2.2.0]]
790
- ==== 2.2.0 (2019-01-22)
791
-
792
- [float]
793
- ===== Added
794
-
795
- - Support for https://opentracing.io[OpenTracing] {pull}273[#273]
796
- - Add capture\_\* options {pull}279[#279]
797
- - Evaluate the config file as ERB {pull}288[#288]
798
-
799
- [float]
800
- ===== Changed
801
-
802
- - Rename `Traceparent` object to `TraceContext` {pull}271[#271]
803
-
804
- [float]
805
- ===== Fixed
806
-
807
- - An issue where Spans would not get Stacktraces attached {pull}282[#282]
808
- - Skip `caller` unless needed {pull}287[#287]
809
-
810
- [[release-notes-2.1.2]]
811
- ==== 2.1.2 (2018-12-07)
812
-
813
- [float]
814
- ===== Fixed
815
-
816
- - Fix truncation of `transaction.request.url` values {pull}267[#267]
817
- - Fix Faraday calls with `url_prefix` {pull}263[#263]
818
- - Force `span.context.http.status_code` to be an integer
819
-
820
- [[release-notes-2.1.1]]
821
- ==== 2.1.1 (2018-12-04)
822
-
823
- [float]
824
- ===== Fixed
825
-
826
- - Set traceparent span.id to transaction id when span is missing {pull}261[#261]
827
-
828
- [[release-notes-2.1.0]]
829
- ==== 2.1.0 (2018-12-04)
830
-
831
- [float]
832
- ===== Added
833
-
834
- - Support for Faraday {pull}249[#249]
835
-
836
- [float]
837
- ===== Fixed
838
-
839
- - Truncate keyword fields to 1024 chars {pull}240[#240]
840
- - Lazy boot worker threads on first event. Fixes apps using Puma's `preload_app!` {pull}239[#239]
841
- - Fix missing `disable_send` implementation {pull}257[#257]
842
- - Add warnings for invalid config options {pull}254[#254]
843
-
844
- [[release-notes-2.0.1]]
845
- ==== 2.0.1 (2018-11-15)
846
-
847
- [float]
848
- ===== Fixed
849
-
850
- - Stop sending `span.start` {pull}234[#234]
851
-
852
- [[release-notes-2.0.0]]
853
- ==== 2.0.0 (2018-11-14)
854
-
855
- Version adds support for APM Server 6.5 and needs at least that.
856
-
857
- [float]
858
- ===== Added
859
-
860
- - Support for APM Server 6.5 (Intake v2)
861
- - Support for Distributed Tracing (beta)
862
- - Support for RUM Agent correlation (Distributed Tracing)
863
- - Support for https://github.com/httprb/http[HTTP.rb] (Instrumentation + Distributed Tracing)
864
-
865
- [float]
866
- ===== Changed
867
-
868
- - Custom instrumentation APIs {pull}209[#209]
869
- - Tag keys will convert disallowed chars to `_`
870
- - Default log level changed to `info`
871
- - Laxed version requirement of concurrent-ruby
872
- - Change `log_level` to only concern agent log
873
-
874
- [float]
875
- ===== Deprecated
876
-
877
- *APIs:*
878
-
879
- - `ElasticAPM.transaction`
880
- - `ElasticAPM.span`
881
-
882
- *Options:*
883
-
884
- - `compression_level`
885
- - `compression_minimum_size`
886
- - `debug_http`
887
- - `debug_transactions`
888
- - `flush_interval`
889
- - `http_open_timeout`
890
- - `http_read_timeout`
891
- - `enabled_environments`
892
- - `disable_environment_warning`
893
-
894
- Some options that used to take a certain unit for granted now expects explicit units – but will fall back to old default.
895
-
896
- [float]
897
- ===== Removed
898
-
899
- - Support for APM Server versions prior to 6.5.
900
- - Support for Ruby 2.2 (eol)
901
-
902
- [[release-notes-1.x]]
903
- === Ruby Agent version 1.x
904
-
905
- [[release-notes-1.1.0]]
906
- ==== 1.1.0 (2018-09-07)
907
-
908
- [float]
909
- ===== Added
910
-
911
- - Rake task instrumentation {pull}192[#192]
912
- - `default_tags` option {pull}183[#183]
913
-
914
- [float]
915
- ===== Fixed
916
-
917
- - Fallback from missing JRUBY_VERSION {pull}180[#180]
918
-
919
- [[release-notes-1.0.2]]
920
- ==== 1.0.2 (2018-09-07)
921
-
922
- Should've been a minor release -- see 1.1.0
923
-
924
- [[release-notes-1.0.1]]
925
- ==== 1.0.1 (2018-07-30)
926
-
927
- [float]
928
- ===== Fixed
929
-
930
- - Fixed internal LRU cache to be threadsafe {pull}178[#178]
931
-
932
- [[release-notes-1.0.0]]
933
- ==== 1.0.0 (2018-06-29)
934
-
935
- [float]
936
- ===== Added
937
-
938
- - Added config.disable_send {pull}156[#156]
939
-
940
- [float]
941
- ===== Changed
942
-
943
- - Set the default `span_frame_min_duration` to 5ms
944
-
945
- [float]
946
- ===== Fixed
947
-
948
- - Fixed some Elasticsearch spans not validating JSON Schema {pull}157[#157]
949
-
950
- [[release-notes-0.x]]
951
- === Ruby Agent version 0.x
952
-
953
- [[release-notes-0.8.0]]
954
- ==== 0.8.0 (2018-06-13)
955
-
956
- [float]
957
- ===== Added
958
-
959
- - Added an option to disable metrics collection {pull}145[#145]
960
- - Filters can cancel the entire payload by returning `nil` {pull}148[#148]
961
- - Added `ENV` version of the logging options {pull}146[#146]
962
- - Added `config.ignore_url_patterns` {pull}151[#151]
963
-
964
- [float]
965
- ===== Changed
966
-
967
- - Use concurrent-ruby's TimerTask instead of `Thread#sleep`. Adds dependency on `concurrent-ruby`. {pull}141[#141]
968
-
969
- [float]
970
- ===== Fixed
971
-
972
- - Remove newline on `hostname`
973
- - Fixed ActionMailer spans renaming their transaction
974
-
975
- [[release-notes-0.7.4]]
976
- ==== 0.7.4 - 2018-06-07
977
-
978
- Beginning of this document
979
-
980
- [float]
981
- ===== Fixed
982
-
983
- - Fix overwriting custom logger with Rails'