Skip to content

Latest commit

 

History

History
597 lines (399 loc) · 13.5 KB

CHANGELOG.asciidoc

File metadata and controls

597 lines (399 loc) · 13.5 KB
Note
Release notes are best read in our documentation at elastic.co

Ruby Agent version 3.x

3.6.0 (2020-03-10)

Added
  • Support for gRPC using the grpc gem (Experimental) {pull}669[#669]

  • GraphQL support (experimental) {pull}721[#721]

  • Add span.context.destination.address and span.context.destination.port when available. {pull}722[#722]

  • Add support for Resque. {pull}729[#729]

Changed
  • The new SQL parser is used by default {pull}730[#730]

3.5.0 (2020-02-12)

Added
  • Pass along tracestate headers and add prefixless Traceparent header {pull}694[#694]

  • Add sanitize_field_names to replace custom_key_filters {pull}708[#708]

  • Add rows_affected to database related spans (Sequel only for now) {pull}668[#668]

Changed
  • Rename disabled_instrumentations to disable_instrumentations {pull}695[#695]

Fixed
  • Fix thread race condition in metrics collection (JRuby) {pull}669[#669]

3.4.0 (2020-01-10)

Added
  • Add span.context.destination fields {pull}647[#647]

  • Add more precise (experimental) SQL summarizer {pull}640[#640]

  • Add support for Shoryuken (AWS SQS) {pull}674[#674]

  • Add support for Sneakers (Experimental) {pull}676[#676]

  • Add option api_key (experimental) to specify an Api key to use with the apm server {pull}655[#655]

Changed
  • Allow action dispatch spy to be disabled via disabled_instrumentations {pull}657[#657]

Fixed
  • Fix Rails Console detection when top-level Console constant defined {pull}664[#664]

  • Fix Ruby 2.7 related deprecation warnings {pull}667[#667]

  • Fix HTTP response header values not being converted to strings {pull}675[#675]

3.3.0 (2019-12-05)

Added
  • Add option disable_metrics {pull}625[#625]

Fixed
  • Make Filters thread-safe {pull}624[#624]

  • Omit passwords in outgoing urls {pull}629[#629]

  • Add missing mutex to Counter metrics {pull}636[#636]

  • Correct span context collection name for Mongo getMore commands {pull}637[#637]

3.2.0 (2019-11-19)

Added
  • Add Grape support. {pull}562[#562]

  • Add Breakdown Metrics {pull}526[#526]

Changes
  • Set remote_addr to immediate socket {pull}615[#615]

Fixed
  • Fixed pulling config from Kibana {pull}594[#594]

  • Fixed a bug where the agent would alter the original cookies hash {pull}616[#616]

3.1.0 (2019-10-21)

Added
  • Add ElasticAPM::Sinatra.start API. {pull}556[#566]

Changes
  • Log 404s from CentralConfig on debug level {pull}553[#553]

Fixed
  • Fix Central Config url path {pull}578[#578]

3.0.0 (2019-10-08)

Breaking Changes

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 {pull}515[#515]

  • Errors' message no longer include their type {pull}323[#323]

  • External request spans now have type external.http.{library} {pull}514[#514]

  • Durations are measured using monotonic time {pull}550[#550]

  • Rename set_tag to set_label {pull}543[#543]

  • Rename disabled_spies to disabled_instrumentations {pull}539[#539]

Ruby Agent version 2.x

2.12.0 (2019-10-01)

Changed
  • disabled_spies renamed to disabled_instrumentations with fallback {pull}539[#539]

  • Rename set_tag to set_label and deprecate set_tag {pull}543[#543]

  • Allow non-String label values {pull}543[#543]

Fixed
  • Handles a case where stacktrace frames are empty {pull}538[#538]

Deprecated
  • Deprecate set_tag {pull}543[#543]

2.11.0 (2019-09-23)

Added
  • Add Rails module with #start method to run Rails setup explicitly {pull}522[#522]

  • Support for log/trace correlation {pull}527[#527]

Changed
  • Split dot-separated span.type into .type, .subtype and .action (auto-upgrades dot style) {pull}531[#531]

2.10.1

Fixed
  • Fixed loading options from a config file specified by ELASTIC_APM_CONFIG_FILE {pull}518[#518]

  • Fixed an issue with CentralConfig polling not starting {pull}525[#525]

Added
  • Support for chained exceptions {pull}488[#488]

2.10.0

Added
  • Add Ruby specific metrics {pull}437[#437]

  • Support for APM Agent Configuration via Kibana {pull}464[#464]

  • Change span name format and add command to context’s db.statement for MongoSpy {pull}488[#488]

Changed
  • ElasticAPM.report and ElasticAPM.report_message return the string ID of the generated Error objects {pull}507[#507]

2.9.1 (2019-06-28)

Fixed
  • Use system CA certificate if none is specified {pull}460[#460]

2.9.0 (2019-06-25)

Security
  • 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.

Added
  • Add transaction.type to errors {pull}434[#434]

  • Add cookies to request.cookies {pull}448[#448]

Fixed
  • Fix support for older versions of Http.rb {pull}438[#438]

  • Strip Cookie and Set-Cookie from headers {pull}448[#448]

  • Fix disabling SSL verification {pull}449[#449]

2.8.1 (2019-05-29)

Fixed
  • Database statements are properly truncated {pull}431[#431]

2.8.0 (2019-05-20)

Added
  • The option stack_trace_limit {pull}424[#424]

Changed
  • Use standardized User-Agent {pull}419[#419]

Fixed
  • error.culprit is properly truncated to 1024 characters {pull}418[#418]

  • Force convert transaction.context.response.status_code to integer {pull}423[#423]

2.7.0 (2019-05-07)

Added
  • Added disable_start_message for those wanting complete silence on boot {pull}397[#397]

Changed
  • Attempt to strip secrets from request.env {pull}410[#410]

Fixed
  • Rewritten most of the internal transport code, streaming events to APM Server {pull}372[#372]

  • Re-added default_tags {pull}395[#395]

  • A bug in the Faraday spy when disabling the Net::HTTP spy {pull}396[#396]

  • Fix disabling the ActionDispatch spy {pull}399[#399]

2.6.1 (2019-03-28)

Fixed
  • Setting config_file via ELASTIC_APM_CONFIG_FILE {pull}363[#363]

  • Stopping the Metrics collector when it is disabled {pull}357[#357]

  • HTTP proxy settings can now be set by ENV variable {pull}367[#367]

2.6.0 (2019-03-19)

Deprecated
  • ElasticAPM.build_context now takes two keyword arguments instead of a single, normal argument. Docs.

  • The option capture_body has a string value instead of boolean. Docs.

Both APIs are backwards compatible with fallbacks and deprecation warnings, scheduled for removal in next major release.

Added
  • Configuration options to use an HTTP proxy {pull}352[#352]

Changed
  • Errors get their own contexts, perhaps leading to slightly different (but more correct) results. {pull}335[#335]

  • The agent no longer starts automatically inside Rails' console {pull}343[#343]

Fixed
  • Fixed reading available memory on older Linux kernels {pull}351[#351]

  • Don’t apply filters to original response headers {pull}354[#354]

2.5.0 (2019-03-01)

Added
  • Added the option active that will prevent the agent from starting if set to false {pull}338[#338]

Fixed
  • Fix error with capture_body and nested request bodies {pull}339[#339]

2.4.0 (2019-02-27)

Added
  • Added option to specify a custom server CA certificate {pull}315[#315]

Changed
  • 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]

Fixed
  • Reading CPU stats from /proc/stat on RHEL {pull}312[#312]

  • Change TraceContext to differentiate between id and parent_id {pull}326[#326]

  • capture_body will now force encode text bodies to utf-8 when possible {pull}332[#332]

2.3.1 (2019-01-31)

Added
  • Read container info from Docker or Kupernetes {pull}303[#303]

Fixed
  • Fix logging exceptions when booting via Railtie {pull}306[#306]

2.3.0 (2019-01-29)

Added
  • Support for Metrics {pull}276[#276]

2.2.0 (2019-01-22)

Added
  • Support for OpenTracing {pull}273[#273]

  • Add capture\_\* options {pull}279[#279]

  • Evaluate the config file as ERB {pull}288[#288]

Changed
  • Rename Traceparent object to TraceContext {pull}271[#271]

Fixed
  • An issue where Spans would not get Stacktraces attached {pull}282[#282]

  • Skip caller unless needed {pull}287[#287]

2.1.2 (2018-12-07)

Fixed
  • Fix truncation of transaction.request.url values {pull}267[#267]

  • Fix Faraday calls with url_prefix {pull}263[#263]

  • Force span.context.http.status_code to be an integer

2.1.1 (2018-12-04)

Fixed
  • Set traceparent span.id to transaction id when span is missing {pull}261[#261]

2.1.0 (2018-12-04)

Added
  • Support for Faraday {pull}249[#249]

Fixed
  • Truncate keyword fields to 1024 chars {pull}240[#240]

  • Lazy boot worker threads on first event. Fixes apps using Puma’s preload_app! {pull}239[#239]

  • Fix missing disable_send implementation {pull}257[#257]

  • Add warnings for invalid config options {pull}254[#254]

2.0.1 (2018-11-15)

Fixed
  • Stop sending span.start {pull}234[#234]

2.0.0 (2018-11-14)

Version adds support for APM Server 6.5 and needs at least that.

Added
  • Support for APM Server 6.5 (Intake v2)

  • Support for Distributed Tracing (beta)

  • Support for RUM Agent correlation (Distributed Tracing)

  • Support for HTTP.rb (Instrumentation + Distributed Tracing)

Changed
  • Custom instrumentation APIs {pull}209[#209]

  • Tag keys will convert disallowed chars to _

  • Default log level changed to info

  • Laxed version requirement of concurrent-ruby

  • Change log_level to only concern agent log

Deprecated

APIs:

  • ElasticAPM.transaction

  • ElasticAPM.span

Options:

  • compression_level

  • compression_minimum_size

  • debug_http

  • debug_transactions

  • flush_interval

  • http_open_timeout

  • http_read_timeout

  • enabled_environments

  • disable_environment_warning

Some options that used to take a certain unit for granted now expects explicit units – but will fall back to old default.

Removed
  • Support for APM Server versions prior to 6.5.

  • Support for Ruby 2.2 (eol)

Ruby Agent version 1.x

1.1.0 (2018-09-07)

Added
  • Rake task instrumentation {pull}192[#192]

  • default_tags option {pull}183[#183]

Fixed
  • Fallback from missing JRUBY_VERSION {pull}180[#180]

1.0.2 (2018-09-07)

Should’ve been a minor release — see 1.1.0

1.0.1 (2018-07-30)

Fixed
  • Fixed internal LRU cache to be threadsafe {pull}178[#178]

1.0.0 (2018-06-29)

Added
  • Added config.disable_send {pull}156[#156]

Changed
  • Set the default span_frame_min_duration to 5ms

Fixed
  • Fixed some Elasticsearch spans not validating JSON Schema {pull}157[#157]

Ruby Agent version 0.x

0.8.0 (2018-06-13)

Added
  • Added an option to disable metrics collection {pull}145[#145]

  • Filters can cancel the entire payload by returning nil {pull}148[#148]

  • Added ENV version of the logging options {pull}146[#146]

  • Added config.ignore_url_patterns {pull}151[#151]

Changed
  • Use concurrent-ruby’s TimerTask instead of Thread#sleep. Adds dependency on concurrent-ruby. {pull}141[#141]

Fixed
  • Remove newline on hostname

  • Fixed ActionMailer spans renaming their transaction

0.7.4 - 2018-06-07

Beginning of this document

Fixed
  • Fix overwriting custom logger with Rails'