Improvements
Support for W3C Trace Context, with easy upgrade from New Relic trace context
Distributed tracing now supports W3C Trace Context headers for HTTP and gRPC protocols when distributed tracing is enabled. Our implementation can accept and emit both W3C trace header format and New Relic trace header format. This simplifies agent upgrades, allowing trace context to be propagated between services with older and current releases of New Relic agents. With this release, W3C trace header format will always be accepted and emitted. New Relic trace header format will be accepted, and you can optionally disable emission of the New Relic trace header format.
The New Relic trace header format can disabled using this config or as documented here:
newrelic.config.distributed_tracing.exclude_newrelic_header = true
Also, see Known issues and workarounds.
Cassandra
- This release adds instrumentation for queries in versions 3.8+ of the Datastax Cassandra driver, including slow query support. You’ll see relevant breakdowns in the overview chart, entries on the Databases page, and segments in transaction traces.
AWS Async SDK
- AWS S3 - The Java agent now reports calls to Amazon S3 using the S3AsyncClient as external metrics
- AWS SQS - The Java agent now reports calls to SqsAsyncClient as message queue metrics
- AWS SNS - The Java agent now reports calls to Amazon SQS using SNSAsyncClient as message queue metrics
Fixes
In an effort to modernize our language and improve clarity, we have renamed several config values. The old names will still work for now, but they will all be removed in the next major version.
transaction_tracer.slow_query_whitelist
is nowtransaction_tracer.collect_slow_queries_from
strip_exception_messages.whitelist
is nowstrip_exception_messages.allowed_classes
command_parser.blacklist
is nowcommand_parser.disallow
The
strip_exception_messages
config now excludes nested exception messagesThe agent will now use a lightweight tracer for SQL tracers beyond the segment_limit, improving performance in cases with a high number of segments.
The agent would fail to report the Docker
containerId
for some combinations of systemd and KubernetesThe agent logger would fail to log with:
“ERROR RollingFileAppender 'File': No TriggeringPolicy provided”
whennewrelic.config.log_file_count>1
andnewrelic.config.isDaily=false
andnewrelic.config.log_limit_bytes=0
Known issues and workarounds
If a .NET agent is initiating distributed traces as the root service, you must update that .NET agent to version 8.24 or later before upgrading your downstream Java New Relic agents to this agent release.