Instrumented 架構和程式庫

Java 感應器使用數個架構和工具來指示 Java 型應用程式。 下表列出用來收集 Java 應用程式效能相關資料的所有技術及其支援版本。

下表列出用來收集 Java 應用程式效能相關資料的所有架構和工具,以及其支援的版本。

下列表格中的版本由 IBM 整合測試套組自動產生。 它們以關閉間隔表示。 例如, [1.0, 1.2] 表示第一個測試版本是 1.0 ,最後一個測試版本是 1.2。

HTTP 程式庫

名稱 版本
Akka HTTP [2.4, 2.4], [10.0, 10.2]
Apache 非同步 HttpClient [4.0, 4.1]
Apache Axis [1.3, 1.4]
Apache Axis2 [1.5, 1.8]
Apache CXF [2.3, 2.7], [3.0, 3.5]
Apache HttpClient [3.0, 3.1], [4.3, 4.5]
Apache Wicket [6.0, 6.0], [7.4, 7.14], [8.5, 8.11], [9.0, 9.12]
AsyncHttp用戶端 (AHC) [2.0, 2.12]
AsyncHttp用戶端 (NING) [1.8, 1.9]
Dropwizard [0.9, 0.9], [1.0, 1.3], [2.0, 2.1]
假裝 [9.0, 9.7], [10.0, 10.10], [11.0, 11.10], [12.3, 12.4]
Finagle [6.45, 6.45]
GraphQL (Servlet) [8.0, 8.0], [9.0, 9.3], [10.0, 10.1], [11.0, 11.1]
GraphQL (Spring Boot) [1.0, 1.0], [2.0, 2.0]
GraphQL (Spring Webflux) [1.0, 1.0], [2.0, 2.0]
GraphQL Java [0.0, 0.0], [4.2, 4.2], [5.0, 5.0], [6.0, 6.0], [7.0, 7.0], [8.0, 8.0], [9.7, 9.7], [10.0, 10.0], [11.0, 11.0], [12.0, 12.0], [13.0, 13.0], [17.3, 17.6], [18.5, 18.5], [19.5, 19.5], [20.2, 20.2]
灰熊 [2.1, 2.4], [3.0, 3.0], [4.0, 4.0]
HTTP 套件 [2.2, 2.2]
http4s[1] [0.19.0, 0.21.31]
HttpURLConnection 所有支援的 JDK
Java HTTP 用戶端 所有支援的 JDK
JAX-RS
JAX-WS
澤西 [1.1, 1.19], [2.20, 2.35]
JSF [2.0, 2.2]
Micronaut [1.1, 1.3], [2.0, 2.5]
NanoHTTPD [2.2, 2.2]
OkHttp [2.0, 2.7], [3.4, 3.14], [4.0, 4.10]
Play Framework (Play2) [2.3, 2.8]
Ratpack [1.5, 1.9]
Scalatra [2.3, 2.8]
Servlet [2.0, 2.0], [3.0, 3.1], [4.0, 4.0]
噴射 [1.3, 1.3]
Spring Boot Starter Web [1.2.0.RELEASE, 1.5.22.RELEASE], [2.0.0.RELEASE, 2.7.15], [3.0.4, 3.0.4]
Spring Boot 入門範本 Webflux [2.0.0.RELEASE, 2.7.15], [3.0.4, 3.0.4]
Spring Cloud 閘道 [2.0.2.RELEASE, 2.2.10.RELEASE], [3.0.0, 3.0.5]
Spring REST [4.0.0.RELEASE, 4.3.30.RELEASE], [5.0.0.RELEASE, 5.3.29], [6.0.4, 6.0.4]
Spring Web [3.0.0.RELEASE, 3.2.18.RELEASE], [4.0.0.RELEASE, 4.3.30.RELEASE], [5.0.0.RELEASE, 5.3.29]
Spring Webflux [5.0.0.RELEASE, 5.3.23]
Vaadin [7.0, 7.7], [8.7, 8.14]
Vert.x-Web [3.1, 3.9], [4.0, 4.2]
WebMethods Glue [5.0, 5.0]

資料庫

