ARMS 应用监控支持自动埋点常见 Java 第三方组件和框架。本文按探针版本(5.X、4.X、3.X)分别列出支持的 JDK 版本、框架和组件,根据当前使用的探针版本查阅对应章节。
支持的 JDK 版本
| 版本 | 说明 |
| JDK 25 | 从探针 4.7.x 版本开始支持 JDK 25。 |
| JDK 21 | ARMS 应用监控探针从 3.1.4 版本开始支持 JDK 21。如果 JDK 版本为 JDK 21,需升级探针版本至 3.1.4 或以上,探针升级方式请参见。 |
| JDK 17 | 为满足持续剖析等 ARMS 高阶能力所需的 JDK 版本要求,建议使用 JDK 17.0.9+。更多信息,请参见。 |
| JDK 11 | 为满足持续剖析等 ARMS 高阶能力所需的 JDK 版本要求,建议使用 JDK 11.0.17+。更多信息,请参见。 |
| JDK 1.8 | 对于 Kubernetes 集群应用部署,建议使用 JDK 8u212+。为满足持续剖析等 ARMS 高阶能力所需的 JDK 版本要求,建议使用 JDK 8u352+。更多信息,请参见。 |
| JDK 1.7 | ARMS 应用监控将于 3.0.X 探针版本终止支持 Java 7。如果仍在使用 Java 7,请尽快升级 Java 版本。更多信息,请参见。 |
支持的 JDK 发行版
OpenJDK (推荐)
Alibaba Dragonwell (推荐)
Temurin
AdoptOpenJDK
Amazon Corretto
Azul
Java HotSpot VM
Eclipse OpenJ9 与 ARMS 应用监控存在一定的兼容性问题,不建议使用。
5.X 探针支持的框架和组件
以下为最新 5.X 版本探针支持的框架和组件。
| 组件类型 | 组件 | 支持版本 | 作用 |
| LLM 客户端/框架 | AgentScope | 1.0.0+ | |
| OpenAI Java SDK | 1.1.0+、2.X+、3.X+ | 采集 ChatCompletion 调用相关指标以及 Span;采集 Completion 调用相关指标以及 Span;采集 Embedding 调用相关指标以及 Span | |
| Spring AI | 1.X+ | 采集 OpenAI ChatModel 调用相关指标以及 Span;采集 Default ChatClient 调用相关指标以及 Span;采集 Default ToolManager 调用相关指标以及 Span | |
| Spring AI Alibaba | 1.0.0.3+ | 采集 DashScope ChatModel 调用相关指标以及 Span | |
| Agent 协议 | A2A (Agent-to-Agent) Java SDK | 0.3.3+ | 采集 Agent-to-Agent 通信 Client 和 Server 调用相关指标以及 Span |
| MCP Java SDK | 0.17.0+ | 采集 Model Context Protocol Client 和 Server 调用相关指标以及 Span | |
| Web 容器 | cxf | 3.0+ | 采集 cxf 相关 RED 指标以及 Span |
| restlet | 1.1.0+ | 采集 restlet 相关 RED 指标以及 Span | |
| Tomcat | 7.X ~ 10.X | 采集 HTTP 相关 RED 指标以及 Span;采集 Tomcat 线程池指标 | |
| Jetty | 8.X ~ 11.X | 采集 HTTP 相关 RED 指标以及 Span;采集 Jetty 线程池指标 | |
| Play Framework | 2.4+ | 采集 HTTP 相关 RED 指标以及 Span | |
| WebLogic | 10.3.0 ~ 12.2.X | 采集 HTTP 相关 RED 指标以及 Span | |
| Undertow | 1.4.0+ | 采集 HTTP 相关 RED 指标以及 Span;采集 Undertow 线程池指标 | |
| Vertx | 3.0.0+ | 采集 HTTP 相关 RED 指标以及 Span | |
| Webflux | 5.0.0.RELEASE+ | 采集 HTTP 相关 RED 指标以及 Span | |
| Spring Cloud Gateway | 2.0.0.RELEASE+ | 采集 HTTP 相关 RED 指标以及 Span | |
| jFinal | 3.6+ | 采集 HTTP 相关 RED 指标以及 Span | |
| WebSphere | 9.0+ | 采集 HTTP 相关 RED 指标以及 Span | |
| HTTP 客户端 | Apache HTTP Client | 2.0 ~ 5.3.1 | 采集 HTTP 相关 RED 指标以及 Span |
| Google HTTP Client | 1.19.0+ | 采集 HTTP 相关 RED 指标以及 Span | |
| Java HTTP Client | JDK11+ | 采集 HTTP 相关 RED 指标以及 Span | |
| OkHttp | 2.2+ | 采集 HTTP 相关 RED 指标以及 Span | |
| Async HTTP Client | 1.8 ~ 2.12.3 | 采集 HTTP 相关 RED 指标以及 Span | |
| RPC 框架 | Alibaba Dubbo | 2.5.10 ~ 2.6.12 | 采集 Dubbo 相关 RED 指标以及 Span |
| Apache Dubbo | 2.7.0+ | 采集 Dubbo 相关 RED 指标以及 Span | |
| HSF | 2.2 ~ 3.0 | 采集 HSF 相关 RED 指标以及 Span | |
| gRPC | 1.6.0+ | 采集 gRPC 相关 RED 指标以及 Span | |
| Motan | 0.3.0+ | 采集 Motan 相关 RED 指标以及 Span | |
| SofaRPC | 5.4.0+ | 采集 SofaRPC 相关 RED 指标以及 Span | |
| JDBC | OceanBase | 2.4.0+ | 采集数据库调用相关指标以及 Span。 说明 部分组件支持多种方式访问数据库,探针仅监控通过 JDBC 规范进行的数据库增删改查操作。 |
| MySQL | 5.1.1+ | 采集数据库调用相关指标以及 Span | |
| PostgreSQL | 42.0.0+ | 采集数据库调用相关指标以及 Span | |
| SQL Server | 6.2.0.jre7+ | 采集数据库调用相关指标以及 Span | |
| MariaDB | 1.5.2+ | 采集数据库调用相关指标以及 Span | |
| Oracle | 12.2.0.1+ | 采集数据库调用相关指标以及 Span | |
| PolarDB | 1.0.0+ | 采集数据库调用相关指标以及 Span | |
| ClickHouse | 0.1.28+ | 采集数据库调用相关指标以及 Span | |
| NoSQL | HBase | 2.0 ~ 3.0 | 采集 NoSQL 调用相关指标以及 Span |
| Jedis | 1.4+ | 采集 NoSQL 调用相关指标以及 Span | |
| Lettuce | 4.0.Final+ | 采集 NoSQL 调用相关指标以及 Span;采集 Lettuce 连接池指标;收集 NoSQL 响应大小指标 | |
| Redisson | 3.0 ~ 3.25.2 | 采集 NoSQL 调用相关指标以及 Span | |
| Memcached | 2.12.0 ~ 2.12.3 | 采集 NoSQL 调用相关指标以及 Span | |
| MongoDB | 3.1+ | 采集 NoSQL 调用相关指标以及 Span | |
| Elasticsearch | 5.0+ | 采集 NoSQL 调用相关指标以及 Span。 说明 仅支持采集使用 HTTP 协议方式访问 ES 服务端的数据,不支持采集 TCP 协议访问 ES 服务端的数据。 | |
| InfluxDB | 2.7 ~ 2.23 | 采集 NoSQL 调用相关指标以及 Span | |
| Cassandra | 3.0+ | 采集 NoSQL 调用相关指标以及 Span | |
| 消息 | Eclipse Paho Client MQTTv3 | 1.0.2+ | 采集 Consumer 调用相关 RED 指标以及 Span |
| RocketMQ Java Client | 4.4.0、4.5.1+、5.X+ | 采集 Consumer、Producer 调用相关 RED 指标以及 Span;采集消息延迟指标 | |
| RocketMQ Java Client V5 | 5.0.0+ | 采集 Consumer、Producer 调用相关 RED 指标以及 Span;采集消息延迟指标 | |
| Aliyun MNS SDK | 1.3.0+ | 采集 Producer、Consumer 调用相关 RED 指标以及 Span | |
| Aliyun ONS | 1.7.0.Final+、2.0.0.Final+ | 采集 Consumer、Producer 调用相关 RED 指标以及 Span;采集消息延迟指标 | |
| Qpid JMS Client | 0.49.0+ | 采集 Consumer 调用相关 RED 指标以及 Span | |
| RabbitMQ | 4.X+ | 采集 Consumer、Producer 调用相关 RED 指标以及 Span;采集所有 Channel、Command 操作的 Span | |
| Kafka | 0.11.0.0+、1.X+、2.X+、3.X+ | 采集 Consumer、Producer 调用相关 RED 指标以及 Span | |
| Spring-Kafka | 2.7.0+ | 采集 Consumer(Message Listener)调用相关 RED 指标以及 Span。为防止重复,Spring-Kafka 统计到调用链后,底层的 Kafka 增强不再生效。 | |
| 定时任务 | XXLJob | 2.0.2+ | 采集定时任务调用相关 RED 指标以及 Span |
| SchedulerX | 1.2.1 ~ 1.11.6 | 采集定时任务调用相关 RED 指标以及 Span | |
| Spring Scheduled | 3.1.0.RELEASE+ | 采集定时任务调用相关 RED 指标以及 Span | |
| ElasticJob | 3.0.0 ~ 3.0.4 | 采集定时任务调用相关 RED 指标以及 Span | |
| 日志框架 | Log4j | 1.2+ | 往该类日志上下文填充 EagleEye-TraceID;采集该类日志框架打印日志条数相关指标 |
| Log4j2 | 2.0+ | 往该类日志上下文填充 EagleEye-TraceID;采集该类日志框架打印日志条数相关指标 | |
| Logback | 1.0.0 ~ 1.2.3 | 往该类日志上下文填充 EagleEye-TraceID;采集该类日志框架打印日志条数相关指标 | |
| 数据库连接池 | Druid | 1.0.25+ | 采集连接池指标;采集获取连接操作的 Span |
| HikariCP | 3.0.0+ | 采集连接池指标 | |
| C3P0 | 0.9.5+ | 采集连接池指标 | |
| MyBatis | 3.1.0+ | 采集 MyBatis 操作的 Span | |
| DBCP | 2+ | 采集连接池指标 | |
| 其他 | Spring | 4.1.0.RELEASE+ | 埋点 Spring 的请求分派代码,获得一次 HTTP 请求的路由 |
| Spring-Bean | 4.1.0.RELEASE+ | 埋点 Spring 托管 Bean 中每个 Public 方法并生成 Span |
4.X 探针支持的框架和组件
以下为最新 4.X 版本探针支持的框架和组件。4.X 与 5.X 探针支持的组件基本一致,区别在于 4.X 不包含 SofaRPC。
| 组件类型 | 组件 | 支持版本 | 作用 |
| LLM 客户端/框架 | AgentScope | 1.0.0+ | |
| OpenAI Java SDK | 1.1.0+、2.X+、3.X+ | 采集 ChatCompletion 调用相关指标以及 Span;采集 Completion 调用相关指标以及 Span;采集 Embedding 调用相关指标以及 Span | |
| Spring AI | 1.X+ | 采集 OpenAI ChatModel 调用相关指标以及 Span;采集 Default ChatClient 调用相关指标以及 Span;采集 Default ToolManager 调用相关指标以及 Span | |
| Spring AI Alibaba | 1.0.0.3+ | 采集 DashScope ChatModel 调用相关指标以及 Span | |
| Agent 协议 | A2A (Agent-to-Agent) Java SDK | 0.3.3+ | 采集 Agent-to-Agent 通信 Client 和 Server 调用相关指标以及 Span |
| MCP Java SDK | 0.17.0+ | 采集 Model Context Protocol Client 和 Server 调用相关指标以及 Span | |
| Web 容器 | cxf | 3.0+ | 采集 cxf 相关 RED 指标以及 Span |
| restlet | 1.1.0+ | 采集 restlet 相关 RED 指标以及 Span | |
| Tomcat | 7.X ~ 10.X | 采集 HTTP 相关 RED 指标以及 Span;采集 Tomcat 线程池指标 | |
| Jetty | 8.X ~ 11.X | 采集 HTTP 相关 RED 指标以及 Span;采集 Jetty 线程池指标 | |
| Play Framework | 2.4+ | 采集 HTTP 相关 RED 指标以及 Span | |
| WebLogic | 10.3.0 ~ 12.2.X | 采集 HTTP 相关 RED 指标以及 Span | |
| Undertow | 1.4.0+ | 采集 HTTP 相关 RED 指标以及 Span;采集 Undertow 线程池指标 | |
| Vertx | 3.0.0+ | 采集 HTTP 相关 RED 指标以及 Span | |
| Webflux | 5.0.0.RELEASE+ | 采集 HTTP 相关 RED 指标以及 Span | |
| Spring Cloud Gateway | 2.0.0.RELEASE+ | 采集 HTTP 相关 RED 指标以及 Span | |
| jFinal | 3.6+ | 采集 HTTP 相关 RED 指标以及 Span | |
| WebSphere | 9.0+ | 采集 HTTP 相关 RED 指标以及 Span | |
| HTTP 客户端 | Apache HTTP Client | 2.0 ~ 5.3.1 | 采集 HTTP 相关 RED 指标以及 Span |
| Google HTTP Client | 1.19.0+ | 采集 HTTP 相关 RED 指标以及 Span | |
| Java HTTP Client | JDK11+ | 采集 HTTP 相关 RED 指标以及 Span | |
| OkHttp | 2.2+ | 采集 HTTP 相关 RED 指标以及 Span | |
| Async HTTP Client | 1.8 ~ 2.12.3 | 采集 HTTP 相关 RED 指标以及 Span | |
| RPC 框架 | Alibaba Dubbo | 2.5.10 ~ 2.6.12 | 采集 Dubbo 相关 RED 指标以及 Span |
| Apache Dubbo | 2.7.0+ | 采集 Dubbo 相关 RED 指标以及 Span | |
| HSF | 2.2 ~ 3.0 | 采集 HSF 相关 RED 指标以及 Span | |
| gRPC | 1.6.0+ | 采集 gRPC 相关 RED 指标以及 Span | |
| Motan | 0.3.0+ | 采集 Motan 相关 RED 指标以及 Span | |
| JDBC | OceanBase | 2.4.0+ | 采集数据库调用相关指标以及 Span。 说明 部分组件支持多种方式访问数据库,探针仅监控通过 JDBC 规范进行的数据库增删改查操作。 |
| MySQL | 5.1.1+ | 采集数据库调用相关指标以及 Span | |
| PostgreSQL | 42.0.0+ | 采集数据库调用相关指标以及 Span | |
| SQL Server | 6.2.0.jre7+ | 采集数据库调用相关指标以及 Span | |
| MariaDB | 1.5.2+ | 采集数据库调用相关指标以及 Span | |
| Oracle | 12.2.0.1+ | 采集数据库调用相关指标以及 Span | |
| PolarDB | 1.0.0+ | 采集数据库调用相关指标以及 Span | |
| ClickHouse | 0.1.28+ | 采集数据库调用相关指标以及 Span | |
| NoSQL | HBase | 2.0 ~ 3.0 | 采集 NoSQL 调用相关指标以及 Span |
| Jedis | 1.4+ | 采集 NoSQL 调用相关指标以及 Span | |
| Lettuce | 4.0.Final+ | 采集 NoSQL 调用相关指标以及 Span;采集 Lettuce 连接池指标;收集 NoSQL 响应大小指标 | |
| Redisson | 3.0 ~ 3.25.2 | 采集 NoSQL 调用相关指标以及 Span | |
| Memcached | 2.12.0 ~ 2.12.3 | 采集 NoSQL 调用相关指标以及 Span | |
| MongoDB | 3.1+ | 采集 NoSQL 调用相关指标以及 Span | |
| Elasticsearch | 5.0+ | 采集 NoSQL 调用相关指标以及 Span。 说明 仅支持采集使用 HTTP 协议方式访问 ES 服务端的数据,不支持采集 TCP 协议访问 ES 服务端的数据。 | |
| InfluxDB | 2.7 ~ 2.23 | 采集 NoSQL 调用相关指标以及 Span | |
| Cassandra | 3.0+ | 采集 NoSQL 调用相关指标以及 Span | |
| 消息 | Eclipse Paho Client MQTTv3 | 1.0.2+ | 采集 Consumer 调用相关 RED 指标以及 Span |
| RocketMQ Java Client | 4.4.0、4.5.1+、5.X+ | 采集 Consumer、Producer 调用相关 RED 指标以及 Span;采集消息延迟指标 | |
| RocketMQ Java Client V5 | 5.0.0+ | 采集 Consumer、Producer 调用相关 RED 指标以及 Span;采集消息延迟指标 | |
| Aliyun MNS SDK | 1.3.0+ | 采集 Producer、Consumer 调用相关 RED 指标以及 Span | |
| Aliyun ONS | 1.7.0.Final+、2.0.0.Final+ | 采集 Consumer、Producer 调用相关 RED 指标以及 Span;采集消息延迟指标 | |
| Qpid JMS Client | 0.49.0+ | 采集 Consumer 调用相关 RED 指标以及 Span | |
| RabbitMQ | 4.X+ | 采集 Consumer、Producer 调用相关 RED 指标以及 Span;采集所有 Channel、Command 操作的 Span | |
| Kafka | 0.11.0.0+、1.X+、2.X+、3.X+ | 采集 Consumer、Producer 调用相关 RED 指标以及 Span | |
| Spring-Kafka | 2.7.0+ | 采集 Consumer(Message Listener)调用相关 RED 指标以及 Span。为防止重复,Spring-Kafka 统计到调用链后,底层的 Kafka 增强不再生效。 | |
| 定时任务 | XXLJob | 2.0.2+ | 采集定时任务调用相关 RED 指标以及 Span |
| SchedulerX | 1.2.1 ~ 1.11.6 | 采集定时任务调用相关 RED 指标以及 Span | |
| Spring Scheduled | 3.1.0.RELEASE+ | 采集定时任务调用相关 RED 指标以及 Span | |
| ElasticJob | 3.0.0 ~ 3.0.4 | 采集定时任务调用相关 RED 指标以及 Span | |
| 日志框架 | Log4j | 1.2+ | 往该类日志上下文填充 EagleEye-TraceID;采集该类日志框架打印日志条数相关指标 |
| Log4j2 | 2.0+ | 往该类日志上下文填充 EagleEye-TraceID;采集该类日志框架打印日志条数相关指标 | |
| Logback | 1.0.0 ~ 1.2.3 | 往该类日志上下文填充 EagleEye-TraceID;采集该类日志框架打印日志条数相关指标 | |
| 数据库连接池 | Druid | 1.0.25+ | 采集连接池指标;采集获取连接操作的 Span |
| HikariCP | 3.0.0+ | 采集连接池指标 | |
| C3P0 | 0.9.5+ | 采集连接池指标 | |
| MyBatis | 3.1.0+ | 采集 MyBatis 操作的 Span | |
| DBCP | 2+ | 采集连接池指标 | |
| 其他 | Spring | 4.1.0.RELEASE+ | 埋点 Spring 的请求分派代码,获得一次 HTTP 请求的路由 |
| Spring-Bean | 4.1.0.RELEASE+ | 埋点 Spring 托管 Bean 中每个 Public 方法并生成 Span |
3.X 探针支持的框架和组件
以下为最新 3.X 版本探针支持的框架和组件。
| 组件类型 | 组件 | 支持版本 |
| Web 容器 | Tomcat | 7.X ~ 10.X |
| Jetty | 8.1.X ~ 11.0.X | |
| Play Framework | 2.2.X ~ 2.8.X | |
| WebLogic | 10.3.X ~ 12.2.X | |
| Undertow | 1.4.X ~ 2.2.X | |
| Vertx | 3.3.X+ | |
| Reactor Netty | 0.7.X+ | |
| Webflux | 5.0.X+ | |
| HTTP 客户端 | Apache HttpClient | 3.0.X+ |
| Google HTTP Client | 1.19.X+ | |
| OkHttp/OkHttp3 | 2.1.X ~ 4.11.X | |
| Spring Web(RestTemplate) | ||
| AsyncHttpClient | 2.0.X ~ 2.12.X | |
| Spring 相关 | Spring MVC | 3.0.5.RELEASE+ |
| Spring Scheduled | 3.1.0.RELEASE+ | |
| Spring Cloud 相关 | Hystrix | 1.0.X ~ 1.5.X |
| Feign | 9.0.X ~ 12.4.X | |
| Spring Webflux | 5.0.X ~ 6.0.X | |
| Spring Cloud Gateway | 2.1.X ~ 4.0.X | |
| RPC 框架 | Dubbo | 2.4.X+ |
| Ali-HSF(High Speed Framework) | 2.2.X+ | |
| GRpc | 0.7.X ~ 1.56.X | |
| Thrift | 0.1.X ~ 0.18.X | |
| JDBC 相关 | PolarDB | 1.1.2+(4.x 及以上版本探针支持) |
| Mysql Connector | 5.0.X+ | |
| Postgresql JDBC Driver | 42.1.X+ | |
| Microsoft JDBC Driver for SQL Server | 6.4.X ~ 12.2.X | |
| MariaDB Java Client | 1.5.X ~ 3.1.X | |
| Oracle ojdbc | 7, 8, 10, 14 | |
| Sharding-jdbc | 4.0.X ~ 4.1.X | |
| Druid | 1.0.X+ | |
| Hikari-CP | 2.3.X+ | |
| MyBatis | 3.1.X ~ 3.5.X | |
| MyBatisPlus | 1.0.X ~ 1.7.X | |
| NoSQL 调用相关 | Jedis | 2.X ~ 4.X |
| Lettuce | 5.2.X+ | |
| Redisson | 2.5.X+ | |
| MemCached | 2.8.X ~ 2.12.X | |
| MongoDB Java Driver | 3.X | |
| Spring-MongoDB | 2.0.X ~ 3.4.X | |
| Elasticsearch Rest Client | 5.X ~ 7.X | |
| Elasticsearch Rest High Level Client | 6.X ~ 7.X | |
| Clickhouse JDBC Driver | 0.3.X ~ 0.4.X | |
| influxDB | - | |
| 消息相关 | RocketMQ Java Client | 4.4.0、4.5.1+、5.X+ |
| RocketMQ Java Client V5 | 5.X+ | |
| Spring-RocketMQ | 2.0.2+ | |
| Aliyun ONS | 1.7.0.Final+、2.0.0.Final+ | |
| RabbitMQ Java Client | 4.X+ | |
| Kafka Client | 0.11.0.0+、1.X+、2.X+、3.X+ | |
| 定时任务 | XXLJob | 2.0.X ~ 2.4.X |
| ElasticJob | 2.0.X ~ 2.1.X | |
| SchedulerX | 1.2.X ~ 1.5.X | |
| Spring Scheduled | 3.2.X ~ 5.3.X | |
| 异步/响应式编程框架 | SpringAsync | 4.0.X ~ 5.3.X |
| RxJAVA | 2.0.X ~ 3.1.X | |
| Reactor | 3.0.X ~ 3.5.X | |
| 日志框架 | Log4j | 1.2.16 ~ 1.2.17 |
| Log4j2 | 2.0 ~ 2.20.0 | |
| Logback | 1.0.13 ~ 1.4.8 |
ARMS 应用监控针对支持的组件可以实现自动埋点。如果使用的组件不在上述范围内,可以手工埋点,具体操作参见通过OpenTelemetry Java SDK为调用链增加自定义埋点。
该文章对您有帮助吗?