This topic describes the third-party Java components and frameworks supported by Application Real-Time Monitoring Service (ARMS).
Supported JDK versions
Version | Description |
JDK 25 | The ARMS agent supports JDK 25 from version 4.7.x. |
JDK 21 | The Application Monitoring agent supports JDK 21 from version 3.1.4. If your JDK version is 21, upgrade the agent to version 3.1.4 or later. For more information, see Upgrade the ARMS agent. |
JDK 17 | To meet the JDK version requirements for advanced ARMS features such as continuous profiling, use JDK 17.0.9 or later. For more information, see Enable the continuous profiling feature. |
JDK 11 | To meet the JDK version requirements for advanced ARMS features such as continuous profiling, use JDK 11.0.17 or later. For more information, see Enable the continuous profiling feature. |
JDK 1.8 | For applications deployed in Kubernetes clusters, use JDK 8u212 or later. To meet the JDK version requirements for advanced ARMS features such as continuous profiling, use JDK 8u352 or later. For more information, see Enable the continuous profiling feature. |
JDK 1.7 | Application Monitoring will stop supporting Java 7 in agent version 3.0.x. If you still use Java 7, upgrade your Java version as soon as possible. For more information, see [Product Change] Application Monitoring to Stop Supporting Java 7. |
Supported JDK distributions
OpenJDK (recommended)
Alibaba Dragonwell (recommended)
Temurin
AdoptOpenJDK
Amazon Corretto
Azul
Java HotSpot VM
Eclipse OpenJ9 has compatibility issues with Application Monitoring and is not recommended.
Frameworks and components supported by the ARMS agent V4.x
The following frameworks and components are supported by the latest 4.x version of the ARMS agent.
Component type | Component | Supported version | Function |
LLM client/framework | OpenAI Java SDK | 1.1.0+, 2.X+, and 3.X+ |
|
Spring AI | 1.X+ |
| |
Spring AI Alibaba | 1.0.0.3+ |
| |
Web container | cxf | 3.0+ |
|
restlet | 1.1.0+ |
| |
Tomcat | 7.X to 10.X |
| |
Jetty | 8.X to 11.X |
| |
Play Framework | 2.4+ |
| |
WebLogic | 10.3.0 to 12.2.X |
| |
Undertow | 1.4.0+ |
| |
Vert.x | 3.0.0+ |
| |
Webflux | 5.0.0.RELEASE+ |
| |
Spring Cloud Gateway | 2.0.0.RELEASE+ |
| |
jFinal | 3.6+ |
| |
WebSphere | 9.0+ |
| |
HTTP client | Apache HTTP Client | 2.0 to 5.3.1 |
|
Google HTTP Client | 1.19.0+ |
| |
Java HTTP Client | JDK 11+ |
| |
OkHttp | 2.2+ |
| |
Async HTTP Client | 1.8 to 2.12.3 |
| |
RPC framework | Alibaba Dubbo | 2.5.10 to 2.6.12 |
|
Apache Dubbo | 2.7.0+ |
| |
HSF | 2.2 to 3.0 |
| |
gRPC | 1.6.0+ |
| |
Motan | 0.3.0+ |
| |
JDBC Note Some components on the right support multiple methods to access databases. ARMS can monitor only the create, read, update, and delete (CRUD) operations that are performed based on the Java Database Connectivity (JDBC) specification. | OceanBase | 2.4.0+ |
|
MySQL | 5.1.1+ |
| |
PostgreSQL | 42.0.0+ |
| |
SQL Server | 6.2.0.jre7+ |
| |
MariaDB | 1.5.2+ |
| |
Oracle | 12.2.0.1+ |
| |
PolarDB | 1.0.0+ |
| |
ClickHouse | 0.1.28+ |
| |
NoSQL | HBase | 2.0 to 3.0 |
|
Jedis | 1.4+ |
| |
Lettuce | 4.0.Final+ |
| |
Redisson | 3.0 to 3.25.2 |
| |
Memcached | 2.12.0 to 2.12.3 |
| |
MongoDB | 3.1+ |
| |
Elasticsearch | 5.0+ |
Note Data collection is supported only when you access the Elasticsearch server over HTTP. Data collection is not supported when you access the Elasticsearch server over TCP. | |
InfluxDB | 2.7 to 2.23 |
| |
Cassandra | 3.0+ |
| |
Message | Eclipse Paho Client MQTTv3 | 1.0.2+ |
|
RocketMQ Java Client | 4.4.0, 4.5.1+, and 5.X+ |
| |
RocketMQ Java Client V5 | 5.0.0+ |
| |
Aliyun MNS SDK | 1.3.0+ |
| |
Aliyun ONS | 1.7.0.Final+ and 2.0.0.Final+ |
| |
Qpid JMS Client | 0.49.0+ |
| |
RabbitMQ | 4.X+ |
| |
Kafka | 0.11.0.0+, 1.X+, 2.X+, and 3.X+ |
| |
Spring-Kafka | 2.7.0+ |
| |
Scheduled task | XXLJob | 2.0.2+ |
|
SchedulerX | 1.2.1 to 1.11.6 |
| |
Spring Scheduled | 3.1.0.RELEASE+ |
| |
ElasticJob | 3.0.0 to 3.0.4 |
| |
Log framework | Log4j | 1.2+ |
|
Log4j2 | 2.0+ |
| |
Logback | 1.0.0 to 1.2.3 |
| |
Database connection pool | Druid | 1.0.25+ |
|
HikariCP | 3.0.0+ |
| |
C3P0 | 0.9.5+ |
| |
MyBatis | 3.1.0+ |
| |
DBCP | 2+ |
| |
Other | Spring | 4.1.0.RELEASE+ | Instruments the request dispatch code of Spring to obtain the route of an HTTP request. |
Spring-Bean | 4.1.0.RELEASE+ | Instruments each public method in Spring-managed beans and generates a span. |
Frameworks and components supported by the ARMS agent V3.x
The following frameworks and components are supported by the latest 3.x version of the ARMS agent.
Component Type | Component | Supported version |
Web container | Tomcat | 7.X to 10.X |
Jetty | 8.1.X to 11.0.X | |
Play Framework | 2.2.X to 2.8.X | |
WebLogic | 10.3.X to 12.2.X | |
Undertow | 1.4.X to 2.2.X | |
Vert.x | 3.3.X+ | |
Reactor Netty | 0.7.X+ | |
Webflux | 5.0.X+ | |
HTTP client | Apache HttpClient | 3.0.X+ |
Google HTTP Client | 1.19.X+ | |
OkHttp/OkHttp3 | 2.1.X to 4.11.X | |
Spring Web (RestTemplate) | ||
AsyncHttpClient | 2.0.X to 2.12.X | |
Spring-related | Spring MVC | 3.0.5.RELEASE+ |
Spring Scheduled | 3.1.0.RELEASE+ | |
Spring Cloud-related | Hystrix | 1.0.X to 1.5.X |
Feign | 9.0.X to 12.4.X | |
Spring Webflux | 5.0.X to 6.0.X | |
Spring Cloud Gateway | 2.1.X to 4.0.X | |
RPC framework | Dubbo | 2.4.X+ |
Ali-HSF (High Speed Framework) | 2.2.X+ | |
gRPC | 0.7.X to 1.56.X | |
Thrift | 0.1.X to 0.18.X | |
JDBC-related | PolarDB | 1.1.2+ (supported by the ARMS agent V4.x and later) |
MySQL Connector | 5.0.X+ | |
PostgreSQL JDBC Driver | 42.1.X+ | |
Microsoft JDBC Driver for SQL Server | 6.4.X to 12.2.X | |
MariaDB Java Client | 1.5.X to 3.1.X | |
Oracle ojdbc | 7, 8, 10, and 14 | |
Sharding-JDBC | 4.0.X to 4.1.X | |
Druid | 1.0.X+ | |
Hikari-CP | 2.3.X+ | |
MyBatis | 3.1.X to 3.5.X | |
MyBatisPlus | 1.0.X to 1.7.X | |
NoSQL-related | Jedis | 2.X to 4.X |
Lettuce | 5.2.X+ | |
Redisson | 2.5.X+ | |
Memcached | 2.8.X to 2.12.X | |
MongoDB Java Driver | 3.X | |
Spring Data MongoDB | 2.0.X to 3.4.X | |
Elasticsearch Rest Client | 5.X to 7.X | |
Elasticsearch Rest High Level Client | 6.X to 7.X | |
ClickHouse JDBC Driver | 0.3.X to 0.4.X | |
InfluxDB | - | |
Message-related | RocketMQ Java Client | 4.4.0, 4.5.1+, and 5.X+ |
RocketMQ Java Client V5 | 5.X+ | |
Spring for Apache RocketMQ | 2.0.2+ | |
Aliyun ONS | 1.7.0.Final+ and 2.0.0.Final+ | |
RabbitMQ Java Client | 4.X+ | |
Kafka Client | 0.11.0.0+, 1.X+, 2.X+, and 3.X+ | |
Scheduled task | XXLJob | 2.0.X to 2.4.X |
ElasticJob | 2.0.X to 2.1.X | |
SchedulerX | 1.2.X to 1.5.X | |
Spring Scheduled | 3.2.X to 5.3.X | |
Asynchronous/responsive programming framework | SpringAsync | 4.0.X to 5.3.X |
RxJava | 2.0.X to 3.1.X | |
Reactor | 3.0.X to 3.5.X | |
Log framework | Log4j | 1.2.16 to 1.2.17 |
Log4j2 | 2.0 to 2.20.0 | |
Logback | 1.0.13 to 1.4.8 |
Application Monitoring can automatically instrument the supported components. If you use a component that is not included in the preceding lists, you can manually instrument it. For more information, see Add custom instrumentation to traces using the OpenTelemetry SDK for Java.