APM Insight Java Agent - Release Notes


Java Version 6.8 - October 28, 2024

Enhancements

  • Supported Reactor-Netty app server , Yugabyte DB and Spring batch jobs.
  • Added extra criteria for capturing traces for distributed calls
  • Supported multiple Applications Manager endpoints to handle failover setup.

Issues Fixed

  • Improved performance in tracking Redis operations.
  • Discrepancies in the count of batch queries while tracking batch queries were fixed.

Java Version 6.7 - August 19, 2024

Enhancements

  • Support for loop detection in traces.

Java Version 6.6.2 - June 20, 2024

Enhancements

  • Support has been extended for Java versions up to Java 22. 
  • The dynamic loading of the Java agent no longer requires a JDK dependency. This enables the agent to be loaded dynamically in any environment for Java 11 or above.
  • Support for gRPC server and client (versions 1.20.x to 1.60.x).
  • Support for the Wso2mi (Apache Synapse) framework.
  • Support for Redis 5.x and MongoDB 4.x.
  • Support for the new application server - webMethods Integration.
  • Support for OpenShift and Kubernetes environment detection.
  • Provision for ignoring cloud environment detection (if required).
  • The JBoss server name is now used as the instance hostname.
  • Batch query extraction for PostgreSQL has been implemented.
  • Support for capturing rows fetched/affected for all SQL queries is available only for MySQL, PostgreSQL, and MSSQL databases.
  • Support for tracking the status code and bytes in and out of newer versions of the Undertow server.
  • Method parameters are now captured as part of the traces.
  • Support for disabling the grouping of 404 Error Transactions.

Issues Fixed

  • The issue of not capturing Redis transactions when using spring-data-redis has been resolved by capturing the Redis host details.
  • The agent registration failure, identified in a few cases due to the length of vulnerable JAR versions being exceeded, has been resolved.
  • The conflict between the agent logger and the application logger has been resolved.
  • The issue with Tomcat startup slowness upon adding an agent has been resolved.
  • The issue with parsing PreparedStatements in PostgreSQL and MySQL has been resolved.
  • The failure of agent init() during runtime loading, caused by HttpClientBuilder init, has been fixed.
  • The incorrect JVM Heap memory usage value has been fixed.
  • The ArrayOutOfBoundsException related thread profiling issue, where the top N value is greater than the actual number of threads, has been fixed.
  • The issue with high heap usage when monitoring a large number of external calls for a transaction has been fixed.
  • The ArrayOutOfBoundsException caused by an index mismatch with proxy configuration via system property has been fixed.
  • Negative values in application parameters have been fixed.

Java Version 6.0.1 - July 31, 2023

Issues Fixed

  • The request timeout issue with the agent's HTTP communication has been fixed.

Java Version 6.0 - June 30, 2023

Issues Fixed

  • The issue with Apache HttpClient 4.5.x calls not being captured has been resolved.
  • Minor bugs in the JVM CPU calculation have been resolved.
  • Enhanced UUID generation to avoid slowdown issues.

Enhancements

  • The following thread profiling enhancements have been implemented:
    • Thread profiling is enabled by default, and it runs every eight hours for five minutes. It helps in identifying and auto-instrumenting slow methods.
    • Instead of listing the long-running methods, we switched to a tree model in which we retained the stacktrace structure and included additional information on each stack element.
    • Support for transaction-based profiling (only in ON-DEMAND profiling).
      • In addition to the fixed interval sampling, profiler will now pick the first few requests received during the profiling period.
    • Thread dumps collected during profiling are sent to the server along with other data (only in ON-DEMAND profiling).
      • There will be a maximum of 5 dumps. These dumps are saved locally and will be deleted once they are pushed to the Applications Manager servers.
    • We also collect information on the top N resource-consuming threads, including CPU time, memory allocated, and stacktrace.
  • Support for tracking async transactions. - Support for the following components: Spring @Async annotation, Apache HttpAsyncClient, AsyncHttpClient, and CompletableFuture.
  • The agent supports Java 8 and above only (Java 6 and 7 are no longer supported).
  • Retries (up to three times) for sending profiler data have been added in case of communication failure.
  • Additional Redis calls are supported.
  • JAX-WS annotations and Webmethods components are supported.
  • Jakarta EE 9+ support is now available.
  • NTLM auth support for proxy authentication.
  • Support for displaying the instance's IP address

Java Version 5.5 - April 3, 2023

Issues Fixed

  • The issue with MSSQL queries being displayed under generic JDBC component names has been fixed.
  • Skip transaction processing if HTTP status code is in ignore list.

Enhancements

  • Support for Micronaut framework.
  • Support for Cassandra Datastax 4.x.
  • Support for tracking HTTP calls (blocking calls) in Spring WebClient.
  • Support for whitespaces in JMX query names.
  • Distributed Tracing support for HttpURLConnection.

Java Version 5.4.1 - February 2, 2022

Issues Fixed

  • Agent shutdown time in 'apminsight.info' file kept appending to previous values - this has now been resolved. Only the latest values are retained now.
  • Null values were shown in JMX metrics caused by a NaN exception.
  • Timeout of HttpUrlConnection class were captured separately.

Enhancements

  • Support for Play 2.7 & 2.8 framework.
  • Support for OkHttp3 Client up to v4.8.
  • Introduced an option to enable/disable diagnostics logs.
  • REDIS component is enhanced to monitor additional operations like hset, hget, etc.
  • Vulnerable classes of the log4j library have been removed (Agent uses log4j v1.2.17). (Latest version of log4j will be used in the next release.)

Java Version 5.3.0 - October 13, 2021

Issues Fixed

  • When log level was set to OFF, agent was still printing few lines before being disabled.

Enhancements

  • Support for monitoring messaging queues like Kafka, RabbitMQ, and ActiveMQ.
  • Headers of web requests are captured from this agent version.
  • Checksum verification to validate the integrity of the downloaded agent.

Java Version 5.2.0 - July 22, 2021

Issues Fixed

  • SQL queries were not captured while using MySQL client v8.x.

Enhancements

  • Support for Java 15 monitoring.
  • Standalone HTTP calls are tracked as background transactions - this was deprecated in agent v5.1.0 and is now reverted back.
  • Automatic transaction grouping is applied to background transactions.

Java Version 5.1.0 - April 14, 2021

Enhancements

  • Support for monitoring JMX metrics.
  • Support for OkHttp Client (v3 & above).
  • Http calls in the background are no longer tracked as separate background transactions. It will be captured as a part of any other transaction where it is executed.

Java Version 4.9.0 - August 19, 2020

Issues Fixed

  • Agent was unable to instrument DB queries when WebLogic wraps JDBC calls.
  • Deadlock between Tomcat main thread logger init and agent httpclient init.

Enhancements

  • Support for distributed tracing.
  • Introduced an agent diagnostic collector log for troubleshooting diagnostics tasks.