New Relic Ruby Agent Release Notes
Security: Updated all uses of Rake to >= 12.3.3
All versions of Rake testing prior to 12.3.3 were removed to address CVE-2020-8130. No functionality in the agent was removed nor deprecated with this change, and older versions of rake are expected to continue to work as they have in the past. However, versions of rake < 12.3.3 are no longer tested nor supported.
Bugfix: fixes an error capturing content length in middleware on multi-part responses
In the middleware tracing, the
Content-Lengthheader is sometimes returned as an array of values when content is a multi-part response. Previously, the agent would fail with "NoMethodError: undefined method
to_ifor Array" Error. This bug is now fixed and multi-part content lengths are summed for a total when an
Added support for auto-instrumenting Mongo gem versions 2.6 to 2.12
Bugfix: MongoDB instrumentation did not handle CommandFailed events when noticing errors
The mongo gem sometimes returns a CommandFailed object instead of a CommandSucceeded object with error attributes populated. The instrumentation did not handle noticing errors on CommandFailed objects and resulted in logging an error and backtrace to the log file.
Additionally, a bug in recording the metric for "findAndModify" as all lowercased "findandmodify" for versions 2.1 through 2.5 was fixed.
Bugfix: Priority Sampler causes crash in high throughput environments in rare cases
Previously, the priority sampling buffer would, in rare cases, generate an error in high-throughput environments once capacity is reached and the sampling algorithm engages. This issue is fixed.
Additional transaction information applied to Spans
When distributed tracing and/or Infinite Tracing are enabled, the agent will now incorporate additional information from the Transaction event on to the root Span of the transaction.
The following items are affected:
- Custom attribute values applied to the Transaction via our add_custom_attributes API method.
- Request parameters:
- Request headers:
- Response headers:
- Resque job arguments:
- Sidekiq job arguments:
- Messaging arguments:
httpResponseCode(deprecated in this version; see note below)/
Review your Transaction attributes include and exclude configurations. Any attribute include or exclude settings specific to Transaction events should be applied to your Span attributes include and exclude configuration or your global attributes include and exclude configuration.
Agent attribute deprecation: httpResponseCode
Starting in this agent version, the agent attribute
httpResponseCode(string value) has been deprecated. Customers can begin using
http.statusCode(integer value) immediately, and
httpResponseCodewill be removed in the agent's next major version update.
Bugfix: Eliminate warnings for distributed tracing when using sidekiq
Previously, using sidekiq with distributed tracing disabled resulted in warning messages\
WARN : Not configured to accept distributed trace headers\
WARN : Not configured to insert distributed trace headers\ These messages no longer appear.