名稱 版本
Amazon DynamoDB [1.11.1034, 1.12.520], [2.1.4, 2.19.27]
Amazon Elasticache [1.1, 1.2]
Amazon S3 [1.11.835, 1.12.520], [2.1.4, 2.17.95]
Apache HBase [1.1, 1.5], [2.0, 2.2]
Cassandra [2.0, 2.2], [3.0, 3.11]
Couchbase [2.5, 2.7], [3.0, 3.4]
Ehcache [2.0, 2.10]
Elasticsearch [1.3, 1.7], [2.3, 2.4], [5.0, 5.0], [6.0, 6.8], [7.0, 7.17]
FaunaDB [1.2, 1.2]
Google Cloud Bigtable (HBase 1.x) [1.0, 1.29]
Google Cloud Bigtable (HBase 2.x) [1.1, 1.29]
Google Cloud Storage [1.2, 1.2]
Hazelcast Java 用戶端 [3.7, 3.12], [4.0, 4.2], [5.0, 5.2]
IBM IMS TM 資源配接器 [14.1.10, 15.3.1]
JDBC [4, 4]
JDBC (H2 資料庫引擎) [1.1, 1.4]
JDBC (IBM DB2)[2] [11.1, 11.5]
JDBC (Microsoft SQL Server) [6.2, 6.4], [7.0, 7.4], [8.2, 8.4], [9.2, 9.4]
JDBC (MySQL Connector/J) [5.1, 5.1], [6.0, 6.0], [8.0, 8.0]
JDBC (Oracle) [12.1, 12.1], [19.3, 19.3]
JDBC (PostgreSQL) [7.4, 7.4], [8.4, 8.4], [9.0, 9.1]
JDBC (Sybase) [1.3, 1.3]
MongoDB (Java 驅動程式) [2.13, 2.13], [3.0, 3.12], [4.0, 4.4]
MongoDB (ReactiveMongo) [0.12.2, 0.16.0]
MongoDB (Spring 資料 MongoDB) [2.0.0.RELEASE, 2.7.15], [3.0.2, 3.0.2]
Neo4j [1.5, 1.7]
Redis (Jedis) [2.8, 2.10], [3.0, 3.9]
Redis (Lettuce) [3.4, 3.4], [4.1, 4.5], [5.0, 5.3], [6.0, 6.2]
Redis (Redisson) [3.0, 3.19]
Redis (Spring 資料 Redis) [2.0.0.RELEASE, 2.7.8], [3.0.2, 3.0.2]
Redis (Spring Redis Reactor) [2.0.0.RELEASE, 2.7.15], [3.0.4, 3.0.4]
Redis (Spring 階段作業資料 Redis) [2.0.0.RELEASE, 2.6.0]
Redis (Vert.x) [3.1, 3.6]
SpyMemcached [2.10, 2.12]
SpyMemcached (Amazon ElastiCache) [1.1, 1.2]
SpyMemcached (Google XMemcached) [1.4, 1.4], [2.0, 2.4]
SpyMemcached (Netty) [4.1, 4.1]
SpyMemcached (陰影) [1.8, 1.10]

傳訊服務

名稱 版本
Aerospike [3.3, 3.3], [4.0, 4.4], [5.0, 5.1], [6.1, 6.1]
Akka 遠端 [2.3, 2.8]
Amazon Kinesis [1.11.835, 1.12.520]
Amazon SNS [1.11.1034, 1.12.520]
Amazon SQS Java 傳訊程式庫 [1.0, 1.2]
Apache Camel [2.17, 2.25], [3.0, 3.20]
Apache RocketMQ [4.9, 4.9], [5.0, 5.1]
AWS Java SDK for Amazon SQS [1.11.872, 1.12.520]
執行程式儲存區 所有支援的 JDK
分出結合儲存區 所有支援的 JDK
Google Cloud Pub/Sub (Java 用戶端) [1.105, 1.124]
Google Cloud Pub/Sub (Spring Cloud GCP 1.2) [1.2.5.RELEASE, 1.2.8.RELEASE]
Google Cloud Pub/Sub (Spring Cloud GCP 2 & 3) [2.0.2, 2.0.11], [3.2.1, 3.6.2]
gRPC [1.2, 1.57]
HornetQ [2.2, 2.4]
IBM MQ [8.0, 8.0], [9.0, 9.3]
JMS
JMS (Apache ActiveMQ) [5.13, 5.18]
JMS (Atomikos) [3.6, 3.9], [4.0, 4.0], [5.0, 5.0]
JMS (Solace) [10.0, 10.19]
Kafka (Apache)[3] [0.8, 0.11], [1.0, 1.1], [2.0, 2.8], [3.0, 3.2]
Kafka (Reactor) [1.0, 1.3]
Mule [3.3, 3.9]
Netflix Hystrix [1.0, 1.5]
RabbitMQ [3.6, 3.6], [4.11, 4.11], [5.7, 5.17]
RabbitMQ (Spring) [1.0.0.RELEASE, 1.7.15.RELEASE], [2.0.0.RELEASE, 2.4.0]
Tibco ESB

