Note
|
Release notes are best read in our documentation at elastic.co |
-
Support for gRPC using the
grpc
gem (Experimental) {pull}669[#669] -
GraphQL support (experimental) {pull}721[#721]
-
Add
span.context.destination.address
andspan.context.destination.port
when available. {pull}722[#722] -
Add support for Resque. {pull}729[#729]
-
The new SQL parser is used by default {pull}730[#730]
-
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]
-
Rename disabled_instrumentations to disable_instrumentations {pull}695[#695]
-
Fix thread race condition in metrics collection (JRuby) {pull}669[#669]
-
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]
-
Allow action dispatch spy to be disabled via
disabled_instrumentations
{pull}657[#657]
-
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]
-
Add option
disable_metrics
{pull}625[#625]
-
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]
-
Add Grape support. {pull}562[#562]
-
Add Breakdown Metrics {pull}526[#526]
-
Set remote_addr to immediate socket {pull}615[#615]
-
Fixed pulling config from Kibana {pull}594[#594]
-
Fixed a bug where the agent would alter the original cookies hash {pull}616[#616]
-
Add
ElasticAPM::Sinatra.start
API. {pull}556[#566]
-
Log 404s from CentralConfig on debug level {pull}553[#553]
-
Fix Central Config url path {pull}578[#578]
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 theirtype
{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]
-
disabled_spies
renamed todisabled_instrumentations
with fallback {pull}539[#539] -
Rename
set_tag
toset_label
and deprecateset_tag
{pull}543[#543] -
Allow non-String label values {pull}543[#543]
-
Handles a case where stacktrace frames are empty {pull}538[#538]
-
Deprecate
set_tag
{pull}543[#543]
-
Add
Rails
module with#start
method to run Rails setup explicitly {pull}522[#522] -
Support for log/trace correlation {pull}527[#527]
-
Split dot-separated
span.type
into.type
,.subtype
and.action
(auto-upgrades dot style) {pull}531[#531]
-
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]
-
Support for chained exceptions {pull}488[#488]
-
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]
-
ElasticAPM.report
andElasticAPM.report_message
return the string ID of the generatedError
objects {pull}507[#507]
-
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.
-
Add
transaction.type
to errors {pull}434[#434] -
Add cookies to
request.cookies
{pull}448[#448]
-
Fix support for older versions of Http.rb {pull}438[#438]
-
Strip
Cookie
andSet-Cookie
from headers {pull}448[#448] -
Fix disabling SSL verification {pull}449[#449]
-
The option
stack_trace_limit
{pull}424[#424]
-
Use standardized User-Agent {pull}419[#419]
-
error.culprit
is properly truncated to 1024 characters {pull}418[#418] -
Force convert
transaction.context.response.status_code
to integer {pull}423[#423]
-
Added
disable_start_message
for those wanting complete silence on boot {pull}397[#397]
-
Attempt to strip secrets from
request.env
{pull}410[#410]
-
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]
-
Setting
config_file
viaELASTIC_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]
Both APIs are backwards compatible with fallbacks and deprecation warnings, scheduled for removal in next major release.
-
Configuration options to use an HTTP proxy {pull}352[#352]
-
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 reading available memory on older Linux kernels {pull}351[#351]
-
Don’t apply filters to original response headers {pull}354[#354]
-
Added the option
active
that will prevent the agent from starting if set tofalse
{pull}338[#338]
-
Fix error with
capture_body
and nested request bodies {pull}339[#339]
-
Added option to specify a custom server CA certificate {pull}315[#315]
-
NB: Default value of option
capture_body
flipped tofalse
to align with other agents. Setcapture_body: true
in your configuration to get them back. {pull}324[#324]
-
Reading CPU stats from
/proc/stat
on RHEL {pull}312[#312] -
Change TraceContext to differentiate between
id
andparent_id
{pull}326[#326] -
capture_body
will now force encode text bodies to utf-8 when possible {pull}332[#332]
-
Read container info from Docker or Kupernetes {pull}303[#303]
-
Fix logging exceptions when booting via Railtie {pull}306[#306]
-
Support for OpenTracing {pull}273[#273]
-
Add capture\_\* options {pull}279[#279]
-
Evaluate the config file as ERB {pull}288[#288]
-
Rename
Traceparent
object toTraceContext
{pull}271[#271]
-
An issue where Spans would not get Stacktraces attached {pull}282[#282]
-
Skip
caller
unless needed {pull}287[#287]
-
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
-
Set traceparent span.id to transaction id when span is missing {pull}261[#261]
-
Support for Faraday {pull}249[#249]
-
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]
Version adds support for APM Server 6.5 and needs at least that.
-
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)
-
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
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.
-
Support for APM Server versions prior to 6.5.
-
Support for Ruby 2.2 (eol)
-
Rake task instrumentation {pull}192[#192]
-
default_tags
option {pull}183[#183]
-
Fallback from missing JRUBY_VERSION {pull}180[#180]
-
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]
-
Use concurrent-ruby’s TimerTask instead of
Thread#sleep
. Adds dependency onconcurrent-ruby
. {pull}141[#141]
-
Remove newline on
hostname
-
Fixed ActionMailer spans renaming their transaction