Java Release Notes

Recent Java agent release notes are listed below. If you would like a release that has been used extensively with a list of known issues, see Established releases (Java) for download link and version information.

Tuesday, November 5, 2013 - 21:04
End of Life

The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see Update the agent. For more information, see End-of-life policy.

Notes

  • Fix: In some cases, metrics were not reported in Play 2 apps

    The Java Agent now reports all metric data consistently.

  • Fix: The Java Agent was unable to instrument classes in WSO2 API Manager

    The Java Agent now reports data for WSO2 applications.

Monday, October 21, 2013 - 22:49
End of Life

The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see Update the agent. For more information, see End-of-life policy.

  • Percentiles and Histograms

    The Java Agent now captures data that provides percentile and histogram views in the New Relic UI.

  • JAX-RS annotation instrumentation

    The Java Agent now instruments and names web transactions based on javax.ws.rs annotations.

  • JAX-WS instrumentation

    The Java Agent now instruments methods on classes that are marked with the javax.jws.WebService annotation.

  • Fix: In some cases, agent had excessive overhead on Spring AOP apps

    The agent should now perform well for any Spring AOP application.

  • Fix: Play Framework instrumentation was ignoring the ignoreTransaction call

    The Play Framework 2.x instrumentation now honors the New Relic API ignoreTransaction call.

  • Fix: Potential memory leak when app continually creates ClassLoaders

    The Java Agent now handles applications where ClassLoaders are continuously created.

  • Fix: Agent zip distribution did not include the API source jar

    The newrelic-api-sources.jar is now included in the zip file.

Thursday, October 3, 2013 - 22:13
End of Life

The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see Update the agent. For more information, see End-of-life policy.

Notes

  • Fix: Issue at startup with JBoss and Glassfish

    An issue in the 3.0.0 version caused startup of some versions of JBoss and Glassfish to fail. This version fixes that issue.

  • Fix: RUM not auto-instrumented for JSPs

    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.

Tuesday, October 1, 2013 - 21:09
End of Life

The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see Update the agent. For more information, see End-of-life policy.

Notes

  • Spring AOP instrumentation

    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.

  • Performance Improvements

    This version contains optimizations that reduce agent overhead.

  • Fixes: Hibernate improvements

    In this version, we provide more consistent detail into Hibernate calls across supported version of Hibernate (3.3 - 4.2).

  • Fix: Removed need for WebSphere SSL work-around

    Previous versions sometimes required a work-around when using WebSphere. This version removes the need for a work-around.

  • NOTE: Requires Java SE 6 or 7

    Java Agent 3.0 requires Java SE 6 or 7. At signup or in your Account Settings page, you have the option to download a version of the agent that works with Java SE 5.

Tuesday, September 10, 2013 - 21:21
End of Life

The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see Update the agent. For more information, see End-of-life policy.

Notes

  • Fix: Metric Grouping Issue with Netty

    The request URL was referenced in some metric names, causing Metric Explosion. The URL is no longer included in the metric name.

  • Fix: Make Cookie parsing more robust when running on Netty

    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.

  • Fix: Agent could not connect to New Relic in non-DNS environments

    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.

  • Fix: In 2.21.2 and 2.21.3 an @Trace annotation ignored the transaction for Apdex

    An @Trace annotation on a method called in a web transaction had the side-effect of ignoring the transaction for calculating the Apdex score.

Tuesday, August 13, 2013 - 16:38
End of Life

The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see Update the agent. For more information, see End-of-life policy.

Notes

  • Fix: Agent did not run with J2SE 5.0 (aka JDK 1.5)

    Release 2.21.0 - 2.21.2 did not run correctly on J2SE 5.0. On startup, the agent reports:

    Unable to start New Relic agent: java.lang.UnsupportedClassVersionError: Bad version number in .class file 
    

    If you are running J2SE 5.0, please update to agent version 2.21.3.

Saturday, August 10, 2013 - 00:22
End of Life

The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see Update the agent. For more information, see End-of-life policy.

Notes

  • Fix: Longer application startup time

    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.

  • Fix: File location changes

    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.

Friday, August 9, 2013 - 17:35
End of Life

The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see Update the agent. For more information, see End-of-life policy.

Notes

  • Fix: In 2.21.0, calls to NewRelic class can cause NoClassDefFoundError

    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.

Wednesday, August 7, 2013 - 13:39
End of Life

The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see Update the agent. For more information, see End-of-life policy.

Notes

  • X-Ray sessions

    Adds support for X-Ray sessions. An X-Ray session collects Transaction Traces and a thread profile for a Key Transaction.

  • Fix: In 2.20.0 an @Trace annotation ignored the transaction for Apdex

    An @Trace annotation on a method called in a web transaction had the side-effect of ignoring the transaction for calculating the Apdex score.

  • Fix: HTTP status code for Errors

    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.

  • Fix: Spring exception handling

    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.

  • Fix: Reading Post Parameters for Resin 3

    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.

  • Fix: JVM Tab Metrics Not Showing up for Tomcat Applications

    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.

  • Fix: Improved compatibility with Java 1.5

    In the custom xml validator, there were references to String.isEmpty() which was not available until Java 1.6. Those have been removed.

  • Fix: Reducing DNS problems by not automatically adding '.' to the domain name

    By default the '.' is included. But if changed, then the '.' won't be added.

  • Fix: JVM tab metrics showing for all Applications In JVM

    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.

  • Fix: Using a Proxy now works with SSL Enabled

    In prior releases proxy authentication would fail when SSL was enabled. We now do proxy authentication using the java.net.Authenticator.

  • Fix: Akka error reporting

    If an actor throws an exception or the message times out, an error is reported. Previously, no error was reported.