記載架構

名稱 版本
Java Util 記載 所有支援的 JDK
Log4j [1.2, 1.2]
Log4j 2 [2.4, 2.20]
Log4j over SLF4J [1.5, 1.7]
Logback [0.9, 0.9], [1.0, 1.4]
SLF4J [1.5, 1.7]
SLF4J over Log4j [1.1, 1.7]

LDAP 架構

名稱 版本
JNDI 所有支援的 JDK
Ldaptive (Apache) [1.0, 1.3]
Ldaptive (JLDAP) [1.0, 1.3]
LDAP (JNDI) [1.0, 1.3]
Ldaptive (Netscape) [1.0, 1.0]
Ldaptive (UnboundID) [1.0, 1.2]
Netscape [4.1, 4.1]
Novell [2009, 2009]
UnboundID [3.2, 3.2]

Web 和應用程式伺服器

其他檢測技術

名稱 版本
Akka 動作者 [2.3, 2.6]
Camunda BPM Spring Boot 入門範本 Webapp[4] [3.1.0, 3.4.0], [7.13.0, 7.17.0]
Camunda 外部作業用戶端[5] [1.0, 1.4], [7.15, 7.17]
Camunda 外部作業用戶端 (Java) [1.0, 1.4], [7.15, 7.17]
卡姆達平台 7
科爾巴 (太陽)
DistributeMe [2.3, 2.3]
Dubbo [2.5, 2.7], [3.0, 3.0]
EJB (Apache Open EJB) [4.0, 4.7]
EJB (Glassfish)
EJB (WebSphere) [8.5, 8.5], [9.0, 9.0]
FTP 共用 [3.5, 3.5]
FTP JSCH [0.1.38, 0.1.55]
Google Cloud 商店 [1.2, 1.2]
Google GWT 使用者 [1.5, 1.7], [2.0, 2.10]
Java 郵件 所有支援的 JDK
Java RMI 所有支援的 JDK
JBoss 資料網格 (Infinispan Hot Rod 用戶端) [9.0, 9.0], [10.0, 10.0], [11.0, 11.0], [12.0, 12.0], [13.0, 13.0], [14.0, 14.0]
Kotlin Coroutines [1.0, 1.7]
提昇動作者 [2.6, 2.6], [3.3, 3.5]
石英排程器 [1.7, 1.8], [2.0, 2.3]
Spring Batch [1.1.4.RELEASE, 1.5.22.RELEASE], [2.0.0.RELEASE, 2.7.15], [3.0.4, 3.0.4]
Spring 環境定義 [3.0.0.RELEASE, 3.2.18.RELEASE], [4.0.9.RELEASE, 4.3.30.RELEASE], [5.0.20.RELEASE, 5.3.25]
Spring 郵件 [1.2.0.RELEASE, 1.5.22.RELEASE], [2.0.0.RELEASE, 2.7.15], [3.0.2, 3.0.2]
Spring 排程器 [1.1.4.RELEASE, 1.5.22.RELEASE], [2.0.0.RELEASE, 2.7.15], [3.0.4, 3.0.4]
Sun ONC/RPC[6] [1.1, 1.1]
TABEX4 (BOI)
Vert.x (Hazelcast Cluster Manager) [3.3, 3.3]

WebLogic Application Server

名稱 版本
EJB (Weblogic) [12, 12]
JAX-RPC
Weblogic T3[7] [12,12]

JBoss/Wildfly Application Server

名稱 版本
EJB (JBoss/Wildfly) [5, 5], [7, 7], [8, 8], [11, 11]
JBoss 日誌管理程式 (Log4j) [1.0, 1.3]
JBoss 記載[8] [3.0, 3.5]
JBoss 排程器 [4.2, 4.2]
RESTEasy [3.0, 3.15], [4.0, 4.7]
接縫郵件 (JBoss) [3.1, 3.1]

