Ruby Agent version 3.x

edit

3.15.0 (2021-03-22)

edit
Changed
edit
  • Changed DynamoDB instrumentation to match spec. Span names now follow the format DynamoDB Operation [table] #976
Added
edit
  • Support for AWS S3 #977
  • Support for AWS SQS #978
  • Support for AWS SNS #978

3.14.0 (2021-03-17)

edit
Added
edit
  • Expanded support for extracting ActiveRecord adapter name from notification payload when using ActiveRecord versions before 6.0 #953
Fixed
edit
  • Fixed setting outcome in Mongo spy when not traced #937
  • Fixed missing container metadata in payloads #942
  • Fixed outgoing HTTP request spans with no Host #962

3.13.0 (2020-12-22)

edit
Fixed
edit
  • Handle invalid utf-8 byte sequences in sql summarizer and DB statement #896
  • Expand Kubernetes metadata discovery #916
  • Fix fetching cloud info on Http.rb 3.x versions #919
Added
edit
  • Support both integer and string log levels, and extra central config values #902
Changed
edit
  • Rename server_ca_cert to server_ca_cert_file #908

3.12.1 (2020-11-16)

edit
Fixed
edit
  • capture_elasticsearch_queries no longer modifies the original query #894

3.12.0 (2020-11-10)

edit
Added
edit
  • Add outcome to transactions and spans #883

3.11.1 (2020-11-05)

edit
Fixed
edit
  • Fix reporting from Kubernetes based deploys to APM Server 7.9.x #885

3.11.0 (2020-10-27)

edit
Added
edit
  • Add and read sampling info from Tracestate headers #858
  • Add information about cloud hosting environment if available #871
Changed
edit
  • Align the default value of sanitize_field_names with other agents #867
  • Ensure max 4 digits of precision for sample_rate as per agent spec #880
Fixed
edit
  • Fix Delayed::Job class names when used through ActiveJob #869
  • Fix Delayed::Job when run without the agent running #874
  • Fix Kubernetes related metadata #882

3.10.1 (2020-08-26)

edit
Fixed
edit
  • Remove secrets from cookies in errors #863
  • Silence deprecation warning when setting ignore_url_patterns to default #865

3.10.0 (2020-08-26)

edit
Added
edit
  • Config option transaction_ignore_urls to replace ignore_url_patterns #844
  • Prepend (?-i) to patterns to make them case-sensitive #846
Fixed
edit
  • Reverted #839
  • Improved Kubernetes pod ID detection #859

3.9.0 (2020-08-04)

edit
Fixed
edit
  • Scrub request body of illegal UTF-8 characters #832
Added
edit
  • Support for DynamoDB #827
Fixed
edit
  • Fix Rails Engine views' paths being reported as absolute #839
  • Fix an issue when using Elasticsearch spy without a running agent #830

3.8.0 (2020-06-18)

edit
Added
edit
  • Add the option capture_elasticsearch_queries #789
  • Add option to skip patching Kernal#require #812
  • Add option service_node_name #820
Fixed
edit
  • Allow underscores in hostnames in Net::HTTP spy #804
  • Don’t change log level on logger object via remote config #809
  • Update and fix the Opentracing bridge #791

3.7.0 (2020-05-14)

edit
Changed
edit
  • Make config values dynamic so they can be changed via the remote config #747
  • Log the updated options from central config in addition to cumulative modifications #758
Fixed
edit
  • Ensure that the log level is updated for the config’s logger when value is changed #755
  • Set config false values to false, not nil #761
  • Ensure that the previously running agent’s config is used in ElasticAPM.restart #763
  • Handle the Resque spy’s payload class value being a String or Class and update docs #768
  • Add finalizer on ProxyPipe::Write so Zlib::GzipWriter is properly closed #787
Added
edit
  • Add enabled config option, replacing active #669
  • Add recording config option #765
  • Add support for SuckerPunch #775
  • Support forking: Detect forking and restart agent tasks and background threads #783

3.6.0 (2020-03-10)

edit
Added
edit
  • Support for gRPC using the grpc gem (Experimental) #669
  • GraphQL support (experimental) #721
  • Add span.context.destination.address and span.context.destination.port when available. #722
  • Add support for Resque. #729
Changed
edit
  • The new SQL parser is used by default #730

3.5.0 (2020-02-12)

edit
Added
edit
  • Pass along tracestate headers and add prefixless Traceparent header #694
  • Add sanitize_field_names to replace custom_key_filters #708
  • Add rows_affected to database related spans (Sequel only for now) #668
Changed
edit
  • Rename disabled_instrumentations to disable_instrumentations #695
Fixed
edit
  • Fix thread race condition in metrics collection (JRuby) #669

3.4.0 (2020-01-10)

edit
Added
edit
  • Add span.context.destination fields #647
  • Add more precise (experimental) SQL summarizer #640
  • Add support for Shoryuken (AWS SQS) #674
  • Add support for Sneakers (Experimental) #676
  • Add option api_key (experimental) to specify an Api key to use with the apm server #655
Changed
edit
  • Allow action dispatch spy to be disabled via disabled_instrumentations #657
Fixed
edit
  • Fix Rails Console detection when top-level Console constant defined #664
  • Fix Ruby 2.7 related deprecation warnings #667
  • Fix HTTP response header values not being converted to strings #675

3.3.0 (2019-12-05)

edit
Added
edit
  • Add option disable_metrics #625
Fixed
edit
  • Make Filters thread-safe #624
  • Omit passwords in outgoing urls #629
  • Add missing mutex to Counter metrics #636
  • Correct span context collection name for Mongo getMore commands #637

3.2.0 (2019-11-19)

edit
Added
edit
  • Add Grape support. #562
  • Add Breakdown Metrics #526
Changes
edit
  • Set remote_addr to immediate socket #615
Fixed
edit
  • Fixed pulling config from Kibana #594
  • Fixed a bug where the agent would alter the original cookies hash #616

3.1.0 (2019-10-21)

edit
Added
edit
  • Add ElasticAPM::Sinatra.start API. #566
Changes
edit
  • Log 404s from CentralConfig on debug level #553
Fixed
edit
  • Fix Central Config url path #578

3.0.0 (2019-10-08)

edit
Breaking Changes
edit

The following changes are breaking, as they may change the way data is grouped or shown in Kibana or how your app defines agent settings.

  • Decrease stack_trace_limit to 50 #515
  • Errors' message no longer include their type #323
  • External request spans now have type external.http.{library} #514
  • Durations are measured using monotonic time #550
  • Rename set_tag to set_label #543
  • Rename disabled_spies to disabled_instrumentations #539