Java Agent 5.6.0

Released on: 
Tuesday, September 17, 2019 - 10:51

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 Tokens 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.