Apache Tomcat

名稱 版本
Tomcat 內嵌核心 [7.0, 7.0], [8.0, 8.5], [9.0, 9.0], [10.0, 10.1]
Tomcat 內嵌 Jasper [7.0, 7.0], [8.0, 8.5], [9.0, 9.0], [10.0, 10.1]
Tomcat Jasper [7.0, 7.0], [8.0, 8.5], [9.0, 9.0], [10.0, 10.1]
Tomcat Jasper EL [7.0, 7.0], [8.0, 8.5], [9.0, 9.0], [10.0, 10.1]
Tomcat JSP API [7.0, 7.0], [8.0, 8.5], [9.0, 9.0], [10.0, 10.1]
Tomcat Servlet API [7.0, 7.0], [8.0, 8.5], [9.0, 9.0], [10.0, 10.1]

Opt-In 支援

您可以使用 Java 感應器來檢測 Kafka Streams 應用程式,並深入瞭解其效能。

Kafka 串流

在 Kafka Streams 中,每個串流運算子都會擷取為中間跨距。 如果您有大量資料流入,則此特性會影響應用程式的效能。 請勿在正式作業環境中使用此特性。

若要啟用 Kafka Streams ,請將下列行新增至主機代理程式的 configuration.yaml 檔案:

com.instana.plugin.javatrace:
   instrumentation:
    plugins:
     Kafka011StreamIntermediate: true

  1. 只會追蹤 HTTP 1.x 要求。 ↩︎

  2. 您可以使用 configuration.yaml 檔中的代理程式配置,或使用已檢測 JVM 中的環境變數或系統內容,來配置 Db2 追蹤。 配置範例:

    Agent configuration:
    
    com.instana.tracing:
    db2:
    trace-correlation: true
    db2CorrelationMode: dont-override
    db2CorrelationDelimiter: '|'
    db2CorrelationField: ClientHostname
    
    Environmental variable:
    
    INSTANA_DB2_TRACE_CORRELATION=true
    INSTANA_DB2_TRACE_CORRELATION_MODE=dont-override
    INSTANA_DB2_TRACE_CORRELATION_DELIMITER='|'
    INSTANA_DB2_TRACE_CORRELATION_FIELD=ClientHostname
    
    System properties:
    
    -Djdbc.db2.correlation.enable=true
    -Djdbc.db2.correlation.mod=dont-override
    -Djdbc.db2.correlation.delimiter=|
    -Djdbc.db2.correlation.field=ClientHostname
    

    附註: 依預設會停用相關性 (傳播 TraceId 和 SpanId)。 使用 Db2的用戶端資訊內容來進行傳播。 相關性欄位會設定欄位名稱。 依預設,它是 "ClientHostname"。 預設定界字元是 "|"。 如果相關性模式設為「置換」(預設值) ,則相關性資料會改寫任何現有的值。 不過,如果它未設為「置換」(預設值) ,則會將相關性資料附加至現有值。 ↩︎

  3. 從 Kafka 0.11開始, Kafka 支援追蹤連續性,這引進了對記錄標頭的支援。 ↩︎

  4. 尚未支援活動跨距之間的追蹤連續性。 ↩︎

  5. 當您實作 Camunda 外部作業用戶端的處理程式類別時,您需要使用具名處理程式類別。 不支援處理程式的 lambda 表示式實作。 ↩︎

  6. 不支援追蹤連續性。 使用 Instana SDK 來進行追蹤相關性。 ↩︎

  7. 當您透過下列設定來配置 Weblogics T3 時,支援 EJB 呼叫之間的 Weblogic T3 相關性:

    • 代理程式配置:

        # General Tracing Settings
        com.instana.tracing:
        weblogic:
            trace-correlation: true
      
    • 環境變數:

      INSTANA_WEBLOGIC_EJB_TRACE_CORRELATION
      
    • 系統內容:

       -Dcom.instana.weblogic.ejb.trace.correlation=true`
      

    只有在 Weblogic 伺服器之間發生 T3 通訊時,此配置才會運作。 不過,如果在 Weblogic 伺服器之外使用 Weblogic 用戶端,則無法建立相關性。 ↩︎

  8. 只會追蹤程式化 API。 不支援使用 @Message@MessageLogger 之類的註釋來記載。 ↩︎