New APIs
- Added getTraceMetadata(). This provides information about the currently executing trace, including the trace and span ids as well as it’s sampled state
- getTraceId(), which provides the currently executing trace’s identifier from the
TraceMetadata
. - getSpanId(), which provides the span identifier associated with the currently executing span from the
TraceMetadata
. - isSampled(), returns whether or not the current transaction is part of a sampled distributed trace from the
TraceMetadata
. - Added getLinkingMetadata(), which provides an opaque map of key/value pairs that can be used to correlate this application in the New Relic backend.
Fixes
- Spring Webflux WebClient would not track external calls when constructed with
baseUrl(String baseUrl)
- The
NewRelic.getAgent().getConfig().getValue()
api would not check configuration values set via environment variables - The agent’s completable-future instrumentation could hold a reference to
Token
s after they were expired, which could cause excessive memory usage. - Error traces could report to the wrong application when
auto_app_naming
is enabled and there were errors from two different application names getting reported during the same harvest - The agent’s MongoDB instrumentation would instrument the same builder used by the async and reactive-streams drivers, resulting in excessive memory usage and incorrect transaction times. Note: The agent will no longer instrument the sync MongoDB driver if the async and/or reactive-streams drivers are on the application’s
classpath
.