New features and improvements
- Enhances visibility into Reactor
Mono.flatMap
calls by @deleonenriqueta in #2308 - Adds new instrumentation for Spring-Kafka and distributed tracing when using the core Kafka client library by @obenkenobi in #2312
- Adds
KafkaConsumerConfig
event support for Kafka 3.7+ by @nrlkirby in #2358
Fixes
- Fixes the
distributed_tracing.sampler
config by @jbedell-newrelic in #2330 - Fixes an Illegal Access Error that can occur when using Scala 2.12 and JDK 11. In cases where Scala 2.12 is not detectable by the agent (we check the system classloader for this - notably, sbt will load Scala classes into custom Scala loaders), there is also a feature flag to manually enable the fix via system property
-Dnewrelic.config.class_transformer.illegal_access_fix=true
by @kanderson250 in #2334 - Fixes a logic error with the
netty.http2.frame_read_listener.start_transaction
configuration for thenetty-4.1.16
instrumentation module by @obenkenobi in #2355 - Adds a restriction on when to add distributed trace headers for SQS messages. This is based on how large the contents of a message is in bytes and the and the size of attributes. Messages with size greater than 251 KB and/or with 9 or more attributes are excluded from getting distributed trace headers added by @obenkenobi in #2353
- Allows the
org.crac
JAR to be shadowed to prevent conflicts with customer environments. by @jbedell-newrelic in #2344 - Backports changes made in PR #1927 to prevent
NullPointerExceptions
to older versions of thevertx-core
instrumentation by @jgoulard in #2327 - Prevents excessive transaction segments from being created by
HttpUrlConnection
method calls (e.g.getInputStream
) when they are not associated with an external call. This behavior can be controlled by the following config options:NEW_RELIC_CLASS_TRANSFORMER_COM_NEWRELIC_INSTRUMENTATION_HTTPURLCONNECTION_VERBOSE=false
, sys prop-Dnewrelic.config.class_transformer.com.newrelic.instrumentation.httpurlconnection.verbose=false
, or equivalent stanza innewrelic.yml
. Default setting istrue
(i.e. non-externalgetInputStream
and other response handler methods will be reported as before). by @kanderson250 in #2365
Security
- Upgrades the
com.newrelic.agent.java:infinite-tracing-protobuf
for better security with infinite tracing by @jtduffy in #2339 - Replaces
snakeyaml
withcom.konloch:safeyaml
to address a security vulnerability by @jtduffy in #2333
Deprecations
The following instrumentation modules are deprecated and will be removed in the next major release:
aws-wrap-0.7.0
java.completable-future-jdk8
play-2.3
netty-3.4
Struts v1
IAST
CSEC Version Update to 1.7.0 by @lovesh-ap in #2348
Changelog: https://github.com/newrelic/csec-java-agent/releases/tag/1.7.0
Full Changelog: v8.20.0...v8.21.0