Official Ruby 3.0 support
The Ruby agent has been verified to run on Ruby 3.0.0.
Added support for Rails 6.1
The Ruby agent has been verified to run with Rails 6.1. Special thanks to @hasghari for setting this up!
Added support for Sidekiq 6.0, 6.1
The Ruby agent has been verified to run with both 6.0 and 6.1 versions of sidekiq.
Bugfix: No longer overwrites sidekiq trace data
Distributed tracing data is now added to the job trace info rather than overwriting the existing data.
Bugfix: Fixes cases where errors are reported for spans with no other attributes
Previously, in cases where a span does not have any agent/custom attributes on it, but an error is noticed and recorded against the span, a
FrozenError: can't modify frozen Hashis thrown. This is now fixed, and errors are now correctly recorded against such span events.
DistributedTracing.insert_distributed_trace_headersSupportability metric now recorded
Previously, API calls to
DistributedTracing.insert_distributed_trace_headerswould lead to an exception about the missing supportability metric rather than flowing through the API implementation as intended. This would potentially lead to broken distributed traces, as the trace headers were not inserted on the API call.
DistributedTracing.insert_distributed_trace_headersnow correctly records the supportability metric and inserts the distributed trace headers as intended.
Bugfix: child completions after parent completes sometimes throws exception attempting to access nil parent
In scenarios where the child segment/span is completing after the parent in jRuby, the parent may have already been freed and no longer accessible. This would lead to attempting to calll
descendant_completeon a nil object. This is fixed to protect against calling the
descendant_completein these cases.
force_install_exit_handlerconfiguration flag allows an application to instruct the agent to install its graceful shutdown exit handler. This sends any locally cached data to the New Relic collector before the application shuts down. This is useful when the primary framework has an embedded Sinatra application that is otherwise detected and skips installing the exit hook for graceful shutdowns.
Default prepend_net_instrumentation to false
true. However, many gems are still using monkey patching on Net::HTTP, which causes compatibility issues with using prepend. Defaulting this to
falseminimizes instances of unexpected compatibility issues.
Infinite tracing adds additional data to connection metadata
Adds data from the agents connect response
request_headers_mapto the metadata for the connection to the infinite trace observer.
New Relic recommends that you upgrade the agent regularly and at a minimum every 3 months. As of this release, the oldest supported version is 4.8.0.