<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Java agent release notes]]></title><description><![CDATA[Java agent release notes]]></description><link>https://docs.newrelic.com</link><generator>RSS for Node</generator><lastBuildDate>Fri, 12 Jun 2026 15:26:50 GMT</lastBuildDate><atom:link href="https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/feed.xml" rel="self" type="application/rss+xml"/><item><title><![CDATA[Java agent v1.3.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0xLjMuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-130</link><pubDate>Thu, 17 Mar 2011 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Component-based transaction naming&lt;/li&gt;
&lt;li&gt;Agent API&lt;/li&gt;
&lt;li&gt;Multiple applications enhancements&lt;/li&gt;
&lt;li&gt;Send data to RPM in UTF-8 format&lt;/li&gt;
&lt;li&gt;Bug fix: ClassCastException setting record_sql: off&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 17 Mar 2011 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v1.4.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0xLjQuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-140</link><pubDate>Mon, 11 Apr 2011 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Real User Monitoring&lt;/li&gt;
&lt;li&gt;Bug fix: setting &apos;ignore_status_codes&apos; to a single value is ignored&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 11 Apr 2011 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.0.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjAuMQ==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-201</link><pubDate>Mon, 23 May 2011 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Bug fix: JBoss fails to start with JMX errors (introduced in 1.4.0)&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 23 May 2011 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.0.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjAuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-200</link><pubDate>Mon, 09 May 2011 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Auto Real User Monitoring&lt;/li&gt;
&lt;li&gt;Support for X-Request-Start, X-Queue-Start, and X-Queue-Time request headers&lt;/li&gt;
&lt;li&gt;Bug fix: newrelic-api.jar does not work with Java 1.5&lt;/li&gt;
&lt;li&gt;Bug fix: NullPointerException instrumenting HttpClient&lt;/li&gt;
&lt;li&gt;Bug fix: setting request attribute &quot;com.newrelic.agent.TRANSACTION_NAME&quot; not working (broken in 1.4.0)&lt;/li&gt;
&lt;li&gt;Bug fix: uncaught exceptions not logged during startup&lt;/li&gt;
&lt;li&gt;Bug fix: thread profiling fails if CPU time not supported&lt;/li&gt;
&lt;li&gt;Bug fix: error is ignored only if it is the root cause&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 09 May 2011 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.0.2]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjAuMg==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-202</link><pubDate>Thu, 16 Jun 2011 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Bug fix: Auto RUM compiler error instrumenting some JSPs&lt;/li&gt;
&lt;li&gt;Bug fix: Auto RUM should inject header after meta tags&lt;/li&gt;
&lt;li&gt;Bug fix: Installer does not modify start script if another javaagent switch is present&lt;/li&gt;
&lt;li&gt;Bug fix: Agent breaks request URI parsing in Tomcat: JSESSIONID not removed (introduced in 1.4.0)&lt;/li&gt;
&lt;li&gt;Bug fix: Some compilers unable to compile JSP with auto RUM&lt;/li&gt;
&lt;li&gt;Installer support for Glassfish&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 16 Jun 2011 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.0.3]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjAuMw==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-203</link><pubDate>Thu, 04 Aug 2011 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Bug fix: RUM: Tag files not compiling in Jasper&lt;/li&gt;
&lt;li&gt;Bug fix: RUM: header not always inserted after meta tags&lt;/li&gt;
&lt;li&gt;Bug fix: NullPointerException if filter config is null&lt;/li&gt;
&lt;li&gt;Bug fix: Fix IE measurement problem in RUM footer&lt;/li&gt;
&lt;li&gt;Bug fix: API calls should not throw exceptions&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 04 Aug 2011 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.0.4]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjAuNA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-204</link><pubDate>Tue, 30 Aug 2011 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Bug fix: RUM: handle duplicate injection of our JS header and footer&lt;/li&gt;
&lt;li&gt;Bug fix: fix the license key hint that is inserted into the auto-generated configuration file&lt;/li&gt;
&lt;li&gt;Allow logging to standard out&lt;/li&gt;
&lt;li&gt;Allow configuration of the agent via environment variables&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 30 Aug 2011 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.10.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjEwLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-2100</link><pubDate>Wed, 31 Oct 2012 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Instrumentation of Servlet 3.0 async processing. Processing initiated by startAsync is included in metrics and transaction traces.&lt;/li&gt;
&lt;li&gt;Custom instrumentation configured through an XML file. For details see the documentation.&lt;/li&gt;
&lt;li&gt;Request attribute for setting app name now allows multiple app names&lt;/li&gt;
&lt;li&gt;Bug fix: auto RUM inserts header and footer into script tags&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 31 Oct 2012 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.1.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjEuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-210</link><pubDate>Fri, 07 Oct 2011 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Report slow SQL statements&lt;/li&gt;
&lt;li&gt;Performance improvements&lt;/li&gt;
&lt;li&gt;Continue to record metrics after transaction trace limit is reached&lt;/li&gt;
&lt;li&gt;Bug fix: never drop data&lt;/li&gt;
&lt;li&gt;Bug fix: Agent destructively reads request parameters in Resin&lt;/li&gt;
&lt;li&gt;Bug fix: default transaction trace threshold should be apdex_f&lt;/li&gt;
&lt;li&gt;Bug fix: Don&apos;t obfuscate digits in SQL statements that are part of table name&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Fri, 07 Oct 2011 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.11.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjExLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-2110</link><pubDate>Wed, 28 Nov 2012 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Support Jetty Continuations&lt;/li&gt;
&lt;li&gt;Support Servlet 3.0 async API for WebSphere&lt;/li&gt;
&lt;li&gt;Bug fix: java.lang.ClassCircularityError in JBoss&lt;/li&gt;
&lt;li&gt;Bug fix: Agent does not detect Solr 4.0&lt;/li&gt;
&lt;li&gt;Bug fix: NewRelicIgnoreApdex annotation ignored&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 28 Nov 2012 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.1.2]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjEuMg==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-212</link><pubDate>Mon, 07 Nov 2011 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Performance improvements&lt;/li&gt;
&lt;li&gt;Bug fix: parse inner select SQL statements&lt;/li&gt;
&lt;li&gt;Bug fix: execute SQL statement not recognized&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 07 Nov 2011 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.10.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjEwLjE=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-2101</link><pubDate>Tue, 13 Nov 2012 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Remove stall detection&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 13 Nov 2012 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.12.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjEyLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-2120</link><pubDate>Thu, 06 Dec 2012 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Agent reports jars used by applications to the Environments tab in the UI&lt;/p&gt;
&lt;p&gt;The Environments tab in the New Relic UI now shows the jars used by your application.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: In certain cases, auto-RUM of JSP breaks HTML&lt;/p&gt;
&lt;p&gt;An angle-bracket in quotes in a META tag causes the agent to produce invalid HTML for JSP. The fix produces valid HTML for this case.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Key Transaction ApdexT value not used&lt;/p&gt;
&lt;p&gt;In v2.10 - v2.11, the application-level ApdexT value is used for Key Transactions rather than the ApdexT for the Key Transaction itself. In this release, the ApdexT for the Key Transaction is used.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: With OC4J using PolicyClassLoader, no metrics displayed&lt;/p&gt;
&lt;p&gt;In the case where OC4J uses the PolicyClassLoader, the agent generates a java.lang.StackOverflowError in the log and does not provide metrics. In this release, the error does not occur.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: External metrics for HttpClient include port if host is an IP address&lt;/p&gt;
&lt;p&gt;In the case where an external service call uses HttpClient with an IP address rather than a hostname, the port number is also included. In this release, the port number is not displayed.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 06 Dec 2012 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.13.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjEzLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-2130</link><pubDate>Wed, 16 Jan 2013 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Agent can be configured to not send JVM arguments to the New Relic server&lt;/p&gt;
&lt;p&gt;The property send_jvm_props can be set to false, which will cause JVM arguments to no longer be sent to the server. Use this setting if you set sensitive system properties on the command line.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Agent reports full URL in external service calls for transaction traces&lt;/p&gt;
&lt;p&gt;The agent now will provide the full URL if available in transaction traces for external calls.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: ResinServletTracerFactory no longer causing SkipServletTracerFactory errors&lt;/p&gt;
&lt;p&gt;When hitting the ResinServletTracerFactory inside a transaction, a SkipServletTracerFactory excetion will no longer be thrown.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Agent logging improvements&lt;/p&gt;
&lt;p&gt;We have improved the clarity of logging messages, adjusted logging levels to be more appropriate, and increased logging performance.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 16 Jan 2013 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.14.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjE0LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-2140</link><pubDate>Fri, 08 Feb 2013 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fix: New Relic includes property take_last_status to only grab the final http status code.&lt;/p&gt;
&lt;p&gt;By default, New Relic reports any error status code. However, when this property is set to true, only the last http status code will be reported. This property should be set when using Apache Felix.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: New Relic now correctly patches Apache Felix ClassLoaders.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Time will now display correctly for the first hour of the day when using log4j.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: RUM header was missing a semicolon at the end of the last statement. Some browsers prefer semicolons everywhere.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Adds a &lt;code&gt;X-NewRelic-ID&lt;/code&gt; header to outbound requests using the Apache HttpClient or HttpURLConnection libraries. This change helps improve the correlation of performance between services in a service-oriented architecture for a forthcoming feature. In the meantime, if you wish to disable the header, set &apos;cross_application_tracing: false&apos; in newrelic.yml.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Java agent now reports hostnames consistent with the output of &quot;hostname -s&quot; to match all other agents&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Add report of physical server memory (in addition to JVM memory) on Unix/Linux machines&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Fri, 08 Feb 2013 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.14.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjE0LjE=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-2141</link><pubDate>Fri, 15 Feb 2013 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fix: Application errors using java.net.HttpURLConnection. The bug, introduced in 2.14.0, could cause errors in code that uses java.net.HttpURLConnection. Possible errors could occur in XML parsing, incorrect http response status, or BeanCreationException in Spring. As part of this fix the agent does not add a &apos;X-NewRelic-ID&apos; header to outbound requests using java.net.HttpURLConnection.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Fri, 15 Feb 2013 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.15.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjE1LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-2150</link><pubDate>Thu, 28 Feb 2013 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Cross Application Tracing&lt;/p&gt;
&lt;p&gt;The Cross Application Tracing feature adds request and response headers to external calls using the Apache HttpClient libraries to provided better performance data when calling applications monitored by other New Relic Agents (Java, .NET, and Ruby, with others coming soon).&lt;/p&gt;
&lt;p&gt;The 2.14.0 release links aggregated data across applications. This release also links transaction traces.&lt;/p&gt;
&lt;p&gt;The configuration setting introduced in 2.14.0 to enable/disable Cross Application Tracing in newrelic.yml has changed. The old setting: &apos;cross_application_tracing: true&apos; is deprecated. The new setting is&lt;/p&gt;
&lt;p&gt;cross_application_tracer:&lt;br&gt;
enabled: true&lt;/p&gt;
&lt;p&gt;The default setting is true. Set to false to disable Cross Application Tracing.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Instrumentation added for the AmazonS3Client version 1.x&lt;/p&gt;
&lt;p&gt;The New Relic Agent now offers support for version 1.0 to current of the com.amazonaws.services.s3.AmazonS3 interface.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;New Relic Java Agent support a daily roll over log&lt;/p&gt;
&lt;p&gt;To roll over the agent log every day, set the property log_daily to true. Set the property log_file_count to the number of day logs you would like to keep.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;New Relic Java Agent now communicates with New Relic via HTTPS by default rather than HTTP&lt;/p&gt;
&lt;p&gt;If you have an existing installation and wish to use HTTPS to communicate with New Relic, edit your newrelic.yml file to include&lt;/p&gt;
&lt;p&gt;ssl: true&lt;/p&gt;
&lt;p&gt;in the common section. We recommend this for existing customers in order to improve the security of your communications with New Relic.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Java Agent installer improvements&lt;/p&gt;
&lt;p&gt;The Java Agent installer now supports JBoss 7.x AS and JBoss 6.x EAP in standalone mode. Instructions for manually installing the Java Agent on JBoss 7.x AS and JBoss 6.x EAP can be found at &lt;a href=&quot;https://newrelic.com/docs/java/installing-the-java-agent-on-jboss&quot;&gt;https://newrelic.com/docs/java/installing-the-java-agent-on-jboss&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Default hostname reported&lt;/p&gt;
&lt;p&gt;This release reverts the change in 2.14.0 that effected the way that the hostname is reported. With this release, the agent reports the default hostname rather than short form in order to correlate with New Relic server monitoring.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Web transactions naming in Spring MVC version 3.x&lt;/p&gt;
&lt;p&gt;This bug caused customers using Spring 3.0.1 and above to often have web transactions named by the servlet rather than controller method. This has been fixed such that a separate metric is created for each controller method.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 28 Feb 2013 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.15.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjE1LjE=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-2151</link><pubDate>Wed, 13 Mar 2013 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fix: Cross Application Tracing does not correlate consistently when using Tomcat 6+&lt;/p&gt;
&lt;p&gt;Cross Appplication Tracing did not correlate calling and called applications when the called application ran in Tomcat 6 or later and the HTTP response was greater than about 7k.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 13 Mar 2013 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.16.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjE2LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-2160</link><pubDate>Mon, 25 Mar 2013 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Adds a stack trace in the transaction trace for slow methods.&lt;/p&gt;
&lt;p&gt;This change provides additional insight into your slowest transactions.You can adjust how slow a method is before it generates the stack trace by setting stack_trace_treshold (in seconds).&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;transaction_tracer:
  stack_trace_threshold: 1.0
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Cross Application Tracing support for HttpURLConnection.&lt;/p&gt;
&lt;p&gt;Adds request and response headers to external calls using the HttpURLConnection library to provided better performance data when calling applications monitored by other New Relic Agents (Java, .NET, and Ruby, with others coming soon).&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Cross Application Tracing does not correlate consistently when using WebSphere, WebLogic, Resin, and Glassfish.&lt;/p&gt;
&lt;p&gt;Cross Appplication Tracing did not correlate calling and called applications when the HTTP response was large.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Queuing time more broadly supported.&lt;/p&gt;
&lt;p&gt;The &apos;X-Queue-Start&apos; and &apos;X-Request-Start&apos; request headers for Heroku and other frontend web servers are interpreted and reported. Previously, queuing time was not reported for Heroku.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Work-around for Oracle JVM bug that in rare cases causes a native memory leak&lt;/p&gt;
&lt;p&gt;In rare cases, the Oracle JVM can leak native OS memory (not heap space) when classes are intercepted by the agent. This setting turns off interception of classes that are loaded after the given number of seconds. The agent will continue to monitor classes loaded before this time.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;class_transformer:
  shutdown_delay: 3600
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 25 Mar 2013 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.17.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjE3LjE=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-2171</link><pubDate>Fri, 12 Apr 2013 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fix: Reverted transaction naming change on ColdFusion, introduced in 2.17.0.&lt;/p&gt;
&lt;p&gt;That change caused issues with certain modes of ColdFusion.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Fri, 12 Apr 2013 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.17.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjE3LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-2170</link><pubDate>Thu, 11 Apr 2013 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Agent reports JDBC ResultSet query time&lt;/p&gt;
&lt;p&gt;This change gives you deeper insight into your database time by displaying ResultSet processing time in aggregate metrics and transaction traces.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Avoid retransform exception on IBM JREs&lt;/p&gt;
&lt;p&gt;In some IBM JRE versions, the agent logged an INFO level exception and did not instrument select classes. This fix allows these classes to be instrumented properly.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Adds a stack trace in a transaction trace for all methods taking longer than stack trace threshold. This differs from 2.16 which only provided stack traces for a limited number of methods.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Better transaction naming on ColdFusion&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 11 Apr 2013 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.17.2]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjE3LjI=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-2172</link><pubDate>Wed, 17 Apr 2013 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fix: Fixed bug in which application code can throw NoSuchMethodError&lt;/p&gt;
&lt;p&gt;In some cases using Java agent 2.17.0 and 2.17.1, application code was throwing an exception&lt;/p&gt;
&lt;p&gt;&lt;code&gt;java.lang.NoSuchMethodError: java.lang.Boolean.valueOf(B)Ljava/lang/Byte;&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;This usually occurred when calling a ResultSet implementation.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 17 Apr 2013 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.18.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjE4LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-2180</link><pubDate>Tue, 07 May 2013 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;New metrics are displayed under the JVM tab&lt;/p&gt;
&lt;p&gt;While the metrics displayed differ between application servers, common metrics include loaded class count, active thread count, active thread count per thread pool, active session count per application, and active transaction count. In order to see these metrics, JMX must be enabled on your app server.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: When naming transactions, the property &lt;code&gt;enable_auto_transaction_naming&lt;/code&gt; should be honored&lt;/p&gt;
&lt;p&gt;There was an issue where transactions using the Spring Framework were ignoring the property.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Strip query string from HTTP Referer&lt;/p&gt;
&lt;p&gt;Query strings can potentially contain sensitive information. To prevent that data from being sent to New Relic, only the host and path portion of the referer are captured.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 07 May 2013 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.19.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjE5LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-2190</link><pubDate>Wed, 29 May 2013 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Play 2 Instrumentation&lt;/p&gt;
&lt;p&gt;Provides insight into Play 2.x Java and Scala applications. Adds instrumentation to Netty server, Akka actor calls, Scala Promises and Futures, and the WS API calls.&lt;/p&gt;
&lt;p&gt;Known issue: Request parameters are not captured properly even if &lt;code&gt;capture_params&lt;/code&gt; is enabled.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Support added for Jetty 9 (tested on 9.0.0 through Jetty 9.0.3).&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Agent can cause java.lang.VerifyError on code compiled with Java 7&lt;/p&gt;
&lt;p&gt;In certain cases, if your application code or third party libraries are compiled with Java 7, you may get a java.lang.VerifyError. This fix allows the agent to work correctly in those cases.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: The Java Agent detects status codes for Apache Felix correctly by default. The property take_last_status is now deprecated.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 29 May 2013 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.2.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjIuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-220</link><pubDate>Tue, 06 Dec 2011 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Performance improvements&lt;/li&gt;
&lt;li&gt;Support server-side configuration&lt;/li&gt;
&lt;li&gt;Bug fix: byte-code instrumentation causes class loading deadlock and OS memory explosion&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 06 Dec 2011 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.19.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjE5LjE=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-2191</link><pubDate>Fri, 14 Jun 2013 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fix for 2.19.0 known issue: Play now captures GET and POST parameters correctly if &lt;code&gt;capture_params&lt;/code&gt; is enabled.&lt;/li&gt;
&lt;li&gt;Disabled overly ambitious instrumentation used to time template rendering for Play 2. Resulted in unintended classes being instrumented.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Fri, 14 Jun 2013 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.20.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjIwLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-2200</link><pubDate>Mon, 01 Jul 2013 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Glassfish 2.1 JVM tab: The JVM tab will now show thread, session, and transaction metrics for Glassfish 2.1.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Solr cache metrics: The solr cache metrics do not appear with versions 2.18 and 2.19 of the agent. This has been fixed, and all solr metrics should now appear.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: NullPointerException in New Relic agent logs when NewRelic API called: In certain circumstances, a call to a method on the &lt;code&gt;NewRelic&lt;/code&gt; class can generate a &lt;code&gt;NullPointerException&lt;/code&gt; in the agent logs. It does not cause a &lt;code&gt;NullPointerException&lt;/code&gt; in your application.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Support custom extension XML file for WebSphere with JRE: Prior to this fix, an attempt to use a custom extension XML file with a IBM JRE would lead to a &lt;code&gt;ClassNotFoundException&lt;/code&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 01 Jul 2013 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.21.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjIxLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-2210</link><pubDate>Wed, 07 Aug 2013 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;X-Ray sessions&lt;/p&gt;
&lt;p&gt;Adds support for X-Ray sessions. An X-Ray session collects Transaction Traces and a thread profile for a Key Transaction.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: In 2.20.0 an @Trace annotation ignored the transaction for Apdex&lt;/p&gt;
&lt;p&gt;An @Trace annotation on a method called in a web transaction had the side-effect of ignoring the transaction for calculating the Apdex score.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: HTTP status code for Errors&lt;/p&gt;
&lt;p&gt;If the HTTP status code for a web transaction was less than 400, the HTTP status code reported in the error was 500. The actual status code for the web request is now reported.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Spring exception handling&lt;/p&gt;
&lt;p&gt;The Exception argument in the Spring DispatcherServlet processHandlerException method was reported as an Error with an HTTP status code of 500. The actual status code in the HTTP response is now reported.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Reading Post Parameters for Resin 3&lt;/p&gt;
&lt;p&gt;Prior to this fix, post parameters in Resin 3 were always read using the default properties even if the application tried to read the post parameters using non-default properties or by just grabbing the request input stream.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: JVM Tab Metrics Not Showing up for Tomcat Applications&lt;/p&gt;
&lt;p&gt;Prior to this fix, if the service name in service.xml was not Catalina, then metrics would not appear under the JVM tab. Additionally, if you are using an embedded Tomcat 5/6, metrics should now appear under the JVM tab.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Improved compatibility with Java 1.5&lt;/p&gt;
&lt;p&gt;In the custom xml validator, there were references to String.isEmpty() which was not available until Java 1.6. Those have been removed.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Reducing DNS problems by not automatically adding &apos;.&apos; to the domain name&lt;/p&gt;
&lt;p&gt;By default the &apos;.&apos; is included. But if changed, then the &apos;.&apos; won&apos;t be added.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: JVM tab metrics showing for all Applications In JVM&lt;/p&gt;
&lt;p&gt;Metrics under the Thread, Session, and Transaction tabs used to only appear under the main application. The data will now be shown for all applications running in the specific JVM.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Using a Proxy now works with SSL Enabled&lt;/p&gt;
&lt;p&gt;In prior releases proxy authentication would fail when SSL was enabled. We now do proxy authentication using the java.net.Authenticator.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Akka error reporting&lt;/p&gt;
&lt;p&gt;If an actor throws an exception or the message times out, an error is reported. Previously, no error was reported.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 07 Aug 2013 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.2.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjIuMQ==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-221</link><pubDate>Thu, 29 Dec 2011 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Bug fix: ClassFormatError and NoClassDefFoundError instrumenting proxy classes&lt;/li&gt;
&lt;li&gt;Bug fix: transaction trace threshold not working (introduced in 2.2.0)&lt;/li&gt;
&lt;li&gt;Bug fix: infinite loop instrumenting parameterized SQL statements&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 29 Dec 2011 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.21.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjIxLjE=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-2211</link><pubDate>Fri, 09 Aug 2013 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fix: In 2.21.0, calls to NewRelic class can cause NoClassDefFoundError&lt;/p&gt;
&lt;p&gt;In 2.21.0, if your application calls the NewRelic class and does not include the newrelic-api.jar, the application would throw a NoClassDefFoundError. With this fix, the separate newrelic-api.jar is not required. However, it is recommended that your application include the newrelic-api.jar so that calls to the NewRelic API resolve with or without the agent installed.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Fri, 09 Aug 2013 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.21.2]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjIxLjI=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-2212</link><pubDate>Sat, 10 Aug 2013 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fix: Longer application startup time&lt;/p&gt;
&lt;p&gt;Release 2.21.0 introduced an issue that could cause application startup to be slower than in previously releases. This fix returns application startup time to normal.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: File location changes&lt;/p&gt;
&lt;p&gt;Release 2.21.0 introduced a change to file locations within the newrelic zip file. This fix reverts the locations to what they were previously.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Sat, 10 Aug 2013 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.21.3]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjIxLjM=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-2213</link><pubDate>Tue, 13 Aug 2013 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fix: Agent did not run with J2SE 5.0 (aka JDK 1.5)&lt;/p&gt;
&lt;p&gt;Release 2.21.0 - 2.21.2 did not run correctly on J2SE 5.0. On startup, the agent reports:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;Unable to start New Relic agent: java.lang.UnsupportedClassVersionError: Bad version number in .class file
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;If you are running J2SE 5.0, please update to agent version 2.21.3.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 13 Aug 2013 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.21.4]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjIxLjQ=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-2214</link><pubDate>Tue, 10 Sep 2013 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fix: Metric Grouping Issue with Netty&lt;/p&gt;
&lt;p&gt;The request URL was referenced in some metric names, causing Metric Explosion. The URL is no longer included in the metric name.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Make Cookie parsing more robust when running on Netty&lt;/p&gt;
&lt;p&gt;Cases where the Cookie header was malformed were causing exceptions to be thrown. Agent now makes a better effort to capture the individual valid parts.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Agent could not connect to New Relic in non-DNS environments&lt;/p&gt;
&lt;p&gt;Fixed an issue which caused the agent to only be able to connect to New Relic in environments where DNS was used for hostname resolution.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: In 2.21.2 and 2.21.3 an @Trace annotation ignored the transaction for Apdex&lt;/p&gt;
&lt;p&gt;An @Trace annotation on a method called in a web transaction had the side-effect of ignoring the transaction for calculating the Apdex score.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 10 Sep 2013 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.21.6]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjIxLjY=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-2216</link><pubDate>Thu, 24 Apr 2014 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End of life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Note&lt;/strong&gt;: This is a bugfix release for the legacy Java SE5 version of the agent. Unless you are a Java SE5 user, use the latest version of the agent.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;The 3.x agent works with Java SE 6 and 7. If you are using Java SE 5, this is the release for you.&lt;/em&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fix: XML entity expansion with non-SSL connection to New Relic&lt;/p&gt;
&lt;p&gt;Fixed an XML entity expansion vulnerability that only occurs when the agent is configured with ssl: false; the default is true. The agent already has other protection against unauthorized entity expansion. This fix is an additional layer of protection.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 24 Apr 2014 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.21.5]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjIxLjU=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-2215</link><pubDate>Wed, 05 Mar 2014 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;p&gt;&lt;em&gt;The 3.x agent works with Java SE 6 and 7. If you are using Java SE 5, this is the release for you.&lt;/em&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;PostgreSQL explain plan bug&lt;/p&gt;
&lt;p&gt;There was a PostgreSQL bug that allowed parameters to be sent in explain plans under some circumstances. To avoid this issue, the New Relic agent now does not report explain plans for PostgreSQL.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Agent no longer supports obfuscation of individual fields&lt;/p&gt;
&lt;p&gt;Previous versions of the agent allowed an obfuscated&lt;em&gt;sql_fields option to select specific field names to obfuscate when record_sql: raw. We have discovered rare cases in which this feature would not mask SQL parameters correctly, so we have removed the configuration option. Now, if obfuscated_sql_fields is set, the setting of record_sql: raw is ignored and _all&lt;/em&gt; fields are masked.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: SQL parameter obfuscation didn&apos;t work if the parameter value contained a newline&lt;/p&gt;
&lt;p&gt;The record_sql: obfuscated config setting did not properly mask parameters when it included a newline character. This bug has been fixed.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Private trust store location for use_private_ssl flag&lt;/p&gt;
&lt;p&gt;The 2.21.4 agent did not properly load a private trust store used with the use_private_ssl flag. This bug has been fixed.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 05 Mar 2014 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.21.7]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjIxLjc=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-2217</link><pubDate>Thu, 08 Jan 2015 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;div&gt;&lt;p&gt;This is a bugfix release for the legacy Java SE5 version of the agent. Unless you are a Java SE5 user, use the latest version of the New Relic Java agent.&lt;/p&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Fixed an issue that in rare cases could cause the agent to cease reporting data until JVM restart.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Known issues&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;X-ray sessions sometimes return no transaction traces. Many x-ray session runs can cause a memory leak.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Play framework&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Higher overhead with Play 2 than later releases.&lt;/li&gt;
&lt;li&gt;Does not work properly with Play 2.2&lt;/li&gt;
&lt;li&gt;Counts &lt;code&gt;akka.actor.ActorKilledException&lt;/code&gt; as an error.&lt;/li&gt;
&lt;li&gt;Play transaction does not complete until timeout expires&lt;/li&gt;
&lt;li&gt;When using Play, &lt;code&gt;ignoreTransaction&lt;/code&gt; call does not take effect&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;In some cases running Weblogic, the Java agent fails certificate validation when connecting to New Relic. This may require a &lt;a href=&quot;#workaround&quot;&gt;workaround&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;This release contains some inconsistencies in the instrumentation of Hibernate across versions.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;This release requires a &lt;a href=&quot;#workaround&quot;&gt;workaround&lt;/a&gt; to use SSL with WebSphere.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Potential memory leak when app continually creates ClassLoaders.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Rare memory leak if agent does not report to New Relic for an extended period.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;When running IBM JVM without WebSphere, you must set the &lt;code&gt;sync_startup&lt;/code&gt; flag set to true in the common section of &lt;code&gt;newrelic.yml: sync_startup: true&lt;/code&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Workaround&lt;/h3&gt;
&lt;p&gt;If you require a workaround for one of these issues, please open a ticket at &lt;a href=&quot;https://support.newrelic.com&quot;&gt;support.newrelic.com&lt;/a&gt;.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 08 Jan 2015 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.3.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjMuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-230</link><pubDate>Wed, 01 Feb 2012 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Play! framework support&lt;/li&gt;
&lt;li&gt;Create web transactions using custom instrumentation&lt;/li&gt;
&lt;li&gt;Use log4j instead of Java API logging&lt;/li&gt;
&lt;li&gt;Bug fix: RUM auto instrumentation fixes&lt;/li&gt;
&lt;li&gt;Bug fix: multiple app names in app_name setting out of order (introduced in 2.2.0)&lt;/li&gt;
&lt;li&gt;Bug fix: possible java.lang.IllegalArgumentException with parameterized SQL (introduced in 2.2.0)&lt;/li&gt;
&lt;li&gt;Bug fix: WebSphere instrumentation broken (introduced in 2.2.0)&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 01 Feb 2012 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.3.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjMuMQ==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-231</link><pubDate>Mon, 13 Feb 2012 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Bug fix: Agent logging breaks webapp log4j configuration (introduced in 2.3.0)&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 13 Feb 2012 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.4.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjQuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-240</link><pubDate>Tue, 27 Mar 2012 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Bug fix: ClassNotFoundException with JBoss AS 7 (introduced in 2.2.0)&lt;/li&gt;
&lt;li&gt;Bug fix: NoClassDefFoundError with Glassfish 3.1.2 (introduced in 2.2.0)&lt;/li&gt;
&lt;li&gt;Bug fix: ClassCastException with Glassfish 3.1.1 (introduced in 2.2.0)&lt;/li&gt;
&lt;li&gt;Bug fix: Agent stops reporting web transactions (introduced in 2.2.0)&lt;/li&gt;
&lt;li&gt;Bug fix: Instrumentation error in Jetty 7.5.4 (introduced in 2.2.0)&lt;/li&gt;
&lt;li&gt;Bug fix: possible unknown host for external call with HttpClient 3.0.1 (introduced in 2.3.0)&lt;/li&gt;
&lt;li&gt;Bug fix: stall error reporting broken&lt;/li&gt;
&lt;li&gt;Bug fix: agent_enabled setting not working&lt;/li&gt;
&lt;li&gt;Add stall_threshold setting for reporting stall errors&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 27 Mar 2012 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.4.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjQuMQ==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-241</link><pubDate>Mon, 02 Apr 2012 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Bug fix: AssertionError in WebLogic (introduced in 2.2.0)&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 02 Apr 2012 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.4.2]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjQuMg==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-242</link><pubDate>Wed, 18 Apr 2012 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Bug fix: ClassLoader.loadClass deadlock (introduced in 2.4.0)&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 18 Apr 2012 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.5.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjUuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-250</link><pubDate>Tue, 01 May 2012 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Browser traces&lt;/li&gt;
&lt;li&gt;Bug fix: OC4J does not start (introduced in 2.2.0)&lt;/li&gt;
&lt;li&gt;Bug fix: AbstractMethodError calling getRemoteUser in Tomcat and Glassfish&lt;/li&gt;
&lt;li&gt;Bug fix: Deployment does not use SSL port if SSL is configured (introduced in 2.2.0)&lt;/li&gt;
&lt;li&gt;Bug fix: NullPointerException getting request URI in Jetty 4.x and 5.x&lt;/li&gt;
&lt;li&gt;Bug fix: JSP compiler error with auto RUM in Tomcat 5&lt;/li&gt;
&lt;li&gt;Bug fix: Transaction parameters removed if error is reported but response status &amp;#x3C; 400&lt;/li&gt;
&lt;li&gt;Bug fix: No request parameters in Resin 3.x&lt;/li&gt;
&lt;li&gt;Bug fix: AbstractMethodError calling getContextPath() with Tomcat 5.x (introduced in 2.2.0)&lt;/li&gt;
&lt;li&gt;Bug fix: Ignore transaction before transaction started stops transaction reporting&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 01 May 2012 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.6.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjYuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-260</link><pubDate>Wed, 06 Jun 2012 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Java 7: Native support for instrumenting classes compiled to Java 7 bytecode&lt;/li&gt;
&lt;li&gt;Audit Mode: mode which logs all data sent to New Relic in the newrelic_agent.log&lt;/li&gt;
&lt;li&gt;Bug fix: Prevent agent instrumentation from changing the Serial Version UID (introduced in 2.2.0)&lt;/li&gt;
&lt;li&gt;Bug fix: Prevent memory leak when client applications start and subsequently stop a thread before completing a transaction (introduced in 2.2.0)&lt;/li&gt;
&lt;li&gt;Bug fix: Prevent stack overflow exception when executing queries using the Postgres 9.0.x JDBC driver&lt;/li&gt;
&lt;li&gt;Bug fix: Fix dispatch handler instrumentation for Jetty 7.5.* (introduced in 2.5.0)&lt;/li&gt;
&lt;li&gt;Bug fix: Set the application port correctly under Jetty 4.*&lt;/li&gt;
&lt;li&gt;Bug fix: Make the transacation_tracer configuration settings respect command line and environment overrides&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 06 Jun 2012 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.7.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjcuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-270</link><pubDate>Tue, 31 Jul 2012 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Add skipTransactionTrace element to @Trace annotation to tell Agent to drop method from transaction trace&lt;/li&gt;
&lt;li&gt;Add -Dnewrelic.bootstrap_classpath=true system property to append newrelic.jar to bootstrap classpath&lt;/li&gt;
&lt;li&gt;Support RUM reporting to multiple applications (RUM3)&lt;/li&gt;
&lt;li&gt;Bug fix: Asynchronous processing time not reported correctly in Play 1.2.4&lt;/li&gt;
&lt;li&gt;Bug fix: CXF transaction names not set to URI path if protocol is https&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 31 Jul 2012 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.9.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjkuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-290</link><pubDate>Tue, 09 Oct 2012 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Support for Key Transactions. Key Transactions let you closely monitor these important key business transactions and receive alerts when they are performing poorly. For more information see &lt;a href=&quot;https://newrelic.com/docs/site/key-transactions&quot;&gt;the full documentation&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;More metrics available in Custom Dashboards&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 09 Oct 2012 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v2.8.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0yLjguMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-280</link><pubDate>Tue, 11 Sep 2012 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Supports basic proxy authentication for the case where there is a proxy server between the agent and the internet. The configuration uses proxy_user and proxy_password settings.&lt;/li&gt;
&lt;li&gt;To avoid reporting the same transaction trace repeatedly, the agent reports a number of the slowest transactions.&lt;/li&gt;
&lt;li&gt;Bug fix: Transaction trace reported to wrong app if enable_auto_app_naming and browser requested a transaction trace&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 11 Sep 2012 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.0.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjAuMQ==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-301</link><pubDate>Thu, 03 Oct 2013 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fix: Issue at startup with JBoss and Glassfish&lt;/p&gt;
&lt;p&gt;An issue in the 3.0.0 version caused startup of some versions of JBoss and Glassfish to fail. This version fixes that issue.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: RUM not auto-instrumented for JSPs&lt;/p&gt;
&lt;p&gt;The Java Agent should auto-instrument RUM header and footer in JSPs when using the Jasper engine. This did not work in 3.0.0. This version fixes that issue.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 03 Oct 2013 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.0.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjAuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-300</link><pubDate>Tue, 01 Oct 2013 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Spring AOP instrumentation&lt;/p&gt;
&lt;p&gt;This version instruments any call that passes through an AOP pointcut that you have declared in your Spring application. This gives your additional insight into the call time of key Spring beans.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Performance Improvements&lt;/p&gt;
&lt;p&gt;This version contains optimizations that reduce agent overhead.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fixes: Hibernate improvements&lt;/p&gt;
&lt;p&gt;In this version, we provide more consistent detail into Hibernate calls across supported version of Hibernate (3.3 - 4.2).&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Removed need for WebSphere SSL work-around&lt;/p&gt;
&lt;p&gt;Previous versions sometimes required a work-around when using WebSphere. This version removes the need for a work-around.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;NOTE: Requires Java SE 6 or 7&lt;/p&gt;
&lt;p&gt;Java Agent 3.0 requires Java SE 6 or 7. At signup or on the &lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;release notes page&lt;/a&gt;, you have the option to download a version of the agent that works with Java SE 5.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 01 Oct 2013 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.1.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjEuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-310</link><pubDate>Mon, 21 Oct 2013 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Percentiles and Histograms&lt;/p&gt;
&lt;p&gt;The Java Agent now captures data that provides percentile and histogram views in the New Relic UI.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;JAX-RS annotation instrumentation&lt;/p&gt;
&lt;p&gt;The Java Agent now instruments and names web transactions based on javax.ws.rs annotations.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;JAX-WS instrumentation&lt;/p&gt;
&lt;p&gt;The Java Agent now instruments methods on classes that are marked with the javax.jws.WebService annotation.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: In some cases, agent had excessive overhead on Spring AOP apps&lt;/p&gt;
&lt;p&gt;The agent should now perform well for any Spring AOP application.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Play Framework instrumentation was ignoring the ignoreTransaction call&lt;/p&gt;
&lt;p&gt;The Play Framework 2.x instrumentation now honors the New Relic API ignoreTransaction call.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Potential memory leak when app continually creates ClassLoaders&lt;/p&gt;
&lt;p&gt;The Java Agent now handles applications where ClassLoaders are continuously created.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Agent zip distribution did not include the API source jar&lt;/p&gt;
&lt;p&gt;The newrelic-api-sources.jar is now included in the zip file.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 21 Oct 2013 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.10.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjEwLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3100</link><pubDate>Tue, 26 Aug 2014 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Full support for Java SE 8&lt;/p&gt;
&lt;p&gt;The New Relic Java agent now supports Java SE 8! Applications can now run on a Java 8 JVM, including those compiled to target Java 8 (i.e. -target 1.8). The system property newrelic.enable.java.8 is no longer necessary.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;@RequestMapping&lt;/code&gt; annotation used to name web transactions&lt;/p&gt;
&lt;p&gt;Where available, Spring Web Transactions are now named using the URI path pattern defined in the &lt;code&gt;@RequestMapping&lt;/code&gt; annotation. This generally provides even more meaningful transaction names than controller methods. To disable this and revert back to naming using controllers, add this config to your newrelic.yml:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;instrumentation:
    spring_annotations:
       enabled: false
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;WebSphere JMX metrics reported when global security is enabled&lt;/p&gt;
&lt;p&gt;Prior to this version, JMX metrics could not be pulled by the agent with WebSphere when global security was enabled. This means custom JMX metrics in a yaml file and default JMX metrics displayed on the JVM Threads and Http Sessions tabs were not reported.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Servlet UserPrincipal name can be reported as an attribute&lt;/p&gt;
&lt;p&gt;With this release, you can enable the capturing of the UserPrincipal name so that it is available in New Relic and as a transaction trace attribute. To enable:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;class_transformer:
    com.newrelic.instrumentation.servlet-user:
      enabled: true
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Non-Web Transactions can now be made Key Transactions with a custom apdex T&lt;/p&gt;
&lt;p&gt;This feature will be available in the RPM UI very soon. It requires this or a higher version of the agent.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fix: Web transactions not always reported.&lt;/p&gt;
&lt;p&gt;In some unusual cases the Agent stopped reporting web transactions. The agent would log an error that included the phrase &quot;Inconsistent state&quot;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: WebSphere 7 reports active thread count on the JVM tab&lt;/p&gt;
&lt;p&gt;The thread pool active count being displayed in the UI was actually the pool size.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Excess error reporting in Play apps&lt;/p&gt;
&lt;p&gt;In Scala/Play apps, the agent was incorrectly logging errors when promises were resolved with a Failure.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Request headers are not read when cross application tracing is disabled&lt;/p&gt;
&lt;p&gt;Disabling cross application tracing using these config settings did not stop the Agent from reading request headers.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;cross_application_tracer:
enabled: false
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: NewRelic API methods prematurely deprecated&lt;/p&gt;
&lt;p&gt;In 3.9.0, some API calls in com.newrelic.api.agent.NewRelic were prematurely deprecated. We are in the process of providing a more complete API for the New Relic agent. In an upcoming release, these methods may become deprecated, but with a stable and superior API alternative.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 26 Aug 2014 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.1.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjEuMQ==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-311</link><pubDate>Tue, 05 Nov 2013 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fix: In some cases, metrics were not reported in Play 2 apps&lt;/p&gt;
&lt;p&gt;The Java Agent now reports all metric data consistently.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: The Java Agent was unable to instrument classes in WSO2 API Manager&lt;/p&gt;
&lt;p&gt;The Java Agent now reports data for WSO2 applications.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 05 Nov 2013 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.11.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjExLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3110</link><pubDate>Tue, 30 Sep 2014 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Spring Web Services
&lt;ul&gt;
&lt;li&gt;The Java Agent now supports Spring Web Services. Transactions are named based on the SOAP method name. The agent also reports the SOAP version, content type, and SOAP Action.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Support for Auto-RUM and precompiled JSPs
&lt;ul&gt;
&lt;li&gt;The Java agent now provides auto rum support when precompiling JSPs. To use auto rum when precompiling JSP files, add the agent as a java agent to your pre-compilation process.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fix: Under some circumstances the agent would report a LinkageError&lt;/li&gt;
&lt;li&gt;Fix: Grails 2 transaction names had extra slash&lt;/li&gt;
&lt;li&gt;Fix for auto-RUM
&lt;ul&gt;
&lt;li&gt;In some cases when a script tag is before a head tag in a JSP file, the auto RUM instrumentation was failing to place the initial New Relic header script in the page.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Fix: Reduce overhead of Akka instrumentation when not used in conjunction with Play/Netty&lt;/li&gt;
&lt;li&gt;Fix: RabbitMQ instrumentation reported unnecessary transactions
&lt;ul&gt;
&lt;li&gt;basicPublish, basicGet, and nextDelivery no longer start short-lived  transactions.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 30 Sep 2014 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.12.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjEyLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3120</link><pubDate>Thu, 06 Nov 2014 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Various bug fixes&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 06 Nov 2014 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.12.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjEyLjE=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3121</link><pubDate>Mon, 22 Dec 2014 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Play 2 async activity is no longer tracked when transaction is ignored.&lt;/li&gt;
&lt;li&gt;Reduced GC overhead when monitoring Play 2 applications.&lt;/li&gt;
&lt;li&gt;Reduced memory usage when inspecting slowest SQL statements.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Config Changes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;stack_based_naming now false by default.&lt;/p&gt;
&lt;p&gt;The stack_based_naming in the transaction_tracer section is now false by default. Stack-based naming caused significant overhead in many Scala applications, so it now must be set to true explicitly. Set to true for better naming of trace detail segments in Scala Play applications.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;transaction_tracer:
    stack_based_naming: true
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Memory leak when applications using servlets are continuously reloaded inside the JVM.&lt;/li&gt;
&lt;li&gt;Memory leak with long running transactions performing a high number of external calls.&lt;/li&gt;
&lt;li&gt;In some cases for JBoss application servers, two JVMs were being displayed in the UI when there was actually only one.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 22 Dec 2014 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.13.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjEzLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3130</link><pubDate>Tue, 20 Jan 2015 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Custom Insights events API&lt;/p&gt;
&lt;p&gt;In addition to attaching custom attributes to the events that the Java agent generates automatically for each transaction, you can now record custom event types into Insights with the new NewRelic.getAgent().getInsights().recordCustomEvent API.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The agent now captures and reports thread profiles in XRay Sessions for non-web transactions.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Incorrect JMS transaction names for users of Oracle ATG Web Commerce&lt;/li&gt;
&lt;li&gt;In rare cases, application code would encounter a NoClassDefFoundError for one or more classes contained in the newrelic.jar.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 20 Jan 2015 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.14.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjE0LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3140</link><pubDate>Wed, 25 Feb 2015 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Synthetic transaction tracing&lt;/p&gt;
&lt;p&gt;Synthetic monitors lets you monitor your site from around the world. When you use synthetic monitoring to monitor your Java application, up to 20 detailed transaction traces will now be captured every minute when the application is probed from synthetics. To learn more about this feature, visit our &lt;a href=&quot;https://docs.newrelic.com/docs/synthetics/new-relic-synthetics/using-monitors/collecting-synthetic-transaction-traces&quot;&gt;documentation&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;EJB Session Beans&lt;/p&gt;
&lt;p&gt;The Java agent now monitors Enterprise Java Beans (EJB) 3.0 session beans. The agent instruments @Stateless and @Stateful EJBs, and those that extend java.ejb.SessionBean. The agent traces methods declared by corresponding interfaces annotated with @Remote and @Local.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Unified view for SQL database and NoSQL datastore products.&lt;/p&gt;
&lt;p&gt;The response time charts in the application overview page will now include NoSQL datastores, such as Cassandra and MongoDB,and also the product name of existing SQL databases such as MySQL, Postgres, Oracle, etc. For existing SQL databases, in addition to the existing breakdown of SQL statements and operations, the queries are now also associated with the database product being used. For NoSQL datastores, such as Cassandra and MongoDB, we have now added information about operations performed against those products, similar to what is being done for SQL databases.&lt;/p&gt;
&lt;p&gt;This new unified Databases page will enable the filtering of metrics and operations by product, and includes a table listing all operations.&lt;/p&gt;
&lt;p&gt;Because this introduces a notable change to how SQL database metrics are collected, it is important that you upgrade the agent version on all hosts.If you are unable to transition to the latest agent version on all hosts at the same time, you can still access old and new metric data for SQL databases, but the information will be split across two separate views.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Datastax Cassandra client&lt;/p&gt;
&lt;p&gt;Added support for the Datastax Cassandra client versions 2.1.2 or higher. This will include breakdowns in the overview chart, entries in the Databases tab, and segments in transaction traces. Note: uses of the client&apos;s async API will not be captured in transaction traces.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;MongoDB client&lt;/p&gt;
&lt;p&gt;Added support for MongoDB client versions 2.12.0 up to but not including 3.0+. This will include breakdowns in the overview chart, entries in the Databases tab, and segments in transaction traces.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;API Reported Errors&lt;/p&gt;
&lt;p&gt;API reported errors can now be prioritized on a transaction over tracer reported errors. Add the following config to allow prioritizing:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;error_collector:
  ignoreErrorPriority: false
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;The Java Agent may now capture traces for transactions that resulted in an error (4xx or 5xx response code). Prior to this release, the agent would only capture traces for successful responses.&lt;/li&gt;
&lt;li&gt;Updated default newrelic.yml to use transaction_events.max_samples_stored instead of deprecated analytics_events.max_samples_stored property.&lt;/li&gt;
&lt;li&gt;JBoss dispatcher reports correctly for clustered environments where jboss.home and jboss.home.dir are not set.&lt;/li&gt;
&lt;li&gt;Resolved a bug which caused certain Jetty configurations to stop sending metric data.&lt;/li&gt;
&lt;li&gt;Under very light load, the Agent could send incorrect transaction timestamps.&lt;/li&gt;
&lt;li&gt;Fixed parsing error in log_file_count setting. Prior to this release, this setting produced one more log file than expected.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 25 Feb 2015 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.15.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjE1LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3150</link><pubDate>Tue, 31 Mar 2015 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Labels and Rollups&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The New Relic Java agent now supports the ability to apply labels to applications, so that you can easily sort, filter, and page through all of the applications on your account&apos;s Applications list.&lt;/p&gt;
&lt;p&gt;Configuration can be done in the newrelic.yml file:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;labels: Server:One;Data Center:Primary
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;More information on using labels to categorize your applications can be found in the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/new-relic-apm/maintenance/labels-categories-organizing-your-apps-servers&quot;&gt;New Relic APM documentation&lt;/a&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;With this version of the Java Agent, you can update Custom instrumentation XML in the extensions folder and it will be reloaded within a minute.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Prior to this version, some thread profiles would time out and not display. Thread profiles will now complete reliably.&lt;/li&gt;
&lt;li&gt;The Java Agent now works around &lt;a href=&quot;http://www-01.ibm.com/support/docview.wss?uid=swg1IV25688&quot;&gt;IBM JVM bug IV25688&lt;/a&gt;. The agent will scale back a small amount of its instrumentation on old IBM JVMs to avoid inducing the bug. The workaround should leave most customers unaffected. Loss of instrumentation caused by the workaround can be fixed by upgrading the JVM to the latest service release.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 31 Mar 2015 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.16.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjE2LjE=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3161</link><pubDate>Thu, 14 May 2015 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Redis&lt;/p&gt;
&lt;p&gt;Added support for the Jedis client versions 1.4.0 or higher. You can now see your Redis calls in breakdowns in the overview chart, entries in the Databases tab, and segments in transaction traces.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;RabbitMQ&lt;/p&gt;
&lt;p&gt;Updated RabbitMQ instrumentation to support RabbitMQ 3.5 and higher.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Cross Application Tracing API&lt;/p&gt;
&lt;p&gt;Use the cross application tracing API when the agent does not provide cross application tracing support for your application. &lt;a href=&quot;http://newrelic.github.io/java-agent-api/javadoc/com/newrelic/api/agent/Transaction.html&quot;&gt;See the documentation&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Play 2 Framework&lt;/p&gt;
&lt;p&gt;Improved instrumentation for Play controller classes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Circuit Breaker&lt;/p&gt;
&lt;p&gt;Starting in this release, the New Relic Java agent detects when memory is nearly exhausted and trips a “circuit breaker” that limits the agent’s memory usage. The agent won’t report transactions while the circuit breaker is tripped, so throughput will be understated. In the rare case that the circuit breaker trips, the New Relic UI will provide more information. For more details, &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/custom-instrumentation/java-agent-custom-instrumentation-circuit-breaker&quot;&gt;see the documentation&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Added configuration to disable Deadlock Detection&lt;/p&gt;
&lt;p&gt;Under very heavy load conditions with many threads, the Deadlock Detector service may slow response time. You can now disable this feature with the following setting:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;deadlock_detector:
    enabled: false
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Reduced the memory overhead of the Java agent&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Play 2 Framework&lt;/p&gt;
&lt;p&gt;The Java Agent now honors the &lt;code&gt;segment_limit&lt;/code&gt; setting for async traces, and can now handle much deeper async traces. This is useful to decrease if you&apos;re experiencing slower response time or high memory overhead when executing large async transactions.&lt;/p&gt;
&lt;p&gt;Cross-application requests from other New Relic-instrumented applications will reliably appear in the App and Transaction maps.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The proxy_host name is no longer sent to New Relic.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fixed issue where external transactions were reported twice when using HttpURLConnection. Previously, this caused throughput to appear doubled.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 14 May 2015 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.17.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjE3LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3170</link><pubDate>Thu, 11 Jun 2015 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Websphere Liberty Profile&lt;/p&gt;
&lt;p&gt;The Java agent now &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/frameworks/websphere-liberty-profile-installation-java&quot;&gt;provides instrumentation for WebSphere Liberty Profile&lt;/a&gt;. This includes web transaction visibility, Cross Application Tracing, and app server stats.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Performance improvements&lt;/p&gt;
&lt;p&gt;The Java agent now starts more quickly so applications are available sooner. This release also reduces agent overhead at run time.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Customize hostname displayed in APM&lt;/p&gt;
&lt;p&gt;A new configuration setting has been added: &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/configuration/java-agent-configuration-config-file#display_name&quot;&gt;process_host.display_name&lt;/a&gt;. When set in the &lt;strong&gt;newrelic.yml&lt;/strong&gt; configuration file, the display name &lt;a href=&quot;https://docs.newrelic.com/docs/apm/new-relic-apm/maintenance/add-rename-remove-hosts#display_name&quot;&gt;identifies the host in the APM UI&lt;/a&gt;, along with the hostname that the agent automatically captures.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;process_host:
    display_name: hostname
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In addition, the display name can be set using the &lt;code&gt;NEW_RELIC_PROCESS_HOST_DISPLAY_NAME&lt;/code&gt; environment variable. This property can be viewed in all Insights transaction events.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;WebLogic and WebSphere instance name available&lt;/p&gt;
&lt;p&gt;The instance name for WebLogic and WebSphere application servers is now available in transaction traces, traced errors, and Insights transaction events.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Custom instrumentation of transaction attributes is disabled by default&lt;/p&gt;
&lt;p&gt;Custom attributes defined using the &lt;strong&gt;Instrumentation&lt;/strong&gt; tab in the UI are now disabled by default. In order to enable these attributes, you must have High-security mode disabled and you must place the following text in the &lt;code&gt;common:&lt;/code&gt; block of your &lt;strong&gt;newrelic.yml&lt;/strong&gt;:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;reinstrument:
    attributes_enabled: true
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Very large thread profiles were failing to report to RPM, causing the site to display a time out message. The agent will now truncate the size of the profile before sending.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Cross application tracing date was failing to report when using Jersey 2 endpoints.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Spring AOP instrumentation is now disabled by default. It was exercising a bug in certain versions of Java 8 that caused the JVM to crash. To re-enable, include the following in your &lt;strong&gt;newrelic.yml&lt;/strong&gt;:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;com.newrelic.instrumentation.spring-aop-2:
       enabled: true
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;RabbitMQ metrics could double-report for some versions of RabbitMQ. This was introduced in Java agent version 3.16.1 and is fixed in this version.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;In rare cases the agent would report a LinkageError.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 11 Jun 2015 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.17.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjE3LjE=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3171</link><pubDate>Tue, 30 Jun 2015 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed a bug in 3.17.0, that in rare cases could cause an application thread to die. In this case, the agent log has many messages, “ERROR: Inconsistent state!”&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 30 Jun 2015 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.18.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjE4LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3180</link><pubDate>Wed, 01 Jul 2015 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Jetty&lt;/p&gt;
&lt;p&gt;Updated Jetty instrumentation to support Jetty 9.3.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Thrift&lt;/p&gt;
&lt;p&gt;Added support for Apache Thrift 0.8 and greater. This instrumentation automatically adds timing to Thrift calls and sets transaction names based on Thrift method names. It can be disabled in the newrelic.yml by adding:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;com.newrelic.instrumentation.thrift-0.8:
    enabled: false
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Resin&lt;/p&gt;
&lt;p&gt;The New Relic Resin Instrumentation now reports errors as HttpErrors, allowing them to be ignored.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Heap Alerting&lt;/p&gt;
&lt;p&gt;A new heap utilization metric has been created for alerting purposes. This metric tracks the percentage of heap in use as a number between 0 and 1, where 0 means no heap usage and 1 means a full heap. The new metric is: Memory/Heap/Utilization&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Exception messages for allow list&lt;/p&gt;
&lt;p&gt;Java exception messages will now be obfuscated when high-security mode is enabled. If specific exception messages should be allowed through, they can be added to your allow list with the following configuration property:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;strip_exception_messages:
    whitelist: &apos;java.lang.NullPointerException,java.lang.IllegalStateException&apos;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The allow list is a comma-delimited string of exception class package + class name. This can be enabled or disabled independently of high-security mode with the following property:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;strip_exception_messages:
    enabled: true
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 01 Jul 2015 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.19.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjE5LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3190</link><pubDate>Wed, 29 Jul 2015 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Redis&lt;/p&gt;
&lt;p&gt;The agent’s Redis instrumentation is now more efficient.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;In some cases the HttpClient 3 instrumentation could overstate the external call count.&lt;/li&gt;
&lt;li&gt;In rare cases the agent would report errors that it was configured to ignore.&lt;/li&gt;
&lt;li&gt;Some line numbers did not display correctly in stack traces.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 29 Jul 2015 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.19.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjE5LjE=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3191</link><pubDate>Fri, 07 Aug 2015 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;In some cases JBoss 4.x could fail to start due to a NullPointerException.&lt;/li&gt;
&lt;li&gt;In some cases Dropwizard appservers could fail to start due to a ClassCastException during log initialization.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Fri, 07 Aug 2015 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.19.2]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjE5LjI=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3192</link><pubDate>Thu, 13 Aug 2015 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed an issue that could cause NoClassDefFoundErrors when using JDBC ResultSet instrumentation on JBoss.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 13 Aug 2015 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.2.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjIuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-320</link><pubDate>Tue, 03 Dec 2013 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Glassfish 4 metrics for JVM Memory, Thread Pool, and Transactions&lt;/p&gt;
&lt;p&gt;New Relic now displays JVM memory, thread pool, and transaction metrics for Glassfish 4. To expose these metrics, please set http-service, transaction- service, and web-container monitoring within Glassfish to high. To see the metrics in New Relic, go to Monitoring &gt; JVMs.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Decreased agent overhead for Play 2&lt;/p&gt;
&lt;p&gt;This version of the agent reduces the overhead that it incurs on Play 2. Play 2 users should upgrade for improved performance.&lt;/p&gt;
&lt;p&gt;In addition to general overhead improvements, New Relic has introduced a new setting to reduce overhead even more for particularly low-latency applications. Note that this setting will make the call info in Trace Details more generic.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;transaction_tracer:
  stack_based_naming: false
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Manually disable auto RUM instrumentation for specific pages&lt;/p&gt;
&lt;p&gt;For supported JSP engines, New Relic automatically adds RUM (Real User Monitoring) elements to the response HTML. If you like auto-RUM, but do not want to apply it to all pages, you can now disable it for select pages. The configuration property disabled_auto_pages in the browser_monitoring section can now be used to disable auto RUM instrumentation for a comma delimited list of pages. For example,&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;browser_monitoring:
  disabled_auto_pages: page1.jsp, page2.jsp
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;akka.actor.ActorKilledException is now ignored by default&lt;/p&gt;
&lt;p&gt;The ActorKilledException is commonly thrown in Play applications as a control mechanism in normally functioning applications. In previous versions, this exception inflated the reported error rate. These exceptions are now ingored by default. You can override the default ignore_errors list to provide your own exceptions or to omit the ActorKilledException.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;error_collector:
  ignore_errors: some.other.MyException
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;New Relic reports host capacity information&lt;/p&gt;
&lt;p&gt;New Relic now reports physical CPU cores, logical CPU cores (hyperthreads), and physical memory. On non-Linux platforms, the agent runs a subprocess to retrieve this information. To see the info in New Relic, go to Settings &gt; Environment &gt; Environment Snapshot.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Report JVM name and revision to New Relic as part of JVM description&lt;/p&gt;
&lt;p&gt;Recording the JVM name in addition to the vendor allows differentiation between different JVMs from the same vendor. To see these values in New Relic, go to Settings &gt; Environment &gt; Environment Snapshot and look for the &quot;Java VM&quot; and &quot;Java VM Version&quot; settings.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Support for Play 2.2&lt;/p&gt;
&lt;p&gt;Web transactions were not being correctly captured under some circumstances for Play 2.2 applications. Web transactions are now correctly reported. Also note the change in command line syntax as of Play 2.2: &lt;a href=&quot;https://docs.newrelic.com/docs/java/play-installation-for-java&quot;&gt;https://docs.newrelic.com/docs/java/play-installation-for-java&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Background tasks created by an @Trace annotation with a &apos;metricName&apos; element did not show up in the New Relic UI.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 03 Dec 2013 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.20.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjIwLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3200</link><pubDate>Tue, 01 Sep 2015 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;JCache&lt;/p&gt;
&lt;p&gt;The Java Agent now instruments the JCache API. The instrumentation times cache operations of implementations of the JCache API.&lt;/p&gt;
&lt;p&gt;To get additional information about your operations in the Databases page, enable com.newrelic.instrumentation.jcache-datastore-1.0.0 in your &lt;strong&gt;newrelic.yml&lt;/strong&gt;. This will incur additional overhead.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;class_transformer:
   com.newrelic.instrumentation.jcache-datastore-1.0.0:
     enabled: true
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/custom-instrumentation/circuit-breaker-java-custom-instrumentation&quot;&gt;Circuit Breaker&lt;/a&gt; alerts now better align with data displayed in JVMs tab.&lt;/li&gt;
&lt;li&gt;In some cases the Java Agent&apos;s HttpURLConnection instrumentation could report incorrect external response time metrics&lt;/li&gt;
&lt;li&gt;The Java Agent&apos;s MongoDB instrumentation no longer reports errors due to runtime exceptions that are caught and handled by applications.&lt;/li&gt;
&lt;li&gt;Fixed an issue where Guice dynamic proxies could be instrumented, potentially causing &lt;a href=&quot;https://docs.newrelic.com/docs/apm/other-features/metrics/metric-grouping-issues&quot;&gt;MGI issues&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;In rare cases a deadlock would occur at startup on some WebSphere applications.&lt;/li&gt;
&lt;li&gt;Fixed an issue that could cause missing Cross Application Tracing information on WebLogic 12 when using HttpURLConnection.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 01 Sep 2015 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.21.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjIxLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3210</link><pubDate>Thu, 01 Oct 2015 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Advanced Analytics for APM Errors&lt;/p&gt;
&lt;p&gt;With this release, the agent reports &lt;a href=&quot;https://docs.newrelic.com/docs/insights/new-relic-insights/decorating-events/error-event-default-attributes-insights&quot;&gt;TransactionError&lt;/a&gt; events. These new events power the beta feature &lt;a href=&quot;https://docs.newrelic.com/docs/apm/applications-menu/events/view-apm-errors-error-traces&quot;&gt;Advanced Analytics for APM Errors&lt;/a&gt; (apply &lt;a href=&quot;https://discuss.newrelic.com/t/join-the-apm-errors-beta-of-real-time-analytics/31123&quot;&gt;here &lt;div&gt;&lt;/div&gt;&lt;/a&gt; to participate). The error events are also available today through &lt;a href=&quot;http://newrelic.com/insights&quot;&gt;New Relic Insights &lt;div&gt;&lt;/div&gt;&lt;/a&gt; .&lt;/p&gt;
&lt;p&gt;Advanced Analytics for APM Errors lets you see all of your errors, with granular detail. Filter and group by any attribute to analyze them. Take action to resolve issues through collaboration.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed a memory leak in async continuations instrumentation for Jetty 7 and 8.&lt;/li&gt;
&lt;li&gt;Improved error handling with invalid JMX &lt;strong&gt;.yml&lt;/strong&gt; extension files.&lt;/li&gt;
&lt;li&gt;Improved &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/custom-instrumentation/circuit-breaker-java-custom-instrumentation&quot;&gt;Circuit Breaker&lt;/a&gt; logging in the event of a Circuit Breaker trip.&lt;/li&gt;
&lt;li&gt;Fixed a bug in Tomcat 7+ instrumentation where request parameters could occasionally get stripped when using an async servlet with &lt;code&gt;capture_params&lt;/code&gt; set to &lt;code&gt;true&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;p&gt;The Java Agent now collects the following information for web transactions:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Accept, Host, User-Agent, Content-Length HTTP request headers&lt;/li&gt;
&lt;li&gt;HTTP request method, for example POST or GET&lt;/li&gt;
&lt;li&gt;Content-Type HTTP response header&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Known issues&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed in 3.25.0:
&lt;ul&gt;
&lt;li&gt;Setting enable_custom_tracing configuration flag to false can inadvertently disable Netty instrumentation.&lt;/li&gt;
&lt;li&gt;In some cases JAX-RS annotations on interfaces are not observed, causing transactions using JAX-RS services to be named on the servlet rather than the web servicepath and method.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Fixed in 3.24.1:
&lt;ul&gt;
&lt;li&gt;The Java agent&apos;s Play 2 transaction tracing instrumentation may be incomplete and cause gaps in cross application tracing.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Fixed in 3.24.0:
&lt;ul&gt;
&lt;li&gt;The Java agent&apos;s EJB instrumentation may cause a StackOverflowException to appear in application logs.&lt;/li&gt;
&lt;li&gt;Applications may continue to experience the additional Circuit Breaker overhead even when disabled.&lt;/li&gt;
&lt;li&gt;The Java agent may experience increased overhead when using Cross Application Tracing and a large number of threads.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Fixed in 3.23.0
&lt;ul&gt;
&lt;li&gt;This release may experience a memory leak within the agent for Tomcat containing a large number of static JSPs (5000+).&lt;/li&gt;
&lt;li&gt;When a transaction makes multiple calls to a database with the same obfuscated SQL, a NullPointerException is may get thrown in the agent.&lt;/li&gt;
&lt;li&gt;This release contains a bug in New Relic&apos;s Cross Application Tracing (CAT) that can cause incorrect service and transaction maps.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The problem happens when non-identical applications, with identical transaction names, would appear to be communicating (in the Transaction / Service maps), when in fact, they were not.&lt;/p&gt;
&lt;div&gt;&lt;p&gt;Using a combination of pre-3.23.0 and 3.23.0+ can result in external calls between the old and new agents to not show up in the map. To fix this, upgrade all of your agents to 3.23.0+ at the same time.&lt;/p&gt;&lt;/div&gt;</content:encoded><description>ReleasedOn: Thu, 01 Oct 2015 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.2.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjIuMQ==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-321</link><pubDate>Fri, 06 Dec 2013 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fix: Exceptions thrown from conflicting JAXB versions&lt;/p&gt;
&lt;p&gt;The New Relic Java agent now supports customers using any JAXB or Xerces version. This bug was introduced in version 3.1.0.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Usage of the newrelic.bootstrap_classpath system property&lt;/p&gt;
&lt;p&gt;In version 3.2.0, the newrelic.bootstrap_classpath system property caused an IllegalAccessError. That bug has been fixed. Note also that this system property has been deprecated and should not be used.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Data collection for customers using the IBM JVM without WebSphere&lt;/p&gt;
&lt;p&gt;New Relic now supports customers using an IBM JVM without running WebSphere. In this scenario, you must set the sync_startup flag set to true in the common section of their newrelic.yml.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;sync_startup: true
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Fri, 06 Dec 2013 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.22.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjIyLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3220</link><pubDate>Fri, 06 Nov 2015 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Play Framework 2.4 Instrumentation, and Play Framework 2 Improvements&lt;/p&gt;
&lt;p&gt;Previous Java Agent releases supported the Play Framework up to version 2.3. This release includes instrumentation for Play 2.4.x. This release provides more insight than ever before for all versions of Play 2, including improved segment names, and better signal-to-noise ratio in transaction details.&lt;/p&gt;
&lt;p&gt;This instrumentation also takes advantage of the &lt;a href=&quot;https://docs.newrelic.com/docs/data-analysis/user-interface-functions/response-time&quot;&gt;new response time line&lt;/a&gt; in the New Relic UI. Because Play is a reactive framework that encourages concurrent activity, your total time for transaction components will often be greater than the response time. If the total time is less than response time, it may indicate resource exhaustion. By separating the total time from the response time, you get a clear picture of when you are getting the benefit of concurrency.&lt;/p&gt;
&lt;p&gt;If you have used the Java Agent to monitor Play before this release, you may see a decrease in response time. The new response time metric more accurately reflects the time from initial request to response.&lt;/p&gt;
&lt;p&gt;We support Play applications written in Java or Scala 2.9.3 - 2.11.x.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; The deprecated &lt;code&gt;-Dnewrelic.bootstrap_classpath&lt;/code&gt; system property can result in missing instrumentation and should not be used.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Netty 3.4 - 4.x Instrumentation&lt;/p&gt;
&lt;p&gt;This release updates our Netty support to include versions from 3.4 to 4.x. Previous release supported up to Netty 3.9. The agent will start transactions for server inbound I/O. The agent will instrument Netty HTTP methods to enable cross application tracing (CAT) in Netty transactions.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;AsyncHttpClient Instrumentation 1.0.2 - 1.9.x&lt;/p&gt;
&lt;p&gt;In this release, you will see the time spent in external service calls made using AsyncHttpClient (also known as Ning Http Client). If the external service is also running New Relic, you will see cross application tracing (CAT) details as well. This includes external calls made from Play WSAPI, which uses AsyncHttpClient.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; As in previous releases, Play 1 applications will not report AsyncHttpClient activity.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Akka Instrumentation 2.0 - 2.4&lt;/p&gt;
&lt;p&gt;This release enhances our Akka instrumentation by linking an actor message sender to an actor message receiver in the same transaction. In order to avoid over-instrumentation, our Akka instrumentation does not actually start transactions. If you would like a given actor call to mark the beginning of a transaction, you will need to use the &lt;code&gt;@Trace(dispatcher=true)&lt;/code&gt; &lt;a href=&quot;http://newrelic.github.io/java-agent-api/javadoc/com/newrelic/api/agent/Trace.html&quot;&gt;annotation&lt;/a&gt;, or some other form of &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/custom-instrumentation/java-custom-instrumentation&quot;&gt;custom instrumentation&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Notes:&lt;/h3&gt;
&lt;p&gt;This release supports core Akka, not all Akka extensions. In particular, it does not identify transactions that have been routed by Spray, Akka HTTP, or Akka Streams. We have heard from customers that these frameworks are important, and we expect to support them soon! Stay tuned to the &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/instrumentation/java-agent-incubator&quot;&gt;Java agent incubator&lt;/a&gt;, since we may provide an early access instrumentation module for these frameworks before we release them in the agent.&lt;/p&gt;
&lt;h3&gt;Known Issues:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;If your application uses AsyncHttpClient&apos;s WebSockets, &lt;strong&gt;do not use this version.&lt;/strong&gt; AsyncHttpClient WebSockets requests will fail, or the application will not start.&lt;/li&gt;
&lt;li&gt;In some cases, calls to NewRelic&apos;s getBrowserTimingHeader and getBrowserTimingFooter are ignored.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Fri, 06 Nov 2015 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.2.2]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjIuMg==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-322</link><pubDate>Thu, 12 Dec 2013 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fix: Play 2.2 instrumentation in action methods&lt;/p&gt;
&lt;p&gt;In version 3.2.0 and 3.2.1, the Java agent failed to instrument calls present in a controller&apos;s action method. This means database calls, external calls, and custom instrumented calls within the action method were not being reported to New Relic. This bug has been fixed.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Invalid exclusive time errors with Play 2.2&lt;/p&gt;
&lt;p&gt;In version 3.2.0 and 3.2.1, the Java agent sometimes reported error messages to the newrelic log indicating an &quot;Invalid exclusive time&quot;. This error has been fixed.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Inaccurate async wait time with Play 2.x&lt;/p&gt;
&lt;p&gt;In version 3.2.0 and 3.2.1, the Java agent reported an async wait time for Play 2.x transactions that was too large. This bug has been fixed.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 12 Dec 2013 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.22.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjIyLjE=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3221</link><pubDate>Mon, 16 Nov 2015 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed an issue that caused Ning&apos;s AsyncHttpClient WebSockets requests to fail, or the application not to start.&lt;/li&gt;
&lt;li&gt;Fixed an issue that could cause an extra transaction to be created, a background transaction named NettyDispatcher.&lt;/li&gt;
&lt;li&gt;Removed the deprecated bootstrap.classpath configuration, as it could result in the Java agent&apos;s instrumentation failing to load.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 16 Nov 2015 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.2.3]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjIuMw==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-323</link><pubDate>Mon, 16 Dec 2013 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fix: JBoss 7 fails to start with Java 1.6&lt;/p&gt;
&lt;p&gt;Starting with version 3.2.0 of the Java agent, JBoss 7 application servers fail to start when running Java 1.6. An IllegalStateException is printed to System.out. This bug has been fixed.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 16 Dec 2013 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.23.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjIzLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3230</link><pubDate>Tue, 01 Dec 2015 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Hystrix instrumentation&lt;/p&gt;
&lt;p&gt;This release contains support for versions 1.0.2 through 1.4 of the Hystrix framework. You will now see timing information related to each Hystrix Command&apos;s run and getFallback methods. Chained Hystrix commands will be linked into one transaction.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;This release fixes a bug in New Relic&apos;s &lt;a href=&quot;https://docs.newrelic.com/docs/apm/transactions/cross-application-traces/cross-application-tracing&quot;&gt;Cross Application Tracing (CAT)&lt;/a&gt; that could cause incorrect service and transaction maps.&lt;/p&gt;
&lt;p&gt;The problem would happen when non-identical applications, with identical transaction names, would appear to be communicating (in the Transaction / Service maps), when in fact, they were not.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; Using a combination of pre-3.23.0 and 3.23.0+ can result in external calls between the old and new agents to not show up in the map. To fix this, upgrade all of your agents to 3.23.0+ at the same time&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Resolved an issue where an application running on Tomcat and containing a large number of static JSPs (5000+) could cause a memory leak within the agent.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 01 Dec 2015 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.24.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjI0LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3240</link><pubDate>Tue, 15 Dec 2015 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;MongoDB&lt;/p&gt;
&lt;p&gt;The Java agent now reports synchronous calls to the Mongo Java Driver 2.12 through 3.1. You will see the Mongo operations in breakdowns in the Applications Overview chart, entries in the Databases tab, and segments in transaction traces. &lt;strong&gt;Note:&lt;/strong&gt; The asynchronous driver is not supported.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Akka HTTP and Spray&lt;/p&gt;
&lt;p&gt;The Java agent now reports and names transactions received through Akka HTTP 1.0, Akka HTTP 2.0 and Spray. Transactions are named intuitively based on route DSLs. This instrumentation also supports Cross Application Tracing from calling systems. With our previously released support for Akka, your Akka HTTP and Spray applications will now include activity of those transactions all the way through your actor systems.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;In rare cases the Java agent&apos;s EJB instrumentation could cause a StackOverflowException to appear in application logs.&lt;/li&gt;
&lt;li&gt;In some cases the Java agent&apos;s Netty instrumentation could throw a NullPointerException to application code.&lt;/li&gt;
&lt;li&gt;Improve performance when using Cross Application Tracing and a large number of threads.&lt;/li&gt;
&lt;li&gt;In some cases the transaction would not be reported when using Akka with mutable messages.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Known Issues:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Play 2.x requests will produce empty responses when the circuit breaker is tripped. We recommend Play 2.x users &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/custom-instrumentation/circuit-breaker-java-custom-instrumentation#troubleshooting&quot;&gt;disable the circuit breaker&lt;/a&gt; when using Java agent versions 3.22 or higher.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 15 Dec 2015 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.24.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjI0LjE=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3241</link><pubDate>Mon, 21 Dec 2015 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed an issue that caused Play 2.x requests to produce empty responses when the circuit breaker is tripped.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 21 Dec 2015 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.25.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjI1LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3250</link><pubDate>Mon, 18 Jan 2016 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Performance improvements&lt;/p&gt;
&lt;p&gt;The Java agent now starts up to 50% faster. Your applications will be available that much sooner.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;In some cases JAX-RS annotations on interfaces were not being observed, causing transactions using JAX-RS services to be named on the servlet rather than the web servicepath and method.&lt;/li&gt;
&lt;li&gt;Fixed an issue that prevents Spray and Akka-HTTP instrumentation from applying when using Scala 2.10.&lt;/li&gt;
&lt;li&gt;Fixed an issue that caused Play 2.x requests to produce empty responses when the circuit breaker is tripped.&lt;/li&gt;
&lt;li&gt;Fixed an issue where setting &lt;code&gt;enable_custom_tracing&lt;/code&gt; to &lt;code&gt;false&lt;/code&gt; could inadvertently disable Netty instrumentation.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Known Issues&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fixed in 3.29.0&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Applications that use Play and Ning AsyncHttpClient may miss transactions.&lt;/li&gt;
&lt;li&gt;The thread profiler may not report data while profiling certain Scala classes.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fixed in 3.28.0&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Fixed a bug that could cause Akka Http instrumentation to throw a &lt;code&gt;NullPointerException&lt;/code&gt; into customer code.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fixed in 3.27.0&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Fixed an issue where the agent treated HTTP headers as being case sensitive, causing CAT to miss under certain conditions.&lt;/li&gt;
&lt;li&gt;Fixed various issues related to the proper handling of multibyte character encoding.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fixed in 3.26.x&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;CXF instrumentation can name transactions based on auto-generated proxy classes. Later agents now normalizes CXF transaction names.&lt;/li&gt;
&lt;li&gt;EJB instrumentation may cause a &lt;code&gt;NullPointerException&lt;/code&gt; in application code, and erroneously set transaction names. In later versions, the agent records a metric.&lt;/li&gt;
&lt;li&gt;The Cross Application Tracing API caused Application Response time to be attributed to other transaction time, and prevented linking of transaction traces when doing CAT.&lt;/li&gt;
&lt;li&gt;Request queuing calculations could show queuing time as a steadily increasing value instead of the correct time.&lt;/li&gt;
&lt;li&gt;HttpURLConnection External metrics may not report on the IBM J9 JVM.&lt;/li&gt;
&lt;li&gt;Transaction traces may report external segments for non I/O calls in Apache HttpClient.&lt;/li&gt;
&lt;li&gt;The Java agent will now read Cross Application Tracing HTTP header names regardless of case.&lt;/li&gt;
&lt;li&gt;Fixed a bug that could cause cross application tracing between the New Relic Java agent and non-Java New Relic agents to fail.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 18 Jan 2016 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.26.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjI2LjE=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3261</link><pubDate>Thu, 25 Feb 2016 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;PostgreSQL&lt;/p&gt;
&lt;p&gt;This release adds improved support for PostgreSQL 8.0+ with jdbc3+. All of these versions now include support for explain plans.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 25 Feb 2016 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.26.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjI2LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3260</link><pubDate>Tue, 23 Feb 2016 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Spray Client&lt;/p&gt;
&lt;p&gt;The agent now identifies external calls when Spray Client is used. You will see your Spray Client calls with the hostname and port of the destination. The calls also have support for Cross Application Tracing, and are shown in Service Maps and Transaction Maps.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The agent now tracks Futures started in Spray routes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The agent now identifies transactions when spray-can is used without spray-routing.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Slick&lt;/p&gt;
&lt;p&gt;The agent now tracks async activity created by Typesafe/Lightbend&apos;s functional-relational-mapper, Slick. If the underlying database driver is supported by the agent the database activity will be traced.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Improvements for JDBC&lt;/p&gt;
&lt;p&gt;The Java agent’s JDBC instrumentation now provides more consistent and complete data for supported JDBC drivers. The Java agent supports the following drivers:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;MySQL 5.1.4 - 5.1.x&lt;/li&gt;
&lt;li&gt;PostgreSQL 8.2-504 - 9.4-1206 (jdbc4 and jdbc41 drivers only)&lt;/li&gt;
&lt;li&gt;Oracle ojdbc14, ojdbc5, ojdbc6, ojdbc7&lt;/li&gt;
&lt;li&gt;Microsoft SQLServer 2.0 - 4.2&lt;/li&gt;
&lt;li&gt;jTDS 1.2 - 1.3.x&lt;/li&gt;
&lt;li&gt;DB2 9.1 - 10.x&lt;/li&gt;
&lt;li&gt;Derby 10.6.1.0 - 10.x&lt;/li&gt;
&lt;li&gt;H2 1.0.x - 1.4.x&lt;/li&gt;
&lt;li&gt;HSQL 1.7.2.2 - 2.x&lt;/li&gt;
&lt;li&gt;MariaDB 1.1.7 - 1.3.x&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Note&lt;/strong&gt; Previous versions of the Java Agent had partial “generic” support for other JDBC drivers. The new, improved JDBC instrumentation replaces the “generic” JDBC instrumentation.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed a bug where CXF would name transactions based on auto-generated proxy classes. The agent now normalizes CXF transaction names.&lt;/li&gt;
&lt;li&gt;Fixed a bug in EJB instrumentation that could cause a NullPointerException in application code.&lt;/li&gt;
&lt;li&gt;Fixed a bug where the EJB instrumentation erroneously set transaction names. In this version, the agent records a metric.&lt;/li&gt;
&lt;li&gt;Fixed a bug in the Cross Application Tracing API that caused Application Response time to be attributed to other transaction time, and prevented linking of transaction traces when doing CAT.&lt;/li&gt;
&lt;li&gt;Fixed a bug in request queueing calculations where queueing time could show up as a steadily increasing value instead of the correct time.&lt;/li&gt;
&lt;li&gt;Fixed a bug that prevented HttpURLConnection External metrics from reporting on the IBM J9 JVM.&lt;/li&gt;
&lt;li&gt;With Spray routing, fixed a bug that incorrectly set the transaction name of similar route names or set them to &quot;Unknown Route&quot;.&lt;/li&gt;
&lt;li&gt;Fixed a bug where some transaction traces would report external segments for non I/O calls in Apache HttpClient.&lt;/li&gt;
&lt;li&gt;The Java Agent will now read Cross Application Tracing HTTP header names regardless of case.&lt;/li&gt;
&lt;li&gt;Fixed a bug that could cause cross application tracing between the New Relic Java Agent and non-Java New Relic Agents to fail.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Known Issues&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Postgres JDBC&lt;/p&gt;
&lt;p&gt;This release does not contain support for some versions of the PostgreSQL jdbc3 drivers supported in previous releases. We recommend that you use 3.26.1.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 23 Feb 2016 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.27.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjI3LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3270</link><pubDate>Wed, 30 Mar 2016 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Spymemcached&lt;/p&gt;
&lt;p&gt;The Java agent now provides visibility into your applications’ usage of Memcached when using the Spymemcached client versions 2.11 to 2.12. You will see the calls in the application breakdown, in &lt;a href=&quot;https://docs.newrelic.com/docs/apm/transactions/transaction-traces/transaction-trace-details&quot;&gt;trace details&lt;/a&gt;, on the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/applications-menu/monitoring/databases-slow-queries-page&quot;&gt;Databases page&lt;/a&gt;, in &lt;a href=&quot;https://docs.newrelic.com/docs/apm/applications-menu/features/viewing-transaction-map&quot;&gt;Transaction maps&lt;/a&gt;, and in &lt;a href=&quot;https://docs.newrelic.com/docs/data-analysis/user-interface-functions/view-your-data/service-maps-visualize-monitor-apps-entire-architecture&quot;&gt;Service maps&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;JDBC Drivers&lt;/p&gt;
&lt;p&gt;This release adds support for the following JDBC drivers:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;INet Oracle Driver (Oranxo) 3.14&lt;/li&gt;
&lt;li&gt;Sybase (jConnect) JDBC 3 driver&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed an issue where the agent treated HTTP headers as being case sensitive, causing CAT to miss under certain conditions.&lt;/li&gt;
&lt;li&gt;Fixed an issue where error data could be dropped, causing &lt;code&gt;413&lt;/code&gt; status code errors to be reported in the agent log.&lt;/li&gt;
&lt;li&gt;Fixed a bug in spray-http and akka-http routing libraries where response times and/or route names could be reported incorrectly when using Futures within the route.&lt;/li&gt;
&lt;li&gt;Fixed various issues related to the proper handling of multibyte character encoding.&lt;/li&gt;
&lt;li&gt;Fixed a bug in Java agent version 3.26.x that could cause the Thread Profiler to time out.&lt;/li&gt;
&lt;li&gt;Fixed a bug where an error could get printed to the agent log when making SQL queries from an asynchronous framework.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;p&gt;In support of an upcoming feature, the Java agent is now capable of reporting class metadata including class method signatures, method annotations, class annotations, field annotations, field types, and field names.&lt;/p&gt;
&lt;p&gt;This reporting is on by default and can be explicitly disabled in the agent by setting the property in your &lt;code&gt;newrelic.yml&lt;/code&gt; configuration file:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;command_parser:
    blacklist: send_module_metadata
&lt;/code&gt;&lt;/pre&gt;</content:encoded><description>ReleasedOn: Wed, 30 Mar 2016 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.29.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjI5LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3290</link><pubDate>Tue, 24 May 2016 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;JDBC instrumentation&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;JDBC ResultSet instrumentation performance has been improved.&lt;/li&gt;
&lt;li&gt;Instrumentation has been added for:&lt;/li&gt;
&lt;li&gt;i-Net Merlia 7.0.3 database driver&lt;/li&gt;
&lt;li&gt;Generic JDBC drivers&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Cassandra&lt;/p&gt;
&lt;p&gt;This release adds instrumentation for the Cassandra Datastax 3.0 Driver including slow query support. You’ll see relevant breakdowns in the overview chart, entries in the Databases tab, and segments in transaction traces.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; Uses of the client&apos;s async API are not currently supported.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed a bug which caused some applications that use Play and Ning AsyncHttpClient to miss transactions.&lt;/li&gt;
&lt;li&gt;Fixed an issue which would cause the thread profiler to not report data while profiling some Scala classes.&lt;/li&gt;
&lt;li&gt;Fixed a rare bug where a RuntimeException is thrown during class transformation which can prevent some instrumentation from being applied.&lt;/li&gt;
&lt;li&gt;Fixes a rare case where Tomcat ClassLoaders could leak memory when using a JDBC driver bundled in your application after reloading a web application.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 24 May 2016 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.28.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjI4LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3280</link><pubDate>Wed, 20 Apr 2016 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Cassandra&lt;/p&gt;
&lt;p&gt;This release adds &lt;a href=&quot;https://docs.newrelic.com/docs/apm/applications-menu/monitoring/viewing-slow-query-details&quot;&gt;slow query tracking&lt;/a&gt; to Cassandra queries made via the Datastax driver. You’ll now see slow CQL queries on the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/applications-menu/monitoring/databases-slow-queries-page&quot;&gt;Databases page&lt;/a&gt; and within Transaction Traces. You must add the following to your &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/configuration/java-agent-configuration-config-file&quot;&gt;newrelic.yml configuration&lt;/a&gt; to enable this feature in &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/configuration/high-security-mode&quot;&gt;High-security mode&lt;/a&gt;:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;transaction_tracer:
      slow_query_whitelist: 
       &apos;com.newrelic.instrumentation.cassandra-datastax-2.1.2&apos;
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;MongoDB&lt;/p&gt;
&lt;p&gt;The Java agent now reports synchronous calls made via MongoDB Java driver 2.14. You will see MongoDB represented on the Overview page, on the Databases page, and in Transaction traces. Note: The asynchronous driver is not yet supported.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Apache Tomcat&lt;/p&gt;
&lt;p&gt;This release adds support for Tomcat 8.5&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Akka&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;This release adds support for Akka forwarding and Akka broadcasting. The agent will now trace messages broadcast or forwarded to actors.&lt;/li&gt;
&lt;li&gt;When the system sends a message to an Actor, the agent now reports the name of the actor system that sent the message. Previously, the agent reported “deadletters” under these circumstances.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Async performance&lt;/p&gt;
&lt;p&gt;This release adds performance enhancements for asynchronous frameworks, especially Hystrix. Performance in Hystrix will noticeably improve for most applications, and will be up to 3x faster when tracing low-latency requests (response time &amp;#x3C;3ms). Performance for low-latency Play applications will be up to 30% faster.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;JDBC&lt;/p&gt;
&lt;p&gt;This release adds support for the following JDBC drivers:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;MySQL 6.0.2 and higher&lt;/li&gt;
&lt;li&gt;i-Net Oranxo 3.06&lt;/li&gt;
&lt;li&gt;i-Net MERLIA 8.04.03 and 8.06&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed a bug that could cause Akka Http instrumentation to throw a NullPointerException into customer code.&lt;/li&gt;
&lt;li&gt;Fixed a bug in the Spymemcached instrumentation that would report operations with the name “None” instead of the correct operation name.&lt;/li&gt;
&lt;li&gt;Fixed a bug that could cause highly asynchronous applications to experience a memory leak in the NewRelic TransactionService.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 20 Apr 2016 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.30.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjMwLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3300</link><pubDate>Tue, 28 Jun 2016 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Mule ESB 3.4 - 3.6&lt;/p&gt;
&lt;p&gt;This release adds instrumentation for Mulesoft Mule ESB Server versions 3.4 through 3.6. Requests to an HTTP Transport will show in New Relic as web transactions. Mule ESB Server instances will appear as &quot;dispatchers&quot; on the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/applications-menu/monitoring/apm-overview-page&quot;&gt;overview page&lt;/a&gt; and the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/applications-menu/monitoring/jvm-metrics-page&quot;&gt;JVM metrics page&lt;/a&gt;. All of the usual features of New Relic APM are supported including alerting, error reporting, JMS puts and takes, cross application tracing, transaction traces, key transactions, external services, and database call reporting.&lt;/p&gt;
&lt;p&gt;NOTE: The newer HTTP operation-based Connector is not yet supported.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Play 2.5&lt;/p&gt;
&lt;p&gt;This release adds instrumentation for the Play 2.5 framework. The previous Java Agent release supports versions of Play up to 2.4.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Cassandra async 2.1.2+ and 3.x&lt;/p&gt;
&lt;p&gt;This release adds instrumentation for asynchronous queries in versions 2.1.2+ and 3.x of the Datastax Cassandra driver, including &lt;a href=&quot;https://docs.newrelic.com/docs/apm/applications-menu/monitoring/databases-slow-queries-page&quot;&gt;slow query&lt;/a&gt; support. You’ll see relevant breakdowns in the overview chart, entries on the Databases page, and segments in transaction traces.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Async Http Client 2.x&lt;/p&gt;
&lt;p&gt;This release adds instrumentation for &lt;a href=&quot;https://docs.newrelic.com/docs/apm/applications-menu/monitoring/external-services-page&quot;&gt;external service&lt;/a&gt; calls made using Async Http Client versions 2.x. If the called external service is also running New Relic, you will see &lt;a href=&quot;https://docs.newrelic.com/docs/apm/transactions/cross-application-traces/cross-application-tracing&quot;&gt;cross application tracing&lt;/a&gt; details as well. This instrumentation will also capture external calls made from Play WSAPI (which uses Async Http Client).&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Transaction traces for key transactions&lt;/p&gt;
&lt;p&gt;If you set an Apdex value for a &lt;a href=&quot;https://docs.newrelic.com/docs/apm/transactions/key-transactions/key-transactions-tracking-important-transactions-or-events&quot;&gt;key transaction&lt;/a&gt;, the agent will now capture transaction traces based on that &lt;a href=&quot;https://docs.newrelic.com/docs/apm/transactions/key-transactions/updating-key-transactions&quot;&gt;key transaction&apos;s Apdex value&lt;/a&gt; if it&apos;s smaller than the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/new-relic-apm/apdex/change-your-apdex-settings&quot;&gt;application’s Apdex value&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;JDBC performance and overhead improved&lt;/p&gt;
&lt;p&gt;This release offers better performance and lower overhead of JDBC instrumentation, especially in situations with large numbers of connections.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fixed multiple issues related to Java Agent logging including:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ClassCastExceptions thrown into customer application logs&lt;/li&gt;
&lt;li&gt;Agent logging being diverted into customer application logs&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fixed a bug where transactions could timeout during agent harvest, resulting in missing metrics and logging: &quot;Traced activity timed out after 600 seconds. The traced_activity_timeout configuration parameter can be used to adjust this timeout.”&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Resolved &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/metric-grouping-issues&quot;&gt;Metric grouping issue&lt;/a&gt; in Spray/Akka tell instrumentation. The agent now names temporary actors &quot;temp&quot;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;In rare cases a ClassCircularityError could be induced by the agent when running with a custom security manager.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fixed issue where a database connection can get labeled as &quot;JDBC&quot; instead of the more specific, supported database type such as &quot;MySQL&quot; or &quot;PostgreSQL&quot;. This issue specifically affects customers running with a proxying or delegating JDBC connection.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 28 Jun 2016 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.30.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjMwLjE=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3301-1</link><pubDate>Wed, 20 Jul 2016 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;p&gt;Fixed a security issue that could send external HTTP request parameters to New Relic via &lt;a href=&quot;https://docs.newrelic.com/docs/apm/traces/transaction-traces&quot;&gt;transaction traces&lt;/a&gt; for applications that do all of the following:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Use Java agent 3.6.0 or higher*&lt;/li&gt;
&lt;li&gt;Use Apache HttpClient 4.0 or higher&lt;/li&gt;
&lt;li&gt;Haven’t &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/configuration/java-agent-configuration-config-file#Transaction_Tracer&quot;&gt;disabled transaction_traces&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;*For Java agent versions 3.6.0-3.25.0, this issue only affects &lt;a href=&quot;https://docs.newrelic.com/docs/apm/transactions/cross-application-traces/cross-application-tracing&quot;&gt;cross-application traces&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Recommended for applications that may include sensitive information in external service call request parameters.&lt;/p&gt;
&lt;p&gt;If you can’t upgrade the agent immediately, there are a few workarounds:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/apm/transactions/transaction-traces/configuring-transaction-traces&quot;&gt;Disable transaction traces&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/configuration/java-agent-configuration-config-file#Cross_Application_Tracer&quot;&gt;Disable only cross-application tracing&lt;/a&gt;. This resolves the issue with Java agents prior to 3.26.0.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;You can also &lt;a href=&quot;https://docs.newrelic.com/docs/apm/transactions/transaction-traces/deleting-transaction-traces&quot;&gt;delete existing transaction traces&lt;/a&gt;.&lt;/p&gt;</content:encoded><description>ReleasedOn: Wed, 20 Jul 2016 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.3.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjMuMQ==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-331</link><pubDate>Tue, 07 Jan 2014 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;JMS Messaging&lt;/p&gt;
&lt;p&gt;New Relic now gives you insight into the performance of your JMS message processing, both incoming and outgoing messages.&lt;/p&gt;
&lt;p&gt;New Relic now shows transactions initiated via JMS 1.1 message receipt. These transactions show up in the New Relic UI as background tasks of type &quot;Message&quot;. In addition, JMS 1.1 message creation is shown in transaction traces.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Grails 1.3.7 to 2.3.x&lt;/p&gt;
&lt;p&gt;New Relic now provides first-class visibility into your Grails applications. Grails web transactions are now named based on the Grails controller. The transactions track the details of your calls to JDBC, Hibernate, and other important frameworks, and provides full access to the New Relic Java agent API from Groovy. Grails installation instructions can be found &lt;a href=&quot;https://docs.newrelic.com/docs/java/grails-installation-for-java&quot;&gt;here&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Updated instrumentation for supported app servers&lt;/p&gt;
&lt;p&gt;New Relic has updated the instrumentation of the application servers we support. In the process, we have updated the list of app servers that we instrument. For a current list of supported app server versions, see &lt;a href=&quot;https://docs.newrelic.com/docs/java/new-relic-for-java&quot;&gt;https://docs.newrelic.com/docs/java/new-relic-for-java&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: New Relic did not instrument Apache HttpClient 4.3&lt;/p&gt;
&lt;p&gt;Previous versions of the agent did not instrument HttpClient 4.3.x. That version is now properly supported.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Java Agent failed on Weblogic with a certicate exception&lt;/p&gt;
&lt;p&gt;In some cases running Weblogic, the Java Agent would fail certificate validation when connecting to New Relic. That bug has been fixed.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Java Agent suppressed application logging&lt;/p&gt;
&lt;p&gt;In version 3.2.3, the Java agent sometimes suppressed application logging. That bug has been fixed in this version.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Java Agent was logging error messages regarding &quot;weaved classes&quot;&lt;/p&gt;
&lt;p&gt;In version 3.2, the Java agent wrote innocuous error messages to its log similar to the following:&lt;/p&gt;
&lt;p&gt;ERROR: javax/servlet/ServletOutputStream is marked as a weaved class, but no methods are matched to be weaved.&lt;/p&gt;
&lt;p&gt;That bug has been fixed in this version.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Text instructions in the sample newrelic.yml file were improved&lt;/p&gt;
&lt;p&gt;If you are upgrading from a previous version of the agent, consider applying your configuration to this new version of the yml file.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 07 Jan 2014 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.31.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjMxLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3310</link><pubDate>Wed, 03 Aug 2016 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Mule ESB 3.6-3.8 including the new HTTP Connector&lt;/p&gt;
&lt;p&gt;This release adds instrumentation for Mulesoft Mule ESB Server versions 3.6-3.8, including the &lt;a href=&quot;https://docs.mulesoft.com/mule-user-guide/v/3.6/migrating-to-the-new-http-connector&quot;&gt;new HTTP Connector&lt;/a&gt; made available in Mule 3.6. This release continues to support the old HTTP Transport. Mule ESB Server instances will appear as &quot;dispatchers&quot; on the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/applications-menu/monitoring/apm-overview-page&quot;&gt;overview page&lt;/a&gt; and the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/applications-menu/monitoring/jvm-metrics-page&quot;&gt;JVM metrics page&lt;/a&gt;. Requests to an HTTP (operation-based) Connector will show in New Relic as web transactions. All of the usual features of New Relic APM are supported including alerting, error reporting, JMS puts and takes, cross application tracing, transaction traces, key transactions, external services, and database call reporting.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;OkHttp client 3.0-3.4&lt;/p&gt;
&lt;p&gt;This release adds instrumentation for OkHttp client for versions 3.0-3.4. Both synchronous and asynchronous calls are supported, as well as the usual features for HTTP clients in New Relic APM such as &lt;a href=&quot;https://docs.newrelic.com/docs/apm/transactions/cross-application-traces/cross-application-tracing&quot;&gt;cross application tracing&lt;/a&gt; and the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/applications-menu/monitoring/external-services-page&quot;&gt;external services&lt;/a&gt; page.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Akka HTTP 2.4.5&lt;/p&gt;
&lt;p&gt;The Java agent now reports and names transactions received through Akka HTTP 2.4.5, in addition to previously available Akka HTTP support.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Spring transaction naming&lt;/p&gt;
&lt;p&gt;The java agent now supports naming transactions based on the path element of Spring RequestMapping annotation.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed an issue that was preventing Jetty JMX threads metrics from being pulled in later versions of Jetty 9.X.&lt;/li&gt;
&lt;li&gt;Fixed bug in the &lt;a href=&quot;http://newrelic.github.io/java-agent-api/javadoc/com/newrelic/api/agent/MetricAggregator.html#recordMetric(java.lang.String,%20float)&quot;&gt;recordMetric API&lt;/a&gt; that in rare cases could start an unwanted long running transaction.&lt;/li&gt;
&lt;li&gt;Fixed a memory leak in the Async Servlet instrumentation.&lt;/li&gt;
&lt;li&gt;Fixed a bug in the &lt;a href=&quot;http://newrelic.github.io/java-agent-api/javadoc/com/newrelic/api/agent/NewRelic.html#setRequestAndResponse(com.newrelic.api.agent.Request,%20com.newrelic.api.agent.Response)&quot;&gt;setRequestAndResponse API&lt;/a&gt; that could throw a java.lang.NumberFormatException in the customer’s application when the circuit breaker trips.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 03 Aug 2016 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.31.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjMxLjE=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3311</link><pubDate>Wed, 10 Aug 2016 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed a bug that caused a StackOverflow exception for drivers that execute a query on &lt;code&gt;Connection.getMetaData()&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; This issue was introduced in Java agent &lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3300&quot;&gt;version 3.30.0&lt;/a&gt;.&lt;/p&gt;</content:encoded><description>ReleasedOn: Wed, 10 Aug 2016 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.3.2]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjMuMg==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-332</link><pubDate>Fri, 10 Jan 2014 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fix: Duplicate annotation exception&lt;/p&gt;
&lt;p&gt;In some rare cases involving generated a proxy class, the application may encounter an exception&lt;/p&gt;
&lt;p&gt;AnnotationFormatError: Duplicate annotation for class&lt;/p&gt;
&lt;p&gt;That bug has been fixed in this version.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: VerifyError&lt;/p&gt;
&lt;p&gt;In certain cases such as the Wildfly app server, the application may encounter a VerifyError. That bug has been fixed in this version.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Fri, 10 Jan 2014 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.32.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjMyLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3320</link><pubDate>Mon, 19 Sep 2016 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;WebLogic&lt;/p&gt;
&lt;p&gt;This release adds official support for WebLogic versions 12.2.x&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Performance Improvements&lt;/p&gt;
&lt;p&gt;Improvements in Java agent startup time, particularly on modular ClassLoader architectures (such as JBoss)&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fixed bug in spymemcached instrumentation that would incorrectly name segments in &lt;a href=&quot;https://docs.newrelic.com/docs/apm/transactions/transaction-traces/transaction-trace-details&quot;&gt;transaction traces&lt;/a&gt; that contained “get-and-touch” operations.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Improved Play 2.5 instrumentation&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Fixed memory leak for large POST requests.&lt;/li&gt;
&lt;li&gt;Fixed incorrect response times. Previously, large uploads could cause inflated response times.&lt;/li&gt;
&lt;li&gt;The agent now tracks PlayRequestHandler and no longer shows the short-lived NettyDispatcher transactions.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fixed a bug that could cause cross application tracing to display URLs as “Unknown” in &lt;a href=&quot;https://docs.newrelic.com/docs/apm/transactions/transaction-traces/transaction-trace-details&quot;&gt;transaction traces&lt;/a&gt; when the URL did not include the port number.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fixed a bug in Jetty 9.3 instrumentation where transactions were not reported and memory was leaked if an incoming async request was wrapped by a framework or Jetty itself.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 19 Sep 2016 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.33.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjMzLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3330</link><pubDate>Wed, 02 Nov 2016 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Database instance reporting&lt;/p&gt;
&lt;p&gt;The agent now reports &lt;a href=&quot;https://docs.newrelic.com/docs/apm/applications-menu/features/analyze-database-instance-level-performance-issues&quot;&gt;database instance information&lt;/a&gt; for most supported databases. With the additional database instance information, transaction traces and slow query traces will provide the database server and database name for the queries displayed. You will see instance-level information when connecting by using the following drivers:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Any JDBC driver, including those in our &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/getting-started/compatibility-requirements-java-agent&quot;&gt;compatibility doc&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;DataStax Cassandra driver (2.1.2, 3.0 to 3.1).&lt;/li&gt;
&lt;li&gt;Jedis Redis driver (1.4 to 2.9).&lt;/li&gt;
&lt;li&gt;Mongo (2.12.0 to 2.13.3, 3.1 to 3.3).&lt;/li&gt;
&lt;li&gt;Spymemcached (2.11 to 2.12). Note that instance-level information is not reported for calls to the getBulk API method..&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Bug fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed a bug in Play 2.5 instrumentation that could cause the agent to report shorter response times when using Action.async.&lt;/li&gt;
&lt;li&gt;SQL stored procedure names are now reported in more edge cases such as “exec @param = stored_procedure”&lt;/li&gt;
&lt;li&gt;Fixed an issue where explain plans were not being executed for versions 9.0-9.3 of PostgreSQL.&lt;/li&gt;
&lt;li&gt;Fixed an issue where the agent could cause a Mule application request to fail with a NotSerializableException reported in the application log.&lt;/li&gt;
&lt;li&gt;Fixed an issue where JVM versions that do not support ThreadCpuTime() would throw an UnsupportedOperationException, preventing the JVM from starting.&lt;/li&gt;
&lt;li&gt;Fixed a potential memory leak in versions of Jetty 7 and 8 when using CometD.&lt;/li&gt;
&lt;li&gt;Fixed an issue where the Hystrix toObservable method was double counting metrics on newer versions of Java 7 and all versions of Java 8.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 02 Nov 2016 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.34.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjM0LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3340</link><pubDate>Wed, 14 Dec 2016 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Solr&lt;/p&gt;
&lt;p&gt;The agent now reports database instance information for Solr. With the additional &lt;a href=&quot;https://docs.newrelic.com/docs/apm/applications-menu/features/analyze-database-instance-level-performance-issues&quot;&gt;database instance information&lt;/a&gt;, transaction traces and slow query traces will provide the database server and database name for the queries displayed.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;IBM JDK 8 Support&lt;/p&gt;
&lt;p&gt;The newest versions of WebSphere Application Server and WebSphere Liberty Profile ship with the IBM JDK 8. This release is compatible with IBM JDK 8.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed an issue in which asynchronous instrumentation could interact with instrumentation for JDBC ResultSet or a limited set of other frameworks, leading to loss of transaction reporting.&lt;/li&gt;
&lt;li&gt;Fixed an issue in which transactions that executed the Spring Framework error handler could be given a generic name. These transactions will now retain their previously-assigned name.&lt;/li&gt;
&lt;li&gt;Fixed a bug introduced in 3.33.0 where use of the X-Ray sessions feature could cause the Agent to stop reporting transactions.&lt;/li&gt;
&lt;li&gt;Fixed a bug in the agent that prevented Error Events from linking to corresponding Traced Errors when created outside of a transaction&lt;/li&gt;
&lt;li&gt;Fixes a Tomcat-specific issue where Transactions would incorrectly report extremely long response times in the &lt;code&gt;ServletRequestListener.requestInitialized()&lt;/code&gt; method.&lt;/li&gt;
&lt;li&gt;Improved metric grouping issues in several frameworks including Akka tell calls.&lt;/li&gt;
&lt;li&gt;Fixed bug in noticeError API. The agent now includes custom attributes in errors when the API is called outside a Transaction.&lt;/li&gt;
&lt;li&gt;Fixed an issue where custom XML instrumentation could cause a null pointer exception in application code when custom attributes are set for a method that passes a null parameter.&lt;/li&gt;
&lt;li&gt;Fixed an issue in the Agent API method recordCustomEvent() that could cause loss of custom events created using this API. Customer who do not use the recordCustomEvent() API are not affected. Previously, unexpected argument types could result in the loss of both the event and additional custom events recorded in the same 1-minute period. As a result of this fix, users of the recordCustomEvent API may discover that events that have never been visible in the Insights API become visible.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Known issues&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fixed in 3.35.2&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Applications that use the Spray Client instrumentation may throw a NullPointerException into customer logs&lt;/li&gt;
&lt;li&gt;Applications that use the Netty instrumentation may get a StackOverflowException when calling ServerBootstrap.bind() many times&lt;/li&gt;
&lt;li&gt;Oracle WebLogic Server 12.2 applications will not display WebLogic specific JMX metrics&lt;/li&gt;
&lt;li&gt;SQL parsing may throw a StackOverflowError and prevent large database statements from being sent up to New Relic&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fixed in 3.36.0&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Queue Time may be misreported on the Overview page for applications injecting the X-Queue-Start or X-Request-Start HTTP headers&lt;/li&gt;
&lt;li&gt;Applications that have custom Hystrix Commands that are subclassed multiple times in Groovy can cause an application to throw an exception on startup&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fixed in 3.37.0&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Solr: Applications that use Solr and have reported to New Relic APM previously with an agent version prior to 3.34.0 will not display the Solr page&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 14 Dec 2016 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.35.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjM1LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3350</link><pubDate>Wed, 11 Jan 2017 00:00:00 +0000</pubDate><content:encoded>&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;h4&gt;Known Issue&lt;/h4&gt;
&lt;p&gt;Several customers have reported an issue with this release in which the app fails with a ClassFormatError. For this reason, this release is &lt;em&gt;not&lt;/em&gt; recommended and has been removed from New Relic&apos;s download site. Please use release 3.34.0 instead.&lt;/p&gt;
&lt;p&gt;We keep the note here because the 3.35.0 is still available on the Maven Central Repository.&lt;/p&gt;
&lt;p&gt;We will release a fix for the issue as soon as possible.&lt;/p&gt;
&lt;h4&gt;Changes&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;JAX-RS/Jersey 2&lt;/p&gt;
&lt;p&gt;This agent release officially adds support for JAX-RS 1.1-2.0.&lt;/p&gt;
&lt;p&gt;The release instruments the @Suspend annotation when using the Jersey 2 implementation of JAX-RS.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;OkHttp 3.5&lt;/p&gt;
&lt;p&gt;This release updates our instrumentation to cover OkHttp 3.5.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixes an edge case in Spray Client instrumentation where a NullPointerException was being thrown into customer logs&lt;/li&gt;
&lt;li&gt;Fixes a potential StackOverflowException from Netty instrumentation when calling ServerBootstrap.bind() many times&lt;/li&gt;
&lt;li&gt;Fixes a bug that prevented display of JMX metrics for Oracle WebLogic Server 12.2&lt;/li&gt;
&lt;li&gt;Fixes issue where SQL parsing would throw a StackOverflowError and prevent large database statements from being sent up to New Relic&lt;/li&gt;
&lt;li&gt;Improve performance of complex SQL statement parsing in the agent, reducing overhead for apps that make many SQL calls&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 11 Jan 2017 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.35.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjM1LjE=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3351</link><pubDate>Thu, 12 Jan 2017 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h4&gt;Known Issue&lt;/h4&gt;
&lt;p&gt;This release contains a bug that could cause the app to fail with a VerifyError. Please use &lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3340&quot;&gt;version 3.34.0&lt;/a&gt; instead.&lt;/p&gt;
&lt;p&gt;We will release a fix for the issue when we have thoroughly tested the fix for edge cases.&lt;/p&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixes an issue where an application can fail to start with a ClassFormatError when using Spring, Jersey, or any JAX-RS framework with Java Agent v3.35.0.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 12 Jan 2017 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.35.2]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjM1LjI=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3352</link><pubDate>Tue, 17 Jan 2017 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h4&gt;Note&lt;/h4&gt;
&lt;p&gt;If you are using Spring AOP, Jersey, or any JAX-RS framework, use this 3.35.2 release rather than 3.35.0 or 3.35.1.&lt;/p&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixes an issue where an application can fail to start with a:
java.lang.VerifyError: Bad local variable type error
when using Spring AOP, Jersey, or any JAX-RS framework with Java Agent 3.35.0 or 3.35.1.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 17 Jan 2017 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.36.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjM2LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3360</link><pubDate>Wed, 15 Feb 2017 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;APIs&lt;/p&gt;
&lt;p&gt;This release adds a &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/custom-instrumentation/java-agent-api-guide&quot;&gt;number of APIs&lt;/a&gt; that will allow you to instrument and get expanded visibility into frameworks, libraries, and any custom code that New Relic does not automatically instrument. In addition to instrumenting your web frameworks, you can also instrument calls to and from &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/custom-instrumentation/java-api-overview-instrumenting-external-calls-cat-messaging-datastore-web-frameworks&quot;&gt;messaging systems, database calls, and external calls&lt;/a&gt;! By passing context about your code to the APIs, you will get the same reporting, including cross application tracing, that you get with New Relic’s built-in instrumentation.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Solr&lt;/p&gt;
&lt;p&gt;This release adds support for Solr versions 5 and 6 (up to and including version 6.3.0).&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixes a bug that prevents an application from starting up when a JAX-RS annotated method contains more than 8 parameters.&lt;/li&gt;
&lt;li&gt;Fixes an issue that affected Spring and JAX-RS applications compiled with the Java 8 flag &lt;code&gt;javac -parameters&lt;/code&gt;. The issue would cause the application to throw a &lt;code&gt;java.lang.reflect.MalformedParametersException&lt;/code&gt; exception.&lt;/li&gt;
&lt;li&gt;Fixes bug that affected applications implementing JAX-RS endpoints using static methods.&lt;/li&gt;
&lt;li&gt;The agent now reports WildFly dispatcher name and version.&lt;/li&gt;
&lt;li&gt;Fixes a bug in which Queue Time could be misreported on the Overview page for customers injecting the &lt;code&gt;X-Queue-Start&lt;/code&gt; or &lt;code&gt;X-Request-Start&lt;/code&gt; HTTP headers. This fix brings the Java Agent into compliance with the behavior of other New Relic Agents.&lt;/li&gt;
&lt;li&gt;Fixes an issue in which custom Hystrix Commands that are subclassed multiple times in Groovy cause an application to throw an exception on startup.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 15 Feb 2017 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.38.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjM4LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3380</link><pubDate>Mon, 24 Apr 2017 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Expected Errors
This release provides you with several flexible error configuration options to control how your errors are reported. With this addition, you can now configure certain exceptions that you expect your application logic will throw. These “expected errors” will not be counted towards your application error rate and Apdex; you will only be alerted on errors that truly affect the health of your application.
Expected errors can be configured by exception class or HTTP response code. When specifying an exception class, you can provide an error message to match. See &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/configuration/java-agent-error-configuration&quot;&gt;the documentation&lt;/a&gt; for details.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Custom CA Bundle&lt;/p&gt;
&lt;p&gt;A path to a custom SSL certificate bundle can now be specified in the agent configuration by using the following top level configuration:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;ca_bundle_path: /path/to/ca/cert/bundle.pem
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed a bug where applications running on Tomcat could see duplicated or misnamed transactions for async endpoints.&lt;/li&gt;
&lt;li&gt;Fixed a bug that caused transactions to report with an inflated apdex. The affected transactions had to meet the following conditions:
&lt;ul&gt;
&lt;li&gt;A status code &gt;= 400&lt;/li&gt;
&lt;li&gt;No error set on the transaction&lt;/li&gt;
&lt;li&gt;markResponseSent() or addOutboundHeaders() was not called from the API
In this case, the agent will now consider that transaction call to be frustrating for the purposes of calculating apdex.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Fixed a bug where the loaded class count on the JVM tab is reported as a much larger value than the actual number of loaded classes. In certain circumstances this bug can cause memory and CPU over-utilization.&lt;/li&gt;
&lt;li&gt;Fixed a bug where response times in ServletRequestListener.requestInitialized() would incorrectly appear much larger than the actual values when using JBoss.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 24 Apr 2017 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.37.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjM3LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3370</link><pubDate>Wed, 29 Mar 2017 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Async APIs&lt;br&gt;
This release adds new APIs for instrumenting asynchronous work. If your transactions have asynchronous work (such as database queries or external calls) that is not automatically monitored by the Java Agent, you can use the APIs to link that work to your transactions. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/java-agent-api/java-agent-asynchronous-api-guide&quot;&gt;the documentation&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;OkHttp 3.6&lt;br&gt;
This release adds support for OkHttp 3.6.x. You will now see OkHttp 3.6 calls as external calls in New Relic.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixes an issue where applications running on Tomcat 8.5 could see duplicated or misnamed Transactions for async endpoints.&lt;/li&gt;
&lt;li&gt;Fixes an edge case issue where users of Spring AOP can get an UndeclaredThrowableException when using the Java Agent.&lt;/li&gt;
&lt;li&gt;Fixes root and current working directory jars not showing up in the UI.&lt;/li&gt;
&lt;li&gt;Fixes an issue which prevented the Solr updates and Solr caches tabs from displaying in the New Relic UI for applications that are reporting Solr data for the first time.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 29 Mar 2017 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.39.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjM5LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3390</link><pubDate>Tue, 23 May 2017 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Bug fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed an issue in which setting &quot;agent_enabled&quot; to false in newrelic.yml caused an IncompatibleClassChangeError in the application on startup. The agent can now be disabled without side-effect.&lt;/li&gt;
&lt;li&gt;Fixed an issue where the agent throws an exception if null keys or values are passed to the recordCustomEvent() API. The agent now ignores these null values.&lt;/li&gt;
&lt;li&gt;Fixed a rare issue where the agent throws a NullPointerException in the application during JDBC calls. The agent now reports these calls but may report an “Unknown” database.&lt;/li&gt;
&lt;li&gt;Fixed an issue where a VerifyError is thrown in the application code when using Spring or JAX-RS annotations on a Kotlin method with a default parameter.&lt;/li&gt;
&lt;li&gt;Fixed an issue where external HTTP metrics could be reported outside of a transaction when using HttpURLConnection. The agent now ignores these calls.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 23 May 2017 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.39.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjM5LjE=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3391</link><pubDate>Tue, 30 May 2017 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Fixes:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed an issue in which the agent could in rare cases send a raw SQL query as a transaction attribute when an error was thrown&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 30 May 2017 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.4.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjQuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-340</link><pubDate>Thu, 16 Jan 2014 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fix: Java agent should honor enable_auto_app_naming&lt;/p&gt;
&lt;p&gt;Starting with Java agent 3.3.1, the enable_auto_app_naming flag was being ignored. This bug has been fixed.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Setting configuration properties in newrelic.yml configuration file.&lt;/p&gt;
&lt;p&gt;Starting with version 3.0, some properties such as max_stack_trace_lines could not be set in the newrelic.yml configuration property. This bug has been fixed.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Java agent should honor JAX-RS annotations with New Relic annotations&lt;/p&gt;
&lt;p&gt;New Relic&apos;s Java agent should handle methods that contain a New Relic annotation along with a JAX-RS annotation correctly. Previously the New Relic annotation was being ignored.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Play transaction does not complete until timeout expires&lt;/p&gt;
&lt;p&gt;New Relic&apos;s Java agent now handles firstCompletedOf to Futures correctly.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Additional functionality to API call addCustomParameter&lt;/p&gt;
&lt;p&gt;New Relic&apos;s API call addCustomParameter will now add the custom parameters to New Relic. For more information, see &lt;a href=&quot;http://newrelic.com/software-analytics&quot;&gt;http://newrelic.com/software-analytics&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 16 Jan 2014 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.40.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjQwLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3400-0</link><pubDate>Mon, 26 Jun 2017 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;DynamoDB
The Java agent now provides visibility into your applications’ usage of DynamoDB when using the client versions 1.11.106 and greater. You will see the calls in the application breakdown, in trace details, on the Databases page, in Transaction maps, and in Service maps.&lt;/li&gt;
&lt;li&gt;Solr
With this release, the java agent now supports Solr versions 6.5.0+.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Bug Fixes:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed an instrumentation gap that prevented agent from capturing instance-level information about database queries for non-blocking IO driver configurations.&lt;/li&gt;
&lt;li&gt;Fixes an issue where usage onCompleted handler(s) with the ning async http client could cause a transaction to end too early, resulting in missed instrumentation.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 26 Jun 2017 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.4.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjQuMQ==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-341</link><pubDate>Tue, 21 Jan 2014 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fix: In some cases, Play 2.2 didn&apos;t report transactions&lt;/p&gt;
&lt;p&gt;When a chain of promises resolved, specifically using Future.flatMap(), lingering promises prevented the transaction from completing, in which case the transaction wouldn&apos;t be reported for the app. This is now tracked correctly.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Improved performance when instrumented code is not running in a transaction&lt;/p&gt;
&lt;p&gt;Avoids unnecessary work when code instrumented by the Java agent is not running in the scope of a transaction.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 21 Jan 2014 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.41.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjQxLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3410</link><pubDate>Tue, 25 Jul 2017 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Vert.x&lt;/p&gt;
&lt;p&gt;The Java agent now provides visibility into your applications built using the Vert.x toolkit (supported versions 3.3.0 through 3.4.2). The agent instruments Vert.x Web, Vert.x Core, and Vert.x HTTP client. With this instrumentation, the agent will identify and name your transactions based on Vert.x web routing paths. The agent will also time web handlers, track async handlers, and external calls made with Vert.x HTTP client.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Slick&lt;/p&gt;
&lt;p&gt;With this release, the Java agent now supports Slick 3.2&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;API&lt;/p&gt;
&lt;p&gt;Added ExtendedRequest API class to report content-length for HTTP responses. See &lt;a href=&quot;http://newrelic.github.io/java-agent-api/javadoc/com/newrelic/api/agent/Transaction.html#setWebResponse-com.newrelic.api.agent.Response-&quot;&gt;Transaction.setWebResponse API&lt;/a&gt; for more details.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Bug fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed bug in Netty instrumentation that cause erroneous reporting of &lt;code&gt;NettyDispatcher&lt;/code&gt; transactions. This affected transactions responding large incoming requests.&lt;/li&gt;
&lt;li&gt;Fixed bug that caused agent to not report error rate metrics. The UI would show application errors, but error rate would show up as 0%. This was introduced in 3.38.0.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 25 Jul 2017 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.4.2]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjQuMg==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-342</link><pubDate>Thu, 23 Jan 2014 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End of life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fix: Solr caches and Solr updates data not appearing&lt;/p&gt;
&lt;p&gt;Starting with version 3.4.1, Solr caches and updates were not appearing in the UI. This bug has been fixed.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: JVM tab thread pool, session, and transaction data not appearing&lt;/p&gt;
&lt;p&gt;Starting with version 3.4.1, some data was not appearing under the JVM tab. This bug has been fixed.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 23 Jan 2014 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.42.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjQyLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3420</link><pubDate>Mon, 28 Aug 2017 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Hystrix&lt;/p&gt;
&lt;p&gt;With this release, the Java agent now supports Hystrix version 1.5.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Improved metadata collection for cloud providers&lt;/p&gt;
&lt;p&gt;The agent now collects additional metadata when running in AWS, GCP, Azure, and PCF. This information is used to provide an enhanced experience when the agent is deployed on those platforms.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Bug Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed bug that caused agent to not report error rate metrics. The UI would show application errors, but error rate would show up as 0%. This was introduced in 3.38.0.&lt;/li&gt;
&lt;li&gt;Improved Hystrix transaction reporting to better handle cases where an Observable is created that never executes.&lt;/li&gt;
&lt;li&gt;Fixed an issue where JAX-RS subresources would not be picked up for transaction naming, resulting in an incorrect or incomplete transaction name.&lt;/li&gt;
&lt;li&gt;Fixed a bug with DataNucleus that was preventing instance level and query information from being picked up.&lt;/li&gt;
&lt;li&gt;Fixed a bug that caused the agent to report external calls made with Commons HTTPClient as &quot;unknown host&quot;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Known Issues&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fixed in 3.44.0&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;High-throughput applications with daily logging enabled and a specified log limit could cause log files to grow without bound.&lt;/li&gt;
&lt;li&gt;The agent could leak memory when instrumenting the Ning Async Http Client.&lt;/li&gt;
&lt;li&gt;Akka HTTP content type was not reported.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fixed in 3.46.0&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;In rare cases, a Vert.x application running this version of the agent can deadlock.&lt;/li&gt;
&lt;li&gt;Usage of the &lt;code&gt;setNull()&lt;/code&gt; method on the JDBC interface now reports up &lt;code&gt;null&lt;/code&gt; in the query string sent to New Relic instead of incorrectly reporting up the &lt;code&gt;sqlType&lt;/code&gt; as the value.&lt;/li&gt;
&lt;li&gt;JVM crash that can occur when running the Java agent with the non-default spring-aop-2 instrumentation enabled.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 28 Aug 2017 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.43.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjQzLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3430</link><pubDate>Wed, 27 Sep 2017 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Java 9&lt;/p&gt;
&lt;p&gt;The Java agent can now be run with &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/getting-started/compatibility-requirements-java-agent#jvm&quot;&gt;Oracle Java SE 9&lt;/a&gt;! You can run your applications on the Java 9 runtime JVM, and run applications compiled at the Java 9 language level.&lt;/p&gt;
&lt;p&gt;By default, this release of New Relic&apos;s Java agent does not support applications configured for the new Java 9 modular mode, such as Jigsaw. In order to run in this mode with the agent, your application must be configured to require the &lt;code&gt;java.sql&lt;/code&gt; module through one of these two options:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Add &lt;code&gt;requires java.sql;&lt;/code&gt; to your &lt;code&gt;module-info.java&lt;/code&gt; class&lt;/li&gt;
&lt;li&gt;Use the &lt;code&gt;--add-modules=java.sql&lt;/code&gt; command line flag&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 27 Sep 2017 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.44.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjQ0LjE=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3441</link><pubDate>Tue, 07 Nov 2017 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Note&lt;/h3&gt;
&lt;p&gt;If you are using Akka Http 10.x, use this 3.44.1 release rather than 3.44.0.&lt;/p&gt;
&lt;h3&gt;Bug Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixes an issue where an Akka HTTP 10.x application could fail at runtime with a &lt;code&gt;NullPointerException&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 07 Nov 2017 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.45.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjQ1LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3450</link><pubDate>Mon, 11 Dec 2017 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;RabbitMQ&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The agent now provides instrumentation for RabbitMQ 5.0.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;This release changes instrumentation for all supported versions of RabbitMQ to use the exchange name instead of routing keys for the transaction name and produce/consume metrics. This should provide more meaningful transaction names, but will change what transactions you see in New Relic.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Now reports queue purge&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;No longer reports misleading MessageBroker consume metric for callbacks/message listeners&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Adds message properties to tracer attributes, and a configuration to disable them:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;message_tracer:
    segment_parameters:
      enabled: false
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Bug Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Exceptions thrown within scala Future/CallbackRunnable code could cause inaccurate transaction times&lt;/li&gt;
&lt;li&gt;Deadlock could occur when tracking asynchronous activity in Vert.x.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 11 Dec 2017 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.46.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjQ2LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3460</link><pubDate>Mon, 08 Jan 2018 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Websphere 9&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;With this release, the Java agent now supports Websphere 9, both Traditional and Liberty Profile.&lt;/p&gt;
&lt;p&gt;More information on how to install and configure the Java agent on Websphere can be found here: &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/additional-installation/ibm-websphere-application-server&quot;&gt;IBM WebSphere Application Server&lt;/a&gt;.&lt;/p&gt;
&lt;h3&gt;Bug Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixes a potential deadlock scenario caused by the Java agent in high throughput applications running on Vert.x.&lt;/li&gt;
&lt;li&gt;Usage of the &lt;code&gt;setNull()&lt;/code&gt; method on the JDBC interface now reports up &lt;code&gt;null&lt;/code&gt; in the query string sent to New Relic, instead of incorrectly reporting up the &lt;code&gt;sqlType&lt;/code&gt; as the value.&lt;/li&gt;
&lt;li&gt;Fixes a JVM crash that can occur when running the Java agent with the non-default &lt;code&gt;spring-aop-2&lt;/code&gt; instrumentation enabled.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 08 Jan 2018 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.47.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjQ3LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3470</link><pubDate>Mon, 05 Feb 2018 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Jersey Client&lt;/p&gt;
&lt;p&gt;The agent now provides instrumentation for Jersey Client versions 1.x and 2.x. You will see your calls using the Jersey Client APIs as Externals in New Relic, whether you are using the synchronous or reactive client API.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;request.uri&lt;/code&gt; collected as an agent attribute&lt;/p&gt;
&lt;p&gt;You can now control the collection of &lt;code&gt;request.uri&lt;/code&gt; on errors and transaction Traces you would other attributes. For more information on agent attributes &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/agent-data/agent-attributes&quot;&gt;see here&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixes a bug in Jersey 2 instrumentation where external segments could time out, causing an abnormally large &quot;total time&quot; for a transaction. This bug would occur if a client disconnected while being sent a response or if an unstable network is in place where an IOException occurs during response.&lt;/li&gt;
&lt;li&gt;In some cases, the agent may have incorrectly reported the transaction thread name to New Relic as &quot;New Relic Token Expiration Handler&quot;.&lt;/li&gt;
&lt;li&gt;Agent was incorrectly bundling javax.xml and jregex packages&lt;/li&gt;
&lt;li&gt;Fixes an issue in the Wildfly instrumentation that could cause async servlet transactions to go unreported.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 05 Feb 2018 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.48.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjQ4LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3480</link><pubDate>Mon, 12 Mar 2018 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Customers using Tomcat, WebSphere Liberty, or Resin now have data source information available. Data source information includes the number of active and idle connections, as well as the maximum possible connections. This information can be seen under the Data Source tab on the JVMs page&lt;/li&gt;
&lt;li&gt;CompletableFuture instrumentation is more efficient&lt;/li&gt;
&lt;li&gt;Disabling SSL connections to New Relic has been deprecated. SSL connections are enabled by default. In a future release, the option to disable SSL will be removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Bug fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed an issue that in rare cases prevented Play async transaction tracking&lt;/li&gt;
&lt;li&gt;Fixed a memory leak that could occur in Spymemcached instrumentation&lt;/li&gt;
&lt;li&gt;Fix to disable &lt;code&gt;attributes.include&lt;/code&gt; lists when High-security mode is enabled&lt;/li&gt;
&lt;li&gt;Fixed an issue where errors outside of a transaction did not contain custom attributes on the event&lt;/li&gt;
&lt;li&gt;Fixed an issue that caused the UI to not display errors that had error messages over 255 bytes&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 12 Mar 2018 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.5.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjUuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-350</link><pubDate>Wed, 05 Mar 2014 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End-of-life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;New Relic supports WildFly 8.0&lt;/p&gt;
&lt;p&gt;The Java Agent now provides instrumentation for WildFly 8.0. You will see the same great visibility into your web transactions, app server stats, and frameworks that you have with previous versions of JBoss.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: PostgreSQL explain plan bug&lt;/p&gt;
&lt;p&gt;Fixes PostgreSQL bug that allowed parameters to be sent in explain plans under some circumstances. Parameters are now masked prior to sending when explain plans are enabled (explain_enabled: true) and record_sql is set to &apos;obfuscated&apos;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: SQL parameter obfuscation didn&apos;t work if the parameter value contained a newline&lt;/p&gt;
&lt;p&gt;The record_sql: obfuscated config setting did not properly mask parameters when it included a newline character. This bug has been fixed.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Agent no longer supports obfuscation of individual fields&lt;/p&gt;
&lt;p&gt;Previous versions of the agent allowed an obfuscated&lt;em&gt;sql_fields option to select specific field names to obfuscate when record_sql: raw. We have discovered rare cases in which this feature would not mask SQL parameters correctly, so we have removed the configuration option. Now, if obfuscated_sql_fields is set, the setting of record_sql: raw is ignored and _all&lt;/em&gt; fields are masked.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: In some cases, an agent could fail to reconnect to New Relic&lt;/p&gt;
&lt;p&gt;Fixed several issues that in rare cases could cause the agent to cease reporting data until JVM restart.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Transaction name specified in XML configuration was being ignored&lt;/p&gt;
&lt;p&gt;In some cases transaction names set in XML files in the extensions folder were being ignored. This bug has been fixed in this release.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Jetty 9.1 transactions were not showing up in 3.3.x or higher agents&lt;/p&gt;
&lt;p&gt;Starting with the 3.3.1 agent, customers were not seeing transactions from Jetty 9.1. This bug has been fixed.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Websphere 7.0 was not being instrumented&lt;/p&gt;
&lt;p&gt;Starting in agent version 3.3.0, WebSphere 7.0 was not being instrumented. This bug has been fixed.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Solr tabs in UI not always appearing&lt;/p&gt;
&lt;p&gt;If you are running a Solr application and not seeing any tabs, please update to this version.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 05 Mar 2014 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.47.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjQ3LjE=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3471</link><pubDate>Wed, 07 Mar 2018 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Bug fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;A security update corrects an issue where the agent may report DB query results to New Relic or re-issue an SQL statement. For information on the bug fix, see the &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/new-relic-security/security-bulletins/security-bulletin-nr18-07&quot;&gt;security bulletin&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Known Issues&lt;/h3&gt;
&lt;h4&gt;Fixes in 3.48.0&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;Fixes an issue that in rare cases prevented Play async transaction tracking&lt;/li&gt;
&lt;li&gt;Fixes a memory leak that could occur in Spymemcached instrumentation&lt;/li&gt;
&lt;li&gt;Fix to disable attributes.include lists when High-security mode is enabled&lt;/li&gt;
&lt;li&gt;Fixes an issue where errors outside of a transaction did not contain custom attributes on the event&lt;/li&gt;
&lt;li&gt;Fixes an issue that caused the UI to not display errors that had error messages over 255 bytes&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Fixes in 4.0.0&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;Fixes an issue where the Thread Profiler could fail to report. In this case, the agent logged a java.lang.StackOverflowError&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Fixes in 4.1.0&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;Ensure that custom events added during a transaction do not get discarded if the transaction is ignored via a call to NewRelic.ignoreTransaction().&lt;/li&gt;
&lt;li&gt;A security update that corrects an issue affecting PostgreSQL that could occur if High-security mode was enabled (or record_sql was set to off) and a query ran slow enough to trigger an explain plan. If the above conditions were met the agent may not have properly stripped out all information from the query. For information on this fix, see the security bulletin.&lt;/li&gt;
&lt;li&gt;Fixes an issue where the agent could not parse database statements that included the IGNORE and INTO keywords.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Fixes in 4.2.0&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;Fixes a bug where transactions were being kept alive for too long when application is under heavy GC, causing inaccurate throughput to be reported.&lt;/li&gt;
&lt;li&gt;Fixes a bug in which Akka routing instrumentation could cause extra memory usage. When this is the case, the transaction throughput will look significantly lower than anticipated.&lt;/li&gt;
&lt;li&gt;Fixes a rare bug in Play WS instrumentation where exceptions thrown by instrumentation were propagated out to the application code, potentially causing the request to error.&lt;/li&gt;
&lt;li&gt;Fixes a bug where Jersey Client and HttpUrlConnection could be double instrumented, resulting in inflated external call count.&lt;/li&gt;
&lt;li&gt;Fixes a bug where the total time and response time for a long running task could be misreported.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Fixes in 4.3.0&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;Fixes an issue where transaction throughput counts could be artificially inflated when using async servlets in Jersey.&lt;/li&gt;
&lt;li&gt;Fixes an issue where JBoss and Wildfly datasources could cause a LinkageError.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Fixes in 4.4.0&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;Fixes an issue where the Java agent 4.3.0 would not report data depending on the locale setting of the JVM. Java Agent 4.3.0 failed to send event data if the JVM locale is set to use a comma as the decimal. You would see NumberFormatException in the agent log.&lt;/li&gt;
&lt;li&gt;Fixes a rare issue where the agent will incorrectly attempt to continually retransform classes when an extension with a modification date in the future is used, causing a significant increase in CPU load.&lt;/li&gt;
&lt;li&gt;Fixes a ConcurrentModificationException caused by ning instrumentation that manifests in Mule instrumentation that causes the request it affects to be retried and the Java agent to not report header data.&lt;/li&gt;
&lt;li&gt;Fixes an issue where if enable_auto_app_naming was set to true and distributed_tracing.enabled was set to true it would sample every distributed trace event. Now if the agent has both configs enabled, it will not turn on distributed tracing.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Fixes in 4.5.0&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;Fixes an issue where OKHttp 3 was not tracking external total time correctly.&lt;/li&gt;
&lt;li&gt;Fixes an issue where for some JDBC drivers, the agent would execute additional getMetaData queries..&lt;/li&gt;
&lt;li&gt;Fixes an issue with the agent’s Scala instrumentation that could result in incorrect throughput, invalid or negative data in transaction segments, or inability to ignore status codes.&lt;/li&gt;
&lt;li&gt;Fixes an issue with the play-ws instrumentation that caused ClassNotFound exceptions to occur in the agent logs when withHeaders is used. This could result incomplete transactions and attributes in RPM.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Fixes in 4.6.0&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;Fixes an issue where the agent could cause an application deadlock when two tokens are created and linked from the other’s thread. This affects users of the New Relic token API and also users of the Hystrix framework.&lt;/li&gt;
&lt;li&gt;Fixes an issue where the agent would not capture JMX Datasource information from Tomcat when JDNI GlobalNamingResources is used.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Fixes in 4.7.0&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;None&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Fixes in 4.8.0&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;Fixed an issue where the agent would break webpage rendering by inserting New Relic Browser monitoring javascript into the &lt;code&gt;&amp;#x3C;header&gt;&lt;/code&gt; tag of pages which were missing &lt;code&gt;&amp;#x3C;head&gt;&lt;/code&gt; tags.&lt;/li&gt;
&lt;li&gt;Certain frameworks, like Spring Cloud Gateway, triggered a bug in the Spring webflux instrumentation, causing transactions to stay open until they timed out. This bug resulted in more memory pressure and looked like a memory leak. This has been fixed in this release.&lt;/li&gt;
&lt;li&gt;Fixed an issue where the agent would stop reporting to New Relic following a ForceDisconnectException and accumulate transaction data resulting in OutOfMemory Exceptions.&lt;/li&gt;
&lt;li&gt;The agent now validates that app_names only contains three application names. If the agent is configured to report more than three application names, the agent will log a warning message and stop reporting to New Relic.&lt;/li&gt;
&lt;li&gt;When a custom WSRequestFilter is used that modifies an outbound play-ws request, the agent would report overly long segments due to Segment timeouts and will also result in a loss of External/ metrics. This has been fixed.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Fixes in 4.9.0&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fixes a possible NullPointerException that could occur in Hystrix instrumentation and propagate into application code.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fixes a bug where usage of the HttpsURLConnection getInputStream() method could cause some scoped external metrics to be double-counted.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fixes an issue that prevents the agent from connecting to an HTTP proxy that does not requires a username or password.&lt;/p&gt;
&lt;p&gt;When configured to use an HTTP proxy by using proxy_host and proxy_port, the agent would look for proxy_username and proxy_password. If those weren&apos;t provided, the agent would use an empty string for proxy_username and proxy_password.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Prevents unnecessary dependencies from showing up in the newrelic-agent pom&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fixes deadlocks occurring in agent 4.7.0 that were caused by instrumentation of classes in the sun/nio/cs/.* package&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fixes an issue where custom jmx metrics with &apos;.&apos;s in the attribute name would not get recorded.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Fixes in 4.11.0&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;Fixes an issue where applications using neo4j bolt JDBC driver could fail to start.&lt;/li&gt;
&lt;li&gt;&quot;log_daily&quot; configuration did not respect documented precedence&lt;/li&gt;
&lt;li&gt;Fixes a bug that caused the Spring Webflux instrumentation to fail to apply for spring-webflux versions greater than 5.0.*&lt;/li&gt;
&lt;li&gt;Fixes an issue where transactions would not be fully reported if distributed_tracing.enabled = true and cross_application_tracer.enabled = false&lt;/li&gt;
&lt;li&gt;Fixes an issue where Akka Http application would not start with the agent attached when using sbt&lt;/li&gt;
&lt;li&gt;Fixes an issue where the agent could fail to determine the Hostname&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Fixes in 4.12.0&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;Fixed an issue with Jax-RS subresource transaction naming where the root path is duplicated when a nested resource structure is used. This could lead to transactions being named incorrectly for incoming requests to a Jax-RS framework.&lt;/li&gt;
&lt;li&gt;Fixed a bug in the agent&apos;s Jetty metric sampling that could prevent Jetty specific metrics from being reported when the number of threads returned by JMX is zero.&lt;/li&gt;
&lt;li&gt;Fixed a NullPointerException that can occur when Cross Application Tracing configuration is explicitly disabled.&lt;/li&gt;
&lt;li&gt;Fixed an issue where transactions would be named incorrectly when using custom Akka Http stream directives or a pathEnd directive followed by a Segment directive.&lt;/li&gt;
&lt;li&gt;Fixed an issue where certain usages of Akka and Scala would prevent transactions from being reported to New Relic. This would also manifest as a NullPointerException in the agent log at &lt;code&gt;finest&lt;/code&gt; level.&lt;/li&gt;
&lt;li&gt;The Java agent no longer includes Jaxb or Logback dependencies. A new dependency on Log4j2 has been added&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Fixes in 4.12.1&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;Fixed an issue where an exception would be thrown during agent initialization which caused the application to shut down when the log file is not writable. In previous agent versions there was an undocumented behavior where the agent would log to STDOUT instead.&lt;/li&gt;
&lt;li&gt;Fixed a regression where a NullPointerException would be logged and instrumentation would not be applied when using an XML extension with comments preceding the instrumentation section.&lt;/li&gt;
&lt;li&gt;Fixed issue where setting the &lt;code&gt;log_limit_in_kbytes&lt;/code&gt; greater than 0 and &lt;code&gt;log_file_count&lt;/code&gt; equal to 1 would result in the agent not logging to the agent log file.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 07 Mar 2018 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.5.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjUuMQ==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-351</link><pubDate>Thu, 27 Mar 2014 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/installation/update-new-relic-agent&quot;&gt;Update the agent&lt;/a&gt;. For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/maintenance/new-relic-agent-plugin-end-life-policy&quot;&gt;End of life policy&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fix: Auto-RUM bug&lt;/p&gt;
&lt;p&gt;Starting in version 3.5.0 of the Java agent, in rare cases Auto-RUM could cause the New Relic header to be placed within a script tag. This bug has been fixed.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: In rare cases, agent stops reporting&lt;/p&gt;
&lt;p&gt;In rare cases, the Java Agent hung on socketRead while performing an SSL handshake and would not report data until JVM restart. This bug has been fixed.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Occasionally missed web transaction when using ResultSet&lt;/p&gt;
&lt;p&gt;In version 3.5.0 of the agent some transactions that use a JDBC ResultSet were missing in the UI. The agent log would show an &quot;Inconsistent State&quot; error. This bug has been fixed.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: X-Ray Sessions bugs.&lt;/p&gt;
&lt;p&gt;X-Ray Sessions sometimes returned no transaction traces. A memory leak with X-Ray Sessions when many sessions were run was also fixed.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 27 Mar 2014 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.7.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjcuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-370</link><pubDate>Tue, 20 May 2014 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Flexible capturing of attributes&lt;/p&gt;
&lt;p&gt;The Java agent offers the ability to fine tune the attributes being sent to New Relic. Please see our docs site for more information on configuring attributes: &lt;a href=&quot;https://docs.newrelic.com/docs/java/java-agent-attributes&quot;&gt;https://docs.newrelic.com/docs/java/java-agent-attributes&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Agent-Side High Security Configuration&lt;/p&gt;
&lt;p&gt;If your account is set to high security in the New Relic UI, you must add the following to your local newrelic.yml configuration file:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;high_security: true
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Without this property, the agent will stop collecting data when high security is enabled in the New Relic UI. See &lt;a href=&quot;https://docs.newrelic.com/docs/subscriptions/high-security&quot;&gt;https://docs.newrelic.com/docs/subscriptions/high-security&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Discovery of hostname reported to New Relic&lt;/p&gt;
&lt;p&gt;If New Relic reports an IP address for your hostname, you can now control whether the host name is an IP version 4 or 6 address by setting the following property in your newrelic.yml configuration file:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;process_host: 
  ipv_preference: {4 or 6}
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Improved JMX metric naming&lt;/p&gt;
&lt;p&gt;You can now set the metric name when configuring JMX metrics through a custom yaml file using the property &quot;root_metric_name&quot;. Note, all of the JMX metrics will still be prefixed with &quot;JMX&quot; and end with the name of the attribute. See &lt;a href=&quot;https://docs.newrelic.com/docs/java/custom-jmx-yaml-examples&quot;&gt;https://docs.newrelic.com/docs/java/custom-jmx-yaml-examples&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Naming of CGLib classes&lt;/p&gt;
&lt;p&gt;CGLib auto generated classes with Spring resulted in poor metric names. The agent now excludes the random part from the name.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: JMS transaction naming&lt;/p&gt;
&lt;p&gt;JMS onMessage instrumentation now uses a lower priority for naming transactions and honors the enable_auto_transaction_naming config.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Improved Jetty coverage&lt;/p&gt;
&lt;p&gt;Jetty versions 9.04 through 9.06 were not instrumented. This has been fixed.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Potential memory leak from database calls&lt;/p&gt;
&lt;p&gt;In some cases when database work is performed outside of a New Relic transaction, a memory leak could occur. This bug has been present in the agent since 3.5.0.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: VerifyError can occur when using Nevado JMS.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 20 May 2014 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.6.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjYuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-360</link><pubDate>Thu, 24 Apr 2014 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Enhanced XML for custom instrumentation&lt;/p&gt;
&lt;p&gt;The custom XML xsd has been enhanced to support the instrumentation of interfaces, subclasses, and method annotations. These enhancements give you much more flexibility to identify transactions and add monitoring of components without changes to your source code.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Agent could cause VerifyError&lt;/p&gt;
&lt;p&gt;In specific cases, the agent could cause verification errors.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Embedded Jetty instrumentation&lt;/p&gt;
&lt;p&gt;Starting with the 3.3.1 agent, transactions were not reported for some configurations of embedded Jetty.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Exceptions incorrectly reported&lt;/p&gt;
&lt;p&gt;In some cases exceptions were reported even if configured to be ignored.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Embedded Tomcat not reporting JMX Builtin metrics&lt;/p&gt;
&lt;p&gt;In newer versions of embedded Tomcat the agent wasn&apos;t collecting JMX metrics properly.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Apache HttpClient 4.3 not consistently reported&lt;/p&gt;
&lt;p&gt;The Java agent now instruments Apache HttpClient 4.3 calls, including the new call patterns introduced in 4.3.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: RESTEasy transactions&lt;/p&gt;
&lt;p&gt;In certain instances, transactions between applications were not getting linked correctly when RESTEasy was used.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: JBoss 7 port not reported correctly&lt;/p&gt;
&lt;p&gt;The port was not reported correctly for some JBoss users.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Auto-RUM bug&lt;/p&gt;
&lt;p&gt;Starting in version 3.5.0 of the Java agent, in rare cases Auto-RUM could cause the New Relic footer script to be placed within a script tag.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Errors not reporting with some versions WebSphere 7.0&lt;/p&gt;
&lt;p&gt;In some Fix Packs of WebSphere 7.0, the agent did not report errors properly.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Agent works properly inside a folder with + in the path&lt;/p&gt;
&lt;p&gt;The Java agent did not initialize properly when in a folder with a + character in the pathname.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Agent HttpClient logging&lt;/p&gt;
&lt;p&gt;The Agent&apos;s HttpClient was writing to the app server&apos;s log when it discovered a log4j appender.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Inconsistent State with Play 1.2.x&lt;/p&gt;
&lt;p&gt;In some cases the agent was logging an &quot;Inconsistent state!&quot; message and not reporting a transaction.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Invalid errors for Stripes&lt;/p&gt;
&lt;p&gt;The Agent was erroneously reporting spurious 404 errors for web apps using Stripes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Hanging threads in the Agent with SQL Prepared Statements&lt;/p&gt;
&lt;p&gt;Under rare circumstances, threads could hang in the Agent when an application with multiple threads made heavy use of SQL Prepared Statements.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Request queue time was incorrect for some versions of nginx&lt;/p&gt;
&lt;p&gt;Nginx fractional second header values for queue and server start times are now parsed correctly.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: XML entity expansion with non-SSL connection to New Relic&lt;/p&gt;
&lt;p&gt;Fixed an XML entity expansion vulnerability that only occurs when the agent is configured with ssl: false; the default is true. The agent already has other protection against unauthorized entity expansion. This fix is an additional layer of protection.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: In rare case, agent can cause application thread to hang&lt;/p&gt;
&lt;p&gt;Under rare circumstances, an application thread could hang when an application with multiple threads made heavy use of SQL Prepared Statements.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 24 Apr 2014 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.7.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjcuMQ==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-371</link><pubDate>Tue, 03 Jun 2014 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fix: NewRelic.setRequestAndResponse API call was not backward-compatible&lt;/p&gt;
&lt;p&gt;Implementation classes of the com.newrelic.api.agent.Request and com.newrelic.api.agent.Response interfaces compiled with a pre-3.5.0 version of newrelic-api.jar threw a java.lang.AbstractMethodError when used with a 3.5.0 or higher version of the Agent.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: NewRelic.setRequestAndResponse can cause LinkageError&lt;/p&gt;
&lt;p&gt;For some app servers, calling NewRelic.setRequestAndResponse API caused a java.lang.LinkageError: loader constraint violation&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: ignoreTransaction attribute ignored&lt;/p&gt;
&lt;p&gt;The ignoreTransaction=&quot;true&quot; attribute in custom xml had no effect. The transaction was not ignored even with &quot;true&quot; set.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: In rare cases, Auto-RUM failed to add the New Relic header script to JSP pages.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Naming of CGLib classes&lt;/p&gt;
&lt;p&gt;Improved the fix in 3.7.0 for excluding the random part from the name of CGLib generated class.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Agent works properly inside a folder with + in the path&lt;/p&gt;
&lt;p&gt;Improved the fix in 3.7.0 for a directory path with a + character.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 03 Jun 2014 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.7.2]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjcuMg==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-372</link><pubDate>Wed, 11 Jun 2014 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Support for Play 2.3&lt;/p&gt;
&lt;p&gt;The Java Agent now provides full support for Play 2.3. In particular, transaction naming is based on the controller action.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 11 Jun 2014 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.8.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjguMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-380</link><pubDate>Mon, 30 Jun 2014 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Experimental support for Java SE 8&lt;/p&gt;
&lt;p&gt;This version includes experimental support for Java 8. Code that is known to work with Java SE 8 and compiled for Java 6 or 7 (such as Tomcat 8, Play Framework 2.3, etc) should work fine. We would like your feedback if you run into any trouble running code compiled for Java SE 8.&lt;/p&gt;
&lt;p&gt;Please only try this in non-production environments. We are eager for your feedback as we work to make Java 8 support production-ready. To enable Java SE 8 compatibility, set the following system property on your system:&lt;/p&gt;
&lt;p&gt;-Dnewrelic.enable.java.8&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Support for Hibernate 4.3&lt;/p&gt;
&lt;p&gt;The Java agent now reports details on calls to Hibernate 4.3 as well as previous versions.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Cross-Application Tracing didn&apos;t trace when caller used WLS 11g and SOAP.&lt;/p&gt;
&lt;p&gt;In Oracle WebLogic Server 11g, cross-application tracing (CAT) failed for external calls originating in the default SOAP pipeline, producing an exception in the log. This bug has been fixed.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Old DocumentationBuilderFactory can cause agent to disable itself&lt;/p&gt;
&lt;p&gt;When using a DocumentBuilderFactory implementation compiled with Java 1.4 or below an abstract method error was being thrown, causing the agent to disable itself.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Agent not detecting async servlets in WebSphere 8.x&lt;/p&gt;
&lt;p&gt;The Java Agent was not detecting the call to AsyncContext.complete(), so it was not reporting async servlet calls.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 30 Jun 2014 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.8.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjguMQ==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-381</link><pubDate>Thu, 10 Jul 2014 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fix: EJB application transaction metrics reporting correctly for WebLogic&lt;/p&gt;
&lt;p&gt;In version 3.8.0 of the agent, EJB application transaction metrics for WebLogic were reporting the data as the average value per a bean instead of the total value per an application. This has been fixed and the data can now be found under the JVM tab.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: App Map incomplete&lt;/p&gt;
&lt;p&gt;If a web request made an external call to another app, the app making the web request did not appear in the App Map. Moreover, subsequent external calls to other apps did not appear in the App Map either.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 10 Jul 2014 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.8.2]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjguMg==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-382</link><pubDate>Mon, 28 Jul 2014 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fixed: Instrumentation missing including browser monitoring&lt;/p&gt;
&lt;p&gt;There was a bug in the agent that caused several instrumentation modules to not be loaded. This bug occurred when no extensions directory existed or the extensions directory was empty. This fix will allow auto-RUM to report normally. This bug was introduced in 3.8.0.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Missing metrics with Java 2 Security&lt;/p&gt;
&lt;p&gt;When Java 2 Security was enabled, the agent failed to report some metrics. This bug was introduced in 3.8.0.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Agent could stop reporting transactions&lt;/p&gt;
&lt;p&gt;For Jetty applications, the agent could stop reporting transactions if an uncaught exception was thrown. This bug was introduced in 3.6.0.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix: Agent not reporting external services in Play 2.3&lt;/p&gt;
&lt;p&gt;The Java Agent was not reporting calls to external services.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 28 Jul 2014 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.9.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjkuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-390</link><pubDate>Thu, 31 Jul 2014 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;New Features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Support for new Cross Application Trace map&lt;/p&gt;
&lt;p&gt;This release enhances cross application tracing with the new &lt;a href=&quot;https://docs.newrelic.com/docs/apm/traces/cross-application-traces/viewing-cross-application-traces#cat-trace-tab&quot;&gt;trace map&lt;/a&gt; visualization of your app&apos;s cross application calls. The new visualization helps you spot bottlenecks in external services within &lt;a href=&quot;https://docs.newrelic.com/docs/apm/traces/transaction-traces/transaction-traces&quot;&gt;transaction traces&lt;/a&gt; and gives you an end-to-end understanding of how the transaction trace is used by other applications and services. This leads to faster problem diagnosis and better collaboration across teams. All agents involved in the cross application communication must be &lt;a href=&quot;https://docs.newrelic.com/docs/apm/traces/cross-application-traces/troubleshooting-cross-application-traces#agents&quot;&gt;upgraded&lt;/a&gt; to see the complete graph. You can view cross application traces in the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/traces/cross-application-traces/viewing-cross-application-traces#cat-trace-tab&quot;&gt;transaction trace drill-down&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Support for RabbitMQ&lt;/p&gt;
&lt;p&gt;You can now see messages sent to and received from RabbitMQ 2.7.0 or higher. The time spent processing a dequeued message is shown as a Message transaction.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Support for SOAP over CXF&lt;/p&gt;
&lt;p&gt;In this release, we provide automated instrumentation of your SOAP calls when using CXF 2.7.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Absolute maximum for &lt;code&gt;max_samples_stored&lt;/code&gt; lifted&lt;/p&gt;
&lt;p&gt;In previous versions of the agent, &lt;code&gt;max_samples_stored&lt;/code&gt; could not be set to more than 10000. This restriction has been lifted, which can help avoid sampling.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Enable Cross Application Tracing for all valid uses of &lt;code&gt;HttpURLConnection&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Prior to this, certain uses of &lt;code&gt;HttpURLConnection&lt;/code&gt; between two New Relic apps would fail to be recognized as Cross Application Traces and instead show up as external calls.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Allow customers to set the system property &lt;code&gt;logback.ContextSelector&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Prior to this fix, the agent would throw a &lt;code&gt;ClassNotFoundException&lt;/code&gt; when the system property &lt;code&gt;logback.ContextSelector&lt;/code&gt; was set.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Wrong Application name in App Map when Auto App Naming is enabled&lt;/p&gt;
&lt;p&gt;When the &lt;code&gt;enable_auto_app_naming&lt;/code&gt; config setting is set to true, the auto-named apps are incorrectly identified as the default app in the App Map.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 31 Jul 2014 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v4.0.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC00LjAuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-400</link><pubDate>Wed, 04 Apr 2018 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Removed the SSL configuration option: SSL is now always used in communication with New Relic servers. The &lt;code&gt;newrelic.yml&lt;/code&gt; ssl configuration and &lt;code&gt;-Dnewrelic.config.ssl&lt;/code&gt; system property are no longer used. Setting either value to anything other than true will result in logging a warning.&lt;/li&gt;
&lt;li&gt;Minimum version required for use in EU data center.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixes an issue where the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/applications-menu/events/thread-profiler-tool&quot;&gt;thread profiler&lt;/a&gt; could fail to report. In this case, the agent logged a &lt;code&gt;java.lang.StackOverflowError&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 04 Apr 2018 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v4.0.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC00LjAuMQ==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-401</link><pubDate>Thu, 19 Apr 2018 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixes an issue Introduced in 3.48.0 with event sampling. The agent would only report the first &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/configuration/java-agent-configuration-config-file#ae-max_samples_stored&quot;&gt;max_samples_stored&lt;/a&gt; events in a given minute reporting period and disregard the remainder for that minute. With the fix, the agent randomly samples those events across the reporting period.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 19 Apr 2018 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v4.1.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC00LjEuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-410</link><pubDate>Wed, 02 May 2018 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Configuration for &lt;code&gt;custom_insights_events.max_samples_stored&lt;/code&gt; format in YAML has been changed. For agents 4.1.0 and above, the old .yml config setting will be ignored, which will result in the agent defaulting to max samples stored of 10,000 custom events. When you update your agent, please migrate to the new format:&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code&gt;custom_insights_events:
    enabled: true
    max_samples_stored: 5000
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;The agent will log a warning message when it detects that the &lt;code&gt;java.endorsed.dirs&lt;/code&gt; property is used. Classes in these directories cannot be instrumented by the agent because they are loaded by the bootstrap classloader.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Ensure that custom events added during a transaction do not get discarded if the transaction is ignored via a call to &lt;code&gt;NewRelic.ignoreTransaction()&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;A security update that corrects an issue affecting PostgreSQL that could occur if High-security mode was enabled (or &lt;code&gt;record_sql&lt;/code&gt; was set to off) and a query ran slow enough to trigger an explain plan. If the above conditions were met the agent may not have properly stripped out all information from the query. For information on this fix, see the &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/new-relic-security/security-bulletins/security-bulletin-nr18-09&quot;&gt;security bulletin&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Addresses cases where the agent could not parse database statements that included the &lt;code&gt;IGNORE&lt;/code&gt; and &lt;code&gt;INTO&lt;/code&gt; keywords.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 02 May 2018 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v4.10.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC00LjEwLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-4100</link><pubDate>Wed, 23 Jan 2019 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;This release adds Transaction event attributes that provide context between your Kubernetes cluster and services. For details on the benefits (public beta coming soon) see &lt;a href=&quot;https://blog.newrelic.com/engineering/monitoring-application-performance-in-kubernetes/&quot;&gt;this blog post&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;The Java agent now supports setting all configuration options via Environment variables. Environment variables will take precedence over newrelic.yml but cannot be updated dynamically since they are read statically on application startup.&lt;/li&gt;
&lt;li&gt;Adds instrumentation for the Akka HTTP client, versions 10.0 to 10.1.x. This client is used via the &lt;code&gt;Http().singleRequest()&lt;/code&gt; method and the agent will now automatically capture these requests as External metrics.&lt;/li&gt;
&lt;li&gt;Support for MySQL connector 8.0.x&lt;/li&gt;
&lt;li&gt;Adds official support for Akka Http 10.1.6&lt;/li&gt;
&lt;li&gt;Span event attributes can now be filtered using include / exclude rules.&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code&gt;span_events:
    enabled: true
    attributes:
      include:
      exclude:
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;Rename transaction trace segment parameter key from uri to http.url and rename trace key from database_name to db.instance.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixes an issue where Akka HTTP instrumentation can cause higher than normal memory usage when an async Directive is used in the route for an Akka HTTP based app. This can also result in mis-named transactions for any paths underneath the custom Directive.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 23 Jan 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v4.11.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC00LjExLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-4110</link><pubDate>Tue, 12 Feb 2019 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Vert.x 3.6&lt;/p&gt;
&lt;p&gt;The Java agent now provides visibility into your applications built using the Vert.x 3.6. The agent instruments Vert.x Web, Vert.x Core, and Vert.x HTTP client. With this instrumentation, the agent will identify and name your transactions based on Vert.x web routing paths. The agent will also time web handlers, track async handlers, and external calls made with Vert.x HTTP client.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Wildfly 12-15&lt;/p&gt;
&lt;p&gt;The agent now supports Wildfly versions 12 through 15.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed an issue where applications using neo4j bolt JDBC driver could fail to start.&lt;/li&gt;
&lt;li&gt;The &lt;code&gt;log_daily&lt;/code&gt; configuration did not respect documented precedence.&lt;/li&gt;
&lt;li&gt;Fixed a bug that caused the Spring Webflux instrumentation to fail to apply for spring-webflux versions greater than 5.0.*.&lt;/li&gt;
&lt;li&gt;Fixed an issue where transactions would not be fully reported if &lt;code&gt;distributed_tracing.enabled = true&lt;/code&gt; and &lt;code&gt;cross_application_tracer.enabled = false&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Fixed an issue where Akka Http application would not start with the agent attached when using sbt.&lt;/li&gt;
&lt;li&gt;Fixed an issue where the agent could fail to determine the hostname .&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Known Issues&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Fixes in 4.12.0&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Fixed an issue with Jax-RS subresource transaction naming where the root path is duplicated when a nested resource structure is used. This could lead to transactions being named incorrectly for incoming requests to a Jax-RS framework.&lt;/li&gt;
&lt;li&gt;Fixed a bug in the agent&apos;s Jetty metric sampling that could prevent Jetty specific metrics from being reported when the number of threads returned by JMX is zero.&lt;/li&gt;
&lt;li&gt;Fixed a NullPointerException that can occur when cross application tracing configuration is explicitly disabled.&lt;/li&gt;
&lt;li&gt;Fixed an issue where transactions would be named incorrectly when using custom Akka Http stream directives or a pathEnd directive followed by a Segment directive.&lt;/li&gt;
&lt;li&gt;Fixed an issue where certain usages of Akka and Scala would prevent transactions from being reported to New Relic. This would also manifest as a NullPointerException in the agent log at &lt;code&gt;finest&lt;/code&gt; level.&lt;/li&gt;
&lt;li&gt;The Java agent no longer includes Jaxb or Logback dependencies. A new dependency on Log4j2 has been added.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Fixes in 4.12.1&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Fixed an issue where an exception would be thrown during agent initialization which caused the application to shut down when the log file is not writable. In previous agent versions there was an undocumented behavior where the agent would log to STDOUT instead.&lt;/li&gt;
&lt;li&gt;Fixed a regression where a NullPointerException would be logged and instrumentation would not be applied when using an XML extension with comments preceding the instrumentation section.&lt;/li&gt;
&lt;li&gt;Fixed issue where setting the &lt;code&gt;log_limit_in_kbytes&lt;/code&gt; greater than 0 and &lt;code&gt;log_file_count&lt;/code&gt; equal to 1 would result in the agent not logging to the agent log file.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Fixes in 5.0.0&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The agent no longer requires a newrelic.yml even when the &apos;app_name&apos; and &apos;license_key&apos; configuration options are set via environment variables and/or system properties. For more details, see [Java agent configuration(]&lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/configuration/java-agent-configuration-config-file#Environment_Variables&quot;&gt;https://docs.newrelic.com/docs/agents/java-agent/configuration/java-agen...&lt;/a&gt;).&lt;/li&gt;
&lt;li&gt;HttpSessions JMX metrics were not reporting for Websphere Liberty Profile applications.&lt;/li&gt;
&lt;li&gt;The transaction_events.max_samples_stored configuration value in the newrelic.yml would incorrectly override the system properties or environment variable values&lt;/li&gt;
&lt;li&gt;Applications running on Wildfly 12 - 15 would fail start with NoClassDefFound errors for Java agent classes.&lt;/li&gt;
&lt;li&gt;Play applications where external calls inside of future callbacks using async-http-client would not be recorded.&lt;/li&gt;
&lt;li&gt;Setting log_limit_in_kbytes would result in the agent not logging to the agent log file if log_file_count was also set to less than 2.&lt;/li&gt;
&lt;li&gt;Webflux status codes which were not recognized by Spring Webflux caused a 500 status code to be returned and an exception in application logs.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Fixes in 5.1.0&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Fixed an issue in the Scala instrumentation that would cause an &lt;code&gt;Java.lang.IllegalArgumentException:&lt;/code&gt; to be thrown when the Lightbend Cinnamon agent is in use.&lt;/li&gt;
&lt;li&gt;Fixed issue where &lt;a href=&quot;https://docs.newrelic.com/docs/apm/transactions/cross-application-traces/introduction-cross-application-traces&quot;&gt;cross application tracing headers&lt;/a&gt; were incorrectly parsed when &lt;a href=&quot;https://docs.newrelic.com/docs/apm/distributed-tracing/getting-started/introduction-distributed-tracing&quot;&gt;distributed tracing&lt;/a&gt; is enabled. Applications that use both distributed tracing and cross application tracing will no longer report external transaction breakdown metrics.&lt;/li&gt;
&lt;li&gt;Fixed an issue where the agent’s Kafka instrumentation would report &lt;code&gt;WakeupExceptions&lt;/code&gt; as errors in New Relic. These exceptions will no longer be reported.&lt;/li&gt;
&lt;li&gt;Fixed a Log4J ClassCastException for applications running on the IBM J9 JVM that set a custom logging manager via the &lt;code&gt;-Djava.util.logging.manager&lt;/code&gt; system parameter.&lt;/li&gt;
&lt;li&gt;The agent now supports using the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/applications-menu/events/thread-profiler-tool&quot;&gt;thread profiler&lt;/a&gt; when the &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/configuration/java-agent-configuration-config-file#cfg-send_environment_info&quot;&gt;send_environment_info configuration&lt;/a&gt; is disabled.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Fixes in 5.2.0&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Fixed an issue where very long-running transactions with a large number of &lt;a href=&quot;https://docs.newrelic.com/docs/apm/transactions/intro-transactions/transactions-new-relic-apm#segments&quot;&gt;segments&lt;/a&gt; would cause an excessive amount of memory usage. The agent will no longer trace segments once the &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/configuration/java-agent-configuration-config-file#cfg-tt-segment_limit&quot;&gt;segment_limit&lt;/a&gt; has been reached.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Fixes in 5.3.0&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Akka-http instrumentation would name transactions incorrectly when using an asynchronous onComplete callback to match routes.&lt;/li&gt;
&lt;li&gt;The agent’s JaxRS instrumentation did not apply to cases where a concrete class implements the same method from two different interfaces.&lt;/li&gt;
&lt;li&gt;The agent would not report JMX metrics when one or more composite attributes were null.&lt;/li&gt;
&lt;li&gt;Akka-http path matching instrumentation could produce NullPointerExceptions when using a &quot;repeat&quot; path segment with no values. Transactions that pass some values will report as-is, but transactions that pass no values will be reported with a different segment in the metric name: &quot;().repeat()&quot;.&lt;/li&gt;
&lt;li&gt;The &lt;code&gt;ignore_status_codes&lt;/code&gt; system property was not getting applied correctly.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Fixes in 5.4.0&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/apm/transactions/transaction-traces/introduction-transaction-traces&quot;&gt;Transaction traces&lt;/a&gt; would occasionally miss segments when using the spring &lt;code&gt;@Async&lt;/code&gt; annotation with servlets.&lt;/li&gt;
&lt;li&gt;Jax-RS instrumentation was not starting transactions.&lt;/li&gt;
&lt;li&gt;A potential race condition during agent startup that would manifest as a &lt;code&gt;NoClassDefFoundError&lt;/code&gt; for internal New Relic classes.&lt;/li&gt;
&lt;li&gt;Akka-http instrumentation would attempt multiple retransforms of the same class.&lt;/li&gt;
&lt;li&gt;The noticeError API would drop custom attributes that weren&apos;t of type String, Number, or Boolean, such as Enums or other custom types.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Fixes in 5.6.0&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Spring Webflux WebClient would not track external calls when constructed with &lt;code&gt;baseUrl(String baseUrl)&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;The &lt;code&gt;NewRelic.getAgent().getConfig().getValue()&lt;/code&gt; api would not check configuration values set via environment variables.&lt;/li&gt;
&lt;li&gt;The agent’s completable-future instrumentation could hold a reference to &lt;code&gt;Token&lt;/code&gt;s after they were expired, which could cause excessive memory usage.&lt;/li&gt;
&lt;li&gt;Error traces could report to the wrong application when &lt;code&gt;auto_app_naming&lt;/code&gt; is enabled and there were errors from two different application names getting reported during the same harvest.&lt;/li&gt;
&lt;li&gt;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. &lt;strong&gt;Note:&lt;/strong&gt; The agent will no longer instrument the sync MongoDB driver if the async and/or reactive-streams drivers are on the application’s &lt;code&gt;classpath&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Fixes in 5.7.0&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Calls to &lt;code&gt;NewRelic.getAgent().getTracedMethod().addOutboundRequestHeaders()&lt;/code&gt; will no longer throw an exception if a traced method has started but a transaction has not. This could happen by calling this in a method annotated with &lt;code&gt;@Trace(async=true)&lt;/code&gt; before a token is linked.&lt;/li&gt;
&lt;li&gt;Updates Guava to the newest release.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;NoClassDefFoundError&lt;/code&gt; would occur in agent logs when a spring controller is used without a root level RequestMapping annotation.&lt;/li&gt;
&lt;li&gt;The &lt;code&gt;gc_time&lt;/code&gt; metric, which was enabled by default in version 5.2.0, has now been disabled by default since its results are often misleading.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Fixes in 5.8.0&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The Solr 7 instrumentation would not report Update JMX metrics.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;HttpURLConnection&lt;/code&gt; instrumentation produced External metrics only when network methods (&lt;code&gt;getInputStream&lt;/code&gt;, &lt;code&gt;getResponseCode&lt;/code&gt;) are called.&lt;/li&gt;
&lt;li&gt;MongoDB instrumentation would report duplicate metrics when applications invoked &lt;code&gt;MongoClientOptions.build()&lt;/code&gt; more than once.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Fixes in 5.9.0&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The &lt;code&gt;ca_bundle_path&lt;/code&gt; configuration setting would fail to correctly import certificates when running on IBM J9&lt;/li&gt;
&lt;li&gt;Clarified the startup log message about the state of browser monitoring for the current application.&lt;/li&gt;
&lt;li&gt;The agent logger would sometimes throw a &lt;code&gt;NullPointerException&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;The agent would stop reporting Kafka metrics when one or more clients where closed&lt;/li&gt;
&lt;li&gt;&lt;code&gt;HttpURLConnection&lt;/code&gt; instrumentation could cause a &lt;code&gt;NullPointerException&lt;/code&gt; in the agent logs and fail to report External metrics&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Fixes in 5.10.0&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;In an effort to modernize our language and improve clarity, we have renamed several configuration values. The old names will still work for now, but they will all be removed in the next major version.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;transaction_tracer.slow_query_whitelist&lt;/code&gt; is now &lt;code&gt;transaction_tracer.collect_slow_queries_from&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;code&gt;strip_exception_messages.whitelist&lt;/code&gt; is now &lt;code&gt;strip_exception_messages.allowed_classes&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;code&gt;command_parser.blacklist&lt;/code&gt; is now &lt;code&gt;command_parser.disallow&lt;/code&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The &lt;code&gt;strip_exception_messages&lt;/code&gt; config now excludes nested exception messages&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The agent will now use a lightweight tracer for SQL tracers beyond the &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/configuration/java-agent-configuration-config-file#cfg-tt-segment_limit&quot;&gt;segment_limit&lt;/a&gt;, improving performance in cases with a high number of segments.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The agent would fail to report the Docker &lt;code&gt;containerId&lt;/code&gt; for some combinations of systemd and Kubernetes&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The agent logger would fail to log with: &lt;code&gt;“ERROR RollingFileAppender &apos;File&apos;: No TriggeringPolicy provided”&lt;/code&gt; when &lt;code&gt;newrelic.config.log_file_count&gt;1&lt;/code&gt; and &lt;code&gt;newrelic.config.isDaily=false&lt;/code&gt; and &lt;code&gt;newrelic.config.log_limit_bytes=0&lt;/code&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 12 Feb 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v4.12.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC00LjEyLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-4120</link><pubDate>Wed, 20 Mar 2019 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Kafka-clients&lt;/p&gt;
&lt;p&gt;The Java agent now supports the kafka-clients library. The agent will automatically report up Kafka metrics to New Relic.&lt;/p&gt;
&lt;p&gt;Optional support is provided for reporting Kafka metrics as Insights events and for enabling distributed tracing. More information can be found in the &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/instrumentation/instrument-kafka-message-queues&quot;&gt;New Relic documentation&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Java 12, Coretto and Zulu&lt;/p&gt;
&lt;p&gt;The New Relic Java agent is now fully compatible with Java 12. This release also adds support for the Amazon Coretto and Azul Zulu JDKs.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;New APIs&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Added &lt;a href=&quot;https://newrelic.github.io/java-agent-api/javadoc/com/newrelic/api/agent/Transaction.html#ignoreErrors--&quot;&gt;ignoreErrors()&lt;/a&gt; to the Transaction API, allowing all errors reported within a specific transaction to be ignored.&lt;/li&gt;
&lt;li&gt;Added &lt;a href=&quot;https://newrelic.github.io/java-agent-api/javadoc/com/newrelic/api/agent/NewRelic.html#addCustomParameters-java.util.Map-&quot;&gt;addCustomParameters(Map&amp;#x3C;String, Object&gt;)&lt;/a&gt; API, allowing multiple custom parameters to be added to a transaction at once.&lt;/li&gt;
&lt;li&gt;Updated the &lt;a href=&quot;https://newrelic.github.io/java-agent-api/javadoc/com/newrelic/api/agent/NewRelic.html#noticeError-java.lang.String-&quot;&gt;noticeError()&lt;/a&gt; API documentation to clarify that when the api is invoked multiple times while in a transaction, only the first error will be reported.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Deprecated APIs&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;The custom transport channel API is now deprecated in favor of the &lt;a href=&quot;https://newrelic.github.io/java-agent-api/javadoc/com/newrelic/api/agent/DistributedTracePayload.html&quot;&gt;Distributed Tracing&lt;/a&gt; API.&lt;/li&gt;
&lt;li&gt;The skipTransactionTrace attribute on the @Trace annotation is now deprecated. The &lt;a href=&quot;https://newrelic.github.io/java-agent-api/javadoc/com/newrelic/api/agent/Trace.html#excludeFromTransactionTrace--&quot;&gt;excludeFromTransactionTrace&lt;/a&gt; attribute should be used in its place.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Deprecated Instrumentation&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;JetS3t&lt;/p&gt;
&lt;p&gt;Removed built-in instrumentation for JetS3t. The agent will continue to report external calls made with the JetS3t client.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed an issue with Jax-RS subresource transaction naming where the root path is duplicated when a nested resource structure is used. This could lead to transactions being named incorrectly for incoming requests to a Jax-RS framework.&lt;/li&gt;
&lt;li&gt;Fixed a bug in the agent&apos;s Jetty metric sampling that could prevent Jetty specific metrics from being reported when the number of threads returned by JMX is zero.&lt;/li&gt;
&lt;li&gt;Fixed a NullPointerException that can occur when cross application tracing configuration is explicitly disabled.&lt;/li&gt;
&lt;li&gt;Fixed an issue where transactions would be named incorrectly when using custom Akka Http stream directives or a pathEnd directive followed by a Segment directive.&lt;/li&gt;
&lt;li&gt;Fixed an issue where certain usages of Akka and Scala would prevent transactions from being reported to New Relic. This would also manifest as a NullPointerException in the agent log at &lt;code&gt;finest&lt;/code&gt; level.&lt;/li&gt;
&lt;li&gt;The Java agent no longer includes Jaxb or Logback dependencies. A new dependency on Log4j2 has been added&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 20 Mar 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v4.12.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC00LjEyLjE=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-4121</link><pubDate>Wed, 27 Mar 2019 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed an issue where an exception would be thrown during agent initialization which caused the application to shut down when the log file is not writable. In previous agent versions there was an undocumented behavior where the agent would log to STDOUT instead.&lt;/li&gt;
&lt;li&gt;Fixed a regression where a NullPointerException would be logged and instrumentation would not be applied when using an XML extension with comments preceding the instrumentation section.&lt;/li&gt;
&lt;li&gt;Fixed issue where setting the &lt;code&gt;log_limit_in_kbytes&lt;/code&gt; greater than 0 and &lt;code&gt;log_file_count&lt;/code&gt; equal to 1 would result in the agent not logging to the agent log file.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 27 Mar 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v4.3.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC00LjMuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-430</link><pubDate>Tue, 31 Jul 2018 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Distributed tracing&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Distributed tracing lets you see the path that a request takes as it travels through your distributed system. By showing the distributed activity through a unified view, you can troubleshoot and understand a complex system better than ever before.&lt;/p&gt;
&lt;p&gt;Distributed tracing is available with an APM Pro or equivalent subscription. To see a complete distributed trace, you need to enable the feature on a set of neighboring services. Enabling distributed tracing changes the behavior of some New Relic features, so carefully consult the &lt;a href=&quot;https://docs.newrelic.com/docs/transition-guide-distributed-tracing&quot;&gt;transition guide&lt;/a&gt; before you enable this feature.&lt;/p&gt;
&lt;p&gt;To enable distributed tracing, set enabled to true in the &lt;code&gt;distributed_tracing&lt;/code&gt; section in the newrelic.yml config file.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;distributed_tracing:
    enabled: true
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;Added configuration option &lt;code&gt;proxy_scheme&lt;/code&gt; to allow the agent to connect via https only proxies.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed an issue where transaction throughput counts could be artificially inflated when using async servlets in Jersey.&lt;/li&gt;
&lt;li&gt;Fixed an issue where JBoss and Wildfly datasources could cause a &lt;code&gt;LinkageError&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 31 Jul 2018 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v4.2.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC00LjIuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-420</link><pubDate>Tue, 12 Jun 2018 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Bug fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed a bug where transactions were being kept alive for too long when application is under heavy GC, causing inaccurate throughput to be reported.&lt;/li&gt;
&lt;li&gt;Fixed a bug in which Akka routing instrumentation could cause extra memory usage. When this is the case, the transaction throughput will look significantly lower than anticipated.&lt;/li&gt;
&lt;li&gt;Fixed a rare bug in Play WS instrumentation where exceptions thrown by instrumentation were propagated out to the application code, potentially causing the request to error.&lt;/li&gt;
&lt;li&gt;Fixed a bug where Jersey Client and HttpUrlConnection could be double instrumented, resulting in inflated external call count.&lt;/li&gt;
&lt;li&gt;Fixed a bug where the total time and response time for a long running task could be misreported.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 12 Jun 2018 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v4.5.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC00LjUuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-450</link><pubDate>Tue, 04 Sep 2018 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Apache HttpAsyncClient&lt;/p&gt;
&lt;p&gt;The Java agent now provides instrumentation for Apache HttpAsyncClient 4.1+. You will see your HttpAsyncClient calls as externals in New Relic.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;AsyncHttpClient&lt;/p&gt;
&lt;p&gt;The Java agent now provides instrumentation for AsyncHttpClient. You will now see the time spent in external service calls made using AsyncHttpClient in New Relic. If the external service is also running New Relic, you will see cross application tracing (CAT) details as well.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Vert.x 3.5&lt;/p&gt;
&lt;p&gt;The Java agent now provides visibility into your applications built using the Vert.x 3.5. The agent instruments Vert.x Web, Vert.x Core, and Vert.x HTTP client. With this instrumentation, the agent will identify and name your transactions based on Vert.x web routing paths. The agent will also time web handlers, track async handlers, and external calls made with Vert.x HTTP client.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;JBoss EAP 7&lt;/p&gt;
&lt;p&gt;The Java Agent now provides instrumentation for JBoss EAP 7. You will now see the same visibility into your web transactions, app server stats, and frameworks that you have with previous versions of JBoss EAP.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Play 2.7&lt;/p&gt;
&lt;p&gt;The Java Agent now provides instrumentation for Play 2.7. The previous Java agent release supports versions of Play up to 2.6.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;WebSphere Liberty&lt;/p&gt;
&lt;p&gt;Added ThreadPool metrics for WebSphere Liberty Profile. You will now see the active threads in the Threads tab of the &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/features/jvm-metrics-page&quot;&gt;JVM metrics page&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixes an issue where OKHttp 3 was not tracking external total time correctly.&lt;/li&gt;
&lt;li&gt;Fixes an issue where for some JDBC drivers, the agent would execute additional getMetaData queries..&lt;/li&gt;
&lt;li&gt;Fixes an issue with the agent’s Scala instrumentation that could result in incorrect throughput, invalid or negative data in transaction segments, or inability to ignore status codes.&lt;/li&gt;
&lt;li&gt;Fixes an issue with the play-ws instrumentation that caused ClassNotFound exceptions to occur in the agent logs when &lt;code&gt;withHeaders&lt;/code&gt; is used. This could result incomplete transactions and attributes in RPM.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 04 Sep 2018 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v4.4.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC00LjQuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-440</link><pubDate>Wed, 08 Aug 2018 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Java 10&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The New Relic Java agent is now fully compatible with Java 10. For more on JDK release and the Java agent, see &lt;a href=&quot;https://discuss.newrelic.com/t/jdk-releases-and-the-java-agent/55013&quot;&gt;this topic on the Explorers Hub&lt;/a&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Not compatible with Java 6&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;In order to continue to innovate and efficiently provide new capabilities to our customers who run on the JVM, this and future agent versions are not compatible with Java 6. If you are running Java 6, you may continue to use Java agent 4.3.0 or lower. For details, see &lt;a href=&quot;https://discuss.newrelic.com/t/with-support-for-java-10-new-relic-deprecates-java-6/57738&quot;&gt;this topic on the Explorers Hub&lt;/a&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Akka 2.5 and Akka HTTP 10.1&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The Java agent now supports Akka 2.5.x and Akka HTTP 10.1.x. You will see your Akka HTTP calls as New Relic transactions, see the hand-offs between Akka actors, and understand the calls to other databases and services.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Solr 7&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The Java agent now supports Solr 7.x. New Relic’s Solr support reports database calls to Solr servers as well as monitors the Solr server itself.&lt;/p&gt;
&lt;p&gt;Known Issue: JMX stats collection for Solr 7 isn&apos;t supported as of this release.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;WebLogic datasource&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The Java agent now displays health data about WebLogic’s datasource in the Datasource tab under the JVM page.&lt;/p&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed an issue where the Java agent 4.3.0 would not report data depending on the locale setting of the JVM. Java Agent 4.3.0 failed to send event data if the JVM locale is set to use a comma as the decimal. You would see NumberFormatException in the agent log.&lt;/li&gt;
&lt;li&gt;Fixed a rare issue where the agent will incorrectly attempt to continually retransform classes when an extension with a modification date in the future is used, causing a significant increase in CPU load.&lt;/li&gt;
&lt;li&gt;Fixed a ConcurrentModificationException caused by ning instrumentation that manifests in Mule instrumentation that causes the request it affects to be retried and the Java agent to not report header data.&lt;/li&gt;
&lt;li&gt;Fixed an issue where if &lt;code&gt;enable_auto_app_naming&lt;/code&gt; was set to true and &lt;code&gt;distributed_tracing.enabled&lt;/code&gt; was set to true it would sample every distributed trace event. Now if the agent has both configs enabled, it will not turn on distributed tracing.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 08 Aug 2018 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v4.6.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC00LjYuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-460</link><pubDate>Mon, 24 Sep 2018 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Spring 5&lt;/p&gt;
&lt;p&gt;The Java Agent now provides instrumentation for Spring 5 and Webflux. The agent will name transactions based on router functions as well as Spring controller and spring web annotations. The agent also provides support for Spring WebClient to capture external requests and timing.&lt;/p&gt;
&lt;p&gt;Spring 5 instrumentation works with Spring Boot, Tomcat, and Jetty.  &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Note if you have previously disabled Spring instrumentation&lt;/strong&gt;: There is a new &lt;code&gt;spring-4.3.0&lt;/code&gt; instrumentation module that gets used in place of the previous &lt;code&gt;spring-4.2.0&lt;/code&gt; module for any customers running Spring 4.3.0 and above. If you had previously disabled support for spring-4.2.0 and you are running spring-4.3.0 you will want to change your &lt;code&gt;class_transformer&lt;/code&gt; section in your newrelic.yml from:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;class_transformer:
  com.newrelic.instrumentation.spring-4.2.0:
    enabled: false
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;to:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;class_transformer:
  com.newrelic.instrumentation.spring-4.3.0:
    enabled: false
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixes an issue where the agent could cause an application deadlock when two tokens are created and linked from the other’s thread. This affects users of the New Relic token API and also users of the Hystrix framework.&lt;/li&gt;
&lt;li&gt;Fixes an issue where the agent would not capture JMX Datasource information from Tomcat when JDNI GlobalNamingResources is used.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Known Issues&lt;/h3&gt;
&lt;p&gt;Transaction reporting to New Relic may be delayed by up to 10 minutes when Spring WebClient is used to create http requests that never execute.&lt;/p&gt;</content:encoded><description>ReleasedOn: Mon, 24 Sep 2018 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v4.7.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC00LjcuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-470</link><pubDate>Wed, 03 Oct 2018 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Java 11&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The New Relic Java agent is now fully compatible with Java 11. For more on JDK releases and the Java agent, see this topic on the &lt;a href=&quot;https://discuss.newrelic.com/t/jdk-releases-and-the-java-agent/55013&quot;&gt;Explorers Hub&lt;/a&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Solr 7.0 JMX Metrics&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The Java agent now collects JMX metrics for Solr 7.0&lt;/p&gt;</content:encoded><description>ReleasedOn: Wed, 03 Oct 2018 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v4.9.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC00LjkuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-490</link><pubDate>Tue, 18 Dec 2018 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;The &apos;request.uri&apos; attribute is now included in Transaction events and corresponding Transaction Error events. As a result this attribute can now be queried in New Relic. It may be excluded via the exclude list in the &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/attributes/enabling-disabling-attributes-java&quot;&gt;attributes section of the yaml config file&lt;/a&gt;. It is also excluded when High-security mode is enabled.&lt;/li&gt;
&lt;li&gt;Distributed Tracing can now be enabled at the same time as &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/configuration/automatic-application-naming&quot;&gt;auto app naming&lt;/a&gt;. Each application created by this setting will share an event reservoir for Distributed Tracing.&lt;/li&gt;
&lt;li&gt;Updates Akka HTTP instrumentation to support the newest version of Akka HTTP, 10.1.5 and above.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fixes a possible NullPointerException that could occur in Hystrix instrumentation and propagate into application code.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fixes a bug where usage of the HttpsURLConnection getInputStream() method could cause some scoped external metrics to be double-counted.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fixes an issue that prevents the agent from connecting to an HTTP proxy that does not requires a username or password.&lt;/p&gt;
&lt;p&gt;When configured to use an HTTP proxy by using proxy_host and proxy_port, the agent would look for proxy_username and proxy_password. If those weren&apos;t provided, the agent would use an empty string for proxy_username and proxy_password.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Prevents unnecessary dependencies from showing up in the newrelic-agent pom&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fixes deadlocks occurring in agent 4.7.0 that were caused by instrumentation of classes in the &lt;code&gt;sun/nio/cs/.*&lt;/code&gt; package&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fixes an issue where custom jmx metrics with &apos;.&apos;s in the attribute name would not get recorded.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 18 Dec 2018 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v4.8.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC00LjguMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-480</link><pubDate>Tue, 13 Nov 2018 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed an issue where the agent would break webpage rendering by inserting New Relic Browser monitoring javascript into the &lt;code&gt;&amp;#x3C;header&gt;&lt;/code&gt; tag of pages which were missing &lt;code&gt;&amp;#x3C;head&gt;&lt;/code&gt; tags.&lt;/li&gt;
&lt;li&gt;Certain frameworks, like Spring Cloud Gateway, triggered a bug in the Spring webflux instrumentation, causing transactions to stay open until they timed out. This bug resulted in more memory pressure and looked like a memory leak. This has been fixed in this release.&lt;/li&gt;
&lt;li&gt;Fixed an issue where the agent would stop reporting to New Relic following a ForceDisconnectException and accumulate transaction data resulting in OutOfMemory Exceptions.&lt;/li&gt;
&lt;li&gt;The agent now validates that app_names only contains three application names. If the agent is configured to report more than three application names, the agent will log a warning message and stop reporting to New Relic.&lt;/li&gt;
&lt;li&gt;When a custom WSRequestFilter is used that modifies an outbound play-ws request, the agent would report overly long segments due to Segment timeouts and will also result in a loss of External/ metrics. This has been fixed.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 13 Nov 2018 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v5.0.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC01LjAuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-500</link><pubDate>Wed, 24 Apr 2019 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;gRPC&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The Java agent now supports gRPC. You will now see &lt;a href=&quot;https://docs.newrelic.com/docs/apm/applications-menu/monitoring/transactions-page-find-specific-performance-problems&quot;&gt;transactions&lt;/a&gt;, &lt;a href=&quot;https://docs.newrelic.com/docs/apm/applications-menu/error-analytics/error-analytics-explore-events-behind-errors&quot;&gt;errors&lt;/a&gt;, &lt;a href=&quot;https://docs.newrelic.com/docs/apm/applications-menu/monitoring/external-services-page&quot;&gt;external calls&lt;/a&gt;, and &lt;a href=&quot;https://docs.newrelic.com/docs/apm/distributed-tracing/getting-started/introduction-distributed-tracing&quot;&gt;distributed traces&lt;/a&gt; for all of your gRPC-based clients and services.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Vert.x-3.7&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The Java agent now supports Vert.x 3.7. The agent instruments Vert.x Web, Vert.x Core, and Vert.x HTTP client. With this instrumentation, the agent will identify and name your &lt;a href=&quot;https://docs.newrelic.com/docs/apm/applications-menu/monitoring/transactions-page-find-specific-performance-problems&quot;&gt;transactions&lt;/a&gt; based on Vert.x web routing paths. The agent will also time web handlers, track async handlers, and &lt;a href=&quot;https://docs.newrelic.com/docs/apm/applications-menu/monitoring/external-services-page&quot;&gt;external calls&lt;/a&gt; made with Vert.x HTTP client.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;OkHttp 3.14.0&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;This release adds support for OkHttp 3.14.x. You will now see OkHttp 3.14 calls as &lt;a href=&quot;https://docs.newrelic.com/docs/apm/applications-menu/monitoring/external-services-page&quot;&gt;external calls&lt;/a&gt; in New Relic.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;spray-can&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The Java agent now supports the spray-can client. The agent will now capture outbound http calls made with the spray-can client and report them as &lt;a href=&quot;https://docs.newrelic.com/docs/apm/applications-menu/monitoring/external-services-page&quot;&gt;external calls&lt;/a&gt; and/or &lt;a href=&quot;https://docs.newrelic.com/docs/apm/distributed-tracing/getting-started/introduction-distributed-tracing&quot;&gt;distributed traces&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Embedded Derby 10.15.1.3&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The Java agent has expanded support for Derby JDBC up to and including version 10.15.1.3.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;JVM monitoring&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The Java agent now reports JMX stats for off-heap direct byte buffers. These metrics are available via the &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/features/jvm-metrics-page&quot;&gt;JVM page&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;recordCustomEvent API&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The recordCustomEvent API has been updated to accept Map&amp;#x3C;String,?&gt; as a second parameter instead of Map&amp;#x3C;String,Object&gt;, allowing maps such as Map&amp;#x3C;String,String&gt; to be passed without having to cast the type of the map&apos;s value.&lt;/p&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;The agent no longer requires a newrelic.yml even when the &lt;code&gt;app_name&lt;/code&gt; and &lt;code&gt;license_key&lt;/code&gt; configuration options are set via environment variables and/or system properties. For more information, see the &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/configuration/java-agent-configuration-config-file#Environment_Variables&quot;&gt;Java environment variables documentation&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;HttpSessions JMX metrics were not reporting for Websphere Liberty Profile applications.&lt;/li&gt;
&lt;li&gt;The &lt;code&gt;transaction_events.max_samples_stored&lt;/code&gt; configuration value in the &lt;code&gt;newrelic.yml&lt;/code&gt; would incorrectly override the system properties or environment variable values.&lt;/li&gt;
&lt;li&gt;Applications running on WildFly 12 - 15 would fail start with &lt;code&gt;NoClassDefFound&lt;/code&gt; errors for Java agent classes.&lt;/li&gt;
&lt;li&gt;Play applications where external calls inside of future callbacks using &lt;code&gt;async-http-client&lt;/code&gt; would not be recorded.&lt;/li&gt;
&lt;li&gt;Setting &lt;code&gt;log_limit_in_kbytes&lt;/code&gt; would result in the agent not logging to the agent log file if &lt;code&gt;log_file_count&lt;/code&gt; was also set to less than 2.&lt;/li&gt;
&lt;li&gt;Webflux status codes which were not recognized by Spring Webflux caused a 500 status code to be returned and an exception in application logs.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Known Issues&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;gRPC: Fixed in 5.1.1&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;This release contains two bugs in the Java agent&apos;s gRPC instrumentation. We highly recommend customers using gRPC instrumentation to upgrade to this and/or later agent versions.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;References to transaction segments were not being removed correctly, which can cause a memory leak.&lt;/li&gt;
&lt;li&gt;The agent could cause the gRPC server listeners to fail to execute its &lt;code&gt;completed&lt;/code&gt; and/or &lt;code&gt;cancelled&lt;/code&gt; methods, which can cause unexpected behavior.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Deprecation Notes&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Self installer&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The New Relic Java agent&apos;s self-installer has been removed in order to provide a more consistent user experience. To install the Java agent, add the full path to the &lt;code&gt;newrelic.jar&lt;/code&gt; to the &lt;code&gt;-javaagent&lt;/code&gt; flag in your JVM options. For more information on installing the agent on specific &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/installation/include-java-agent-jvm-argument&quot;&gt;application servers&lt;/a&gt;, &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/additional-installation/install-new-relic-java-agent-docker&quot;&gt;Docker&lt;/a&gt;, &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/additional-installation/maven-installation-java&quot;&gt;Maven&lt;/a&gt;, or &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/additional-installation/install-java-agent-using-gradle&quot;&gt;Gradle&lt;/a&gt;, see the &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/installation/include-java-agent-jvm-argument&quot;&gt;JVM argument documentation&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Deprecated instrumentation&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The following instrumentation modules have been moved out of the default Java agent, and are now provided as a &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/instrumentation/additional-instrumentation-modules-java-agent&quot;&gt;separate download&lt;/a&gt;. To continue using these modules, just add them to the agent&apos;s &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/configuration/java-agent-configuration-config-file#extensions-directory&quot;&gt;extensions directory&lt;/a&gt; in your &lt;code&gt;newrelic&lt;/code&gt; folder or wherever your &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/configuration/java-agent-configuration-config-file#cfg-extensions-dir&quot;&gt;extensions directory is configured&lt;/a&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/instrumentation/additional-instrumentation-modules-java-agent#akka-20&quot;&gt;Akka 2.0&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/instrumentation/additional-instrumentation-modules-java-agent#akka-21&quot;&gt;Akka 2.1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/instrumentation/additional-instrumentation-modules-java-agent#akka-http-10&quot;&gt;Akka-http 1.0&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/instrumentation/additional-instrumentation-modules-java-agent#akka-http-20&quot;&gt;Akka-http 2.0 - 2.4.1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/instrumentation/additional-instrumentation-modules-java-agent#akka-http-242&quot;&gt;Akka-http 2.4.2 - 2.4.4&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/instrumentation/additional-instrumentation-modules-java-agent#hystrix-102&quot;&gt;Hystrix 1.2&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/instrumentation/additional-instrumentation-modules-java-agent#hystrix-130&quot;&gt;Hystrix 1.3&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Play 1 (instrumentation for Play-1.x is not available as an extension.)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/instrumentation/additional-instrumentation-modules-java-agent#play-20&quot;&gt;Play 2.0&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/instrumentation/additional-instrumentation-modules-java-agent#play-21&quot;&gt;Play 2.1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/instrumentation/additional-instrumentation-modules-java-agent#play22&quot;&gt;Play 2.2&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/instrumentation/additional-instrumentation-modules-java-agent#solr-310&quot;&gt;Solr 3.1 - 3.4&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/instrumentation/additional-instrumentation-modules-java-agent#solr-350&quot;&gt;Solr 3.5&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/instrumentation/additional-instrumentation-modules-java-agent#solr-360&quot;&gt;Solr 3.6&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 24 Apr 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v5.1.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC01LjEuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-510</link><pubDate>Wed, 29 May 2019 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;JAX-RS&lt;/p&gt;
&lt;p&gt;This release adds support for @PATCH JAX-RS annotation. The agent will create and name transactions based @PATCH annotations.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixes an issue in the Scala instrumentation that would cause an &lt;code&gt;Java.lang.IllegalArgumentException:&lt;/code&gt; to be thrown when the Lightbend Cinnamon agent is in use.&lt;/li&gt;
&lt;li&gt;Fixes an issue where &lt;a href=&quot;https://docs.newrelic.com/docs/apm/transactions/cross-application-traces/introduction-cross-application-traces&quot;&gt;Cross Application Tracing headers&lt;/a&gt; were incorrectly parsed when &lt;a href=&quot;https://docs.newrelic.com/docs/apm/distributed-tracing/getting-started/introduction-distributed-tracing&quot;&gt;Distributed Tracing&lt;/a&gt; is enabled. Applications that use both Distributed Tracing and Cross Application Tracing will no longer report external transaction breakdown metrics.&lt;/li&gt;
&lt;li&gt;Fixes an issue where the agent’s Kafka instrumentation would report WakeupExceptions as errors in New Relic. These exceptions will no longer be reported.&lt;/li&gt;
&lt;li&gt;Fixes a Log4J ClassCastException for applications running on the IBM J9 JVM that set a custom logging manager via the &lt;code&gt;-Djava.util.logging.manager&lt;/code&gt; system parameter.&lt;/li&gt;
&lt;li&gt;The agent now supports using the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/applications-menu/events/thread-profiler-tool&quot;&gt;thread profiler&lt;/a&gt; when the &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/configuration/java-agent-configuration-config-file#cfg-send_environment_info&quot;&gt;send_environment_info configuration&lt;/a&gt; is disabled.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;The agent now sends data to New Relic using gzip compression by default. To use the previous compression set the &lt;code&gt;compressed_content_encoding&lt;/code&gt; configuration value to &lt;code&gt;deflate&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;The jdbc-resultset instrumentation is now disabled by default in the newrelic.yml and will be disabled by default in all future releases.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Known Issues&lt;/h3&gt;
&lt;p&gt;Fixed in 5.1.1&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;gRPC&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This release contains two bugs in the Java agent&apos;s gRPC instrumentation. We highly recommend customers using gRPC instrumentation to upgrade to this and or later agent versions.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;References to transaction segments were not being removed correctly, which can cause a memory leak&lt;/li&gt;
&lt;li&gt;The agent could cause the gRPC server listeners to fail to execute its &lt;code&gt;completed&lt;/code&gt; and/or &lt;code&gt;cancelled&lt;/code&gt; methods, which can cause unexpected behavior&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 29 May 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v5.10.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC01LjEwLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-5100</link><pubDate>Wed, 29 Jan 2020 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Support for W3C Trace Context, with easy upgrade from New Relic trace context&lt;/p&gt;
&lt;p&gt;Distributed tracing now supports &lt;a href=&quot;https://docs.newrelic.com/docs/understand-dependencies/distributed-tracing/get-started/how-new-relic-distributed-tracing-works#headers&quot;&gt;W3C Trace Context&lt;/a&gt; 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.&lt;/p&gt;
&lt;p&gt;The New Relic trace header format can disabled using this config or as &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/configuration/java-agent-configuration-config-file#dt-exclude_newrelic_header&quot;&gt;documented here&lt;/a&gt;: &lt;code&gt;newrelic.config.distributed_tracing.exclude_newrelic_header = true&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Also, see &lt;strong&gt;Known issues and workarounds&lt;/strong&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Cassandra&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;This release adds instrumentation for queries in versions 3.8+ of the Datastax Cassandra driver, including &lt;a href=&quot;https://docs.newrelic.com/docs/apm/applications-menu/monitoring/databases-slow-queries-page&quot;&gt;slow query&lt;/a&gt; support. You’ll see relevant breakdowns in the overview chart, entries on the Databases page, and segments in transaction traces.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;AWS Async SDK&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;AWS S3 - The Java agent now reports calls to Amazon S3 using the S3AsyncClient as external metrics&lt;/li&gt;
&lt;li&gt;AWS SQS - The Java agent now reports calls to SqsAsyncClient as message queue metrics&lt;/li&gt;
&lt;li&gt;AWS SNS - The Java agent now reports calls to Amazon SQS using SNSAsyncClient as message queue metrics&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;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.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;transaction_tracer.slow_query_whitelist&lt;/code&gt; is now &lt;code&gt;transaction_tracer.collect_slow_queries_from&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;code&gt;strip_exception_messages.whitelist&lt;/code&gt; is now &lt;code&gt;strip_exception_messages.allowed_classes&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;code&gt;command_parser.blacklist&lt;/code&gt; is now &lt;code&gt;command_parser.disallow&lt;/code&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The &lt;code&gt;strip_exception_messages&lt;/code&gt; config now excludes nested exception messages&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The agent will now use a lightweight tracer for SQL tracers beyond the &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/configuration/java-agent-configuration-config-file#cfg-tt-segment_limit&quot;&gt;segment_limit&lt;/a&gt;, improving performance in cases with a high number of segments.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The agent would fail to report the Docker &lt;code&gt;containerId&lt;/code&gt; for some combinations of systemd and Kubernetes&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The agent logger would fail to log with: &lt;code&gt;“ERROR RollingFileAppender &apos;File&apos;: No TriggeringPolicy provided”&lt;/code&gt; when &lt;code&gt;newrelic.config.log_file_count&gt;1&lt;/code&gt; and &lt;code&gt;newrelic.config.isDaily=false&lt;/code&gt; and &lt;code&gt;newrelic.config.log_limit_bytes=0&lt;/code&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Known issues and workarounds&lt;/h3&gt;
&lt;p&gt;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.&lt;/p&gt;</content:encoded><description>ReleasedOn: Wed, 29 Jan 2020 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v5.1.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC01LjEuMQ==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-511</link><pubDate>Thu, 13 Jun 2019 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;gRPC&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This release fixes two bugs in the Java agent&apos;s gRPC instrumentation. We highly recommend customers using gRPC instrumentation to upgrade to this and or later agent versions.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;References to transaction segments were not being removed correctly, which can cause a memory leak&lt;/li&gt;
&lt;li&gt;The agent could cause the gRPC server listeners to fail to execute its &lt;code&gt;completed&lt;/code&gt; and/or &lt;code&gt;cancelled&lt;/code&gt; methods, which can cause unexpected behavior&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 13 Jun 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v5.11.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC01LjExLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-5110</link><pubDate>Wed, 18 Mar 2020 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Java 14&lt;/p&gt;
&lt;p&gt;The New Relic Java agent is now fully compatible with version 14 of the OpenJDK and Hotspot JDKs.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Java Flight Recorder&lt;/p&gt;
&lt;p&gt;A new &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/features/real-time-java-profiling-using-jfr-metrics&quot;&gt;Java Flight Recorder agent extension&lt;/a&gt; is now available to report real-time Java profiling metrics for application running on Java 14, including thread allocation, garbage collection and heap memory&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;The agent would log a NullPointerException when trying to accept distributed trace payloads before it had connected to rpm.newrelic.com&lt;/li&gt;
&lt;li&gt;Fixes an issue where W3C headers from New Relic’s .NET agent could produce malformed W3C traceparent headers&lt;/li&gt;
&lt;li&gt;The agent now logs ForceRestartExceptions at warning level rather than severe&lt;/li&gt;
&lt;li&gt;The noticeError API now supports reporting attributes of boolean and number types rather than their string representations&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 18 Mar 2020 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v5.12.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC01LjEyLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-5120</link><pubDate>Tue, 05 May 2020 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;New Features&lt;/h3&gt;
&lt;p&gt;Added support for &lt;a href=&quot;https://docs.newrelic.com/docs/understand-dependencies/distributed-tracing/enable-configure/enable-distributed-tracing&quot;&gt;Infinite Tracing on New Relic Edge&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Infinite Tracing observes 100% of your distributed traces and provides visualizations for the most actionable data so you have the examples of errors and long-running traces so you can better diagnose and troubleshoot your systems.&lt;/p&gt;
&lt;p&gt;You configure your agent to send traces to a trace observer in New Relic Edge. You view your distributed traces through the New Relic’s UI. There is no need to install a collector on your network.&lt;/p&gt;
&lt;p&gt;Infinite Tracing is currently available on a sign-up basis. If you would like to participate, please contact your sales representative.&lt;/p&gt;
&lt;h3&gt;Known Issue&lt;/h3&gt;
&lt;p&gt;In-process spans from Java services will not appear in distributed traces. All users should upgrade to 5.12.1.&lt;/p&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Spring&lt;/p&gt;
&lt;p&gt;Spring PatchMapping annotation will now be used to start and name transactions.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;SQL&lt;/p&gt;
&lt;p&gt;Common Table Expressions in SQL Server, Postgres, and MySQL will report &lt;a href=&quot;https://docs.newrelic.com/docs/apm/applications-menu/monitoring/databases-page-view-operations-throughput-response-time&quot;&gt;Datastore Metrics&lt;/a&gt; &lt;code&gt;Datastore/&amp;#x3C;vendor&gt;/statement/&amp;#x3C;first cte name&gt;/with&lt;/code&gt; and &lt;code&gt;Datastore/&amp;#x3C;vendor&gt;/operation/with&lt;/code&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Distributed Tracing&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/apm/distributed-tracing/ui-data/span-event&quot;&gt;Span events&lt;/a&gt; now report error attributes if an error occurs: TransactionError events will also contain a corresponding &lt;code&gt;spanId&lt;/code&gt; attribute indicating where the error occurred.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Solr Instrumentation could cause a &lt;code&gt;NullPointerException&lt;/code&gt; in the agent logs for queries containing null parameters&lt;/li&gt;
&lt;li&gt;The &lt;code&gt;JAVA_ENV&lt;/code&gt; environment variable configuration has been deprecated. Use &lt;code&gt;NEW_RELIC_ENVIRONMENT&lt;/code&gt; to set the &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/configuration/java-agent-configuration-config-file#newrelic-environment&quot;&gt;environment configuration for the agent&lt;/a&gt; to use&lt;/li&gt;
&lt;li&gt;The JDBC &lt;code&gt;ResultSet&lt;/code&gt; instrumentation is now disabled by default internally. Applications configured solely via system properties and/or environment variables can enable with: &lt;code&gt;-Dnewrelic.config.class_transformer.com.newrelic.instrumentation.jdbc-resultset.enabled=true&lt;/code&gt; or &lt;code&gt;NEW_RELIC_CLASS_TRANSFORMER_COM_NEWRELIC_INSTRUMENTATION_JDBC-RESULTSET_ENABLED=TRUE&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;The &lt;code&gt;quartz_job&lt;/code&gt; configuration did not affect applications using Quartz-2.0 and higher&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 05 May 2020 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v5.12.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC01LjEyLjE=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-5121</link><pubDate>Fri, 15 May 2020 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;h3&gt;Bug fixes&lt;/h3&gt;
&lt;p&gt;This is a patch release that resolves an issue in 5.12.0. With distributed tracing enabled and Infinite Tracing disabled, a defect in version 5.12.0 causes spans to be omitted from distributed traces.&lt;/p&gt;
&lt;p&gt;Any customers currently on 5.12.0 are &lt;em&gt;strongly&lt;/em&gt; encouraged to upgrade to this 5.12.1 patch release.&lt;/p&gt;</content:encoded><description>ReleasedOn: Fri, 15 May 2020 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v5.13.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC01LjEzLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-5130</link><pubDate>Tue, 16 Jun 2020 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Distributed tracing: With &lt;a href=&quot;https://docs.newrelic.com/docs/understand-dependencies/distributed-tracing/get-started/introduction-distributed-tracing&quot;&gt;distributed tracing spans&lt;/a&gt; and/or &lt;a href=&quot;https://docs.newrelic.com/docs/distributed-tracing/infinite-tracing/introduction-infinite-tracing&quot;&gt;Infinite Tracing&lt;/a&gt;, the Java agent will now incorporate additional information from the &lt;a href=&quot;https://docs.newrelic.com/attribute-dictionary?attribute_name=&amp;#x26;events_tids%5B%5D=8236&quot;&gt;transaction event&lt;/a&gt; on to the root &lt;a href=&quot;https://docs.newrelic.com/attribute-dictionary?attribute_name=&amp;#x26;field_data_source_tid%5B%5D=8332&quot;&gt;span event&lt;/a&gt; of the transaction.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;New &lt;a href=&quot;https://newrelic.github.io/java-agent-api/javadoc/com/newrelic/api/agent/TracedMethod.html&quot;&gt;TracedMethod.addCustomAttribute(...) APIs&lt;/a&gt; have been added for adding attributes directly to spans.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; Any attribute include or exclude settings specific to transaction events should be applied to your span attributes configuration or your global attributes configuration.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The Java agent now uses AWS&apos;s IMDS v2 to gather instance information.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Jetty JMX metrics would not report when running embedded in Spring Boot.&lt;/li&gt;
&lt;li&gt;Local configuration settings could revert to the default following an agent reconnect.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 16 Jun 2020 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v5.14.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC01LjE0LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-5140</link><pubDate>Mon, 27 Jul 2020 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Agent Extensions The Java agent now provides a configuration to disable reloading extensions during runtime. &lt;code&gt;extensions: reload_modified: false&lt;/code&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Spring Webflux The Java agent now provides updated instrumentation for reactor-netty-0.8.0+ to link the Transaction across threads. In previous agent versions, Transactions would be named /NettyDispatcher.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Logging format To make the agent log easier to sort and read across locales, the date/time format has changed. The new format is log4j&apos;s ISO8610_OFFSET_DATE_TIME_HHMM and it is rendered like this in all locales:&lt;/p&gt;
&lt;p&gt;2020-07-10T08:33:00,328-0700 [9550 1] com.newrelic INFO: New Relic Agent: Loading configuration file &quot;lib/./newrelic.yml&quot;&lt;/p&gt;
&lt;p&gt;2020-07-10T08:33:00,423-0700 [9550 1] com.newrelic INFO: Using default collector host: collector.newrelic.com&lt;/p&gt;
&lt;p&gt;All other data on the log line remains the same.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Solr instrumentation could throw a NullPointerException when Query.toString() returned null.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 27 Jul 2020 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v5.2.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC01LjIuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-520</link><pubDate>Wed, 26 Jun 2019 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;MongoDB&lt;/p&gt;
&lt;p&gt;This release adds instrumentation for mongo-java-driver clients created using the &lt;a href=&quot;https://mongodb.github.io/mongo-java-driver/3.10/javadoc/com/mongodb/client/MongoClients.html&quot;&gt;MongoClients class&lt;/a&gt; Previous versions of the agent only supported the &lt;a href=&quot;https://mongodb.github.io/mongo-java-driver/3.10/javadoc/com/mongodb/MongoClient.html&quot;&gt;MongoClient() constructor&lt;/a&gt; Note: The MongoDB Asynchronous Java Drivers are not yet supported.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Custom request header attributes&lt;/p&gt;
&lt;p&gt;The Java agent now provides a new configuration option to report HTTP request header(s) as &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/agent-data/agent-attributes&quot;&gt;transaction attributes&lt;/a&gt;. See &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/configuration/java-agent-configuration-config-file#tt-custom-request-headers&quot;&gt;the documentation&lt;/a&gt; for more details.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Distributed tracing&lt;/p&gt;
&lt;p&gt;Datastore &lt;a href=&quot;https://docs.newrelic.com/docs/apm/distributed-tracing/ui-data/span-event&quot;&gt;span events&lt;/a&gt; now include a db.collection attribute. This field represents the collection or primary table name for the associated query. It is accessible in Insights, Distributed Tracing, and anywhere you get your favorite spans.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;GC Time&lt;/p&gt;
&lt;p&gt;The Java agent now records time spent waiting for garbage collection during the duration of a transaction and includes the GC time on the corresponding transaction trace as well as the transactions time chart.&lt;/p&gt;
&lt;p&gt;This setting is configurable as follows in the newrelic.yml:&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code&gt;transaction_tracer:
    gc_time_enabled: true
&lt;/code&gt;&lt;/pre&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixes an issue where very long-running transactions with a large number of &lt;a href=&quot;https://docs.newrelic.com/docs/apm/transactions/intro-transactions/transactions-new-relic-apm#segments&quot;&gt;segments&lt;/a&gt; would cause an excessive amount of memory usage. The agent will no longer trace segments once the &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/configuration/java-agent-configuration-config-file#cfg-tt-segment_limit&quot;&gt;segment_limit&lt;/a&gt; has been reached.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;The Java agent now enforces a maximum of 10,000 &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/configuration/java-agent-configuration-config-file#ae-max_samples_stored&quot;&gt;transaction events&lt;/a&gt; per minute.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 26 Jun 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v5.4.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC01LjQuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-540</link><pubDate>Tue, 27 Aug 2019 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;x-ray and any x-ray related attributes and identifiers will no longer be available in this version of the java agent. The New Relic x-ray feature reached end-of-life on April 17, 2019&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;OkHttp This release adds support for OkHttp 4.0. You will now see OkHttp calls as &lt;a href=&quot;https://docs.newrelic.com/docs/apm/applications-menu/monitoring/external-services-page&quot;&gt;external calls&lt;/a&gt; in New Relic.&lt;/li&gt;
&lt;li&gt;Agent configuration settings set via environment variables will be available on the Environment page.&lt;/li&gt;
&lt;li&gt;Improves performance of the Java agent.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/apm/transactions/transaction-traces/introduction-transaction-traces&quot;&gt;Transaction Traces&lt;/a&gt; would occasionally miss segments when using the spring @Async annotation with servlets.&lt;/li&gt;
&lt;li&gt;Jax-RS instrumentation was not starting transactions.&lt;/li&gt;
&lt;li&gt;A potential race condition during agent startup that would manifest as a NoClassDefFoundError for internal New Relic classes.&lt;/li&gt;
&lt;li&gt;Akka-http instrumentation would attempt multiple retransforms of the same class.&lt;/li&gt;
&lt;li&gt;The noticeError API would drop custom attributes that weren&apos;t of type String, Number, or Boolean, such as an Enum or other custom types.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 27 Aug 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v5.3.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC01LjMuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-530</link><pubDate>Wed, 24 Jul 2019 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;gRPC&lt;/p&gt;
&lt;p&gt;The Java agent now has support for gRPC version 1.22&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Dragonwell JDK&lt;/p&gt;
&lt;p&gt;The Java agent now fully supports Alibaba&apos;s Dragonwell JDK&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Azul Zing&lt;/p&gt;
&lt;p&gt;The Java agent now supports Azul&apos;s Zing JVM&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Enables ability to migrate to &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/configuration/enable-configurable-security-policies&quot;&gt;Configurable Security Policies (CSP)&lt;/a&gt; on a per agent basis for accounts already using &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/configuration/high-security-mode&quot;&gt;High-security mode (HSM&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When both HSM and CSP are enabled for an account, an agent (this version or later) can successfully connect with either high_security: true or the appropriate security_policies_token configured.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;LinkageError for applications using both OpenJ9 and Log4J log manager&lt;/li&gt;
&lt;li&gt;ClassNotFoundException for applications that specify a Log4j ContextSelector via the -DLog4jContextSelector system property&lt;/li&gt;
&lt;li&gt;Akka-http instrumentation would name transactions incorrectly when using an asynchronous onComplete callback to match routes&lt;/li&gt;
&lt;li&gt;The agent’s JaxRS instrumentation did not apply to cases where a concrete class implements the same method from two different interfaces&lt;/li&gt;
&lt;li&gt;The agent would not report JMX metrics when one or more composite attributes were null&lt;/li&gt;
&lt;li&gt;Race condition that could throw a NullPointerException in the agent log during class transformation&lt;/li&gt;
&lt;li&gt;Akka-http path matching instrumentation could produce NullPointerExceptions when using a &quot;repeat&quot; path segment with no values. Transactions that pass some values will report as-is, but transactions that pass no values will be reported with a different segment in the metric name: &quot;().repeat()&quot;&lt;/li&gt;
&lt;li&gt;ignore_status_codes system property was not getting applied correctly&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 24 Jul 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v5.5.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC01LjUuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-550</link><pubDate>Wed, 04 Sep 2019 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;New features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Support for Real Time Streaming&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Event data is now sent to New Relic every five seconds, instead of every minute. As a result, transaction, error, and custom events will now be available in New Relic dashboards in near real time. For more information on how to view your events with a five-second refresh, see the &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/agent-data/real-time-streaming&quot;&gt;real time streaming documentation&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Note that the overall limits on how many events can be sent per minute have not changed. Also, span events, metrics, and trace data is unaffected, and will still be sent every minute.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;The Java agent now uses persistent connections when connecting to New Relic, reducing overhead.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 04 Sep 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v5.6.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC01LjYuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-560</link><pubDate>Tue, 17 Sep 2019 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;New APIs&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Added &lt;a href=&quot;http://newrelic.github.io/java-agent-api/javadoc/com/newrelic/api/agent/Agent.html#getTraceMetadata()&quot;&gt;getTraceMetadata()&lt;/a&gt;. This provides information about the currently executing trace, including the trace and span ids as well as it’s sampled state&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://newrelic.github.io/java-agent-api/javadoc/com/newrelic/api/agent/TraceMetadata.html&quot;&gt;getTraceId()&lt;/a&gt;, which provides the currently executing trace’s identifier from the &lt;code&gt;TraceMetadata&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://newrelic.github.io/java-agent-api/javadoc/com/newrelic/api/agent/TraceMetadata.html&quot;&gt;getSpanId()&lt;/a&gt;, which provides the span identifier associated with the currently executing span from the &lt;code&gt;TraceMetadata&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://newrelic.github.io/java-agent-api/javadoc/com/newrelic/api/agent/TraceMetadata.html&quot;&gt;isSampled()&lt;/a&gt;, returns whether or not the current transaction is part of a sampled distributed trace from the &lt;code&gt;TraceMetadata&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Added &lt;a href=&quot;http://newrelic.github.io/java-agent-api/javadoc/com/newrelic/api/agent/Agent.html#getLinkingMetadata()&quot;&gt;getLinkingMetadata()&lt;/a&gt;, which provides an opaque map of key/value pairs that can be used to correlate this application in the New Relic backend.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Spring Webflux WebClient would not track external calls when constructed with &lt;code&gt;baseUrl(String baseUrl)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;The &lt;code&gt;NewRelic.getAgent().getConfig().getValue()&lt;/code&gt; api would not check configuration values set via environment variables&lt;/li&gt;
&lt;li&gt;The agent’s completable-future instrumentation could hold a reference to &lt;code&gt;Token&lt;/code&gt;s after they were expired, which could cause excessive memory usage.&lt;/li&gt;
&lt;li&gt;Error traces could report to the wrong application when &lt;code&gt;auto_app_naming&lt;/code&gt; is enabled and there were errors from two different application names getting reported during the same harvest&lt;/li&gt;
&lt;li&gt;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. &lt;strong&gt;Note:&lt;/strong&gt; The agent will no longer instrument the sync MongoDB driver if the async and/or reactive-streams drivers are on the application’s &lt;code&gt;classpath&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 17 Sep 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v5.7.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC01LjcuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-570</link><pubDate>Wed, 25 Sep 2019 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Java 13&lt;/p&gt;
&lt;p&gt;The New Relic Java agent is now fully compatible with version 13 of the OpenJDK and Hotspot JDKs.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Bug fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Calls to NewRelic.getAgent().getTracedMethod().addOutboundRequestHeaders() will no longer throw an exception if a traced method has started but a transaction has not. This could happen by calling this in a method annotated with &lt;code&gt;@Trace(async=true)&lt;/code&gt; before a token is linked.&lt;/li&gt;
&lt;li&gt;Updates Guava to the newest release.&lt;/li&gt;
&lt;li&gt;NoClassDefFoundError would occur in agent logs when a spring controller is used without a root level RequestMapping annotation.&lt;/li&gt;
&lt;li&gt;The gc_time metric, which was enabled by default in version 5.2.0, has now been disabled by default since its results are often misleading.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 25 Sep 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v5.8.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC01LjguMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-580</link><pubDate>Tue, 29 Oct 2019 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;New features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;gRPC
&lt;ul&gt;
&lt;li&gt;gRPC error reporting is now configurable&lt;/li&gt;
&lt;li&gt;Response codes, component type, and method type are now recorded as attributes.&lt;/li&gt;
&lt;li&gt;The agent now reports the gRPC status code rather than &quot;translating&quot; to HTTP status codes.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Vert.x
&lt;ul&gt;
&lt;li&gt;The Java agent now provides visibility into your applications built using the Vert.x 3.8. The agent instruments Vert.x Web, Vert.x Core, and Vert.x HTTP client. With this instrumentation, the agent will identify and name your transactions based on Vert.x web routing paths. The agent will also time web handlers, track async handlers, and external calls made with Vert.x HTTP client.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;XML custom instrumentation
&lt;ul&gt;
&lt;li&gt;The custom XML instrumentation XSD has been enhanced to support now include support for specifying &lt;a href=&quot;https://newrelic.github.io/java-agent-api/javadoc/com/newrelic/api/agent/Trace.html#leaf()&quot;&gt;leaf tracers&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Class Histogram
&lt;ul&gt;
&lt;li&gt;A new &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/instrumentation/extension-additional-instrumentation-modules#class-histogram&quot;&gt;Class Histogram extension&lt;/a&gt; is now available to report heap memory details as events.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Jedis
&lt;ul&gt;
&lt;li&gt;Added support for Jedis 3.0.0 and higher. You can now see your Jedis calls in breakdowns in the overview chart, entries in the Databases tab, and segments in transaction traces.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Lettuce
&lt;ul&gt;
&lt;li&gt;Instrumentation modules for Lettuce 4 and 5 are now available via the &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/instrumentation/extension-additional-instrumentation-modules#incubator-modules-list&quot;&gt;Java agent incubator&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;New OSS SDK&lt;/h3&gt;
&lt;p&gt;We now have an open source &lt;a href=&quot;https://docs.newrelic.com/docs/data-ingest-apis/get-data-new-relic/new-relic-sdks/telemetry-sdks-send-custom-telemetry-data-new-relic&quot;&gt;Telemetry SDK for Java&lt;/a&gt; for sending telemetry data to New Relic. The current SDK supports sending dimensional metrics to the Metric API and spans to the Trace API.&lt;/p&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;The Solr 7 instrumentation would not report Update JMX metrics.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;HttpURLConnection&lt;/code&gt; instrumentation produced External metrics only when network methods (&lt;code&gt;getInputStream&lt;/code&gt;, &lt;code&gt;getResponseCode&lt;/code&gt;) are called.&lt;/li&gt;
&lt;li&gt;MongoDB instrumentation would report duplicate metrics when applications invoked &lt;code&gt;MongoClientOptions.build()&lt;/code&gt; more than once.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 29 Oct 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v5.9.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC01LjkuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-590</link><pubDate>Tue, 10 Dec 2019 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;AWS SDK&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;AWS S3 - The Java agent now reports calls to Amazon S3 using AmazonS3 and S3Client as external metrics&lt;/li&gt;
&lt;li&gt;AWS SQS - The Java agent now reports calls to Amazon SQS using AmazonSQS, AmazonSQSAsync, SqsClient as message queue metrics&lt;/li&gt;
&lt;li&gt;AWS SNS - The Java agent now reports calls to Amazon SQS using AmazonSNS, AmazonSNSAsync, SnsClient as message queue metrics&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Distributed Tracing - The agent now supports &lt;a href=&quot;https://docs.newrelic.com/docs/understand-dependencies/distributed-tracing/get-started/introduction-distributed-tracing&quot;&gt;distributed traces&lt;/a&gt; originating from the &lt;a href=&quot;https://docs.newrelic.com/docs/browser/new-relic-browser/getting-started/introduction-new-relic-browser&quot;&gt;New Relic Browser agent&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;The &lt;code&gt;ca_bundle_path&lt;/code&gt; configuration setting would fail to correctly import certificates when running on IBM J9&lt;/li&gt;
&lt;li&gt;Clarified the startup log message about the state of browser monitoring for the current application.&lt;/li&gt;
&lt;li&gt;The agent logger would sometimes throw a NullPointerException&lt;/li&gt;
&lt;li&gt;The agent would stop reporting Kafka metrics when one or more clients where closed&lt;/li&gt;
&lt;li&gt;HttpURLConnection instrumentation could cause a NullPointerException in the agent logs and fail to report External metrics&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Deprecated&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Jar Collector system properties prefixed with &lt;code&gt;newrelic.config.module&lt;/code&gt; and environment variables prefixed with &lt;code&gt;NEW_RELIC_MODULE&lt;/code&gt; are deprecated and will be removed in a future agent release. Instead use the &lt;code&gt;newrelic.config.jar_collector&lt;/code&gt; and &lt;code&gt;NEW_RELIC_JAR_COLLECTOR&lt;/code&gt; prefixes.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Removed dependency&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;The agent no longer has a dependency on ANTLR.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 10 Dec 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v6.0.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC02LjAuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-600</link><pubDate>Wed, 26 Aug 2020 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Register an &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/28&quot;&gt;MBean&lt;/a&gt; to expose the agent linking metadata.&lt;/li&gt;
&lt;li&gt;Support for &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/16&quot;&gt;okhttp 4.4&lt;/a&gt; instrumentation.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/14&quot;&gt;Improve reconnect behavior&lt;/a&gt; by &lt;em&gt;not&lt;/em&gt; pinning to preconnected collector host instance.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fix for &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/20&quot;&gt;asynchronous jar file collection&lt;/a&gt;. Collection of modules will no longer block the initial first harvest.&lt;/li&gt;
&lt;li&gt;Fix for Real Time Streaming. The first Real Time Streaming harvest will no longer be delayed by 30 seconds.&lt;/li&gt;
&lt;li&gt;Fix for &lt;code&gt;reactor-netty&lt;/code&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/15&quot;&gt;verifier versions&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fix race condition around &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/25&quot;&gt;connection pool exhaustion&lt;/a&gt; by separating pool timeout from connection timeout.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Note re: certificate bundle use_private_ssl&lt;/h3&gt;
&lt;p&gt;This release removed the certificate bundle from the agent artifact. Users previously using &lt;code&gt;use_private_ssl&lt;/code&gt; should now use the &lt;code&gt;ca_bundle_path&lt;/code&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/configuration/java-agent-configuration-config-file&quot;&gt;configuration directive&lt;/a&gt;. For more information, see the &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/releases/tag/v6.0.0&quot;&gt;Java v6.0.0 release on GitHub&lt;/a&gt;.&lt;/p&gt;</content:encoded><description>ReleasedOn: Wed, 26 Aug 2020 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v6.1.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC02LjEuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-610</link><pubDate>Wed, 30 Sep 2020 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;p&gt;Java 15&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The New Relic Java agent is now fully compatible with version 15 of the OpenJDK and Hotspot JDKs.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;APIs&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;New &lt;a href=&quot;https://newrelic.github.io/java-agent-api/javadoc/com/newrelic/api/agent/Segment.html&quot;&gt;Segment.addCustomAttribute(...) APIs&lt;/a&gt; have been added for adding attributes directly to spans.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/70&quot;&gt;Newrelic.addCustomParameter API&lt;/a&gt; now supports boolean values&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;The agent would try to read environment variables using system-property syntax. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/39&quot;&gt;It will now log the correct syntax and ignore the incorrect value.&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/54&quot;&gt;The Java agent now includes the newrelic.com SSL certificate.&lt;/a&gt; In previous agent versions, applications using a custom Truststore would have to provide their certificate or use the &lt;code&gt;use_private_ssl&lt;/code&gt; configuration which was removed in 6.0.0.&lt;/li&gt;
&lt;li&gt;Fixed an issue where applications could fail to start due to the agent attempting to access the JMX MBean server before it was initialized.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 30 Sep 2020 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v6.2.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC02LjIuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-620</link><pubDate>Tue, 10 Nov 2020 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;New features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/90&quot;&gt;Adds support for Akka Http Core 10.2.0&lt;/a&gt;. Thank you &lt;a href=&quot;https://github.com/jobicarter&quot;&gt;jobicarter&lt;/a&gt; for reporting this issue.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/92&quot;&gt;Adds support for gRPC 1.30.0&lt;/a&gt;. Thank you &lt;a href=&quot;https://github.com/jef&quot;&gt;jef&lt;/a&gt; for submitting this request and trying it out.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/93&quot;&gt;Adds support for &lt;code&gt;map&lt;/code&gt; and &lt;code&gt;flatmap&lt;/code&gt; async external calls in spring webflux framework&lt;/a&gt;. Previously the agent didn’t support client calls that occurred within the &lt;code&gt;map&lt;/code&gt; or &lt;code&gt;flatmap&lt;/code&gt; methods within the spring webflux framework. External calls such as &lt;code&gt;serviceB&lt;/code&gt; and &lt;code&gt;serviceC&lt;/code&gt; in the example below would not get reported to New Relic:&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code&gt;return serviceA.getData()
                .map(service -&gt; Response.builder().service(service).build())
                .flatMap(serviceB::getData)
                .flatMap(serviceC::getData)
                .doOnNext(this::saveResponse);
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/97&quot;&gt;Adds support for Play 2.16.3&lt;/a&gt;. Many thanks to &lt;a href=&quot;https://github.com/junder31&quot;&gt;junder31&lt;/a&gt; for this contribution.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/87&quot;&gt;The agent now supports parsing cgroup ids that do not contain &lt;code&gt;docker-&lt;/code&gt;&lt;/a&gt;. Previously, the agent only supported docker cgroup ids that contained &lt;code&gt;docker-&lt;/code&gt; in them, such as &lt;code&gt;1:cpu:/system.slice/docker-12345abcde.scope&lt;/code&gt;. The agent now supports parsing cgroup ids such as &lt;code&gt;1:cpu:/system.slice/crio-12345abcde.scope&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/76&quot;&gt;Prevents the agent from logging a timeout exception when using New Relic Edge with Infinite Tracing but the agent hasn’t sent spans in a while&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/80&quot;&gt;Prevents the agent from logging a socket exception when trying to retrieve cloud provider information in a non-cloud environment&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/89&quot;&gt;Adds New Relic EU certifications&lt;/a&gt; if &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/configuration/configuring-your-ssl-certificates&quot;&gt;&lt;code&gt;ca_bundle_path&lt;/code&gt; is specified&lt;/a&gt;. This fix also came with the reintroduction of the &lt;code&gt;use_private_ssl&lt;/code&gt; config, which can be set to add our agent certs to the truststore.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 10 Nov 2020 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v6.3.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC02LjMuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-630</link><pubDate>Thu, 17 Dec 2020 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Spring Webflux
&lt;ul&gt;
&lt;li&gt;The Java agent now supports Spring Webflux versions 5.3+&lt;/li&gt;
&lt;li&gt;Added reactor-netty.errors.enabled configuration to allow disabling error reporting in Subscriber::onError.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Scala 2.13
&lt;ul&gt;
&lt;li&gt;The Java agent now provides support for Scala 2.13 and frameworks compiled with 2.13 Akka-http, Play&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;The netty-4.0.8 instrumentation would sometimes not start a Transaction on channelRead, potentially affecting instrumentation dependent on it including: Spring, Akka and Play&lt;/li&gt;
&lt;li&gt;Updated the Java agent’s Apache HttpClient dependency to 5.13&lt;/li&gt;
&lt;li&gt;Spring Webclient could report the wrong URL when multiple HTTP calls to several URLs occurred in parallel&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 17 Dec 2020 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v6.2.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC02LjIuMQ==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-621</link><pubDate>Tue, 17 Nov 2020 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixes an issue where Spring-Webflux applications with endpoints returning Flux or empty content could become unresponsive&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 17 Nov 2020 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v6.4.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC02LjQuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-640</link><pubDate>Wed, 27 Jan 2021 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Note:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;There is an issue with this agent release that could lead to spans not being sent to Infinite Tracing. Please use &lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-641&quot;&gt;6.4.1&lt;/a&gt; instead.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;New Features and Improvements:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Spring Webflux/Netty Reactor instrumentation improvements for enhanced tracing across asynchronous thread hops.&lt;/li&gt;
&lt;li&gt;The agent will now utilize a backoff sequence on connection retries to Infinite Tracing.&lt;/li&gt;
&lt;li&gt;New distributed tracing APIs have been added to better support general use cases for propagating distributed tracing headers. In particular the new APIs provide enhanced support for &lt;a href=&quot;https://www.w3.org/TR/trace-context/&quot;&gt;W3C Trace Context&lt;/a&gt; but are flexible enough to support other header protocols that may be supported by the agent in the future. Previous distributed tracing APIs have been deprecated and are subject to removal in a future agent release. See &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/api-guides/guide-using-java-agent-api#trace-calls&quot;&gt;documentation here&lt;/a&gt;.
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://newrelic.github.io/java-agent-api/javadoc/com/newrelic/api/agent/Transaction.html#insertDistributedTraceHeaders(com.newrelic.api.agent.Headers)&quot;&gt;&lt;code&gt;Transaction.insertDistributedTraceHeaders(Headers)&lt;/code&gt;&lt;/a&gt; is used to create and insert distributed tracing headers (both newrelic and W3C Trace Context) into a &lt;code&gt;Headers&lt;/code&gt; data structure.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://newrelic.github.io/java-agent-api/javadoc/com/newrelic/api/agent/Transaction.html#acceptDistributedTraceHeaders(com.newrelic.api.agent.TransportType,com.newrelic.api.agent.Headers)&quot;&gt;&lt;code&gt;Transaction.acceptDistributedTraceHeaders(TransportType, Headers)&lt;/code&gt;&lt;/a&gt; is used to accept the distributed tracing headers sent from the calling service and link these services together in a distributed trace.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Updated the Java agent’s snakeyaml dependency to 1.27.&lt;/li&gt;
&lt;li&gt;In some environments the jar collector service could lead to high CPU utilization at application startup. The agent now provides a configurable rate limiter, with a reasonable default, for processing jars detected in the application’s environment. See &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/configuration/java-agent-configuration-config-file#jar-collector&quot;&gt;documentation here&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 27 Jan 2021 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v6.4.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC02LjQuMQ==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-641</link><pubDate>Tue, 02 Feb 2021 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;p&gt;Fixes an issue in 6.4.0 where spans would not get sent to Infinite Tracing.&lt;/p&gt;</content:encoded><description>ReleasedOn: Tue, 02 Feb 2021 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v6.4.2]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC02LjQuMg==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-642</link><pubDate>Tue, 02 Mar 2021 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;p&gt;Fixes an issue that could cause some instrumentation modules (e.g. &lt;code&gt;jax-rs-1.0&lt;/code&gt;) to have a &lt;code&gt;WeaveViolation&lt;/code&gt; and not apply properly.&lt;/p&gt;</content:encoded><description>ReleasedOn: Tue, 02 Mar 2021 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v6.5.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC02LjUuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-650</link><pubDate>Mon, 26 Apr 2021 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;New features and improvements:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;The agent no longer bundles SSL certificates with it and the &lt;code&gt;use_private_ssl&lt;/code&gt; option that configured the agent to use
the previously bundled certificates has been removed. By default, the agent will use the SSL truststore provided by
the JVM unless it is explicitly configured to use a different truststore with the ca_bundle_path option. See
&lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/configuration/configuring-your-ssl-certificates/&quot;&gt;Configuring your SSL certificates&lt;/a&gt;
for more details.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixes an issue that could cause incorrect transaction naming when using JAX-RS sub-resources.&lt;/li&gt;
&lt;li&gt;Reactor Netty instrumentation improvements and fixes.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Deprecation notice&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Java 7 compatibility deprecation&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;In order to continue to innovate and efficiently provide new capabilities to our customers who run on the JVM, Java 7
support has been deprecated and this will be the last version of the agent compatible with it.&lt;/p&gt;
&lt;p&gt;If you are running Java 7, you may continue to use Java agent 6.5.0 or lower.&lt;/p&gt;
&lt;p&gt;For more information, see the &lt;a href=&quot;https://discuss.newrelic.com/t/important-upcoming-changes-to-capabilities-across-synthetics-apm-java-php-infrastructure-mobile-agents-health-maps-statsd-and-legacy-dashboards/147982&quot;&gt;Explorers Hub post&lt;/a&gt;.&lt;/p&gt;
&lt;h3&gt;Support statement:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and
performance benefits. Additionally, older releases will no longer be supported when they reach
&lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 26 Apr 2021 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v6.5.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC02LjUuMQ==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-651</link><pubDate>Fri, 10 Dec 2021 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Upgraded log4j to 2.15.0 to mitigate the security vulnerability &lt;a href=&quot;https://github.com/advisories/GHSA-jfh8-c2jp-5v3q&quot;&gt;CVE-2021-44228&lt;/a&gt;. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/issues/605&quot;&gt;605&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Recommended Java versions&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Log4j 2.15.0, which fixes the security vulnerability &lt;a href=&quot;https://github.com/advisories/GHSA-jfh8-c2jp-5v3q&quot;&gt;CVE-2021-44228&lt;/a&gt;, is only compatible with Java 8+. Therefore, this version of the agent is not compatible with Java 7 and is only recommended if you are using Java 8+ and are otherwise unable to upgrade to Java agent 7.4.1.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Mitigation for Java 7&lt;/h3&gt;
&lt;p&gt;Java agent versions 4.12.0 through 6.5.0 (which support Java 7) use &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/blob/dc9f29ca94b453ea9e1132961b8e169588d1e665/newrelic-agent/build.gradle#L90&quot;&gt;Log4j 2.11.2&lt;/a&gt; which falls into the affected range. For Java 7 users the recommended mitigation from &lt;a href=&quot;https://logging.apache.org/log4j/2.x/security.html&quot;&gt;Apache Log4j Security Vulnerabilities&lt;/a&gt; is to set the system property &lt;code&gt;-Dlog4j2.formatMsgNoLookups=true&lt;/code&gt;.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Mitigation: In releases &apos;&gt;=&apos;2.10, this behavior can be mitigated by setting the system property &lt;code&gt;log4j2.formatMsgNoLookups&lt;/code&gt;. For releases &apos;&gt;=&apos;2.7 and &apos;&amp;#x3C;=&apos;2.14.1, all &lt;code&gt;PatternLayout&lt;/code&gt; patterns can be modified to specify the message converter as &lt;code&gt;%m{nolookups}&lt;/code&gt; instead of just &lt;code&gt;%m&lt;/code&gt;. For releases &apos;&gt;=&apos;2.0-beta9 and &apos;&amp;#x3C;=&apos;2.10.0, the mitigation is to remove the &lt;code&gt;JndiLookup&lt;/code&gt; class from the classpath:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class&lt;/code&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Note&lt;/strong&gt;: The alternate approach of defining the &lt;code&gt;LOG4J_FORMAT_MSG_NO_LOOKUPS=true&lt;/code&gt; environment variable will not work with the NR Java Agent.&lt;/p&gt;
&lt;h3&gt;Support statement:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and
performance benefits. Additionally, older releases will no longer be supported when they reach
&lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Fri, 10 Dec 2021 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v6.5.2]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC02LjUuMg==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-652</link><pubDate>Wed, 15 Dec 2021 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Changed log4j version to 2.12.2 to mitigate the security vulnerability &lt;a href=&quot;https://github.com/advisories/GHSA-7rjr-3q55-vv33&quot;&gt;CVE-2021-45046&lt;/a&gt;. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/issues/605&quot;&gt;605&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Mitigation for Java 7&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;This release is compatible with Java 7.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and
performance benefits. Additionally, older releases will no longer be supported when they reach
&lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 15 Dec 2021 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v6.5.3]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC02LjUuMw==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-653</link><pubDate>Tue, 21 Dec 2021 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Changed log4j version to 2.12.3 to mitigate the security vulnerability &lt;a href=&quot;https://github.com/advisories/GHSA-p6xc-xr62-6r2g&quot;&gt;CVE-2021-45105&lt;/a&gt;. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/issues/605&quot;&gt;605&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Mitigation for Java 7&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;This release is compatible with Java 7.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and
performance benefits. Additionally, older releases will no longer be supported when they reach
&lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 21 Dec 2021 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v6.5.4]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC02LjUuNA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-654</link><pubDate>Thu, 03 Mar 2022 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Changed log4j version to 2.12.4 to mitigate the security vulnerability &lt;a href=&quot;https://github.com/advisories/GHSA-8489-44mv-ggj8&quot;&gt;CVE-2021-44832&lt;/a&gt;. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/issues/766&quot;&gt;766&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Mitigation for Java 7&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;This release is compatible with Java 7.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and
performance benefits. Additionally, older releases will no longer be supported when they reach
&lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/p&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.7.0 and 7.8.0, the results printed to the console will be:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;➜ diff newrelic_7.7.0.yml newrelic_7.8.0.yml
98c98
&amp;#x3C;     #forwarding:
---
&gt;     forwarding:
100,101c100,101
&amp;#x3C;       # When true, application logs will be forwarded to New Relic. The default is false.
&amp;#x3C;       #enabled: false
---
&gt;       # When true, application logs will be forwarded to New Relic. The default is true.
&gt;       enabled: true
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.8.0. If you are moving to 7.8.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 03 Mar 2022 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v7.0.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC03LjAuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-700</link><pubDate>Wed, 09 Jun 2021 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;New features and improvements:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/features/real-time-profiling-java-using-jfr-metrics/&quot;&gt;Real-time profiling for Java using JFR metrics&lt;/a&gt; is now fully integrated into the Java agent. See the &lt;a href=&quot;https://github.com/newrelic/newrelic-jfr-core/blob/main/README.md&quot;&gt;JFR core README&lt;/a&gt; for additional details.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This feature requires a supported version of Java 8 (specifically version &lt;code&gt;8u262&lt;/code&gt; or higher) or Java 11 or higher and is currently disabled by default. To enable it set the following in your yaml (indented 2 spaces under the common section).&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;jfr:
  enabled: true
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;Notice:&lt;/strong&gt; If you were previously using the &lt;a href=&quot;https://github.com/newrelic/newrelic-jfr-core&quot;&gt;jfr-daemon jar&lt;/a&gt; as an agent extension or standalone process you should remove that option to avoid potential conflicts with the JFR service that is now built into the agent.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Not compatible with Java 7. In order to continue to innovate and efficiently provide new capabilities to our customers who run on the JVM, this and future agent versions aren&apos;t compatible with Java 7. If you&apos;re running Java 7, you may continue to use Java agent 6.5.0 or lower. For details, see this topic on
the &lt;a href=&quot;https://discuss.newrelic.com/t/important-upcoming-changes-to-capabilities-across-synthetics-apm-java-php-infrastructure-mobile-agents-health-maps-statsd-and-legacy-dashboards/147982&quot;&gt;Explorers Hub&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Adds support for akka http with Scala 2.13. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/271&quot;&gt;#271&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Class annotation to trace lambda methods. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/274&quot;&gt;#274&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Class annotation to trace methods by return type. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/275&quot;&gt;#275&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixes an issue that could cause multiple versions of &lt;code&gt;akka-http-core&lt;/code&gt; instrumentation to apply at the
same time. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/208&quot;&gt;#208&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;The agent will now log dropped events at &lt;code&gt;FINE&lt;/code&gt; instead of &lt;code&gt;WARN&lt;/code&gt; to decrease
verbosity. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/296&quot;&gt;#296&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fixes Javadoc comments that incorrectly stated that, when calling the &lt;code&gt;noticeError&lt;/code&gt; API multiple times,
the first error would be reported when in fact it&apos;s the last error that is reported. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/313&quot;&gt;#313&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and
performance benefits. Additionally, older releases will no longer be supported when they reach
&lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Known Issues&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;OkHttp&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This release contains a bug that breaks OkHttp versions 3.X and below. All affected users should upgrade to 7.0.1.&lt;/p&gt;</content:encoded><description>ReleasedOn: Wed, 09 Jun 2021 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v7.0.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC03LjAuMQ==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-701</link><pubDate>Tue, 15 Jun 2021 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixes an issue where the agent would break OkHttp versions 3.X and lower. (&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/issues/324&quot;&gt;#324&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 15 Jun 2021 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v7.1.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC03LjEuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-710</link><pubDate>Wed, 07 Jul 2021 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Known issues&lt;/h3&gt;
&lt;p&gt;Some customers saw increased overhead when Real-time profiling is enabled.&lt;/p&gt;
&lt;p&gt;See &lt;a href=&quot;#disabling-jfr&quot;&gt;notice&lt;/a&gt; below on how to disable it.&lt;/p&gt;
&lt;h3&gt;New features and improvements:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Java instrumentation by XML new properties:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;traceLambda - to trace lambdas inside a method&lt;/li&gt;
&lt;li&gt;traceByReturnType - to trace all methods in a class that return a given type&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;These are compatible with Java and Scala. For more information, see
&lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/custom-instrumentation/java-instrumentation-xml/&quot;&gt;Java instrumentation by XML&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Scala APIs&lt;/p&gt;
&lt;p&gt;New artifacts allow Scala code to be instrumented using a fluent Scala API
instead of the Java annotations. There are specific artifacts for versions
2.10, 2.11, 2.12, 2.13 of Scala. Scala 3.0 users can use the 2.13 artifact.&lt;/p&gt;
&lt;p&gt;For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/frameworks/scala-installation-java/&quot;&gt;Scala instrumentation&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/features/real-time-profiling-java-using-jfr-metrics/&quot;&gt;Real-time profiling for Java using JFR metrics&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;This feature is now enabled by default.&lt;/p&gt;
&lt;div&gt;&lt;p&gt;This feature will cause an increase in the consumption of data. The amount depends on the application. &lt;div&gt;This feature can be disabled by adding the following to the agent yaml config nested under the &lt;code&gt;common&lt;/code&gt; section:&lt;/div&gt;&lt;/p&gt;&lt;pre&gt;&lt;code&gt;  jfr:
    enabled: false
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;For more information, see &lt;a href=&quot;https://github.com/newrelic/newrelic-jfr-core/blob/main/README.md&quot;&gt;JFR core README&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and
performance benefits. Additionally, older releases will no longer be supported when they reach
&lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 07 Jul 2021 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v7.10.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC03LjEwLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-7100</link><pubDate>Thu, 15 Sep 2022 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;h3&gt;Added the following Jakarta EE 9/9.1 compatible instrumentation:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Jetty 11&lt;/li&gt;
&lt;li&gt;Tomcat 10&lt;/li&gt;
&lt;li&gt;Enterprise Java Beans 4.0&lt;/li&gt;
&lt;li&gt;Jakarta RS/WS&lt;/li&gt;
&lt;li&gt;Jersey 3+&lt;/li&gt;
&lt;li&gt;Jersey Client 3&lt;/li&gt;
&lt;li&gt;JSP 3&lt;/li&gt;
&lt;li&gt;Servlet 5 &amp;#x26; 6&lt;/li&gt;
&lt;li&gt;Jakarata.xml&lt;/li&gt;
&lt;li&gt;JMS 3&lt;/li&gt;
&lt;li&gt;Glassfish 6.0&lt;/li&gt;
&lt;li&gt;Open Liberty 21.0.0.12+&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Code level metrics&lt;/h3&gt;
&lt;p&gt;For traced methods in automatic instrumentation or from @Trace annotations, the agent is now capable of reporting metrics with method-level granularity. When the new functionality &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/java-agent/features/java-codestream-integration&quot;&gt;is enabled&lt;/a&gt;, the agent will associate source-code-related metadata with some metrics. Then, when the corresponding Java class file that defines the methods is loaded up in a &lt;a href=&quot;https://www.codestream.com/&quot;&gt;New Relic CodeStream&lt;/a&gt;-powered IDE, &lt;a href=&quot;https://sre.google/sre-book/monitoring-distributed-systems#xref_monitoring_golden-signals&quot;&gt;the four golden signals&lt;/a&gt; for each method will be presented to the developer directly.&lt;/p&gt;
&lt;h3&gt;Agent log forwarding now adds the following attributes to log events for the log4j2 and logback1.2 frameworks:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;thread.name&lt;/li&gt;
&lt;li&gt;thread.id&lt;/li&gt;
&lt;li&gt;logger.name&lt;/li&gt;
&lt;li&gt;logger.fqcn&lt;/li&gt;
&lt;li&gt;error.class&lt;/li&gt;
&lt;li&gt;error.stack&lt;/li&gt;
&lt;li&gt;error.message&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;p&gt;Fixed an issue with distributed tracing headers not being added on external requests made with the HttpUrlConnection client&lt;/p&gt;
&lt;h2&gt;Support statement&lt;/h2&gt;
&lt;p&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Full changelog&lt;/strong&gt;: &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/compare/v7.9.0...v7.10.0&quot;&gt;https://github.com/newrelic/newrelic-java-agent/compare/v7.9.0...v7.10.0&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.7.0 and 7.8.0, the results printed to the console will be:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;➜ diff newrelic_7.7.0.yml newrelic_7.8.0.yml
98c98
&amp;#x3C;     #forwarding:
---
&gt;     forwarding:
100,101c100,101
&amp;#x3C;       # When true, application logs will be forwarded to New Relic. The default is false.
&amp;#x3C;       #enabled: false
---
&gt;       # When true, application logs will be forwarded to New Relic. The default is true.
&gt;       enabled: true
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.8.0. If you are moving to 7.8.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 15 Sep 2022 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v7.1.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC03LjEuMQ==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-711</link><pubDate>Thu, 15 Jul 2021 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Real-time profiling for Java using JFR metrics&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Due to overhead caused in some applications &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/features/real-time-profiling-java-using-jfr-metrics/&quot;&gt;Real-time profiling for Java using JFR metrics&lt;/a&gt;
is now disabled by default.&lt;/p&gt;
&lt;p&gt;It can be enabled using the &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/configuration/java-agent-configuration-config-file/#jfr-real-time-profiling&quot;&gt;agent settings (newrelic.yml)&lt;/a&gt;.&lt;/p&gt;
&lt;h3&gt;Support statement:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and
performance benefits. Additionally, older releases will no longer be supported when they reach
&lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 15 Jul 2021 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v7.11.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC03LjExLjE=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-7111</link><pubDate>Tue, 15 Nov 2022 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from upgrading to the latest version, ensure that your agents are regularly updated to a version at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Fix bug with log4j2 metrics &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1068&quot;&gt;1068&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Adds a previously missing delimiter in POSTGRES_DIALECT_PATTERN &quot;|&quot; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1050&quot;&gt;1050&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Update snakeyaml lib to v1.33 security patch &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1077&quot;&gt;1077&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Deprecation notice&lt;/h2&gt;
&lt;p&gt;The following instrumentation modules have been deprecated for removal:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;cassandra-datastax-2.1.2&lt;/li&gt;
&lt;li&gt;httpclient-3.0&lt;/li&gt;
&lt;li&gt;jdbc-embedded-derby-10.10.1.1&lt;/li&gt;
&lt;li&gt;jetty-7&lt;/li&gt;
&lt;li&gt;jetty-7.6&lt;/li&gt;
&lt;li&gt;jetty-9&lt;/li&gt;
&lt;li&gt;jetty-9.0.4&lt;/li&gt;
&lt;li&gt;jetty-9.1&lt;/li&gt;
&lt;li&gt;mongodb-2.12&lt;/li&gt;
&lt;li&gt;mongodb-2.14&lt;/li&gt;
&lt;li&gt;mongodb-3.0&lt;/li&gt;
&lt;li&gt;okhttp-3.0.0&lt;/li&gt;
&lt;li&gt;okhttp-3.4.0&lt;/li&gt;
&lt;li&gt;okhttp-3.5.0&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The &lt;code&gt;httpResponseCode&lt;/code&gt;, &lt;code&gt;response.status&lt;/code&gt; and &lt;code&gt;response.statusMessage&lt;/code&gt; transaction/span attributes are deprecated and will be removed in a future release. These have been replaced by &lt;code&gt;http.statusCode&lt;/code&gt; and &lt;code&gt;http.statusText&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you are moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;</content:encoded><description>ReleasedOn: Tue, 15 Nov 2022 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v7.11.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC03LjExLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-7110</link><pubDate>Thu, 27 Oct 2022 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Support Java 19 &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1022&quot;&gt;1022&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Support Play 2.8.16+ &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/981&quot;&gt;981&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Support ojdbc8 v21.1.0.0+ &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1042&quot;&gt;1042&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Support Semeru/OpenJ9 JVMs &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/993&quot;&gt;993&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Support log forwarding for java.util.logging (JUL) &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1049&quot;&gt;1049&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Support forwarding log context data &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/866&quot;&gt;866&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The agent can now forward data in Mapped Diagnostic Context (MDC, logback/slf4j) and ThreadContext (log4j2) as attributes when forwarding log records. When the feature is enabled, these attributes will be added to the log records with a &lt;code&gt;context.&lt;/code&gt; prefix. For details on how to enable this feature see the documentation for &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/java-agent/configuration/java-agent-configuration-config-file/#logging-context-data&quot;&gt;context_data&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Custom Event Limit Increase  &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1036&quot;&gt;1036&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;This version increases the default limit of custom events from 10,000 events per minute to 30,000 events per minute. In the scenario that custom events were being limited, this change will allow more custom events to be sent to New Relic. There is also a new configurable maximum limit of 100,000 events per minute. To change the limits, see the documentation for &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/java-agent/configuration/java-agent-configuration-config-file/#Custom_Events&quot;&gt;max_samples_stored&lt;/a&gt;. To learn more about the change and how to determine if custom events are being dropped, see our Explorers Hub &lt;a href=&quot;https://discuss.newrelic.com/t/send-more-custom-events-with-the-latest-apm-agents/190497&quot;&gt;post&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Code-level metrics on by default &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1037&quot;&gt;1037&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The code-level metrics functionality introduced with agent 7.10 is now enabled by default. This feature will cause an increase in the consumption of data. The amount depends on the application. To disable code-level metrics, see instructions on our &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/java-agent/configuration/java-agent-configuration-config-file#code-level-metrics&quot;&gt;code-level metrics documentation&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Prevent an exception from being thrown in the Jedis instrumentation &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1011&quot;&gt;1011&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Improvement on Http4s transactions &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1006&quot;&gt;1006&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fix noticeError API not verifying whether errors were expected &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1014&quot;&gt;1014&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Adds command for Lettuce queries to clusters &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1031&quot;&gt;1031&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fix exception when building up the agent jar from a clean repo &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1048&quot;&gt;1048&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Better error handling for code-level metrics &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1021&quot;&gt;1021&lt;/a&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1051&quot;&gt;1051&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fix HttpUrlConnection spans not terminating on exception &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1053&quot;&gt;1053&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Deprecation notice&lt;/h2&gt;
&lt;p&gt;The following instrumentation modules are being deprecated for removal:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;cassandra-datastax-2.1.2&lt;/li&gt;
&lt;li&gt;httpclient-3.0&lt;/li&gt;
&lt;li&gt;jdbc-embedded-derby-10.10.1.1&lt;/li&gt;
&lt;li&gt;jetty-7&lt;/li&gt;
&lt;li&gt;jetty-7.6&lt;/li&gt;
&lt;li&gt;jetty-9&lt;/li&gt;
&lt;li&gt;jetty-9.0.4&lt;/li&gt;
&lt;li&gt;jetty-9.1&lt;/li&gt;
&lt;li&gt;mongodb-2.12&lt;/li&gt;
&lt;li&gt;mongodb-2.14&lt;/li&gt;
&lt;li&gt;mongodb-3.0&lt;/li&gt;
&lt;li&gt;okhttp-3.0.0&lt;/li&gt;
&lt;li&gt;okhttp-3.4.0&lt;/li&gt;
&lt;li&gt;okhttp-3.5.0&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The &lt;code&gt;httpResponseCode&lt;/code&gt;, &lt;code&gt;response.status&lt;/code&gt; and &lt;code&gt;response.statusMessage&lt;/code&gt; transaction/span attributes are deprecated and will be removed in a future release. These have been replaced by &lt;code&gt;http.statusCode&lt;/code&gt; and &lt;code&gt;http.statusText&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement&lt;/h2&gt;
&lt;p&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/p&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you are moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 27 Oct 2022 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v7.2.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC03LjIuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-720</link><pubDate>Thu, 09 Sep 2021 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;New features and improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Scala Library Instrumentation &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/362&quot;&gt;#362&lt;/a&gt; and &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/363&quot;&gt;#363&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;STTP versions 2 &amp;#x26; 3  Akka-HTTP, HTTP4s and STTP core backends&lt;/li&gt;
&lt;li&gt;Cats-effect v2&lt;/li&gt;
&lt;li&gt;ZIO v1&lt;/li&gt;
&lt;li&gt;HTTP4s client &amp;#x26; server v0.21&lt;/li&gt;
&lt;li&gt;Play 2.3-2.8&lt;/li&gt;
&lt;li&gt;Akka-HTTP v10.1 &amp;#x26; v10.2&lt;/li&gt;
&lt;li&gt;For more information, see &lt;a href=&quot;https://docs.newrelic.com/docs/agents/java-agent/frameworks/scala-installation-java/&quot;&gt;Scala instrumentation&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Scala API support (see PRs above)&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Scala APIs provided for explicit instrumentation of several of above libraries in case auto-instrumentation is not desired&lt;/li&gt;
&lt;li&gt;Cats-effect v2&lt;/li&gt;
&lt;li&gt;ZIO v1&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;AWS v2 DynamoDB Instrumentation &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/343&quot;&gt;#343&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Synchronous and asynchronous AWS v2 APIs are auto-instrumented similarly to v1 APIs&lt;/li&gt;
&lt;li&gt;For more information, see &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/issues/246&quot;&gt;Add support for AWS SDK 2 DynamoDB sync/async clients&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;GraphQL 16 Instrumentation &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/396&quot;&gt;#396&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Create meaningful transaction names&lt;/li&gt;
&lt;li&gt;Create meaningful spans&lt;/li&gt;
&lt;li&gt;Reporting GraphQL errors&lt;/li&gt;
&lt;li&gt;For more information, see &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/issues/356&quot;&gt;GraphQL for Java&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;JFR feature causing excessive overhead when enabled &lt;a href=&quot;https://github.com/newrelic/newrelic-jfr-core/issues/203&quot;&gt;JFR #203&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Refactored code to use less memory.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;p&gt;The existing MongoDB instrumentation was partially applying when MongoDB Reactive Streams is being used.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Disable weaving package when MongoDB 4.x+ reactive driver detected &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/341&quot;&gt;#341&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;For more information, see &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/issues/198&quot;&gt;Spring Reactive DB Drivers - MongoDB Support&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and
performance benefits. Additionally, older releases will no longer be supported when they reach
&lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 09 Sep 2021 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v7.3.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC03LjMuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-730</link><pubDate>Thu, 30 Sep 2021 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;New features and improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Support for &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/366&quot;&gt;Java 16&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Auto-instrumentation support for &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/251&quot;&gt;java.net.http.HttpClient&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Migrate the Agent’s caching library from Guava to &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/295&quot;&gt;Caffeine&lt;/a&gt; (Special thanks to community member &lt;a href=&quot;https://github.com/Stephan202&quot;&gt;Stephan Schroevers&lt;/a&gt; for this contribution)&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/ben-manes/caffeine#cache&quot;&gt;Caffeine provides an in-memory cache&lt;/a&gt; using a Google Guava inspired API. The improvements draw on the author’s experience designing Guava&apos;s cache and &lt;code&gt;ConcurrentLinkedHashMap&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;We expect this change to provide improvement in cases where we saw thread contention and deadlocks attributable to the Guava library.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Removed support for the &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/426&quot;&gt;anorm-2.0 instrumentation module&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;The artifacts that this module instrumented are no longer available.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and
performance benefits. Additionally, older releases will no longer be supported when they reach
&lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 30 Sep 2021 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v7.4.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC03LjQuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-740</link><pubDate>Thu, 28 Oct 2021 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;New features and improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Support for Java 17 &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/433&quot;&gt;#433&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Distributed tracing is on by default and deprecates cross-application tracing &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/486&quot;&gt;#486&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Increases the default maximum number of samples stored for span events from 1000 to 2000.&lt;/li&gt;
&lt;li&gt;The maximum number of samples stored for span events can be configured via the max_samples_stored configuration in the newrelic.yml.&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code&gt;span_events:
  max_samples_stored: 2000
&lt;/code&gt;&lt;/pre&gt;
&lt;div&gt;&lt;p&gt;This feature causes an increase in the consumption of data. The amount of increase will depend on the application. This feature can be disabled by adding the following to the agent yaml config nested under the common section:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;distributed_tracing:
  enabled: false
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Auto-instrumentation support for GraphQL-Java 17.0+ &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/487&quot;&gt;#487&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;This version tested agent support for the ARM64/Graviton2 platform&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;p&gt;The existing MongoDB sync client instrumentation was incorrectly applying when MongoDB reactive or async client was being used, which could lead to segment timeouts and long transaction response times. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/476&quot;&gt;#476&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;Deprecations and removed features&lt;/h3&gt;
&lt;p&gt;Cross application tracing is now deprecated, and disabled by default. To continue using it, enable it with &lt;code&gt;cross_application_tracer.enabled = true&lt;/code&gt; and &lt;code&gt;distributed_tracing.enabled = false&lt;/code&gt;.&lt;/p&gt;
&lt;h3&gt;Support statement:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and
performance benefits. Additionally, older releases will no longer be supported when they reach
&lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 28 Oct 2021 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v7.4.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC03LjQuMQ==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-741</link><pubDate>Fri, 10 Dec 2021 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Upgraded log4j to 2.15.0 to mitigate the security vulnerability &lt;a href=&quot;https://github.com/advisories/GHSA-jfh8-c2jp-5v3q&quot;&gt;CVE-2021-44228&lt;/a&gt;. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/issues/605&quot;&gt;605&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Recommended Java versions&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;This fix is recommended if you are running on Java 8 - 17.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and
performance benefits. Additionally, older releases will no longer be supported when they reach
&lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Fri, 10 Dec 2021 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v7.4.2]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC03LjQuMg==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-742</link><pubDate>Tue, 14 Dec 2021 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Upgraded log4j to 2.16.0 to mitigate the security vulnerability &lt;a href=&quot;https://github.com/advisories/GHSA-7rjr-3q55-vv33&quot;&gt;CVE-2021-45046&lt;/a&gt;. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/issues/605&quot;&gt;605&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Recommended Java versions&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;This fix is recommended if you are running on Java 8 - 17.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and
performance benefits. Additionally, older releases will no longer be supported when they reach
&lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 14 Dec 2021 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v7.4.3]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC03LjQuMw==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-743</link><pubDate>Mon, 20 Dec 2021 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Upgraded log4j to 2.17.0 to mitigate the security vulnerability &lt;a href=&quot;https://github.com/advisories/GHSA-p6xc-xr62-6r2g&quot;&gt;CVE-2021-45105&lt;/a&gt;. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/issues/605&quot;&gt;605&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Recommended Java versions&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;This fix is recommended if you are running on Java 8 - 17.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and
performance benefits. Additionally, older releases will no longer be supported when they reach
&lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 20 Dec 2021 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v7.6.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC03LjYuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-760</link><pubDate>Mon, 04 Apr 2022 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;New features and improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;APM logs in context: a quick way to view logs no matter where you are in the platform
&lt;ul&gt;
&lt;li&gt;Adds support for logging metrics which shows the rate of log message by severity in the Logs chart in the APM &lt;strong&gt;Summary&lt;/strong&gt; view. This is enabled by default in this release.&lt;/li&gt;
&lt;li&gt;Adds support for forwarding application logs to New Relic. This automatically sends application logs that have been enriched to power automatic logs in context. This is disabled by default in this release. This may be on by default in a future release.&lt;/li&gt;
&lt;li&gt;Adds support for enriching application logs written to disk or standard out. This can be used with another log forwarder to power logs in context if in-agent log forwarding is not desired. We recommend enabling either log forwarding or local log decorating, but not both features. This is disabled by default in this release.&lt;/li&gt;
&lt;li&gt;To learn more about APM logs in context and the configuration options, please see the documentation &lt;a href=&quot;https://docs.newrelic.com/docs/logs/logs-context/java-configure-logs-context-all/&quot;&gt;here&lt;/a&gt;. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/718&quot;&gt;718&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Added instrumentation support for the MariaDB &amp;#x26; H2 R2DBC connectors &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/799&quot;&gt;799&lt;/a&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/724&quot;&gt;724&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Updated agent support for Jedis 4.0.0+ &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/698&quot;&gt;698&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Updated agent support for Cassandra dataStax 4+ &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/690&quot;&gt;690&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Guard against intermittent null pointer exceptions &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/707&quot;&gt;707&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Support CSP nonce parameter for RUM header and footer &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/591&quot;&gt;591&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fixed an issue with auto app naming and distributed tracing transactions &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/566&quot;&gt;566&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Increased maximum &lt;code&gt;TransactionError&lt;/code&gt; message size &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/issues/581&quot;&gt;581&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;The &lt;code&gt;httpResponseCode&lt;/code&gt;, &lt;code&gt;response.status&lt;/code&gt; and &lt;code&gt;response.statusMessage&lt;/code&gt; transaction/span attributes are deprecated and will be removed in a future release. These have been replaced by &lt;code&gt;http.statusCode&lt;/code&gt; and &lt;code&gt;http.statusText&lt;/code&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/513&quot;&gt;513&lt;/a&gt;:&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement:&lt;/h3&gt;
&lt;p&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/p&gt;</content:encoded><description>ReleasedOn: Mon, 04 Apr 2022 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v7.5.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC03LjUuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-750</link><pubDate>Wed, 12 Jan 2022 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;New features and improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Update to jfr-daemon 1.7.0 - fixes a memory leak condition by cleaning up copies of JFR recordings. Also updated to use version 0.13.1 of the telemetry-sdk &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/638&quot;&gt;638&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Update HTTP response code attribute names. This will add &lt;code&gt;http.statusCode&lt;/code&gt; and &lt;code&gt;http.statusText&lt;/code&gt; to spans and transactions &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/513&quot;&gt;513&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Provide support for Datastax/Cassandra WrappedStatments. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/525&quot;&gt;525&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add instrumentation for gRPC 1.40.0+ &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/518&quot;&gt;518&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add suppressed exceptions to ThrowableError.stackTrace &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/405&quot;&gt;405&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add Scala instrumentation and Scala API for Monix Tasks &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/543&quot;&gt;543&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add instrumentation for Mongo async/reactivestreams drivers versions 3.4.x to 4.1.x &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/609&quot;&gt;609&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Scala Cats Effect 3 - modified the API to support passing the transaction by implicit reference, rather than using ThreadLocal variables &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/578&quot;&gt;578&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add Instrumentation for Play WS 2.6.0 under Scala 2.13 &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/594&quot;&gt;594&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Agent optimization: change String.replaceAll in favor of Pattern.compile &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/592&quot;&gt;592&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Upgrade log4j-core version to 2.17.1 to address security vulnerability &lt;a href=&quot;https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-44832&quot;&gt;CVE-2021-44832&lt;/a&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/625&quot;&gt;625&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Enhancements for Spring WebFlux and Reactor Netty instrumentation to address gaps in instrumentation. Also includes support for upgraded Spring Security configurations &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/538&quot;&gt;538&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Update Async-Http-Client library version to 2.0.35 to address security vulnerability &lt;a href=&quot;https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-14063&quot;&gt;CVE-2017-14063&lt;/a&gt;  &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/577&quot;&gt;577&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Handle null pointer exceptions in hostname lookup &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/587&quot;&gt;587&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Properly expire tokens used in CompletableFuture instrumentation to reduce memory usage and prevent telemetry reporting delays &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/634&quot;&gt;634&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add additional exception handling to catch ConnectionPoolTimeoutException errors, which may lead to an unrecoverable agent state &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/637&quot;&gt;637&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Resolve Solr FilterCache Memory Leak &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/613&quot;&gt;613&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Reintroduce MongoDB sync instrumentation (erroneously removed in a prior release while async support was added) &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/635&quot;&gt;635&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fix Sql obfuscation so that it applies correctly to queries with certain formatting &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/632&quot;&gt;632&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Agent configuration &lt;code&gt;expected_status_codes&lt;/code&gt; is not honored when a transaction exception is encountered &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/565&quot;&gt;565&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Scala Cats Effect - ensure Http4s transaction tracer is created on request run. This resolves some invalid tracer states that were causing null pointer exceptions &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/530&quot;&gt;530&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fix Akka HTTP bindFlow &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/555&quot;&gt;555&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Address Caffeine cache causing memory leak and OOM condition  &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/593&quot;&gt;593&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and
performance benefits. Additionally, older releases will no longer be supported when they reach
&lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 12 Jan 2022 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v7.7.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC03LjcuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-770</link><pubDate>Tue, 03 May 2022 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;New features and improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Supports Java 18 &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/813&quot;&gt;813&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;APM logs in context. Automatic application log forwarding is now enabled by default. This version of the agent will automatically send enriched application logs to New Relic. To learn more about this feature see &lt;a href=&quot;https://docs.newrelic.com/docs/logs/logs-context/java-configure-logs-context-all&quot;&gt;Java: Configure logs in context&lt;/a&gt;, and additional configuration options are available &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/java-agent/configuration/java-agent-configuration-config-file/#Logs-in-Context&quot;&gt;Java agent configuration: Config file&lt;/a&gt;. To learn about how to toggle log ingestion on or off by account see &lt;a href=&quot;https://docs.newrelic.com/docs/logs/logs-context/disable-automatic-logging&quot;&gt;Disable automatic logging&lt;/a&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/817&quot;&gt;817&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Added instrumentation support for the Postgres, MySQL, Oracle &amp;#x26; MSSQL R2DBC connectors &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/810&quot;&gt;810&lt;/a&gt;, &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/816&quot;&gt;816&lt;/a&gt;, &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/829&quot;&gt;829&lt;/a&gt;, and &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/828&quot;&gt;828&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Patches a security issue related to an older version of &lt;code&gt;jszip&lt;/code&gt; that is included in the Java agent API Javadoc jar &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/820&quot;&gt;820&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement:&lt;/h3&gt;
&lt;p&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/p&gt;</content:encoded><description>ReleasedOn: Tue, 03 May 2022 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v7.8.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC03LjguMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-780</link><pubDate>Thu, 16 Jun 2022 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;New features and improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Updated the agent to use caffeine 2.9.3 &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/832&quot;&gt;832&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Refactored the &lt;code&gt;log.level&lt;/code&gt; attribute name on LogEvents to instead be &lt;code&gt;level&lt;/code&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/858&quot;&gt;858&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Kafka instrumentation - supports metrics for kafka-clients versions 3.x. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/860&quot;&gt;860&lt;/a&gt; and &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/865&quot;&gt;865&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Update to jfr-daemon 1.8.0 &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/869&quot;&gt;869&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Lettuce instrumentation - supports lettuce-core 4.3 up to 6.x.  Please remove any other (experimental/incubating) lettuce extensions or else Redis database metrics could be doubled. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/872&quot;&gt;872&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed CQLParser &lt;code&gt;getOperationAndTableName&lt;/code&gt; exception handling. Exceptions are now handled within the &lt;code&gt;CQLParser&lt;/code&gt;. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/857&quot;&gt;857&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Removed akka-http-core bindAndHandle instrumentation to resolve scenarios where duplicated transactions could result &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/850&quot;&gt;850&lt;/a&gt; (see &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/java-agent/frameworks/scala-akka-http-core/&quot;&gt;Scala Akka HTTP core instrumentation&lt;/a&gt; for more details)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 16 Jun 2022 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v7.9.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC03LjkuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-790</link><pubDate>Thu, 28 Jul 2022 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;New features and improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Where applicable, existing instrumentation has been tested and verified as compatible with Jakarta EE 8. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/900&quot;&gt;900&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add new instrumentation to support Jetty 10. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/936&quot;&gt;936&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Update to jfr-daemon 1.9.0 to address CVE-2020-29582 and improve CPU overhead. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/937&quot;&gt;937&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add support to pass a boolean environment variable &lt;code&gt;NEWRELIC_DEBUG&lt;/code&gt; where setting it to &lt;code&gt;true&lt;/code&gt; activates the debug configuration. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/890&quot;&gt;890&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Improved performance by internally replacing regex replace with iterative char replace (thanks to @zowens for this contribution) &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/933&quot;&gt;933&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Update the &lt;code&gt;httpurlconnection&lt;/code&gt; instrumentation to use newer distributed tracing APIs so that spans are correctly marked as external calls in distributed traces and contain the expected &lt;code&gt;http.*&lt;/code&gt; attributes. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/885&quot;&gt;885&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Illegal Access Exception is no longer thrown from apps using NR agent with scala 2.12 and Java 11. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/876&quot;&gt;876&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.7.0 and 7.8.0, the results printed to the console will be:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;➜ diff newrelic_7.7.0.yml newrelic_7.8.0.yml
98c98
&amp;#x3C;     #forwarding:
---
&gt;     forwarding:
100,101c100,101
&amp;#x3C;       # When true, application logs will be forwarded to New Relic. The default is false.
&amp;#x3C;       #enabled: false
---
&gt;       # When true, application logs will be forwarded to New Relic. The default is true.
&gt;       enabled: true
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.8.0. If you are moving to 7.8.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 28 Jul 2022 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v8.0.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC04LjAuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-800</link><pubDate>Thu, 26 Jan 2023 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;This release includes a change to the &lt;code&gt;HttpURLConnection&lt;/code&gt; instrumentation that creates a &lt;code&gt;TimerTask&lt;/code&gt; to help ensure complete externals reporting. Under some circumstances this may result in a large number of threads being created, which may exhaust the maximum allocated to the JVM, causing it to stop. This issue has been fixed in the &lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-801&quot;&gt;8.0.1 release&lt;/a&gt; and it&apos;s highly recommended that you update to this version of the Java agent.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Added support for Slick 3.4.0 on Scala 2.13&lt;/li&gt;
&lt;li&gt;Added support for Embedded Tomcat JMX&lt;/li&gt;
&lt;li&gt;Updated the Java agent&apos;s &lt;code&gt;snakeyaml&lt;/code&gt; dependency to 1.33&lt;/li&gt;
&lt;li&gt;Added tracer debug logging, which will appear when &lt;code&gt;-Dnewrelic.config.log_level=finest&lt;/code&gt;
and &lt;code&gt;-Dnewrelic.debug=true&lt;/code&gt; are set&lt;/li&gt;
&lt;li&gt;Improved logging when using the &lt;code&gt;recordCustomEvent&lt;/code&gt; API now includes event type, key and value&lt;/li&gt;
&lt;li&gt;Added Log4j1 instrumentation to support auto log forwarding&lt;/li&gt;
&lt;li&gt;Added JBoss Logging instrumentation to support auto log forwarding&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/java-agent/features/real-time-profiling-java-using-jfr-metrics/&quot;&gt;Real-time profiling for Java using JFR metrics&lt;/a&gt; can now be dynamically enabled/disabled via agent configuration&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Removed leading slash in JCache metric names&lt;/li&gt;
&lt;li&gt;Fixed a bug that was preventing Log4j2 metrics from getting disabled properly&lt;/li&gt;
&lt;li&gt;Added a missing delimiter in &lt;code&gt;POSTGRES_DIALECT_PATTERN&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Fixed a &lt;code&gt;ClassCastException&lt;/code&gt; in GraphQL 16/17&lt;/li&gt;
&lt;li&gt;Refactored &lt;code&gt;HttpURLConnection&lt;/code&gt; instrumentation to fix several bugs that were affecting external calls and distributed traces&lt;/li&gt;
&lt;li&gt;Refactored &lt;code&gt;grpc-1.40.0&lt;/code&gt; instrumentation to ensure that tokens were properly being linked across threads&lt;/li&gt;
&lt;li&gt;Fixed a bug that was causing transactions to fail to link when the Spring Webclient would timeout and emit a &lt;code&gt;ReadTimeoutException&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Removals&lt;/h2&gt;
&lt;p&gt;The following previously deprecated instrumentation modules were removed:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;cassandra-datastax-2.1.2&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;httpclient-3.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;jdbc-embedded-derby-10.2.1.6&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;jdbc-embedded-derby-10.10.1.1&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;jetty-7&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;jetty-7.6&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;jetty-9&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;jetty-9.0.4&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;jetty-9.1&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;mongodb-2.12&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;mongodb-2.14&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;mongodb-3.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;okhttp-3.0.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;okhttp-3.4.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;okhttp-3.5.0&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The previously deprecated &lt;code&gt;httpResponseCode&lt;/code&gt;, &lt;code&gt;response.status&lt;/code&gt;, and &lt;code&gt;response.statusMessage&lt;/code&gt; transaction/span attributes were removed. These have been replaced by &lt;code&gt;http.statusCode&lt;/code&gt; and &lt;code&gt;http.statusText&lt;/code&gt;. If you&apos;ve any custom dashboards or alerts that query the &lt;code&gt;httpResponseCode&lt;/code&gt;, &lt;code&gt;response.status&lt;/code&gt;, and &lt;code&gt;response.statusMessage&lt;/code&gt; attributes then they will need to be updated to instead use &lt;code&gt;http.statusCode&lt;/code&gt; and &lt;code&gt;http.statusText&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you&apos;re moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 26 Jan 2023 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v8.0.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC04LjAuMQ==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-801</link><pubDate>Thu, 23 Feb 2023 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from upgrading to the latest version, ensure that your agents are regularly updated to a version at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Various fixes to the &lt;code&gt;HttpUrlConnection&lt;/code&gt; instrumentation. See the &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/tree/main/instrumentation/httpurlconnection#readme&quot;&gt;README&lt;/a&gt; for full details &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1145&quot;&gt;1145&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Ensure that &lt;code&gt;TokenAndRefCount.token&lt;/code&gt; is never null &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1148&quot;&gt;1148&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Correct a possible &lt;code&gt;NullPointerException&lt;/code&gt; being thrown when calling &lt;code&gt;addCustomAttributes&lt;/code&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1141&quot;&gt;1141&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Fix &lt;code&gt;ClassCircularityError&lt;/code&gt; when agent attaches &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1139&quot;&gt;1139&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you are moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 23 Feb 2023 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v8.1.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC04LjEuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-810</link><pubDate>Thu, 13 Apr 2023 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Added support for Webflux 6 &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1181&quot;&gt;1181&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Added support for Spring JMS 6 &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/issues/1088&quot;&gt;1088&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Added support for Mongodb Reactive Streams &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1164&quot;&gt;1164&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Added support for Kafka Streams &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1170&quot;&gt;1170&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Support for Kafka Streams comes in two flavors, metrics and spans. Metrics are enabled by default, while spans are disabled by default. To enable spans add the following to your &lt;em&gt;newrelic.yml&lt;/em&gt; configuration under the common section:&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code&gt;common:
  class_transformer:
    kafka-streams-spans:
      enabled: true
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Error fingerprint - supply your own errors inbox group names &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1195&quot;&gt;1195&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Are your error occurrences grouped poorly? Set your own error fingerprint via a callback function. A new public API method has been added that will accept a user defined proc. The proc will be invoked for each noticed error and whenever it returns a string, that string will be used as the error group name for the error and will take precedence over any server-side grouping that takes place with the New Relic errors inbox. This gives users much greater control over the grouping of their errors. For more information check our &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/java-agent/api-guides/java-agent-api-register-error-group-callback-to-set-fingerprint/&quot;&gt;API: Error Grouping&lt;/a&gt; and &lt;a href=&quot;https://docs.newrelic.com/docs/errors-inbox/apm-tab/&quot;&gt;APM: Group errors tab&lt;/a&gt; pages.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;User tracking - associate errors with a user id &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1188&quot;&gt;1188&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;You can now see the number of users impacted by an error group. Identify the end user with a new public API method that will accept a string representation of a user id and associate that user id with the current transaction. Transactions and errors will then have a new &lt;code&gt;enduser.id&lt;/code&gt; agent attribute associated with them. This will allow agent users to tag transactions and errors as belonging to given user ids in support of greater filtering and alerting capabilities. For more information check the [Newrelic.setUserId ](&lt;a href=&quot;https://newrelic.github.io/java-agent-api/javadoc/com/newrelic/api/agent/NewRelic.html#setUserName(java.lang.String)&quot;&gt;https://newrelic.github.io/java-agent-api/javadoc/com/newrelic/api/agent/NewRelic.html#setUserName(java.lang.String)&lt;/a&gt; documentation and the &lt;a href=&quot;https://docs.newrelic.com/docs/errors-inbox/error-users-impacted/&quot;&gt;Track users impacted with errors inbox&lt;/a&gt; page.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Invoking &lt;code&gt;token.link()&lt;/code&gt; outside a transaction will instrument that method to start an async transaction &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1140&quot;&gt;1140&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The Kafka clients instrumentation has new metrics to list the nodes: &lt;code&gt;MessageBroker/Kafka/Nodes/&amp;#x26;lt;node&gt;&lt;/code&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1130&quot;&gt;1130&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Fix ClassCircularityError when agent attaches &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1137&quot;&gt;1137&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fix NullPointerException thrown when calling &lt;code&gt;addCustomAttributes&lt;/code&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/issues/1115&quot;&gt;1115&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Make sure &lt;code&gt;TokenAndRefCount.token&lt;/code&gt; is never null &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/issues/1149&quot;&gt;1149&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Using a time based cache to store database connection data to prevent a memory leak when instrumenting MySQL client with replication &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1114&quot;&gt;1114&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Decreased the number of threads used in the HttpUrlConnection instrumentation &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1145&quot;&gt;1145&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fix an issue when HttpUrlConnection is used with the legacy cross application tracing &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/issues/1142&quot;&gt;1142&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Performance improvement in Netty’s RequestWrapper &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1163&quot;&gt;1163&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Gracefully shutdown the agent if it encounters issues on startup &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1136&quot;&gt;1136&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fix WeavedMethod and InstrumentedMethod annotations when applied to constructors.  &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/issues/1153&quot;&gt;1153&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Performance improvements when using Tomcat &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1131&quot;&gt;1131&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fixed a bug that caused the agent to not report some exceptions &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1176&quot;&gt;1176&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Updated DockerData to increase the number of container IDs detected &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1178&quot;&gt;1178&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Reduce the number of threads used in Kafka clients instrumentation &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/issues/1056&quot;&gt;1056&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Grammar changes [1175](&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1175&quot;&gt;https://github.com/newrelic/newrelic-java-agent/pull/1175&lt;/a&gt; and [1190][https://github.com/newrelic/newrelic-java-agent/pull/1190](&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1190&quot;&gt;https://github.com/newrelic/newrelic-java-agent/pull/1190&lt;/a&gt;))&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you are moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 13 Apr 2023 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v8.11.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC04LjExLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-8110</link><pubDate>Thu, 11 Apr 2024 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Add HTTP/2 support for Netty 4.1.16.Final + &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1815&quot;&gt;1815&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Support external calls inside Spring Reactor call chains &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1828&quot;&gt;1828&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Support for Apache Pekko (i.e. the pekko-actor library). &lt;em&gt;Support for Pekko HTTP coming soon.&lt;/em&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1811&quot;&gt;1811&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Add configuration to allow the OTel SDK integration to be completely disabled &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1821&quot;&gt;1821&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Configuration via yaml:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;opentelemetry:
  sdk:
    autoconfigure:
      enabled: false
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Configuration via system property:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;  -Dnewrelic.config.opentelemetry.sdk.autoconfigure.enabled=false
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Treat OpenTelemetry &lt;a href=&quot;https://opentelemetry.io/docs/languages/java/automatic/annotations/#creating-spans-around-methods-with-withspan&quot;&gt;@WithSpan&lt;/a&gt; annotation as &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/java-agent/api-guides/java-agent-api-instrument-using-annotation/#trace&quot;&gt;@Trace&lt;/a&gt; in the Java Agent API  &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1841&quot;&gt;1841&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Fix high CPU usage with HttpURLConnection by reverting InboundWrapper changes introduced in 8.10.0 &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1840&quot;&gt;1840&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Prevent duplicate HTTP external calls when using the DynamoDB SDK &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1827&quot;&gt;1827&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Deprecations&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;The browser footer injection APIs have been deprecated and will be removed in a future agent release. The header injection API now adds both the header and footer scripts. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1679&quot;&gt;1679&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The following instrumentation modules are deprecated and will be removed in the next major release:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;aws-wrap-0.7.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;java.completable-future-jdk8&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;play-2.3&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;spring-3.0.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;netty-3.4&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Struts v1&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;IAST&lt;/h2&gt;
&lt;h3&gt;Changes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Json Version bump to 1.2.0 &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/pull/207&quot;&gt;207&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;IAST replay header decryption due to Security Findings &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/pull/207&quot;&gt;207&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fix issue related to the instrumentation of the Rhino JavaScript Engine that occurred while reading the script &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/pull/211&quot;&gt;211&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Changelog: &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/compare/v8.10.0...v8.11.0&quot;&gt;v8.10.0...v8.11.0&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you are moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 11 Apr 2024 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v8.10.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC04LjEwLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-8100</link><pubDate>Thu, 28 Mar 2024 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;p&gt;This version of the agent introduced a bug that can cause significant CPU and memory usage increases and potential deadlocks if your application uses &lt;code&gt;HttpUrlConnection&lt;/code&gt; or any libraries that use it under the hood. Agent version 8.11.0 fixes this problem. Alternatively, disabling the &lt;code&gt;HttpUrlConnection&lt;/code&gt; instrumentation would prevent the issue. For example, &lt;code&gt;-Dnewrelic.config.class_transformer.com.newrelic.instrumentation.httpurlconnection.enabled=false&lt;/code&gt;.&lt;/p&gt;&lt;p&gt;Disabling this instrumentation will have the effect that the client&apos;s external calls will not be recorded. We strongly recommend that you use the latest agent versions. They include all the latest code fixes and provide access to the latest platform features.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Support for Spring Webflux 6.1.x &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1761&quot;&gt;1761&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Support for Spring Batch v4.0+ &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1792&quot;&gt;1792&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Scala 3 API &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1772&quot;&gt;1772&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;ZIO 1 instrumentation improvements &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1739&quot;&gt;1739&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Support for ZIO 2 &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1778&quot;&gt;1778&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Enhanced clustered Solr JMX metrics &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1812&quot;&gt;1812&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add transaction GUID to Errors &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1813&quot;&gt;1813&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Prevent NullPointerException when setting the user id outside of a transaction &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1762&quot;&gt;1762&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Disallow Real Time Profiling when High Security Mode is enabled &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1764&quot;&gt;1764&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Prevent &lt;code&gt;ClassCircularityErrors&lt;/code&gt; in some specific circumstances &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1763&quot;&gt;1763&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Properly removing files when &lt;code&gt;log_daily&lt;/code&gt; is enabled &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1754&quot;&gt;1754&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Decreased memory held by the agent when HTTP calls are made &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1775&quot;&gt;1775&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Prevent duplicate DT headers for gRPC &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1783&quot;&gt;1783&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Properly updating how many log messages are sent after configuration change &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1784&quot;&gt;1784&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Prevent exceptions when reading lambda bytecode &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1794&quot;&gt;1794&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Reduce interval for JDBC caches &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1809&quot;&gt;1809&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Deprecations&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;The browser footer injection APIs have been deprecated and will be removed in a future agent release. The header injection API now adds both the header and footer scripts. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1679&quot;&gt;1679&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The following instrumentation modules are deprecated and will be removed in the next major release:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;aws-wrap-0.7.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;java.completable-future-jdk8&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;play-2.3&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;spring-3.0.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;netty-3.4&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Struts v1&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;IAST&lt;/h2&gt;
&lt;h3&gt;Changes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Ning Async HTTP client Support: The security agent now also supports &lt;code&gt;com.ning:async-http-client&lt;/code&gt; 1.0.0 and higher &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/pull/152&quot;&gt;152&lt;/a&gt;, &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/pull/118&quot;&gt;118&lt;/a&gt;, &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/pull/116&quot;&gt;116&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Jersey Support: The security agent now also supports Jersey 2.0 and higher &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/pull/150&quot;&gt;150&lt;/a&gt;, &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/pull/149&quot;&gt;149&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Mule Support: The security agent now also supports Mule server version 3.6 to 3.9.x &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/pull/144&quot;&gt;144&lt;/a&gt;, &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/pull/143&quot;&gt;143&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Jetty v12 Support: The security agent now also support Jetty version 12 and higher &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/pull/106&quot;&gt;106&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Lettuce Support: The security agent now also supports Lettuce 4.4.0.Final and higher &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/pull/125&quot;&gt;125&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Extract Server Configuration to resolve IAST localhost connection with application for Wildfly server &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/pull/192&quot;&gt;192&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Trustboundary events now will have list of string as parameter schema&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you&apos;re moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 28 Mar 2024 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v8.11.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC04LjExLjE=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-8111</link><pubDate>Thu, 25 Apr 2024 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;Features&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Update Security Agent to Public Release version &lt;code&gt;1.2.1&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Deprecations&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;The browser footer injection APIs have been deprecated and will be removed in a future agent release. The header injection API now adds both the header and footer scripts. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1679&quot;&gt;1679&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The following instrumentation modules are deprecated and will be removed in the next major release:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;aws-wrap-0.7.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;java.completable-future-jdk8&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;play-2.3&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;spring-3.0.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;netty-3.4&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Struts v1&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;IAST&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Update Security Agent to Public Release version &lt;code&gt;1.2.1&lt;/code&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1870&quot;&gt;1870&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Changelog: &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/releases/tag/1.2.1&quot;&gt;https://github.com/newrelic/csec-java-agent/releases/tag/1.2.1&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you&apos;re moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 25 Apr 2024 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v8.12.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC04LjEyLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-8120</link><pubDate>Thu, 23 May 2024 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Add support for Java 22 &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1819&quot;&gt;1819&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add AI Monitoring support for AWS SDK for Java v2 Bedrock Runtime Client versions 2.20.157 and above &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1837&quot;&gt;1837&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Enhance log forwarding to include &lt;strong&gt;caused by&lt;/strong&gt; section &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1857&quot;&gt;1857&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add support for Pekko Http &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1850&quot;&gt;1850&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add local decorating for Log4j 2 users utilizing JsonTemplateLayout &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1866&quot;&gt;1866&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Performance improvements on SQL checks &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1887&quot;&gt;1887&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Resolve various thread hopping issues with Spring Reactor call chains &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1883&quot;&gt;1883&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Refactor the daily logfile rolling job to support all platforms &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1888&quot;&gt;1888&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fix Ning memory leak &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1903&quot;&gt;1903&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;IAST&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Update Security Agent to Public Release version &lt;code&gt;1.3.0&lt;/code&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1896&quot;&gt;1896&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/csec-java-agent/releases/tag/1.3.0&quot;&gt;Changes/Fixes&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Deprecations&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;The browser footer injection APIs have been deprecated and will be removed in a future agent release. The header injection API now adds both the header and footer scripts. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1679&quot;&gt;1679&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The following instrumentation modules are deprecated and will be removed in the next major release:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;aws-wrap-0.7.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;java.completable-future-jdk8&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;play-2.3&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;spring-3.0.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;netty-3.4&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Struts v1&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true

&lt;/code&gt;&lt;/pre&gt;</content:encoded><description>ReleasedOn: Thu, 23 May 2024 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v8.14.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC04LjE0LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-8140</link><pubDate>Wed, 21 Aug 2024 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;The Java agent supports disabling AI Monitoring at the account/organization level &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1972&quot;&gt;1972&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;HikariCP instrumentation now captures additional metrics &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1976&quot;&gt;1976&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Adds new instrumentation module for &lt;code&gt;kafka-clients-metrics-3.7.0&lt;/code&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2001&quot;&gt;2001&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Adds new instrumentation module for &lt;code&gt;jedis-5.0.0&lt;/code&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1969&quot;&gt;1969&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Adds new instrumentation module for &lt;code&gt;vertx-sqlclient-4.4.2&lt;/code&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2004&quot;&gt;2004&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;The &lt;code&gt;newrelic-scala-api&lt;/code&gt; for Scala 3 will now be published to Maven &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1995&quot;&gt;1995&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;New AWS MQ attributes will be added to spans &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1977&quot;&gt;1977&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Clarify Javadoc comments for &lt;code&gt;@Trace&lt;/code&gt; API &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2009&quot;&gt;2009&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Fixes a &lt;code&gt;netty-reactor&lt;/code&gt; issue that was causing high memory usage &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1978&quot;&gt;1978&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Netty instrumentation will start transactions for HTTP/2 requests &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1994&quot;&gt;1994&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Deprecations&lt;/h2&gt;
&lt;p&gt;The following instrumentation modules are deprecated and will be removed in the next major release:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;aws-wrap-0.7.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;java.completable-future-jdk8&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;play-2.3&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;spring-3.0.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;netty-3.4&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Struts v1&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;IAST&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;CSEC Version bump to 1.4.1 &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2010&quot;&gt;2010&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Changelog: &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/releases/tag/1.4.1&quot;&gt;https://github.com/newrelic/csec-java-agent/releases/tag/1.4.1&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you&apos;re moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 21 Aug 2024 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v8.13.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC04LjEzLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-8130</link><pubDate>Thu, 11 Jul 2024 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Add attributes to AWS SQS spans that allow linking to SQS entities &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1954&quot;&gt;1954&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add support for Graphql 22.0+ &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1912&quot;&gt;1912&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add support for JSP v4 &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1951&quot;&gt;1951&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add instrumentation for HikariCP 2.4.0 to replace existing extension module.&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1964&quot;&gt;1964&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Note: If the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/java-agent/instrumentation/extension-additional-instrumentation-modules/#hikaricp-240&quot;&gt;New Relic HikariCP incubator module&lt;/a&gt; is currently in use, delete it from the new relic jar’s extension folder before upgrading to this version of the Java Agent.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Enhance CompletableFuture instrumentation for JDK11+ &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1908&quot;&gt;1908&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Enable RUM script injection via JSP v3 Tag library &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1943&quot;&gt;1943&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fetch the docker container ID for ECS Fargate instances &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1952&quot;&gt;1952&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Fix R2dbc postgresql 0.9.2 instrumentation to prevent memory leaks  &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1916&quot;&gt;1916&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Update vertx-web instrumentation to start transactions for HTTP/2 requests &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1959&quot;&gt;1959&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Update JFR Instance Naming to display correct number of JVMs  &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1928&quot;&gt;1928&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Close instrumentation gap for akka-http 10.2.0+ &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1955&quot;&gt;1955&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Start transactions in the Jetty12 core server &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1950&quot;&gt;1950&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Clean up dtTracers and externalTracers after exceptions to prevent memory leaks &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1902&quot;&gt;1902&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add security-related class excludes during normal class transformer creation &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1918&quot;&gt;1918&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add null checks to vertx 4.5.1 instrumentation &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1927&quot;&gt;1927&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;IAST&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;CSEC Version bump to 1.4.0 &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1956&quot;&gt;1956&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/csec-java-agent/releases/tag/1.4.0&quot;&gt;Changelog&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Deprecations&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;The browser footer injection APIs have been deprecated and will be removed in a future agent release. The header injection API now adds both the header and footer scripts. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1679&quot;&gt;1679&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The following instrumentation modules are deprecated and will be removed in the next major release:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;aws-wrap-0.7.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;java.completable-future-jdk8&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;play-2.3&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;spring-3.0.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;netty-3.4&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Struts v1&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you&apos;re moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 11 Jul 2024 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v8.15.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC04LjE1LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-8150</link><pubDate>Tue, 01 Oct 2024 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Addition of AWS Lambda SDK instrumentation &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1998&quot;&gt;1998&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Reporting of Flyway migration events &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2021&quot;&gt;2021&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add support for using an environment variable for config file location &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2022&quot;&gt;2022&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Support AWS Kinesis V1 and V2 SDKs &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2031&quot;&gt;2031&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Addition of kafka-clients-node-metrics-3.7.0 Instrumentation module &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2039&quot;&gt;2039&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add instrumentation for glassfish-jul-extension logging library &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2049&quot;&gt;2049&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Java 23 support &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2055&quot;&gt;2055&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Support reporting of ECS Fargate Docker ids &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2050&quot;&gt;2050&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Actuator endpoint transaction naming for Spring Boot 3 &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2077&quot;&gt;2077&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Slick 3.5.0 instrumentation bug fix &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2025&quot;&gt;2025&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Protect against Http2Headers methods throwing exceptions in Netty instrumentation &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2042&quot;&gt;2042&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fix an issue where the Kinesis instrumentation is generating ERROR logs due to a NullPointerException &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2052&quot;&gt;2052&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;IAST&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;CSEC version bump to 1.5 &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2076&quot;&gt;2076&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Changelog: &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/releases/tag/1.5.0&quot;&gt;https://github.com/newrelic/csec-java-agent/releases/tag/1.5.0&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Full Changelog&lt;/strong&gt;: &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/compare/v8.14.0...v8.15.0&quot;&gt;https://github.com/newrelic/newrelic-java-agent/compare/v8.14.0...v8.15.0&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you&apos;re moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 01 Oct 2024 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v8.16.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC04LjE2LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-8160</link><pubDate>Thu, 14 Nov 2024 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Obfuscate JVM properties &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2114&quot;&gt;2114&lt;/a&gt;
&lt;div&gt;&lt;/div&gt;The Java agent will now obfuscate values passed to JVM properties. For example: &lt;code&gt;-Dprop=12345&lt;/code&gt; will now be sent as &lt;code&gt;-Dprop=obfuscated&lt;/code&gt;. The &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/java-agent/configuration/java-agent-configuration-config-file/#jvm-properties-obfuscation&quot;&gt;documentation&lt;/a&gt; has information on how to disable obfuscation and how to add exceptions.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Cloud API &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2081&quot;&gt;2081&lt;/a&gt;
&lt;div&gt;&lt;/div&gt;The Cloud API allows cloud provider account information to be provided to the agent. This will allow the agent to populate the &lt;code&gt;cloud.resource_id&lt;/code&gt; attribute in calls to select cloud services.
&lt;div&gt;&lt;/div&gt;The &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/java-agent/api-guides/guide-using-java-agent-api/#additional&quot;&gt;API documentation&lt;/a&gt; has information on how to use it programmatically.
&lt;div&gt;&lt;/div&gt;This information can also be provided using a &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/java-agent/configuration/java-agent-configuration-config-file/#aws-account_id&quot;&gt;configuration option&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Support distributed tracing for Kafka Stream 3.7.x &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2095&quot;&gt;2095&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Report if agent was installed via Azure site extension &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2094&quot;&gt;2094&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Lazy initialization of GUIDs on DefaultTracers &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2088&quot;&gt;2088&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Java HttpClient:  Addition of status code to reported externals &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2089&quot;&gt;2089&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;AWS Lambda: populate &lt;code&gt;cloud.resource_id&lt;/code&gt; using data from Cloud API &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2115&quot;&gt;2115&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Kinesis Data Streams: populate &lt;code&gt;cloud.resource_id&lt;/code&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2112&quot;&gt;2112&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;DynamoDB: populate &lt;code&gt;cloud.resource_id&lt;/code&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2113&quot;&gt;2113&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Use recordResponseTimeMetric instead of recordMetric &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2128&quot;&gt;2128&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Use WeakReference HttpUrlConnection instrumentation &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2082&quot;&gt;2082&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix a bug where Jetty 12 would not properly link distributed traces &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2140&quot;&gt;2140&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Update to JFR daemon 1.13.0 &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2129&quot;&gt;2129&lt;/a&gt;
&lt;div&gt;&lt;/div&gt;This update changes the HTTP client used, which caused problems with some proxies.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;IAST&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;CSEC version bump to 1.5.1 &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2076&quot;&gt;2076&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Changelog: &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/releases/tag/1.5.1&quot;&gt;https://github.com/newrelic/csec-java-agent/releases/tag/1.5.1&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you&apos;re moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 14 Nov 2024 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v8.17.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC04LjE3LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-8170</link><pubDate>Thu, 19 Dec 2024 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Add support for jdbc-mariadb 3.0.0 till latest and r2dbc-mariadb 1.1.2 till latest - credit to @dhilpipre - clone of 2142 by @jtduffy in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2146&quot;&gt;2146&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Auto discover AWS account ID in the DynamoDB instrumentation by @meiao in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2148&quot;&gt;2148&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Auto discover AWS account ID in the Lambda sdk instrumentation by @meiao in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2167&quot;&gt;2167&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Support pekko-http on scala 3 for versions 1.0.0 till latest by @kanderson250 in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2163&quot;&gt;2163&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Allow JFR queue size and harvest interval to be configured via agent config by @jtduffy in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2168&quot;&gt;2168&lt;/a&gt;
New configs are:&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code&gt;  jfr:
    # The time interval, in seconds, of how often JFR data is sent to New Relic.
    # The default is 10 seconds.
    harvest_interval: 10

    # The size of the queue used to store JFR events. Increasing this can reduce gaps in JFR reported data
    # but can also cause resource issues in the agent or cause data to be dropped if backend pipeline
    # limits are exceeded.
    # See: https://docs.newrelic.com/docs/data-apis/ingest-apis/event-api/introduction-event-api/#limits
    #      https://docs.newrelic.com/docs/data-apis/ingest-apis/metric-api/metric-api-limits-restricted-attributes/
    # Default is 250000
    queue_size: 250000
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;Add AWS Firehose SDK Instrumentation for versions 2.1.0 till latest by @obenkenobi in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2149&quot;&gt;2149&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Implement a new instrumentation module for r2dbc-mysql 1.1.3+ by @jbedell-newrelic in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2169&quot;&gt;2169&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Memory usage reduced for the r2dbc-mssql and m2dbc-mysql modules by @jbedell-newrelic in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2169&quot;&gt;2169&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Log when multiple, different, traceparent headers found on inbound request and only report &lt;code&gt;invalid parent header count&lt;/code&gt; supportability metric when that scenario occurs by @jtduffy in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2154&quot;&gt;2154&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Expected NPE in noticeTracer no longer logs full stack trace by @jasonjkeller in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2143&quot;&gt;2143&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Resolved a potential token timeout issue with the reactor-3.3.0 module by @jbedell-newrelic in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2169&quot;&gt;2169&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;IAST&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;CSEC version bump to 1.6.0 &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2173&quot;&gt;2173&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Changelog: &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/releases/tag/1.6.0&quot;&gt;https://github.com/newrelic/csec-java-agent/releases/tag/1.6.0&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you&apos;re moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 19 Dec 2024 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v8.19.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC04LjE5LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-8190</link><pubDate>Tue, 11 Mar 2025 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2238&quot;&gt;2238&lt;/a&gt; Support Adding Labels to APM Forwarded Logs by @deleonenriqueta&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2246&quot;&gt;2246&lt;/a&gt; Update Config File to Include APM Forwarded Log Labels Options by @deleonenriqueta&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2243&quot;&gt;2243&lt;/a&gt; Add response attributes for http4s server modules by @kanderson250&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2230&quot;&gt;2230&lt;/a&gt; Default proxy_scheme setting to &quot;http&quot; by @jtduffy&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2259&quot;&gt;2259&lt;/a&gt; Add support for server-side application logging configs by @obenkenobi&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2228&quot;&gt;2228&lt;/a&gt; invokeSuspend edge case fix by @kanderson250&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2258&quot;&gt;2258&lt;/a&gt; Rename and reenable aws sqs modules by @kanderson250&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2245&quot;&gt;2245&lt;/a&gt; Update JFR service to run as a daemon by @kanderson250&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;IAST&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;CSEC Version bump to 1.6.1 &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2252&quot;&gt;2252&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Changelog: &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/releases/tag/1.6.1&quot;&gt;https://github.com/newrelic/csec-java-agent/releases/tag/1.6.1&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you&apos;re moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 11 Mar 2025 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v8.18.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC04LjE4LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-8180</link><pubDate>Thu, 30 Jan 2025 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2172&quot;&gt;2172&lt;/a&gt; Add scala3 source detection by @kanderson250&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2185&quot;&gt;2185&lt;/a&gt; Vertx: decrease amount of tokens created by @meiao&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2199&quot;&gt;2199&lt;/a&gt; Instrumentation module for Struts2 v6.7.0 by @jtduffy&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2203&quot;&gt;2203&lt;/a&gt; Kafka 3.9 support by @meiao&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2204&quot;&gt;2204&lt;/a&gt; Sqs distributed trace by @obenkenobi&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2202&quot;&gt;2202&lt;/a&gt; Kafka clients node metrics by @meiao&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2187&quot;&gt;2187&lt;/a&gt; Fix edge case in JsonTemplateLayout with certain escaped sequences by @jtduffy&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2191&quot;&gt;2191&lt;/a&gt; Correct Apdex on transaction event if an error is present by @jtduffy&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2192&quot;&gt;2192&lt;/a&gt; Don&apos;t add null port to hostname attribute on JFR events by @jasonjkeller&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2197&quot;&gt;2197&lt;/a&gt; Fix memory issue with httpclient-5.0 instrumentation by @jasonjkeller&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you&apos;re moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 30 Jan 2025 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v8.2.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC04LjIuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-820</link><pubDate>Wed, 03 May 2023 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Added support for Java 20 &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1226&quot;&gt;1226&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Prevented a NullPointerException from the lettuce instrumentation &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1204&quot;&gt;1204&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fix failure with browser agent auto injection for tomcat versions 8.5.87+ and 9.0.74+ &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1225&quot;&gt;1225&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you are moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 03 May 2023 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v8.20.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC04LjIwLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-8200</link><pubDate>Tue, 15 Apr 2025 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Support for CRaC &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2250&quot;&gt;2250&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Support for JDK24 &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2284&quot;&gt;2284&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Added sampling options when an inbound traceparent exists &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2279&quot;&gt;2279&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;These options define how the agent should handle sampling of spans, depending on sampling decisions that were made for their parent span by an upstream entity. The configuration options &lt;code&gt;remote_parent_sampled&lt;/code&gt; and &lt;code&gt;remote_parent_not_sampled&lt;/code&gt; specify what to do in the case the parent span was sampled or not sampled, respectively. See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/java-agent/configuration/java-agent-configuration-config-file/#dt-sampler-remote-parent-sampled&quot;&gt;documentation&lt;/a&gt; for full configuration details.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Support for Undertow as a stand-alone module &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2269&quot;&gt;2269&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;This instrumentation is disabled by default to avoid conflicts with existing Wildfly instrumentation. To enable this instrumentation for stand-alone Undertow server apps, use the configuration setting:&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt; class_transformer:
   com.newrelic.instrumentation.undertow-server-1.1.0:
     enabled: true
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Support for Couchbase Client &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2303&quot;&gt;2203&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;If the &lt;a href=&quot;https://github.com/newrelic-experimental/newrelic-java-couchbase&quot;&gt;Couchbase Client Experimental Module&lt;/a&gt; is currently in use, remove it from your extensions directory before upgrading to this version of the Java Agent.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;~Fix netty &apos;Unknown&apos; transactions &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2274&quot;&gt;2274&lt;/a&gt;~&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;~This fix moves previous netty instrumentation changes behind a feature flag, which provides additional visibility in some cases involving HTTP2 transactions. To reenable this granularity (at the possible cost of seeing ‘Unknown’ transactions), use the config setting~:&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;  netty:
    http2:
      frame_read_listener:
        start_transaction: true
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Refactor AWS docker id fetch to use 5s timeout &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2275&quot;&gt;2275&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Feature flag to apply Kotlin &lt;code&gt;ArrayIndexOutOfBoundsException&lt;/code&gt; fix to all methods &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2307&quot;&gt;2307&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;This fix addresses errors that may be seen when running the Java Agent in an environment where Kotlin suspends functions are used. To use this fix, set the system property &lt;code&gt;-Dnewrelic.config.class_transformer.clear_return_stacks=true&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Prevent cache lock for long DB statement parsing &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2294&quot;&gt;2294&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Add config to specify whether java.sql is loaded by platform classloader &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2267&quot;&gt;2267&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Deprecations&lt;/h2&gt;
&lt;p&gt;The following instrumentation modules are deprecated and will be removed in the next major release:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;aws-wrap-0.7.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;java.completable-future-jdk8&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;play-2.3&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;netty-3.4&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Struts v1&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;&lt;p&gt;&lt;strong&gt;Known issues&lt;/strong&gt;: This release has a known issue with Netty where &apos;Unknown&apos; transactions persist, please update to a later version.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you&apos;re moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 15 Apr 2025 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v8.21.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC04LjIxLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-8210</link><pubDate>Thu, 29 May 2025 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;&lt;strong&gt;Known issues&lt;/strong&gt;: This release has a known issue with certain uses of Netty Reactor that can cause memory leaks.
Please consider using another version.&lt;/p&gt;&lt;/div&gt;
&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Enhances visibility into Reactor &lt;code&gt;Mono.flatMap&lt;/code&gt; calls &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2308&quot;&gt;2308&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Adds new instrumentation for Spring-Kafka and distributed tracing when using the core Kafka client library &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2312&quot;&gt;2312&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Adds &lt;code&gt;KafkaConsumerConfig&lt;/code&gt; event support for Kafka 3.7+ &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2358&quot;&gt;2358&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fixes the &lt;code&gt;distributed_tracing.sampler&lt;/code&gt; config &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2330&quot;&gt;2330&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;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 &lt;code&gt;-Dnewrelic.config.class_transformer.illegal_access_fix=true&lt;/code&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2334&quot;&gt;2334&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix netty &apos;Unknown&apos; transactions &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2274&quot;&gt;2274&lt;/a&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2355&quot;&gt;2355&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;This fix moves previous netty instrumentation changes behind a feature flag, which provides additional visibility in some cases involving HTTP2 transactions. To reenable this granularity (at the possible cost of seeing ‘Unknown’ transactions), use the config setting:&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;  netty:
    http2:
      frame_read_listener:
        start_transaction: true
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;8.20 has a logic error in the agent config so the fix is only official in agent version 8.21 and up.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;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 &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2353&quot;&gt;2353&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Allows the &lt;code&gt;org.crac&lt;/code&gt; JAR to be shadowed to prevent conflicts with customer environments. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2344&quot;&gt;2344&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Backports changes made in PR #1927 to prevent &lt;code&gt;NullPointerExceptions&lt;/code&gt; to older versions of the &lt;code&gt;vertx-core&lt;/code&gt; instrumentation &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2327&quot;&gt;2327&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Prevents excessive transaction segments from being created by &lt;code&gt;HttpUrlConnection&lt;/code&gt; method calls (e.g. &lt;code&gt;getInputStream&lt;/code&gt;) when they are not associated with an external call. This behavior can be controlled by the following config options: &lt;code&gt;NEW_RELIC_CLASS_TRANSFORMER_COM_NEWRELIC_INSTRUMENTATION_HTTPURLCONNECTION_VERBOSE=false&lt;/code&gt;, sys prop &lt;code&gt;-Dnewrelic.config.class_transformer.com.newrelic.instrumentation.httpurlconnection.verbose=false&lt;/code&gt;, or equivalent stanza in &lt;code&gt;newrelic.yml&lt;/code&gt;. Default setting is &lt;code&gt;true&lt;/code&gt; (i.e. non-external &lt;code&gt;getInputStream&lt;/code&gt; and other response handler methods will be reported as before). &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2365&quot;&gt;2365&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Security&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Upgrades the &lt;code&gt;com.newrelic.agent.java:infinite-tracing-protobuf&lt;/code&gt; for better security with infinite tracing &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2339&quot;&gt;2339&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Replaces &lt;code&gt;snakeyaml&lt;/code&gt; with &lt;code&gt;com.konloch:safeyaml&lt;/code&gt; to address a security vulnerability &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2333&quot;&gt;2333&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Deprecations&lt;/h2&gt;
&lt;p&gt;The following instrumentation modules are deprecated and will be removed in the next major release:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;aws-wrap-0.7.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;java.completable-future-jdk8&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;play-2.3&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;netty-3.4&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Struts v1&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;IAST&lt;/h2&gt;
&lt;p&gt;CSEC Version Update to 1.7.0 &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2348&quot;&gt;2348&lt;/a&gt;
Changelog: &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/releases/tag/1.7.0&quot;&gt;https://github.com/newrelic/csec-java-agent/releases/tag/1.7.0&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you&apos;re moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 29 May 2025 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v8.22.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC04LjIyLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-8220</link><pubDate>Wed, 09 Jul 2025 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Azure ServiceBus 7.15.0 instrumentation by @jbedell-newrelic in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2384&quot;&gt;2384&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Linking metadata for Azure App services by @jbedell-newrelic in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2399&quot;&gt;2399&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Connection errors now logged at SEVERE by @jtduffy in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2377&quot;&gt;2377&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Log and obfuscate invalid keys added as attributes to logs and events by @jtduffy in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2388&quot;&gt;2388&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Relocate IntelliJ annotations library by @meiao in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2383&quot;&gt;2383&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Support server side sampling_target configuration by @jtduffy in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2386&quot;&gt;2386&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Remove MonoFlatMapMain Instrumentation to correct potential memory leaks by @deleonenriqueta in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2400&quot;&gt;2400&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Deprecations&lt;/h2&gt;
&lt;p&gt;The following instrumentation modules are deprecated and will be removed in the next major release:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;aws-wrap-0.7.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;java.completable-future-jdk8&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;play-2.3&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;netty-3.4&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Struts v1&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you&apos;re moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 09 Jul 2025 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v8.23.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC04LjIzLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-8230</link><pubDate>Wed, 13 Aug 2025 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Update to support v24 of graphql by @jtduffy in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2425&quot;&gt;2425&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add lettuce 6.5 instrumentation by @kanderson250 in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2430&quot;&gt;2430&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Bump commons-lang version to 3.18.0 by @jtduffy in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2421&quot;&gt;2421&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add lettuce dbName to datastore params where available by @kanderson250 in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2423&quot;&gt;2423&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add an environment variable to skip implementing certain applications. The environment variable name is  &lt;code&gt;NEW_RELIC_STARTUP_JAVA_ARTIFACT_SKIPS&lt;/code&gt;. The value of it is a comma separated list of main classes, executable jar files or Java based tools/apps that the agent should NOT instrument (e.g. &lt;code&gt;NEW_RELIC_STARTUP_JAVA_ARTIFACT_SKIPS=keytool,myapp.jar,IgnoreThisClass&lt;/code&gt;) by @jtduffy in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2433&quot;&gt;2433&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Fix a bug where SQS messages with 8 attributes are not sent to AWS. SQS messages need less then 8 attributes to pass distributed trace headers by @obenkenobi in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2422&quot;&gt;2422&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Trim the &quot;Subscriptions&quot; bit off the end of the topic name in azure service bus client by @jbedell-newrelic in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2440&quot;&gt;2440&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fix AutoConfiguredOpenTelemetrySdk config by @jasonjkeller in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2451&quot;&gt;2451&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Deprecations&lt;/h2&gt;
&lt;p&gt;The following instrumentation modules are deprecated and will be removed in the next major release:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;aws-wrap-0.7.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;java.completable-future-jdk8&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;play-2.3&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;netty-3.4&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Struts v1&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you&apos;re moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 13 Aug 2025 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v8.24.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC04LjI0LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-8240</link><pubDate>Wed, 03 Sep 2025 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Support MongoDB Reactive Streams 5.2.0 and up by @obenkenobi in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2465&quot;&gt;2465&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Jedis 6 support by @kanderson250 in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2466&quot;&gt;2466&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;CouchBase: Add skip class to prevent double instrumentation by @jtduffy in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2462&quot;&gt;2462&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Spring WebClient 5.x: Only wrap headers instead of the entire response by @jtduffy in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2464&quot;&gt;2464&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Deprecations&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;aws-wrap-0.7.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;java.completable-future-jdk8&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;play-2.3&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;netty-3.4&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Struts v1&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you&apos;re moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 03 Sep 2025 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v8.25.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC04LjI1LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-8250</link><pubDate>Wed, 12 Nov 2025 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Adds Java 25 Support by @deleonenriqueta in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2512&quot;&gt;2512&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Adds support for Logback-1.5.20 by @jtduffy in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2535&quot;&gt;2535&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Introduces a config option to disable the execution of the &lt;code&gt;call&lt;/code&gt; and &lt;code&gt;exec&lt;/code&gt; SQL parser regular expressions by @jtduffy in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2490&quot;&gt;2490&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Adds support for Kotlin Coroutines v1.4+ by @dhilpipre in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2454&quot;&gt;2454&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Adds support for Kotlin Coroutines Suspend Functions generated outside of Kotlin Coroutines by @dhilpipre in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2456&quot;&gt;2456&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Introduces a preference config for multiple hosts during datastore detection by @jbedell-newrelic in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2508&quot;&gt;2508&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Adds a system property to configure the artifact skip function by @jtduffy in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2509&quot;&gt;2509&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Adds a configuration option allowing Spring Controller transactions to be named using the controller class name and method name by @sharvath-newrelic in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2532&quot;&gt;2532&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Implements SamplerConfig, centralizing all &lt;code&gt;distributed_tracing.sampler&lt;/code&gt; configs into the &lt;code&gt;SamplerConfig&lt;/code&gt; by @jasonjkeller in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2529&quot;&gt;2529&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Updates &lt;code&gt;kafka-clients-spans-0.11.0.0&lt;/code&gt; producer instrumentation to use modern distributed tracing API’s with W3C Trace Context support by @sharvath-newrelic in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2516&quot;&gt;2516&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Fixes parsing of error class names by @sharvath-newrelic in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2497&quot;&gt;2497&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fixes a potential memory issue caused by excessively large stack traces in error logging by @jtduffy in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2498&quot;&gt;2498&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Clarify logging messages for invalid attributes on custom events and logging events by @sharvath-newrelic in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2501&quot;&gt;2501&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Deprecations&lt;/h2&gt;
&lt;p&gt;The following instrumentation modules are deprecated and will be removed in the next major release.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;aws-wrap-0.7.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;java.completable-future-jdk8&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;play-2.3&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;netty-3.4&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Struts v1&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;spring-3.0.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;thrift-0.8&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;solr-4.0.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;solr-5.0.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;jdbc-inet-merlia&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;jdbc-inet-oranxo&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;grails-1.3&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;rabbit-amqp-1.7.2&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;rabbit-amqp-2.4.1&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;rabbit-amqp-2.5.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;rabbit-amqp-2.7.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;glassfish-3&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;hibernate-3.3&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;hibernate-3.5&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;jdbc-jtds&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you&apos;re moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 12 Nov 2025 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v8.25.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC04LjI1LjE=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-8251</link><pubDate>Wed, 17 Dec 2025 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Fixes Kotlin Coroutine error about third party implementation of &lt;code&gt;CancellableContinuation&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Deprecations&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;aws-wrap-0.7.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;java.completable-future-jdk8&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;play-2.3&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;netty-3.4&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Struts v1&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;spring-3.0.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;thrift-0.8&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;solr-4.0.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;solr-5.0.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;jdbc-inet-merlia&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;jdbc-inet-oranxo&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;grails-1.3&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;rabbit-amqp-1.7.2&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;rabbit-amqp-2.4.1&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;rabbit-amqp-2.5.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;rabbit-amqp-2.7.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;glassfish-3&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;hibernate-3.3&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;hibernate-3.5&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;jdbc-jtds&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you&apos;re moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 17 Dec 2025 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v8.4.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC04LjQuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-840</link><pubDate>Thu, 15 Jun 2023 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Added a public preview of the &lt;a href=&quot;https://docs.newrelic.com/docs/iast/introduction/&quot;&gt;Interactive Application Security Testing&lt;/a&gt; (IAST) mode of the &lt;a href=&quot;https://github.com/newrelic/csec-java-agent&quot;&gt;New Relic Security agent&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;&lt;p&gt;The New Relic Security agent IAST mode is in public preview and should only be used in non-production environments.&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;To learn about how to use IAST, &lt;a href=&quot;https://docs.newrelic.com/docs/iast/introduction/&quot;&gt;check out our documentation&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;By default, the New Relic Security agent IAST mode is completely disabled. To enable it, set both &lt;code&gt;newrelic.config.security.agent.enabled=true&lt;/code&gt; and &lt;code&gt;newrelic.config.security.enabled=true&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Full configuration options are detailed below (note that the &lt;code&gt;security&lt;/code&gt; section should be indented two spaces under the pre-existing &lt;code&gt;common&lt;/code&gt; section in the &lt;code&gt;newrelic.yml&lt;/code&gt; config file):&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;  # New Relic Security vulnerability detection.
  security:
    # Determines whether the security data is sent to New Relic or not. When this is disabled and agent.enabled is
    # true, the security module will run but data will not be sent. Default is false.
    enabled: false

    # New Relic Security provides two modes: IAST and RASP
    # Default is IAST. Due to the invasive nature of IAST scanning, DO NOT enable this mode in either a
    # production environment or an environment where production data is processed.
    mode: IAST

    # New Relic Security&apos;s SaaS connection URL
    validator_service_url: wss://csec.nr-data.net

    # To completely disable all security functionality, set this flag to false. This property is
    # read only once at application start. Default is false.
    agent:
      enabled: false

    # These are the category of security events that can be detected. Set to false to disable detection of
    # individual event types. Default is true for each event type.
    detection:
      rci:
        enabled: true
      rxss:
        enabled: true
      deserialization:
        enabled: true
&lt;/code&gt;&lt;/pre&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you are moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 15 Jun 2023 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v8.3.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC04LjMuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-830</link><pubDate>Thu, 01 Jun 2023 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Batch payloads and compression for Infinite Tracing: Enhanced performance by providing option to enable payload compression and batching for Infinite Tracing &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1146&quot;&gt;1146&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;HttpClient v5.0+ support: The Java agent now supports HttpClient version 5.0 and above &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1252&quot;&gt;1252&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;On-the-fly class retransformation: Classes with Trace annotation are now retransformed upon attach, enhancing instrumentation flexibility &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1147&quot;&gt;1147&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Enhanced logging for Cats Effect 2: Log Cats Effect 2 instrumentation at finest log level &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1173&quot;&gt;1173&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;High-security mode disables user tracking
&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1261&quot;&gt;1261&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Selective RollingFileAppender Usage: The RollingFileAppender is now only used when log_limit_in_kbytes is greater than 0, improving logging efficiency &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1228&quot;&gt;1228&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Fixed Cats Effect 2 logging: Addressed issues with Cats Effect 2 logging for better reliability &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1269&quot;&gt;1269&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you are moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 01 Jun 2023 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v8.6.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC04LjYuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-860</link><pubDate>Thu, 07 Sep 2023 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Support latest Wildfly &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/issues/1373&quot;&gt;#1373&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Support latest JBoss EAP &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/issues/1336&quot;&gt;#1336&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Spring Cache instrumentation &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/issues/1458&quot;&gt;#1458&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This new instrumentation module allows you to see how your caches are performing. It provides hit/miss metrics as well as clear and evict.
Search &quot;Metrics Explorer&quot; for the new metrics:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;Cache/Spring/&amp;#x3C;cache-provider&gt;/&amp;#x3C;cache-name&gt;/hits
Cache/Spring/&amp;#x3C;cache-provider&gt;/&amp;#x3C;cache-name&gt;/misses
Cache/Spring/&amp;#x3C;cache-provider&gt;/&amp;#x3C;cache-name&gt;/clear
Cache/Spring/&amp;#x3C;cache-provider&gt;/&amp;#x3C;cache-name&gt;/evict
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;Kafka client node metrics &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/issues/1338&quot;&gt;#1338&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This is a new instrumentation for Kafka clients. It provides metrics similar to the existing instrumentation module, but this provides them by node/topic, whereas the existing one only uses topic. This module is disabled by default, check &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/java-agent/instrumentation/java-agent-instrument-kafka-message-queues/#kafka-node-metrics&quot;&gt;the documentation&lt;/a&gt; for more information.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Kafka client config events &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/issues/1338&quot;&gt;#1338&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This new instrumentation module sends the Kafka configuration as events periodically. This module is disabled by default, check &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/java-agent/instrumentation/java-agent-instrument-kafka-message-queues/#kafka-config&quot;&gt;the documentation&lt;/a&gt; for more information.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Improved Struts 2 instrumentation &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/issues/1457&quot;&gt;#1457&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The Struts 2 instrumentation has been refactored to use a newer instrumentation technique, which allows it to be disabled.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Improved code-level metrics for Servlets. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/issues/1394&quot;&gt;#1394&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Security Agent: Support for Apache log4j 3.0.0-alpha1.&lt;/li&gt;
&lt;li&gt;Security Agent: Support for Commons.jxpath.&lt;/li&gt;
&lt;li&gt;Security Agent: Add agent monitoring details and matrix to health check.&lt;/li&gt;
&lt;li&gt;Security Agent: Limiting the supported version range for Jetty.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Fixed a bug in the Spring instrumentation when OpenFeign was used. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/issues/1197&quot;&gt;#1197&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fixed a bug where utility classes were not weaved. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/issues/1073&quot;&gt;#1073&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fixed a bug where the agent would not properly send its dependencies. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/issues/1340&quot;&gt;#1340&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Security Agent: Issue with HealthChecking having empty process stats issue&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Deprecations&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;aws-wrap-0.7.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;java.completable-future-jdk8&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;play-2.3&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;spring-3.0.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;netty-3.4&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Struts v1&lt;/code&gt; (legacy pointcut instrumentation)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you are moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 07 Sep 2023 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v8.5.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC04LjUuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-850</link><pubDate>Thu, 27 Jul 2023 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; This release note has been corrected to remove Struts 2 from the list of deprecations.&lt;/p&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Kafka Connect instrumentation: Adds &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/java-agent/instrumentation/java-agent-instrument-kafka-message-queues/#view-kafka-metrics&quot;&gt;metrics&lt;/a&gt; and &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/java-agent/instrumentation/java-agent-instrument-kafka-message-queues/#collect-kafka-connect-transactions&quot;&gt;transaction tracing&lt;/a&gt; for version 2.0.0+ &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1324&quot;&gt;#1324&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Kafka: Added metrics to understand the relationship between consumers, producers, topics and nodes &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1223&quot;&gt;#1223&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;IAST: Limiting the supported version range for Apache log4j due to the new version release of Apache log4j on 21 June 2023 &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/pull/80/files&quot;&gt;#80&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;IAST: Support for indication what all API-IDs are scanned or being scanned &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/pull/80/files&quot;&gt;#80&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;All existing instrumnetation now supports Jakarta 10 EE&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Implement the getStatus() method in the NRWrapper class for version 5 and 6 of Servlet instrumentation &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1315/files&quot;&gt;#1315&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Deprecations&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;aws-wrap-0.7.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;java.completable-future-jdk8&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;play-2.3&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;spring-3.0.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;netty-3.4&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Struts 1 (legacy pointcut instrumentation)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you are moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 27 Jul 2023 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v8.7.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC04LjcuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-870</link><pubDate>Thu, 26 Oct 2023 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Adds support for Java 21 &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1546&quot;&gt;1546&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Add experimental config option to run the agent with unsupported java versions &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1480&quot;&gt;1480&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Add intrinsic attribute thread.id to spans to allow for faceting queries by thread ID &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1513&quot;&gt;1513&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Include stack traces in client spans &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1507&quot;&gt;1507&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Adds support for getting the containerId from a docker container with Linux cgroup v2. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1529&quot;&gt;1529&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Add database and external span attributes to correlate to metric data in accordance with Open Telemetry specs. Certain old attributes are removed. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1525&quot;&gt;1525&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;New attributes:&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;db.system&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;db.operation&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;db.collection&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;server.address&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;server.port&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Removed attributes:&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;component&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;peer.hostname&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Add slow transaction detection which can be configured. It is disabled by default. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1542&quot;&gt;1542&lt;/a&gt;
E.g:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;slow_transactions:
  enabled: true
  threshold: 1000 # The threshold is measured in milliseconds
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Add instrumentation for r2dbc postgresql 0.9.2 to 0.9.x &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1410&quot;&gt;1410&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Security Agent: Add new configuration to enable/disable low priority instrumentation &lt;code&gt;security.low-priority-instrumentation.enabled&lt;/code&gt; for the CSEC agent. Default value is false. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1515&quot;&gt;1515&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Security Agent: Cassandra DB v3.0+ Support: The Security agent now supports Cassandra DB version 3.0 and above &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/pull/122&quot;&gt;122&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Security Agent: HttpClient v5.0+ Support: The Security agent now also supports HttpClient version 5.0 and above &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/pull/122&quot;&gt;122&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Security Agent: Support for std-out logging &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/pull/122&quot;&gt;122&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Security Agent: Added feature for Daily log rollover &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/pull/122&quot;&gt;122&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Security Agent: Support for logger config: log_file_count and log_limit_in_kbytes &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/pull/122&quot;&gt;122&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Security Agent: Relocating all our instrumentation packages under the package &lt;code&gt;com.newrelic.agent.security.instrumentation.*&lt;/code&gt;  &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/pull/122&quot;&gt;122&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fixed a bug where a ClassCircularityError was thrown by Sonarqube9.9 &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1522&quot;&gt;1522&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix a bug where the Java agent fails to detect &lt;code&gt;spring-security-oauth2-client.jar&lt;/code&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1462&quot;&gt;1462&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix a bug where Spring 6/ Spring Boot3 does not report underlying exception/stacktrace when a @RestControllerAdvice class is used &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1538&quot;&gt;1538&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix HttpUrlConnection instrumentation so segment timing is accurate &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1537&quot;&gt;1537&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fixes a bug in Spring 6 instrumentation where transactions are incorrectly named in certain scenarios. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1544&quot;&gt;1544&lt;/a&gt;
Such include:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&quot;built-in&quot; controllers that don&apos;t have &lt;code&gt;@RestController&lt;/code&gt;-like annotations, e.g. /actuator/health (see &lt;a href=&quot;https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#actuator.endpoints&quot;&gt;Actuator endpoints&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;custom controllers that don&apos;t use &lt;code&gt;@RestController &lt;/code&gt;directly (e.g. using custom annotations)&lt;/li&gt;
&lt;li&gt;requests returning 401s / 404s&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Add a fix for JBoss EAP / Wildfly where if customers are using the J2EE/Jakarta Management API, the application fails to startup. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1549&quot;&gt;1549&lt;/a&gt;
This is done by adding the system property &lt;code&gt;com.newrelic.jboss.jsr77.fix&lt;/code&gt; and setting it to &lt;code&gt;true&lt;/code&gt;.
E.g.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;-Dcom.newrelic.jboss.jsr77.fix=true
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Customers using JBoss EAP 7.4+ or Wildfly 23+ will need to manually configure the &lt;code&gt;io.undertow.servlet&lt;/code&gt; module and add
&lt;code&gt;java.management&lt;/code&gt; as a dependency.
This translates to doing the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Opening the file &lt;code&gt;modules/system/layers/base/io/undertow/servlet/main/module.xml&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Adding the XML element &lt;code&gt;&amp;#x3C;module name=&quot;java.management&quot;/&gt;&lt;/code&gt; inside the body of the &lt;code&gt;&amp;#x3C;dependencies&gt;&lt;/code&gt; tag&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Here is what the configured XML file may look like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-xml&quot;&gt;&amp;#x3C;module name=&quot;io.undertow.servlet&quot; xmlns=&quot;urn:jboss:module:1.9&quot;&gt;
    &amp;#x3C;resources&gt;
        &amp;#x3C;resource-root path=&quot;undertow-servlet-2.2.5.Final-redhat-00001.jar&quot;/&gt;
    &amp;#x3C;/resources&gt;

    &amp;#x3C;dependencies&gt;
        &amp;#x3C;module name=&quot;javax.annotation.api&quot;/&gt;
        &amp;#x3C;module name=&quot;sun.jdk&quot;/&gt;
        &amp;#x3C;module name=&quot;javax.servlet.api&quot;/&gt;
        &amp;#x3C;module name=&quot;javax.servlet.jsp.api&quot;/&gt;
        &amp;#x3C;module name=&quot;javax.servlet.jstl.api&quot;/&gt;
        &amp;#x3C;module name=&quot;org.jboss.logging&quot;/&gt;
        &amp;#x3C;module name=&quot;io.undertow.core&quot;/&gt;
        &amp;#x3C;module name=&quot;org.jboss.xnio&quot;/&gt;
        &amp;#x3C;module name=&quot;jdk.unsupported&quot;/&gt;
        &amp;#x3C;module name=&quot;java.management&quot;/&gt;
    &amp;#x3C;/dependencies&gt;
&amp;#x3C;/module&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Resolve missing class exception on Scala instrumentation &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1528&quot;&gt;1528&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Security Agent: Fixed ClassNotFoundException for IOStreamHelper class with Glassfish &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/pull/122&quot;&gt;122&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Security&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Update agent dependency commons-codec to v1.13 &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1548&quot;&gt;1548&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Update JFR daemon to &lt;code&gt;1.11.1&lt;/code&gt;. This upgrade updates the underlying OkHttp dependency to version &lt;code&gt;4.12.0&lt;/code&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1561&quot;&gt;1561&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Deprecations&lt;/h2&gt;
&lt;p&gt;The following instrumentation modules will be removed in the next major release:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;aws-wrap-0.7.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;java.completable-future-jdk8&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;play-2.3&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;spring-3.0.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;netty-3.4&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Struts v1&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you are moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 26 Oct 2023 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v8.8.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC04LjguMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-880</link><pubDate>Thu, 21 Dec 2023 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Add support for Jetty 12, including Jetty’s implementation of the Jakarta EE 8, 9, and 10 specs. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1621&quot;&gt;1621&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add support for Vert.x versions 4.0.0 through 4.4.x &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1588&quot;&gt;1588&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add instrumentation for graphql-java 21 &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1565&quot;&gt;1454&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Instrument r2dbc-postgresql 0.9.2 till latest &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1556&quot;&gt;1413&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Reintroduce the legacy HTTP Attributes that were removed in &lt;em&gt;v8.0.0&lt;/em&gt; to support customers with alerts and dashboards that require them &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1671&quot;&gt;1671&lt;/a&gt;
The attributes are:&lt;/li&gt;
&lt;li&gt;&lt;code&gt;httpResponseCode&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;httpResponseMessage&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;response.status&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;response.statusMessage&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Attribute reporting is configurable via the following means.&lt;/p&gt;
&lt;p&gt;YAML:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;attributes:
  http_attribute_mode: both
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;System property:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-properties&quot;&gt;-Dnewrelic.config.attributes.http_attribute_mode=both
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Environment variable:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-properties&quot;&gt;NEW_RELIC_ATTRIBUTES_HTTP_ATTRIBUTE=both
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The configuration options are:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;standard&lt;/code&gt; : The agent will send new standard attributes. This configuration is recommended but requires that any alerts or dashboards using attributes be updated to use these new attributes. This setting will reduce the amount of ingest used for attribute reporting.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;legacy&lt;/code&gt; : The agent will send the legacy attributes referenced above. Customers with alerts or dashboard requiring these attributes can continue to be used as-is.  This setting will reduce the amount of ingest used for attribute reporting.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;both&lt;/code&gt; : This is the default configuration, the agent will send BOTH legacy AND standard HTTP attributes. This configuration was intended to support customers that are unable to modify their alerts or dashboards but this configuration will increase data ingest.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Add an interface for our error API. Our error API can now be called via the code &lt;code&gt;NewRelic.getAgent().getErrorApi()&lt;/code&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1579&quot;&gt;1577&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Add log4j2 JsonLayout support and support log4j2 till latest. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1559&quot;&gt;1545&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Add httpstatus in the external segment for Spring Webclient &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1610&quot;&gt;1610&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Enable slow transaction detection by default and bump the threshold to 10 minutes &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1629&quot;&gt;1629&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Add support for string formatting with JBoss Logging. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1650&quot;&gt;1650&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Add logic to remove specific classes from being excluded from being weaved if the IAST security feature is enabled. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1453&quot;&gt;1453&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The affected classes belong in the following formats:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;^java/security/.*&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;^javax/crypto/.*&lt;/code&gt; These are crypto classes which can cause class circularity errors if they get too far along in the class transformer.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;^net/sf/saxon.*&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If you wish to re-include these excluded rules, you can do so via the following means.&lt;/p&gt;
&lt;p&gt;YAML:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;  class_transformer:
    excludes: ^javax/crypto/.*,^java/security/.*,^net/sf/saxon.*
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;System property:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-properties&quot;&gt;-Dnewrelic.config.class_transformer.excludes=^javax/crypto/.*,^java/security/.*,^net/sf/saxon.*
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Environment variable:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-properties&quot;&gt;NEW_RELIC_CLASS_TRANSFORMER_EXCLUDES=^javax/crypto/.*,^java/security/.*,^net/sf/saxon.*
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;Prevent license_key value from being written to the agent logs when using debug and/or audit_mode logging &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1653&quot;&gt;1653&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;IAST&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;The IAST feature now also supports Async HTTP client version 2 and above &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/pull/142&quot;&gt;142&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Added support for Sun Net HTTP Server &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/pull/142&quot;&gt;142&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;JSON version bump to 1.1.1 &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/pull/142&quot;&gt;142&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add critical error logging via LogMessage event &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/pull/142&quot;&gt;142&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Fix transaction naming in Spring controllers with a CGLIB proxy. Transactions now use the actual class name as opposed to the proxied class name.  &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1575&quot;&gt;1574&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fix a &lt;code&gt;NullPointerException&lt;/code&gt; caused by ServletContext in servlet instrumentation modules. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1636&quot;&gt;1636&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fix a memory leak caused by Lettuce instrumentation. Duplicate code for  transaction linking has been removed from the Lettuce instrumentation and is handled by netty-reactor instead. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1608&quot;&gt;1608&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fix a bug where invalidating a license key causes a memory leak. Reconnection tasks are now capped in the event of a &lt;code&gt;LicenseException&lt;/code&gt;.   &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1606&quot;&gt;1606&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fix a &lt;code&gt;NullPointerException&lt;/code&gt; caused by RPMServiceManager &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1604&quot;&gt;1604&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add a workaround for a memory leak that may occur in rare scenarios with instrumentation using the legacy async API in the Java Agent (which async servlets and Jetty Continuations use). &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1555&quot;&gt;1555&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;You can configure the option via the following means:&lt;/p&gt;
&lt;p&gt;Agent config file (this will update dynamically if the config file is changed)&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;common: &amp;#x26;default_settings
  legacy_async_api_skip_suspend: true
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;System Property&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-properties&quot;&gt;-Dnewrelic.config.legacy_async_api_skip_suspend=true
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Environment Variable&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-properties&quot;&gt;NEW_RELIC_LEGACY_ASYNC_API_SKIP_SUSPEND=true
&lt;/code&gt;&lt;/pre&gt;
&lt;h4&gt;IAST&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;DynamoDB v2 issue: missing attribute values for conditionCheck method in case of transactWriteItems operation on DynamoDB &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/pull/142&quot;&gt;142&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fixed an Insecure cookie attack vulnerability.  &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/pull/142&quot;&gt;142&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Never print LicenseKey &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/pull/142&quot;&gt;142&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Deprecations&lt;/h2&gt;
&lt;p&gt;The following instrumentation modules are deprecated and will be removed in the next major release:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;aws-wrap-0.7.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;java.completable-future-jdk8&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;play-2.3&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;spring-3.0.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;netty-3.4&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Struts v1&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will display:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you are moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 21 Dec 2023 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v8.8.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC04LjguMQ==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-881</link><pubDate>Thu, 18 Jan 2024 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Fixed a &lt;code&gt;NullPointerException&lt;/code&gt; when working with Synthetics headers &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1690&quot;&gt;1690&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Deprecations&lt;/h2&gt;
&lt;p&gt;The following instrumentation modules are deprecated and will be removed in the next major release:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;aws-wrap-0.7.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;java.completable-future-jdk8&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;play-2.3&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;spring-3.0.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;netty-3.4&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Struts v1&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, results such as below will print to the console:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you are moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, we will no longer support older releases once they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 18 Jan 2024 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v8.9.1]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC04LjkuMQ==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-891</link><pubDate>Thu, 08 Feb 2024 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Check &lt;code&gt;HttpHost&lt;/code&gt; instance for null before dereferencing it when certain &lt;code&gt;execute()&lt;/code&gt; methods are called &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1722&quot;&gt;1722&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Do an &lt;code&gt;instanceof&lt;/code&gt; check in the &lt;code&gt;complete()&lt;/code&gt; method before class cast  &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1719&quot;&gt;1719&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Null check on the response object before trying to report an external call &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1719&quot;&gt;1719&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Deprecations&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;The browser footer injection APIs have been deprecated and will be removed in a future agent release. The header injection API now adds both the header and footer scripts. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1679&quot;&gt;1679&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The following instrumentation modules are deprecated and will be removed in the next major release:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;aws-wrap-0.7.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;java.completable-future-jdk8&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;play-2.3&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;spring-3.0.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;netty-3.4&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Struts v1&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Update to the latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the New Relic agent directory backed up.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new agent versions. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like this:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you are moving to 7.11.0 or higher, add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure you get the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 08 Feb 2024 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v8.9.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC04LjkuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-890</link><pubDate>Wed, 31 Jan 2024 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Instrumentation for Spring Webclient 5/6 now captures http status code and http status message &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1658&quot;&gt;1658&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add status code to &lt;code&gt;grpc-1.40.0&lt;/code&gt; client instrumentation  &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1673&quot;&gt;1673&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add config to set the size limit of attributes on custom events (i.e. &lt;code&gt;newrelic.config.custom_insights_events.max_attribute_value&lt;/code&gt;). Default size is &lt;code&gt;255&lt;/code&gt; characters and the max is &lt;code&gt;4095&lt;/code&gt;. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1683&quot;&gt;1683&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add Spring instrumentation modules to support proper transaction naming (route + HTTP method) of traditional annotated spring controllers as well as controllers that inherit annotations from interfaces, super classes or custom annotations. Note that because the new instrumentation can change transaction names, enabling this &quot;enhanced transaction naming&quot; is gated by the &lt;code&gt;newrelic.config.class_transformer.enhanced_spring_transaction_naming&lt;/code&gt; agent configuration option, which is &lt;code&gt;false&lt;/code&gt; by default. Thanks to @mgr32 for their help with validating the naming changes. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1675&quot;&gt;1675&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add instrumentation for Vert.x 4.5.x web client and futures &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1704&quot;&gt;1704&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Remove erroneous printing of stack trace in &lt;code&gt;SlowTransactionManager&lt;/code&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1684&quot;&gt;1684&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Convert the &lt;code&gt;ProcessPointCut&lt;/code&gt; over to a weaver instrumentation module to better handle cases where it is used in a multi-threaded environment. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1685&quot;&gt;1685&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Removals&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Remove support for setting agent config with rarely used lower-case, dotted environment variable names (e.g. &lt;code&gt;newrelic.config.labels&lt;/code&gt;). Customers relying on lower-case, dotted environment variables should switch to the standard upper-case, underscore names (e.g. &lt;code&gt;NEW_RELIC_CONFIG_LABELS&lt;/code&gt;). There are no changes to documented system property behavior (via &lt;code&gt;newrelic.config.&lt;/code&gt;, server-side config, YAML, or standard environment variable (via &lt;code&gt;NEW_RELIC_&lt;/code&gt;). &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1598&quot;&gt;1598&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Deprecations&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;The browser footer injection APIs have been deprecated and will be removed in a future agent release. The header injection API now adds both the header and footer scripts. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1679&quot;&gt;1679&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The following instrumentation modules are deprecated and will be removed in the next major release:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;aws-wrap-0.7.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;java.completable-future-jdk8&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;play-2.3&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;spring-3.0.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;netty-3.4&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Struts v1&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;IAST&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Update Security Agent to Public Release version &lt;code&gt;1.1.0&lt;/code&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/1710&quot;&gt;1710&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Changelog: &lt;a href=&quot;https://github.com/newrelic/csec-java-agent/releases/tag/1.1.0&quot;&gt;https://github.com/newrelic/csec-java-agent/releases/tag/1.1.0&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you are moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 31 Jan 2024 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v9.0.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC05LjAuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-900</link><pubDate>Wed, 14 Jan 2026 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Add config to delete stale agent temp jars on startup by @jtduffy in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2676&quot;&gt;2676&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add &quot;inclusion&quot; option to compliment the exclude configuration for selectively instrumenting applications @jtduffy in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2638&quot;&gt;2638&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;To use this feature, set the environment variable &lt;code&gt;NEW_RELIC_STARTUP_JAVA_ARTIFACT_INCLUDES&lt;/code&gt; or system property &lt;code&gt;newrelic.config.startup_java_artifact_includes&lt;/code&gt;. Specify the artifacts that should be instrumented as a comma-separated list.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Resolve IllegalAccessError by moving wrapper class out of S3AsyncClient_Instrumentation by @jtduffy in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2503&quot;&gt;2503&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fix mislabeled instrumentation version on log events in logback-classic-1.5.20 by @jasonjkeller in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2594&quot;&gt;2594&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fixed logging message for max attribute value by @jeffalder in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2680&quot;&gt;2680&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Corrected Trace Ratio sampler priorities by @jtduffy in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2583&quot;&gt;2583&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Removals&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Removes deprecated jdbc-inet-* modules by @obenkenobi in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2572&quot;&gt;2572&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Removes deprecated java.completable-future-jdk8 instrumentation by @obenkenobi in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2562&quot;&gt;2562&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Removes aws wrap instrumentation by @obenkenobi in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2567&quot;&gt;2567&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Removes jdbc-sybase-6 module by @obenkenobi in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2614&quot;&gt;2614&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Removes play 2.3 instrumentation by @obenkenobi in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2568&quot;&gt;2568&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Removes deprecated thrift-0.8 module by @obenkenobi in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2569&quot;&gt;2569&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Removes deprecated solr 4.0 &amp;#x26; 5.0 modules by @obenkenobi in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2570&quot;&gt;2570&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Removes deprecated module grails-1.3 by @obenkenobi in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2573&quot;&gt;2573&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Removes deprecated module hibernate-3.3 by @obenkenobi in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2574&quot;&gt;2574&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Removes deprecated footer injection API by @sharvath-newrelic in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2620&quot;&gt;2620&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Removes deprecated Struts 1 pointcuts by @obenkenobi in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2561&quot;&gt;2561&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Removes deprecated module glassfish-3 by @sharvath-newrelic in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2575&quot;&gt;2575&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Removes deprecated rabbit-amqp modules 2.5.0, 2.4.1, 1.7.2 by @obenkenobi in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2571&quot;&gt;2571&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Removes deployment marker function by @jtduffy in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2589&quot;&gt;2589&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you&apos;re moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 14 Jan 2026 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v9.1.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC05LjEuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-910</link><pubDate>Thu, 12 Feb 2026 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;The Java Hybrid Agent: offering a &quot;best-of-both-worlds&quot; experience by combining New Relic’s deep visibility with &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/manage-apm-agents/opentelemetry-api-support/&quot;&gt;OpenTelemetry API compatibility&lt;/a&gt;. This release includes comprehensive support for the OpenTelemetry Tracing, Metrics, and Logs APIs, as well as standalone library and native framework instrumentation. Key enhancements like Span Links and Events on Spans are now available, ensuring seamless interoperability in mixed-mode environments.
&lt;ul&gt;
&lt;li&gt;Hybrid Agent OpenTelemetry API Support by @jasonjkeller in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2711&quot;&gt;2711&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Enhancements to coroutine ignores by @dhilpipre in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2726&quot;&gt;2726&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add agent metadata action - @mvicknr in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2732&quot;&gt;2732&lt;/a&gt;
&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2745&quot;&gt;2745&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Fix broken trace propagation with w3c headers by @jasonjkeller in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2299&quot;&gt;2299&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fix multihost preference config @jtduffy in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2720&quot;&gt;2720&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fixed problem where suspend ignores was not being read by @dhilpipre in &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2663&quot;&gt;2663&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you&apos;re moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 12 Feb 2026 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v9.2.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC05LjIuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-920</link><pubDate>Wed, 08 Apr 2026 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Adds Java 26 support &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2734&quot;&gt;2734&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Adds Serverless mode for AWS Lambda monitoring with the Java agent &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2609&quot;&gt;2609&lt;/a&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2615&quot;&gt;2615&lt;/a&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2625&quot;&gt;2625&lt;/a&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2633&quot;&gt;2633&lt;/a&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2640&quot;&gt;2640&lt;/a&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2641&quot;&gt;2641&lt;/a&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2647&quot;&gt;2647&lt;/a&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2673&quot;&gt;2673&lt;/a&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2716&quot;&gt;2716&lt;/a&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2721&quot;&gt;2721&lt;/a&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2735&quot;&gt;2735&lt;/a&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2723&quot;&gt;2723&lt;/a&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2740&quot;&gt;2740&lt;/a&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2769&quot;&gt;2769&lt;/a&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2782&quot;&gt;2782&lt;/a&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2794&quot;&gt;2794&lt;/a&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2797&quot;&gt;2797&lt;/a&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2796&quot;&gt;2796&lt;/a&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2806&quot;&gt;2806&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Adds new &lt;code&gt;application_logging.forwarding.log_level_denylist&lt;/code&gt; config &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2764&quot;&gt;2764&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Implements region aware event/metric ingest URIs &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2749&quot;&gt;2749&lt;/a&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2790&quot;&gt;2790&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Adds support for associating logs to corresponding entity when &lt;code&gt;enable_auto_app_naming&lt;/code&gt; is &lt;code&gt;true&lt;/code&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2627&quot;&gt;2627&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Add &lt;code&gt;opentelemetry-sdk-extension-autoconfigure-1.59.0&lt;/code&gt; instrumentation for OpenTelemetry 1.59.0+ &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2786&quot;&gt;2786&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Adds support for associating adaptive sampler to corresponding entity when &lt;code&gt;enable_auto_app_naming&lt;/code&gt; is &lt;code&gt;true&lt;/code&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2805&quot;&gt;2805&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Adds supportability metrics for each entity created when &lt;code&gt;enable_auto_app_naming&lt;/code&gt; is &lt;code&gt;true&lt;/code&gt; &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2808&quot;&gt;2808&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Implements Cloud Metadata Bypass Proxy config &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2791&quot;&gt;2791&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Adds support for multiple versions of Caffeine in the agent &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2807&quot;&gt;2807&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Adds support for explain plans that utilize SQL arrays &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2815&quot;&gt;2815&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Adds generic &apos;Queue&apos; as a transport type &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2820&quot;&gt;2820&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Adds support for Reactor Netty Http client calls &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2817&quot;&gt;2817&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Fixes an edge case where ill-formed payloads caused an NPE when accessing the &lt;code&gt;sampled&lt;/code&gt; field on the NR payload &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2762&quot;&gt;2762&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Expires Tokens when a Reactive Subscription is canceled &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2798&quot;&gt;2798&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Adds logic to manually evict any dead threads from the &lt;code&gt;TheadTracker&lt;/code&gt; cache to prevent a memory leak &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2811&quot;&gt;2811&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Resolves a deadlock between harvest thread and JVM shutdown thread &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2539&quot;&gt;2539&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you&apos;re moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 08 Apr 2026 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v9.3.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC05LjMuMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-930</link><pubDate>Thu, 28 May 2026 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h2&gt;New features and improvements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Add log_level_denylist config to default yaml &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2830&quot;&gt;2830&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Solr 9 JMX module
&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2821&quot;&gt;2821&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;New centralized token counting strategy for capturing token counts from LLM Responses. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2837&quot;&gt;2837&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Support for capturing JDBC batch operations; specifically the addBatch() and executeBatch() methods. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2840&quot;&gt;2840&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;XML RPC instrumentation module to replace legacy point cut &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2841&quot;&gt;2841&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Add a new JFR specific config &lt;code&gt;jfr.use_display_name&lt;/code&gt;. If set to true, the agent will set the JFR host name to the value in the &lt;code&gt;process_host.display_name&lt;/code&gt; configuration. The default is false to preserve old behavior.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If jfr.use_display_name is true but the display_name config is empty, the JfrService will fallback to the old behavior for the host name.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;common: &amp;#x26;default_settings
  jfr:
    use_display_name: true
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2847&quot;&gt;2847&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Remove unneeded segment creation in java.xmlrpc module &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2853&quot;&gt;2853&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Update aws-bedrock-runtime-2.20 Module with a new token counting strategy for each of the models.
&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2845&quot;&gt;2845&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;New license key obfuscation algorithm
&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2864&quot;&gt;2864&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Support for Micronaut Http Clients versions 3.5.0+ &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2834&quot;&gt;2834&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Support for Apache Camel 3.9.0 and up
&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2896&quot;&gt;2896&lt;/a&gt;
&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2901&quot;&gt;2901&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Support for Kafka Clients 4.0.0 and up &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2896&quot;&gt;2896&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Internal dependency Log4j Core Upgrade from 2.17.1 to 2.25.4 &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2833&quot;&gt;2833&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;AWS DAX Support starting from 2.0.0 to latest &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2873&quot;&gt;2873&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Add instrumentation for Spring AI completion and embedding clients for versions 1.0.0 and up.  This adds new instrumentation modules:&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code&gt;spring-ai-client-chat-1.0.0
spring-ai-model-1.0.0
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2842&quot;&gt;2842&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Core Tracing - Drop SpanEvents and Re-Parent dropped SpanLinks &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2881&quot;&gt;2881&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Pointcut replacements&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Remove SpringDispatcherPointCut and SpringExceptionHandlerPointCut and instead move the functionality into our Spring instrumentation modules.&lt;/li&gt;
&lt;li&gt;Replace HandlerInterceptorPointCut
&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2871&quot;&gt;2871&lt;/a&gt;
&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2886&quot;&gt;2886&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Support Micronaut’s BlockingHttpClient &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2860&quot;&gt;2860&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Add support for AI Model Context Protocol 1.0.0 to latest. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2880&quot;&gt;2880&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Fix coroutines instrumentation. Fixes include:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Better tracking of asynchronous behavior by instrumenting gaps that were found where execution can jump to another thread.&lt;/li&gt;
&lt;li&gt;Better naming on Coroutines and Continuations. Existing naming was too generic. New naming identifies according to whether it is started via runBlocking, async, withContext or launch.&lt;/li&gt;
&lt;li&gt;Removed some utility methods that were no longer used
&lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2802&quot;&gt;2802&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fixes excessive number of unexpired async tokens when instrumenting Micronaut. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2792&quot;&gt;2792&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Resolution of Mule 4.9 IllegalAccessError &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2859&quot;&gt;2859&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fix a mis-recording of the Instrumented and Kept metrics for Core Tracing, as they were originally being recorded as a time metric. &lt;a href=&quot;https://github.com/newrelic/newrelic-java-agent/pull/2881&quot;&gt;2881&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Update to latest version [#procedures]&lt;/h2&gt;
&lt;p&gt;To identify which version of the Java agent you&apos;re currently using, run &lt;code&gt;java -jar newrelic.jar -v&lt;/code&gt;. Your Java agent version will be printed to your console.&lt;/p&gt;
&lt;p&gt;Then, to update to the latest Java agent version:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Back up the &lt;strong&gt;entire&lt;/strong&gt; &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt; to another location. Rename that directory to &lt;code&gt;NewRelic_Agent#.#.#&lt;/code&gt;, where &lt;code&gt;#.#.#&lt;/code&gt; is the agent version number.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes&quot;&gt;Download the agent.&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Unzip the new agent download file, then copy &lt;code&gt;newrelic-api.jar&lt;/code&gt; and &lt;code&gt;newrelic.jar&lt;/code&gt; into the original &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/troubleshooting/find-agent-root-directory#java-agent&quot;&gt;Java agent root directory&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Compare your old &lt;code&gt;newrelic.yml&lt;/code&gt; with the newly downloaded &lt;code&gt;newrelic.yml&lt;/code&gt; from the zip, and &lt;a href=&quot;#diff&quot;&gt;update the file if needed&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Restart your Java dispatcher.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.&lt;/p&gt;
&lt;h2&gt;Update agent config differences [#diff]&lt;/h2&gt;
&lt;p&gt;We add new settings to &lt;code&gt;newrelic.yml&lt;/code&gt; as we release new versions of the agent. You can use &lt;code&gt;diff&lt;/code&gt; or another diffing utility to see what&apos;s changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you&apos;ve made to the file, such as your license key, app name, or changes to default settings.&lt;/p&gt;
&lt;p&gt;For example, if you &lt;code&gt;diff&lt;/code&gt; the default &lt;code&gt;newrelic.yml&lt;/code&gt; files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml
...
107a108,119
&gt;       # Whether the log events should include context from loggers with support for that.
&gt;       context_data:
&gt;
&gt;         # When true, application logs will contain context data.
&gt;         enabled: false
&gt;
&gt;         # A comma separated list of attribute keys whose values should be sent to New Relic.
&gt;         #include:
&gt;
&gt;         # A comma separated list of attribute keys whose values should not be sent to New Relic.
&gt;         #exclude:
&gt;
125a138
&gt;
128c141
&amp;#x3C;     enabled: false
---
&gt;     enabled: true
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, these lines were added to the default &lt;code&gt;newrelic.yml&lt;/code&gt; in Java agent version 7.11.0. If you&apos;re moving to 7.11.0 or higher, you should add these new lines to your original &lt;code&gt;newrelic.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Support statement:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software/&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 28 May 2026 00:00:00 +0000.</description></item><item><title><![CDATA[Java agent v3.44.0]]></title><guid isPermaLink="false">SmF2YSBhZ2VudC0zLjQ0LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3440</link><pubDate>Mon, 06 Nov 2017 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;div&gt;&lt;p&gt;Download this agent version&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3&gt;Known Issue&lt;/h3&gt;
&lt;p&gt;This release contains a bug that could cause an Akka HTTP 10 app to fail at runtime with a NullPointerException.&lt;/p&gt;
&lt;p&gt;Please use &lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/java-release-notes/java-agent-3441&quot;&gt;version 3.44.1&lt;/a&gt; instead.&lt;/p&gt;
&lt;h3&gt;Improvements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Supports Play 2.6, Akka HTTP 10, and Scala 2.12.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The agent now provides instrumentation for Play 2.6.x. It also provides instrumentation for Akka HTTP 10. It supports Scala 2.12.x, so Play and Akka HTTP transactions show full detail, including async activity using Scala Promises and Futures.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Lowers overhead for Play, Akka, and Scala.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This agent release imposes lower overhead for applications that use Play, Akka, and Scala. The reduction in overhead will be most notable in lightweight applications and microservices.&lt;/p&gt;
&lt;p&gt;Unlike previous versions of the agent, by default the agent will not report Scala Futures as transaction segments, and those Futures will not contribute to the transaction’s reported Total Time. For most customers, this change will provide more concise information in transaction trace details, with no loss of insight. If those segments are valuable to you, and you are willing to incur higher overhead, you can enable that instrumentation with the following setting:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;scala_futures_as_segments:
      enabled: true
&lt;/code&gt;&lt;/pre&gt;
&lt;h3&gt;Bug Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;The 3.43.0 version of the agent caused Tomcat to report a &lt;code&gt;ClassFormatException&lt;/code&gt; error at startup. The error did not affect the application or agent.&lt;/li&gt;
&lt;li&gt;High-throughput applications with daily logging enabled and a specified log limit could cause log files to grow without bound.&lt;/li&gt;
&lt;li&gt;The agent could leak memory when instrumenting the Ning Async Http Client.&lt;/li&gt;
&lt;li&gt;Akka HTTP content type was not reported.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 06 Nov 2017 00:00:00 +0000.</description></item></channel></rss>