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