Monday, July 1, 2013 - 20:07
End of Life

The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see Update the agent. For more information, see End-of-life policy.

Notes

  • Glassfish 2.1 JVM Tab

    The JVM tab will now show thread, session, and transaction metrics for Glassfish 2.1.

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

  • Fix: NullPointerException in New Relic Logs When NewRelic API called

    In certain circumstances, a call to a method on the NewRelic class can generate a NullPointerException in the agent logs. It does not cause a NullPointerException in your application.

  • 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 ClassNotFoundException.

Friday, June 14, 2013 - 15:58
End of Life

The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see Update the agent. For more information, see End-of-life policy.

Notes

  • Fix for 2.19.0 known issue: Play now captures GET and POST parameters correctly if capture_params is enabled.

  • Disabled overly ambitious instrumentation used to time template rendering for Play 2. Resulted in unintended classes being instrumented.

Wednesday, May 29, 2013 - 17:23
End of Life

The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see Update the agent. For more information, see End-of-life policy.

Notes

  • Play 2 Instrumentation

    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.

    Known issue: Request parameters are not captured properly even if capture_params is enabled.

  • Support added for Jetty 9 (tested on 9.0.0 through Jetty 9.0.3).

  • Fix: Agent can cause java.lang.VerifyError on code compiled with Java 7

    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.

  • Fix: The Java Agent detects status codes for Apache Felix correctly by default. The property take_last_status is now deprecated.

Tuesday, May 7, 2013 - 20:07
End of Life

The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see Update the agent. For more information, see End-of-life policy.

Notes

  • New metrics are displayed under the JVM tab

    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.

  • Fix: When naming transactions, the property enable_auto_transaction_naming should be honored

    There was an issue where transactions using the Spring Framework were ignoring the property.

  • Fix: Strip query string from HTTP Referer

    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.

Wednesday, April 17, 2013 - 21:33
End of Life

The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see Update the agent. For more information, see End-of-life policy.

Notes


  • Fix: Fixed bug in which application code can throw NoSuchMethodError

    In some cases using Java agent 2.17.0 and 2.17.1, application code was throwing an exception

    java.lang.NoSuchMethodError: java.lang.Boolean.valueOf(B)Ljava/lang/Byte;

    This usually occurred when calling a ResultSet implementation.

Friday, April 12, 2013 - 21:17
End of Life

The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see Update the agent. For more information, see End-of-life policy.

Notes

  • Fix: Reverted transaction naming change on ColdFusion, introduced in 2.17.0.

    That change caused issues with certain modes of ColdFusion.

Thursday, April 11, 2013 - 22:43
End of Life

The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see Update the agent. For more information, see End-of-life policy.

Notes

  • Agent reports JDBC ResultSet query time

    This change gives you deeper insight into your database time by displaying ResultSet processing time in aggregate metrics and transaction traces.

  • Fix: Avoid retransform exception on IBM JREs

    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.

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

  • Better transaction naming on ColdFusion

Monday, March 25, 2013 - 22:03
End of Life

The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see Update the agent. For more information, see End-of-life policy.

Notes

  • Adds a stack trace in the transaction trace for slow methods.

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

    transaction_tracer:
      stack_trace_threshold: 1.0
    
  • Cross Application Tracing support for HttpURLConnection.

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

  • Fix: Cross Application Tracing does not correlate consistently when using WebSphere, WebLogic, Resin, and Glassfish.

    Cross Appplication Tracing did not correlate calling and called applications when the HTTP response was large.

  • Queuing time more broadly supported.

    The 'X-Queue-Start' and 'X-Request-Start' request headers for Heroku and other front-end web servers are interpreted and reported. Previously, queuing time was not reported for Heroku.

  • Work-around for Oracle JVM bug that in rare cases causes a native memory leak

    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.

    class_transformer:
      shutdown_delay: 3600
    
Wednesday, March 13, 2013 - 21:43
End of Life

The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see Update the agent. For more information, see End-of-life policy.

Notes

  • Fix: Cross Application Tracing does not correlate consistently when using Tomcat 6+

    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.

Thursday, February 28, 2013 - 23:06
End of Life

The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see Update the agent. For more information, see End-of-life policy.

Notes

  • Cross Application Tracing

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

    The 2.14.0 release links aggregated data across applications. This release also links transaction traces.

    The configuration setting introduced in 2.14.0 to enable/disable Cross Application Tracing in newrelic.yml has changed. The old setting: 'cross_application_tracing: true' is deprecated. The new setting is

    cross_application_tracer:
       enabled: true

    The default setting is true. Set to false to disable Cross Application Tracing.

  • Instrumentation added for the AmazonS3Client version 1.x

    The New Relic Agent now offers support for version 1.0 to current of the com.amazonaws.services.s3.AmazonS3 interface.

  • New Relic Java Agent support a daily roll over log

    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.

  • New Relic Java Agent now communicates with New Relic via HTTPS by default rather than HTTP

    If you have an existing installation and wish to use HTTPS to communicate with New Relic, edit your newrelic.yml file to include

    ssl: true

    in the common section. We recommend this for existing customers in order to improve the security of your communications with New Relic.

  • Java Agent installer improvements

    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 https://newrelic.com/docs/java/installing-the-java-agent-on-jboss.

  • Fix: Default hostname reported

    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.

  • Fix: Web transactions naming in Spring MVC version 3.x

    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.

Friday, February 15, 2013 - 23:38
End of Life

The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see Update the agent. For more information, see End-of-life policy.

Notes

  • 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 'X-NewRelic-ID' header to outbound requests using java.net.HttpURLConnection.

Pages