Download PDF
Download page App Server Agents Supported Environments.
App Server Agents Supported Environments
This page provides an aggregated view of the supported environments for the App Server agents.
App Server agents have been tested successfully on AWS Outposts using these instructions: Install App Server Agents
Java Agent
This page lists the application environments and versions supported by the AppDynamics Java Agent.
Java Agent Supported Platforms
In the following tables, note that:
- A dash ("-") in a table cell indicates that this column is not relevant or not supported for that particular environment.
- In cases where no version is provided, assume that all versions are supported. Contact AppDynamics Sales for confirmation.
- For environments that require additional configuration, a separate table describing or linking to configuration information follows the support matrix.
- For environments supported by AppDynamics End User Monitoring, see Supported Environments and Versions - Web EUM.
- For environments supported by AppDynamics Server Visibility, Machine Agent Requirements and Supported Environments.
JVM Support
The AppDynamics Java Agent uses the standard JVM Tool Interface (JVMTI) mechanism allowing it to instrument any software running on a JVM supporting this mechanism.
AppDynamics certifies the successful operation of the basic mechanisms of instrumentation used by the agent on the following Java runtimes. These capabilities are supported on both JRE or full JDK installations.
Where the agent supports the following advanced memory monitoring features, they are listed for the JVM: Object Instance Tracking (OIT), Automatic Leak Detection (ALD), Content Inspection (CI), and Access Tracking (AT).
Unless listed on this page, builds downloaded from other sources are not officially supported.
JVM | OS | Memory Monitoring Features |
---|---|---|
AdoptOpenJDK 8, 9, 10, 11, 12, 13, 14, 15, 16 ( supported for both Hotspot and OpenJ9 JVMs) | Linux, Windows, MacOS | OIT (supported only for Hotspot JVM), ALD, CI, AT |
Amazon Corretto 8, 11, and 17 | Linux, Windows | OIT, ALD, CI, AT |
Azul Zing 15.x. | Linux x64 | OIT, ALD |
Azul Zulu OpenJDK 8, 9, 10, 11, 13, 14, 15, 16, 17 JDK11 is supported from 4.5.6 onwards JDK13 is supported from 4.5.15 onwards JDK14 is supported from 20.4.0 onwards JDK15 is supported from 20.10.0 onwards JDK16 is supported from 21.4.0 onwards JDK17 is supported from 21.11.0 onwards | Linux, Windows | OIT, ALD, CI, AT |
JVM - BellSoft Liberica JDK 8, 11, 16, and 17 | Linux, Windows, MacOS | OIT, ALD |
GraalVM 20.0.0, 20.2.0, 21.1.0, 21.3.0 | Linux, Windows, MacOS | OIT, ALD, CI, AT |
HP OpenVMS | ||
IBM JVM 1.8.x | AIX, HP-UX, Linux, Solaris, Windows, z/OS | ALD, CI Object instance tracking, automatic leak detection, and custom memory structure monitoring are not supported with the AppDynamics IBM Java Agent. IBM JVMs can be instrumented with the AppDynamics Sun Java Agent to work around this limitation; however, this only enables automatic leak detection and custom memory structure monitoring. Object instance tracking is not available. Working around this limitation can result in negative performance impact and is not recommended. In such cases, the IBM JVM needs to be restarted to enable custom memory structure monitoring. |
Oracle Rockit JVM 28.1+ | Linux Intel 64, Windows | |
Oracle/Sun JVM 8, 9, 10, 11, 12, 13, 14, 15, 16, 17 JDK11 is supported from 4.5.6 onwards JDK12 is supported from 4.5.11 onwards JDK13 is supported from 4.5.15 onwards JDK14 is supported from 20.4.0 onwards JDK15 is supported from 20.10.0 onwards JDK16 is supported from 21.4.0 onwards JDK17 is supported from 21.11.0 onwards | Solaris Sparc 64, Windows, Linux | OIT, ALD, CI, AT Content Inspection and Access Tracking require a JVM restart. |
Oracle OpenJDK 8, 9, 10, 11, 12, 13, 14, 15, 16, 17 Oracle OpenJDK builds supported above are those that can be downloaded from https://jdk.java.net/. OpenJDK11 is supported from 4.5.6 onwards JDK13 is supported from 4.5.15 onwards JDK14 is supported from 20.4.0 onwards JDK15 is supported from 20.10.0 onwards JDK16 is supported from 21.4.0 onwards JDK17 is supported from 21.11.0 onwards | Solaris Sparc 64, Windows, Linux | OIT, ALD |
JVM Application Server and Framework Support
AppDynamics supports the use of the Java Agent to instrument any application component running on a supported JVM, irrespective of how that component is built. The power of the AppDynamics platform is that it can automatically discover the topology and behavior of complex enterprise applications without requiring deep technical knowledge of the application's underlying code.
Frequently, Java-based systems employ standard framework code to implement business logic. Automatic instrumentation of framework code relies on knowledge of the business logic and programming patterns employed by the framework. AppDynamics instrumentation targets processing hand-offs between components, called entry points and exit points, either within the JVM or between JVMs. This includes hand-offs between frameworks in cases where multiple frameworks are being used together. This section covers the capabilities for frameworks for which AppDynamics provides automatic detection rules.
Monitoring application components built using frameworks not listed here may require custom configuration. The custom configuration may involve, for example, custom POJO entry or exit points. If you understand how the application behaves internally, you can easily configure this type of instrumentation. For more complex configuration tasks, contact customer support to discuss how to engage the AppDynamics customer success organization.
JVM Language Frameworks Support
No additional configuration is required for these frameworks.
Vendor | JVM Language | Version | Correlation/ | Exit Points | Transports | Notes |
---|---|---|---|---|---|---|
Open Source | Akka Actor | 2.1 – 2.5.x | Yes | Yes | Netty | 4.3.1 required for 2.4.x 2.5x support includes Persistence Remoting exit/entry supported |
Open Source | Akka HTTP Name: Type: Boolean Default: False | Akka Actor 2.6 Akka HTTP upto 10.2.6 Scala 2.11, 2.12 | Yes | Yes | HTTP | EUM is supported Support for Non-Route DSL |
Open Source | Http4s Blaze Client | Blaze versions: 0.21.1, 0.21.0, 0.20.23, 0.20.5 | No | Yes | HTTP | |
Open Source | Groovy | - | Yes | Yes | ||
Open Source | Ktor | 1.0.x -1.6.x | Yes (Netty Engine) | - | HTTP | EUM is supported |
Open Source | Play for Scala Play for Java | 2.1 – 2.8 Scala 2.11, 2.12 | Yes | - | HTTP over Netty server Akka HTTP server | Includes framework specific entry and exit points Play EUM-APM correlation supported |
Open Source | Scala | 2.11.6 | ||||
Open Source | Spray toolkit (Spray.io) | 1.1.x 1.1.3 | Yes | Yes | HTTP | Entry points are detected and configurable as servlet entry point and exit points as HTTP exits |
Pivotal | Grails | - | - | - | - |
Java Framework Support
The Java Agent supports these Java frameworks. Some require additional configuration as indicated in the Configuration Notes column.
Vendor | Framework | Version | SOA protocol (WebServices) | Auto Naming | Entry Points | Exit Points | Detection | Configuration Notes |
---|---|---|---|---|---|---|---|---|
Adobe | BlazeDS | - | HTTP and JMS adaptor | - | Yes | - | See Example Message Queue Backend Configuration. | |
Adobe | ColdFusion | 8.x, 9.x | - | - | Yes | - | Configuration required for transaction discovery | Configuration is required for transaction discovery. See: |
Apache | Cassandra with Thrift framework | - | - | - | Yes | Yes | Apache Thrift Entry and Exit points are detected | |
Apache | Struts | 1.x, 2.x | - | - | Yes | Struts Actions are detected as entry points; struts invocation handler is instrumented | See Struts Entry Points. | |
Apache | Tapestry | 5 | - | - | Yes | - | Not by default | See: |
Apache | Wicket | - | - | No | Yes | - | Not by default | See: |
Apple | WebObjects | 5.4.3 | HTTP | Yes | Yes | - | Yes | |
axonframework.org | Axon | 2.x, 3.x | - | - | Commands on the Command Bus continue existing Business Transactions | Correlation for Distributed Command Bus on JGroups and for Spring Cloud Connector transport as an exit | ||
Open Source | CometD | 2.6 | HTTP | Yes | Yes | - | - | See "HTTP Exit Points" on Java Backend Detection. |
Open Source | Spring Batch | - | See Spring Batch Support. | |||||
Eclipse | RCP (Rich Client Platform) | - | - | - | - | - | - | |
Google Web Toolkit (GWT) | 2.5.1 | HTTP | Yes | Yes | - | - | ||
JBoss | JBossWS Native Stack | 4.x, 5.x | Native Stack | - | - | - | - | |
IBM | IBM-BPM | 8.5.7, 8.6 | - | Yes | Yes | Yes | Yes | See IBM-BPM Support. |
Open Source | Direct Web Remoting (DWR) | - | - | - | - | - | - | |
Open Source | Eclipse Vert.x Core | 3.3.3-3.5.4, 3.6.x, 3.7.x, 3.8.x, 3.9.x, 4.0.x, 4.1.x, 4.2.x | HTTP | Yes | Yes | Yes | Yes | EUM Correlation is supported |
Open Source | Enterprise Java Beans (EJB) | 2.x, 3.x | - | - | Yes | - | - | See EJB Entry Points. |
Open Source | Grails | - | - | - | Yes | - | Not by default | |
Open Source | Hibernate JMS Listeners | 1.x | - | - | - | - | - | |
Open Source | Java Abstract Windowing Toolkit (AWT) | - | - | - | - | - | - | |
Open Source | Java Server Faces (JSF) | 1.x, 2.x | - | Yes | Yes | - | - | See Java Business Transaction Detection and Servlet Entry Points. |
Open Source | Java Server Pages | 2.x | - | Yes | - | - | Yes | See Servlet Entry Points. |
Open Source | Java Servlet API | 2.x, 3.0 | - | - | - | - | - | |
Open Source | Jersey | 1.x, 2.x | REST, JAX-RS | Yes | Yes | No | Not by default | See JAX-RS Support and node properties:
See App Agent Node Properties Reference for information on the properties. |
Open Source | JRuby HTTP | - | - | - | Yes | - | Not by default | See: |
Open Source | Micronaut | 1.1.0 to 3.3.3 | - | Yes | Yes | Yes | By default | - |
Open Source | Netty | 3.x, 4.x | HTTP | Yes | Yes | Yes | By default |
|
Open Source | Spring Annotated Web Services | 2.x+ | HTTP | Yes | Yes | No | - | |
Open Source | Spring WebFlux | 5.0, 5.1, 5.2, 5.3 | HTTP | Yes | Spring Boot (Netty, Jetty, Tomcat, Undertow) | WebClient (Reactor Netty, Reactive Jetty) | By default | The node property This node property should not be enabled unless there is some issue or loss in visibility with the OOTB support. By default, the value of this property is false. |
Open Source | Spring Cloud Gateway | 2.0.x, 2.1.x, 2.2.x, 3.0.x, 3.1.x | HTTP | Yes | Yes | Yes | By default | |
Open Source | WebSocket | 1.0 (Java EE 7, JSR-356) | - | Yes, | Yes, correlation not supported | Yes | Detection is automatic | Node property: websocket-entry-calls-enabled |
Oracle | Coherence with Spring Beans | 2.x, 3.x | - | - | - | - | - | |
Oracle | Swing (GUI) | - | - | - | - | - | - | |
Oracle | WebCenter | 10.0.2,10.3.0 | - | - | - | - | - | |
Spring | Spring MVC | 5.3 | - | - | Yes | - | Not by default |
Java Agent OpenTelemetry Framework Support
Vendor | Framework | Version | Entry Points | Exit Points | Configuration Notes |
---|---|---|---|---|---|
Open Source | Java Servlet API | 2.x, 3.0 | Yes | - | - |
Apache | Apache HTTP Client | - | Yes | Yes | See "HTTP Backends" on Java Backend Detection. |
Apache | ActiveMQ | 5.x | Yes | Yes | - |
Open Source | Micronaut | 3.3.3 | Yes | Yes | - |
Apache | Struts | 1.x, 2.x | Yes | - | See Struts Entry Points. |
Open Source | Spring Boot | 2.x | Yes | - | - |
Open Source | Play for Java | 2.3, 2.4, 2.5, 2.6, 2.7, 2.8 | Yes | - | Play EUM-APM correlation supported |
Open Source | Spring REST | - | - | Yes | - |
Open Source | Spring RMI | - | Yes | Yes | - |
Open Source | Java Server Pages | 2.x, 3.1 | - | - | - |
Application Servers
The Java Agent supports the following application servers. Some require additional configuration. Click the link on the server or OSGi Runtime for information about additional requirements or related configuration topics. The agent usually discovers application servers as an entry point.
Vendor | Application Server / | Version | SOA Protocol | RMI Supported | JMX | Entry Points | Configuration Notes |
---|---|---|---|---|---|---|---|
Adobe | Cold Fusion | 8.x, 9.x | - | No | - | Yes | Requires configuration for transaction discovery; see Servlet Entry Points |
Equinox | - | - | - | - | Yes | ||
Apache | Felix | - | - | - | - | Yes | |
Apache | Sling | - | - | - | - | Yes | |
Apache | Tomcat | 5.x, 6.x, 7.x, 8.x, 9, 10 | - | - | Yes | Yes | See Apache Tomcat Startup Settings. |
Apache | Resin | 1.x - 4.x | - | - | - | - | |
Eclipse | Jetty | 6.x, 7.x, 8x, 9x | - | - | - | - | See Jetty Startup Settings. |
IBM | InfoSphere | 8.x | - | - | - | Yes | See IBM WebSphere and InfoSphere Startup Settings. |
IBM | WebSphere | 6.1, 7.x, 8.x, 9.x | JAX-WS | Yes, detect and correlate | Yes for WebSphere PMI | Yes | See IBM WebSphere and InfoSphere Startup Settings. |
Open Source | Liferay Portal | - | - | - | - | - | |
Open Source | JBoss EAP | 7.1.5, 7.2.0, 7.3.0 | Yes | Yes | See JBoss and Wildfly Startup Settings. | ||
Open Source | JBoss Wildfly (formerly JBoss Application Server) | 4.x to 26.x | Yes | Yes | See JBoss and Wildfly Startup Settings. | ||
Sun/Oracle | GlassFish Enterprise Server | 2.x | - | - | Yes | Yes | See GlassFish Startup Settings. |
Oracle | GlassFish Server and | 3.x, 4.x | - | - | Yes for AMX | Yes | See GlassFish Startup Settings. |
Oracle and BEA | WebLogic Server | 9.x+ | JAX-WS | Yes, detect and correlate for 10.x To enable correlation using a header transported in the | Yes | Yes | See Oracle WebLogic Startup Settings. |
Software AG | webMethods | 9.5, 9.6, 10.x | - | - | - | Yes | |
Tibco | ActiveMatrix BusinessWorks Service Engine | 5.x, 6.x | - | To enable correlation using a header transported in the | - | Yes | See Tibco ActiveMatrix BusinessWorks Service Engine Settings. |
Application Server (OC4J) | - | - | Yes, detect and correlate for 10.x | - | Yes | ||
- | Grails, with Tomcat 7.x, Glassfish v3, Weblogic 12.1.1 (12c) | - | - | - | - |
Servlet 3.x detection is not supported.
PaaS Providers
PaaS Provider | Buildpack |
---|---|
Pivotal Cloud Foundry | See Java Buildpack 3.4 and higher. See Using AppDynamics with Java Applications on Pivotal Cloud for more information. |
Red Hat Openshift 3 | JBoss EAP 6.4 and 7.x WildFly 8.1 Docker images For documentation and download information, see the AppDynamics Java APM Agent page on the Red Hat Customer Portal. |
Message Oriented Middleware Support
The Java Agent supports the following message oriented middleware environments. Some require additional configuration as indicated in the Configuration Notes column. Message oriented middleware servers are usually found by the Java Agent as an entry point.
Vendor | Messaging Server | Version | Protocol | Correlation/Entry Points | Exit Points | JMX | Configuration Notes |
---|---|---|---|---|---|---|---|
Amazon | Simple Queue Service (SQS) | - | - | Yes (correlation only) | Yes | - | See "Amazon Simple Queue Service Backends" on Java Backend Detection |
Amazon | Simple Notification Service (SNS) | - | - | No | Yes | - | See "Amazon Simple Notification Service Backends" on Java Backend Detection |
Apache | ActiveMQ | 5.x+ | JMS 1.x | Yes | Yes | Yes | |
Apache | ActiveMQ | 5.x+ | STOMP | No | - | Yes | |
Apache | ActiveMQ | 5.8.x+ | AMQP 1.0 | No | - | Yes | |
Apache | Axis | 1.x, 2.x | JAX-WS | Yes | Yes | - | Default exclude rules exist for Apache Axis, Axis2, and Axis Admin Servlets. See aslo "Web Service Entry Points" on Java Backend Detection. |
Apache | Apache CXF | 2.1 | JAX-WS | Yes | Yes | - | To enable correlation, set node property enable-soap-header-correlation=true . |
Apache | Kafka | 0.9.0.0 to 3.0.0 | - | Yes | Yes | Yes | Kafka consumer entry points are disabled by default. Correlation is supported. See Apache Kafka Consumer Backends. |
Apache | Synapse | 2.1 | HTTP | Yes | Yes | - | To enable correlation, set node property |
Fiorano | Fiorano MQ | - | - | - | - | ||
IBM | IBM Web Application Server (WAS) | 6.1+, 7.x | Embedded JMS | - | Yes | - | |
IBM | IBM MQ (formerly IBM WebSphere MQ) | 6+ | JMS | Yes | Yes | - | |
Mulesoft | Mule ESB | 3.4, 3.6, 3.7, 3.8, 3.9, 4.1.x, 4.2.0, 4.2.1, 4.2.x, 4.3.0 | HTTP, JMS | Yes | Yes | - | |
Open Source | Eclipse Vert.x verticles | 3.3.x, 3.4.x, 3.5.0, 3.6.0 | - | Yes (correlation only) | Yes | - | The Java Agent detects messaging exit calls between verticles. |
Open Source | Open MQ | - | - | - | - | - | |
Oracle | Java Message Service | 2.0 | JMS | Correlation of the listener is disabled by default | Yes | ||
Oracle | Oracle AQ | - | JMS | - | Yes | - | |
Oracle | OSB deployed on WebLogic | 12.2.1 | HTTP JMS | Yes | Yes | See OSB Support. | |
Oracle / BEA | WebLogic | 9.x+ | JMS 1.1 | Yes | Yes | Yes | |
Progress | SonicMQ | - | - | - | - | - | |
Pivotal | RabbitMQ | - | HTTP | - | Yes | - | See "RabbitMQ Backends" on Java Backend Detection |
Rabbit | RabbitMQ Spring Client | - | - | Yes | Yes | - | See "RabbitMQ Backends" on Java Backend Detection |
Red Hat | HornetQ (formerly JBoss Messaging and JBoss MQ) | - | Yes | ||||
Red Hat | JBoss A-MQ | 4.x+ | - | - | - | Yes | |
Spring | Spring Integration | 2.2.0+, 4.0+ | JMS | Yes | Yes | Yes | See Spring Integration Support. See also "Java Message Service Backends" on Java Backend Detection |
WSO2 | ESB | 4.7.0 | - | Yes | Yes | - | EUM Correlation is not supported |
WSO2 | API Microgateway | 3.1.x, 3.2.0, 3.2.3 | HTTP1 | Yes | Yes | - | See WSO2 API Microgateway Startup Settings. |
JDBC Drivers and Database Servers Support
The Java Agent supports these JDBC driver and database server environments. AppDynamics can follow transactions using these drivers to the designated database.
JDBC Vendor | Driver Version | Driver Type | Database Server | Database Version |
---|---|---|---|---|
Apache | 10.9.1.0 | Embedded or client | Derby | - |
Apache | - | - | Cassandra | - |
Progress | DataDirect | data connectivity for ODBC and JBDC driver access, data integration, and SaaS and cloud computing solutions | - | - |
IBM | JDBC 3.0 version 3.57.82 or JDBC 4.0 version 4.7.85 | DB2 Universal JDBC driver | DB2 | 9.x |
IBM | JDBC 3.0 version 3.66.46 or JDBC 4.0 version 4.16.53 | DB2 Universal JDBC driver | DB2 | 10.1 |
IBM | - | DB2 Universal JDBC driver | DB2 | 11.x |
IBM | - | Type IV | Informix | - |
Maria | 1.4.x - 2.6.x | |||
Microsoft | 4 | Type II | MS SQL Server | 2012 |
Oracle MySQL, MySQL Community | 5.x, 6.x, 8.x | Type II, Type IV | MySQL | 5.x |
Oracle | RAC | |||
Oracle | 9i, 10g 11g, 12c, 18c, 19c | Type II, Type IV | Oracle Database | 8i+ |
Open Source PostgreSQL | 42.2.5 | Type IV | Postgres | 8.x, 9.x, 11x |
Sybase | jConnect | Type IV | Sybase | - |
Teradata | Teradata | - |
Notes:
- Type II is a C or OCI driver
- Type IV is a thin database client and is a pure Java driver
NoSQL/Data Grids/Cache Servers Support
The Java Agent supports these NoSQL, data grids and cache server environments. Some require additional configuration. Click the link on the database, data grid or cache name in the following support matrix for information about additional configuration required or related configuration topics.
Vendor | Database/Data Grid/Cache | Version | Correlation/Entry Points | JMX | Configuration Notes |
---|---|---|---|---|---|
Amazon | DynamoDB | - | Exit Points | - | See Amazon Web Services. |
Amazon | Simple Storage Service (S3) | - | - | - | "Amazon Simple Storage Service Backends" on Java Backend Detection. |
Apache | Casandra
| 1.x, 2.x, 3.x, 4.x | Correlation for Thrift drivers only | Yes |
|
| 1.x, 2.x | ||||
Apache | Lucene - Apache Solr | 1.4.1 | Entry Points | Yes | |
Couchbase | Couchbase | 3.x | Exit Points | - | See "Couchbase Backends" on Java Backend Detection |
JBoss | Cache TreeCache | - | - | - | |
JBoss | Infinispan | 5.3.0+ | Correlation | - | - |
Open Source | Memcached | - | - | - | |
Open Source | MongoDB Async Driver | 3.4-3.12 | - | - | See "MongoDB Backends" on Java Backend Detection |
Open Source | MongoDB Sync Driver | 3.1-3.12, 4.0.x | - | - | See "MongoDB Backends" on Java Backend Detection |
Open Source | MongoDB Reactive Streams Driver | 1.3-1.13, 4.0.x | - | - | See "MongoDB Backends" on Java Backend Detection |
Oracle | Coherence | 3.7.1 | Custom-Exit | Yes | |
Red Hat | JBoss DataGrid | - | - | - | |
JBoss Cache TreeCache | - | - | - | ||
JBoss Infinispan | 5.3.0+ | Correlation | - | ||
Terracotta | EhCache | - | - | - | See EhCache Exit Points. |
RPC/Web Services API/HTTP Client Support
The Java Agent supports these RPC, web services or API framework types. Some require additional configuration as indicated in the Configuration Notes column.
Vendor | RPC/Web Services API Framework/HTTP Client Support | Version | SOA Protocol- | Auto Naming | Correlation/Entry Points | Exit Points | Configurable BT Naming Properties | Detection | Configuration Notes |
---|---|---|---|---|---|---|---|---|---|
Apache | Apache CXF | 2.1 | JAX-WS | Yes | Yes | Yes | Yes | Yes | |
Apache | Apache HTTP Client | - | HTTPClient (now in Apache HTTP Components) | Yes | Yes (correlation only) | Yes | - | Yes | See "HTTP Backends" on Java Backend Detection |
Apache | Apache Async HTTP Client | 4.1.x | - | - | - | - | - | - | - |
Apache | Ribbon HTTP Client | 2.7.18 | HTTP Client | Yes | Yes (correlation) Entry - NA | Yes | NA | Yes | |
Apache | Apache Thrift | - | - | Yes | Yes | Yes | Yes | Yes | See Binary Remoting Entry Points for Apache Thrift. |
Eclipse | Jetty | 8.x, 9.x | HTTP Client | Yes | Yes (correlation only) | Yes (ART supported) | - | Yes | See "HTTP Backends" on Java Backend Detection |
gRPC | 1.6.x to 1.42.x | RPC | Yes | Yes (Asynchronous) | Yes (Asynchronous) | ServiceName/MethodName | Yes | See Web Service Backend. | |
IBM | WebSphere | 6.x, 7.x, 8.x | JAX-RPC | - | - | - | - | - | See IBM WebSphere and InfoSphere Startup Settings and Default configuration excludes WebSphere classes |
IBM | Websphere | 7.x, 8.x | IIOP | - | - | - | - | - | See IBM WebSphere and InfoSphere Startup Settings and Default configuration excludes WebSphere classes |
IBM | Websphere | 6.1, 7.x, 8.x, 9.x | JAX-WS | Yes | Yes, detect and correlate. To enable correlation using a header transported in the | - | Web Service naming | Yes | - |
JBoss | 7,8,11,16, and 18 | JAX-WS | Yes | Yes, detect and correlate. To enable correlation using a header transported in the SOAP:Envelope set node property enable-soap -header-correlation=true | Web Service naming | Yes | To detect Web Service entry and to support correlation you must create a Servlet exclude rule. See Web Service Entry Points to exclude a rule for JBoss. | ||
Open Source |
| - | HTTP | Yes | - | Yes | Yes | Yes | See "HTTP Backends" on Java Backend Detection. |
Open Source | HTTPClient | 0.3-3 | Oracle SOA (and potentially others that embed this library) | - | Correlation: Yes; Entry: No | Yes | - | Yes | See Oracle WebLogic Startup Settings and Default configuration excludes WebLogic classes |
Open Source | Grizzly | Grizzly Async HTTP Client (c
| HTTP | - | Correlation: Yes; Entry:No | Yes | - | Yes | |
Oracle | GlassFish Metro | - | JAX-WS | - | - | - | - | - | |
Oracle | GlassFish Metro with Grails | - | JAX-WS | - | Yes | - | - | Not by Default | |
Oracle | JAX-WS RI | 2.3.1 | JAX-WS | - | To enable correlation using a header transported in the SOAP:Envelope set node property enable-soap-header-correlation=true | - | Web Service naming | Yes | - |
Spring WS | Web Services | 3.x, 4.x, and 5.x | HTTP, SOAP | - | To enable correlation using a header transported in the SOAP:Envelope set node property enable-soap-header-correlation=true | - | Web Service naming | Yes | - |
Oracle | Oracle Application Server | ORMI | - | no | - | - | - | - | |
Oracle | WebLogic | 10.x | T3, IIOP | Yes | Correlation: Yes; Entry: No | Yes | - | Yes | |
Oracle | WebLogic | 9.x, 10.x | JAX-RPC | - | - | - | - | - | |
Oracle/Sun | Java | 11 | - | - | - | Yes (ART supported) | - | Yes | |
Oracle/Sun | Sun RMI | - | IIOP | - | Not by Default | - | - | - | |
Oracle/Sun | Sun RMI | - | JRMP | - | No | Yes | host/port | Yes | |
Red Hat | JBoss A-MQ | 4.x+ | RMI | Yes | Yes | Yes | Yes | Yes | See JBoss and Wildfly Startup Settings. |
Square | OkHttp | 2.x, 3.x, 4.x (upto 4.9.3) | HTTP | Yes | Correlation: Yes Entry: No | Yes | - | Synchronous (2.x, 3.x, and 4.x upto 4.9.1) and Asynchronous (3.x and 4.x upto 4.9.1) | |
- | Web Services | - | SOAP over HTTP | - | Yes | Yes | - | - | See Create Match Rules for Web Services. See "Web Service Entry Points" on Java Backend Detection. |
jersey.github.io | Reactive JAX-RS client API | 2.25+ | HTTP Client | Yes | Yes (correlation) Entry – NA | Yes | NA | Yes | See "Web Service Entry Points" on Java Backend Detection. |
Business Transaction Error Detection
The Java Agent supports the following logging frameworks for business transaction error detection:
- Apache
Log4j
andLog4j 2
java.util.logging
- Simple Logging Facade for Java (SLF4J)
Support for the following method has been added:public void error(String format, Object... argArray)
- Logback
To instrument other types of loggers, see Error Detection.
.NET Agent
Supported Runtime Environments
This section lists the environments where the .NET Agent does some automatic discovery after little or no configuration. See Browser RUM Supported Environments for additional supported environments.
Out-of-process IIS applications should be instrumented as standalone applications.
OS Versions
All versions of Windows (x86/x64) and Linux (x64) operating systems (OS) supported by the target runtime and operating system vendor.
Runtimes
- Microsoft .NET Frameworks
- 3.5 SP1
- 4.6.2
- 4.7.x
- 4.8
- 3.5 SP1
- Microsoft .NET Core and Microsoft .NET
Microsoft .NET Core 3.1
Microsoft .NET 6.0
Hosts
- Managed Standalone Applications
- Managed Windows Services
- Microsoft IIS
- Microsoft SharePoint 2010, 2013 as services running inside IIS
Microsoft Windows Azure
- Azure App Services on Windows in the Azure Portal
- Web Apps
- Web Jobs
- API Apps
- Container Services
- Azure Cloud Services
- Web Roles
- Worker Roles
Automatically Discovered Business Transactions
The .NET Agent discovers business transactions for the following frameworks by default. The agent enables detection without additional configuration.
Type | Custom Configuration Options? | Downstream Correlation? |
---|---|---|
ASP.NET* | Yes | Yes |
ASP.NET MVC 2 | Yes | Yes |
ASP.NET Core | Yes | Yes |
Open Web Interface for .NET (OWIN) web API | Yes | Yes |
.NET Remoting | No | |
Windows Communication Foundation (WCF) | No | Yes |
Web Services including SOAP | No | Yes |
Message Queues | ||
Apache ActiveMQ NMS framework and related MQs | No | Yes |
IBM WebSphere MQ | No | Yes |
Microsoft Message Queuing (MSMQ) | No | Yes |
Microsoft Service Bus / Windows Azure Service Bus | No | Yes |
NServiceBus over MSMQ or RabbitMQ transport | No | Yes |
RabbitMQ | Yes | Yes |
TIBCO Enterprise Message Service | No | Yes |
TIBCO Rendezvous | No | Yes |
Windows Azure Queue | No | No |
* The .NET Agent automatically discovers entry points for ASP.NET web forms with the Async property set to "true" in the Page directive.
Supported Loggers for the .NET Agent
- Log4Net
- NLog
- System Trace
- Windows Event Log
- Loggers on .NET Core that implement the Microsoft.Extensions.Logging.ILogger API
If you are using a different logger, see Error Detection.
Remote Service Detection
The .NET Agent automatically detects these remote service types. The agent enables detection by default. You do not need to perform extra configuration.
Type | Custom Configuration Options? | Async Detection?* | Downstream Correlation? |
---|---|---|---|
CosmosDB:
| No | See Asynchronous Exit Points for .NET. | N/A |
Directory Services, including LDAP | No | No | N/A |
HTTP | Yes | Yes | |
MongoDB: C# and .NET MongoDB Driver version 1.10, 2.0 | No | See Asynchronous Exit Points for .NET. | N/A |
.NET Remoting | Yes | No | |
WCF | Yes | Yes | |
WCF Data Services | Yes | No | No |
Web Services, including SOAP | Yes | Yes | |
Azure Service Fabric Remoting v1 and v2—for the .NET Microservices Agent | - | - | - |
Data Integration | |||
Microsoft BizTalk Server 2010, 2013 | No | Yes | See Correlation Over Microsoft BizTalk. |
Message Queues | |||
Apache ActiveMQ NMS framework and related MQs | Yes | No | Yes |
IBM WebSphere MQ (IBM XMS) | Yes | No | Yes |
Microsoft Message Queuing (MSMQ) | Yes | ||
Microsoft Service Bus / Windows Azure Service Bus | No | Async exit points only | Yes |
NServiceBus over MSMQ or RabbitMQ transport | No | See NServiceBus Backends for .NET | Yes |
RabbitMQ | See RabbitMQ Backends for .NET | No | Yes |
TIBCO Enterprise Message Service | Yes | No | Yes |
TIBCO Rendezvous | Yes | No | Yes |
Windows Azure Queue | No | No | No |
* The agent discovers asynchronous transactions for the Microsoft .NET 4.5 framework. See Asynchronous Exit Points for .NET.
Supported Windows Azure Remote Services
Type | Customizable Configuration? | Downstream Correlation? |
---|---|---|
Azure Blob | No | No |
Azure Queue | No | No |
Microsoft Service Bus | No | Yes |
Cache Clients
Type | Customizable Configuration? | Async Detection?* | AppD for Databases? |
---|---|---|---|
StackExchange.Redis | No | Yes | No |
Data Storage Detection
The .NET Agent automatically detects the following data storage types. The agent enables detection by default. You do not need to perform extra configuration.
Type | Customizable Configuration? | Async Detection?* | AppD for Databases? |
---|---|---|---|
ADO.NET (see supported clients below) | Yes | Yes | No |
Windows Azure Blob Storage | No | Yes | No |
Windows Azure File Storage | No | Yes | No |
Windows Azure Table Storage | No | Yes | No |
* The agent discovers asynchronous transactions for the Microsoft .NET 4.5 framework. See Asynchronous Exit Points for .NET.
Supported ADO.NET Clients
AppDynamics can monitor any ADO.NET client version and type. Clients we've tested include the following:
Database Name | Database Version | Client Type |
---|---|---|
Oracle | 10, 11, 12 | ODP.NET |
Oracle | 10, 11, 12 | Microsoft Provider for Oracle |
MySQL | 5.x | Connector/Net and ADO.NET |
Microsoft SQL Server* | 2005, 2008, 2012 | ADO.NET |
* Microsoft, SQL Server, and Windows are registered trademarks of Microsoft Corporation in the United States and other countries.
Other Backends
- ADO.NET backend calls (SqlClient, MySql, SQLite, PostgreSQL)
- EntityFramework
.NET Agent Frameworks for OpenTelemetry
Vendor | Framework | Version(s) | Entry Points | Exit Points |
---|---|---|---|---|
Microsoft | ASP.NET Core | 6.0 | Yes | - |
Microsoft | Web Services (HttpClient) | 6.0 | - | Yes |
Limitations
- Tier network dashboard not supported on .NET Core / .NET runtime
- Node memory not supported on Linux
Cisco Secure Application does not support .NET Framework
Cisco Secure Application does not support single file deployment
Unsupported .NET Features
Node.js Agent
This page provides an overview of supported environments for the Node.js Agent.
The Node.js Agent is supported on RedHat and Docker Hub.
Node.js Agent Versions
Agent Versions | Node.js Versions |
---|---|
21.8.0 - 22.8.0 | 12, 13, 14, 15, 16 |
21.5.0 | 8.6+, 9, 10, 11, 12, 13, 14, 15, 16 |
- Node.js version less than 6.x:
- This version of AppDynamics agent supports Node.js versions 6.0 and above.
- For older versions of Node.js, use the AppDynamics agent 4.5.11 by installing with
npm install appdynamics@4.5.11
.
- Node.js version less than 8.x on Mac:
- This version of AppDynamics agent on Mac OS supports Node.js >= 8.0.
- For older versions of Node.js, use the AppDynamics agent 4.5.11 by installing with
npm install appdynamics@4.5.11
.
Operating Systems
- Alpine Linux Docker >= 3.7 on 64-bit platform
- Linux distribution based on glibc 2.5 and later and the x86/x86-64 architecture
- Mac OS X >= 10.8, x86/x86-64 architecture
- Windows Server 2012 R2 and later on 64-bit platform with Node.js >= 0.12.0
Transaction Naming
Entry Type | Default Transaction Naming |
---|---|
Node.js Web | URI |
HTTP Exit Points
Supported HTTP Exit Points |
---|
Node.js HTTP client library |
See Node.js Documentation for the Node.js HTTP client library.
Database Exit Points
Supported Database Exit Points |
---|
Cassandra Couchbase DynamoDB (using AWS SDK Driver) Redis (up to 3.x driver only) Memcached MongoDB MSSQL MySQL PostgreSQL |
- NoSQL
AppDynamics displays NoSQL databases as Remote Services.
PHP Agent
Related pages:
PHP Agent Support
PHP Versions
PHP Agent supports these versions of PHP:
- 7.0
- 7.1
- 7.2
- 7.3
- 7.4
- 8.0
PHP ZTS Agent supports these versions of PHP:
- 7.2
- 7.3
- 7.4
PHP Web Servers
Apache 2.2 and 2.4 in these modes:
prefork
mode usingmod_php
- worker MPM mode using
mod_fastcgi
with php-fpm
ormod_fcgid
with php-
cgi
Any web server compatible with php-fpm
.
Operating Systems
Any Linux distribution based on glibc>=2.12
or GLIBCXX_>=3.4.19
and the x86 64-bit architecture.
The PHP agent does not support Power Architecture.
PHP Frameworks and Protocols
Framework/Protocol | Version < PHP 8 | Version >= PHP 8 | Entry Point Type |
---|---|---|---|
Drupal | 7 | Drupal | |
Drupal | 8 | 9.1+ | PHP MVC |
WordPress | 3.4+, 4.x, 5.x | 5.6+ | Wordpress |
Zend | 1, 2, 3 | 3+ | PHP MVC |
CodeIgniter | 2.x, 3.x, 4.x | 3+ | PHP MVC |
FuelPHP | 1.5x, 1.6x, 1.8x | 1.8.2 | PHP MVC |
Magento | 1.5, 1.6, 1.7, 2.3 | PHP MVC | |
Symfony | 1, 2, 3, 4 | 5.2+ | PHP MVC |
CakePHP | 2.x, 3.x, 4.x | 4+ | PHP MVC |
Laravel | 5.7, 6, 8, 9.x | 6.20.+ | PHP MVC |
HTTP | PHP Web | ||
CLI | PHP CLI |
PHP 8 supports the framework versions only from the mentioned versions. The versions below these are not supported.
If your PHP framework is not listed here, the agent detects your entry points as PHP Web and names the business transactions based on the first two segments of the URI — the default naming convention for PHP Web transactions. So it is still possible to monitor applications on unsupported frameworks. Laravel BTs are detected as symfony, as laravel itself is built on top of symfony.
There are few limitations of the PHP Agent. The PHP Agent does not:
- Support Zend Monitor
- Officially support plug-ins that encrypt and, or obfuscate PHP code such as Zend Guard or ionCUBE Loader
- Support compatibility with the Xdebug module
- Support the
pcntl_fork
function which forks the child/sub-processes
Transaction Naming
Framework/Environment | Default Transaction Naming |
---|---|
Drupal | page callback name |
Wordpress | template name |
PHP MVC Frameworks | controller:action |
PHP Modular MVC Frameworks | module:controller:action |
PHP Web | URI |
PHP Web Service | service name.operation name |
PHP CLI | last two segments of the script's directory path plus the name of the script |
Virtual host prefixing is available for all supported entry point types except PHP CLI.
PaaS Providers
PaaS Provider | Buildpack |
---|---|
Pivotal Cloud Foundry | https://github.com/Appdynamics/php-buildpack |
Exit Points
Supported HTTP Exit Points |
---|
|
|
|
|
*The total time reported for a curl/multi_curl request in the Controller is the same as reported by the function curl_getinfo
. Also, we report the the following execution metrics in the exit call details for the curl/multi_curl request which are included in the total time:
-
namelookup_time
connect_time
pretransfer_time
redirect_time
Supported Database Exit Points |
---|
MySQL old native driver (removed for PHP 7) |
MySQLi Extension* |
OCI8 |
PDO |
PostgreSQL accessed via PDO and pgsql extensions |
* mysqli_multi_query
is not supported.
Supported Cache Exit Points |
---|
Memcache |
Memcached |
Predis 0.8.5 and 1.1.1, on PHP versions 7.0 and higher |
Phpredis 4.1 |
Although Predis is a full PHP client library, the PHP Agent supports Predis as an exit point only, not as an entry point.
Supported Web Service Exit Points |
---|
PHP SOAPClient |
NuSOAP 0.9.5 |
Supported Message Queue Exit Points |
---|
RabbitMQ |
RabbitMQ support requires the amqp extension.
Opcode Cache Compatibility
Alternative PHP Cache (APC) |
Python Agent
Related pages:
Python Agent Support
Python Versions
The Python agent supports these Python versions:
- Linux: Python 3.6, 3.7, 3.8, 3.9, and 3.10
- Alpine Linux: Python 3.6, 3.7, 3.8, 3.9, and 3.10
Operating Systems
The Python agent operates on:
- Linux distribution based on glibc 2.12+ and x86 64-bit architecture
- Alpine Linux (3.13+) distribution based on musl 1.2.2+ and x86 64-bit architecture
The Python agent does not support Power Architecture.
Python Frameworks and Protocols
Python Agent supports:
- ASGI supported frameworks such as FastAPI
- WSGI supported frameworks such as Django, Flask, CherryPy, Bottle, and Pyramid
- Tornado
You can configure the agent to instrument any WSGI-based and ASGI-based application or framework as Python Web, including but not limited to those listed below.
At present, the Python agent fully supports exception detection in Django, Flask, CherryPy, Bottle, Pyramid, Tornado, and FastAPI frameworks. Other frameworks and custom applications may install exception handlers that effectively hide some exceptions from the agent. In such cases, the agent will only detect exceptions during exit calls, missed exceptions that are propagated to the WSGI or ASGI middleware, and exceptions reported via the custom business transaction API.
ASGI-Based Framework | Version | Notes |
---|---|---|
FastAPI | 0.72.0 - 0.82.0 | Only HTTP endpoints are supported |
WSGI-Based Frameworks | Version | Notes |
---|---|---|
WSGI | 1.0 | Entry point type: Python web Default transaction naming: the first two segments of the URI |
Bottle | 0.12.19 | |
CherryPy | 18.6.1 | |
Django | 3.1.6 | |
Flask | 1.1.2 | |
PasteDeploy | 2.1.0 | |
Pyramid | 2.0 | |
mod_wsgi | 4.7.1 |
Miscellaneous Frameworks | Version | Notes |
---|---|---|
Tornado | 3.2 - 4.5, 5.x (without asyncio), and 6.0 | Entry point type: Python web Default transaction naming: the first two segments of the URI |
Database Exit Points
Supported Database Exit Points | Version |
---|---|
cx_Oracle | 5.1.x |
MongoDB | 3.1+ |
MySQL-Python | |
mysqlclient | |
MySQL Connector/Python | |
Psycopg 2 | |
PyMySql | |
TorMySql |
HTTP Exit Points
Supported HTTP Exit Points |
---|
httplib* |
httplib2 |
requests |
urllib |
urllib2 |
urllib3 |
tornado.httpclient |
* The agent detects calls to any external library built on top of httplib
. Therefore, backend calls to such services, such as, boto, dropbox, python-twitter are detected and displayed as HTTP exit calls.
Cache Exit Points
Supported Cache Exit Points |
---|
Memcache |
Redis-py |
Apache Web Server Agent
Related pages:
Apache Server Agent Support
Apache Web Servers
Supported Apache Web Server Version |
---|
|
Operating Systems
- Any Linux distribution based on glibc >= 2.12
- RHEL5 is not supported from 20.x onwards. Support is applicable for glibc2.5+ ( RHEL6 or later).
If you encounter an ELF warning message, it may be related to the incorrect version of glibc. Verify that your operating system has the suitable glibc version.
The Apache Web Server agent does not support Power Architecture.
Automatically Discovered Business Transactions
The Apache Agent automatically discovers the following business transactions:
Type | Custom Configuration Options | Downstream Correlation |
---|---|---|
Web (HTTP) | Yes | Yes |
By default the agent excludes requests for the following static file types:
bmp
cab
class
conf
css
doc
gif
ico
jar
jpeg
jpg
js
mov
mp3
mp4
pdf
png
pps
properties
swf
tif
txt
zip
Remote Service Detection
Apache Modules
The Apache Agent automatically detects loaded Apache modules as remote services. The agent excludes a list of common modules from detection.
core.c
http_core.c
mod_access_compat.c
mod_actions.c
mod_alias.c
mod_allowmethods.c
mod_appdynamics.cpp
mod_auth_basic.c
mod_auth_digest.c
mod_authn_alias.c
mod_authn_anon.c
mod_authn_core.c
mod_authn_dbd.c
mod_authn_dbm.c
mod_authn_default.c
mod_authn_file.c
mod_authn_socache.c
mod_authnz_ldap.c
mod_authz_core.c
mod_authz_dbd.c
mod_authz_dbm.c
mod_authz_default.c
mod_authz_groupfile.c
mod_authz_host.c
mod_authz_owner.c
mod_authz_user.c
mod_autoindex.c
mod_cache.c
mod_cache_disk.c
mod_cgi.c
mod_data.c
mod_dbd.c
mod_deflate.c
mod_dir.c
mod_disk_cache.c
mod_dumpio.c
mod_echo.c
mod_env.c
mod_expires.c
mod_ext_filter.c
mod_file_cache.c
mod_filter.c
mod_headers.c
mod_include.c
mod_info.c
mod_lbmethod_bybusyness.c
mod_lbmethod_byrequests.c
mod_lbmethod_bytraffic.c
mod_lbmethod_heartbeat.c
mod_log_config.c
mod_logio.c
mod_lua.c
mod_mem_cache.c
mod_mime.c
mod_mime_magic.c
mod_negotiation.c
mod_perl.c
mod_python.c
mod_remoteip.c
mod_reqtimeout.c
mod_rewrite.c
mod_setenvif.c
mod_slotmem_plain.c
mod_slotmem_shm.c
mod_so.c
mod_socache_dbm.c
mod_socache_memcache.c
mod_socache_shmcb.c
mod_speling.c
mod_ssl.c
mod_status.c
mod_substitute.c
mod_suexec.c
mod_systemd.c
mod_unique_id.c
mod_unixd.c
mod_userdir.c
mod_usertrack.c
mod_version.c
mod_vhost_alias.c
prefork.c
util_ldap.c
adrum
header and footer to instrument web pages.Third-Party Modules
The Apache Agent >= 20.5 requires the use of the latest version of SiteMinder 12.52 SP1 to eliminate a known bug in SiteMinder.
C++ Agent
C/C++ Supported Platforms
Operating Systems
- Any Linux distribution based on glibc >= 2.5 and the x86 32-bit or x86 64-bit architecture
- Windows Server >= 2012 R2
- Visual Studio >= 2015
To develop with the C++ SDK, you need Visual Studio >= 2015 . However, the SAP ABAP Agent on Windows leverages the same SDK and does not require development work.
You must install the Visual Studio C++ Redistributable; the full development environment is not required.
Go Language Agent
Go Supported Platforms
Language Support
All Go language versions are currently supported.
Operating Systems
- Any Linux distribution based on
glibc
>= 2.5, and the x86 32-bit or x86 64-bit architecture - Mac OS X >= 10.8 on x86/x86-64 architecture
AppDynamics does not currently support Mac on Apple silicon (Apple M1 chip, ARM-based architecture).
IIB Agent
IIB Agent Support
This page provides the supported versions, operating systems, and node types of the IIB agent. The AppDynamics IIB agent supports the Linux and AIX operating systems.
Operating Systems
The IIB agent supports these operating systems:
- Linux x86-64
- AIX v7.1 and v7.2
IIB Versions
The IIB Agent supports these versions of IIB for the Linux and AIX operating systems:
Operating System | IIB Version |
---|---|
Linux (Any Linux distribution based on glibc >= 2.17) |
|
AIX 7.1 (minimum patch level 7100-03-09-1717 or 7100-04-04-1717) |
|
AIX 7.2 |
|
IIB Node Types
The agent can continue business transactions detected upstream at these node types:
- SOAPInput
- HTTPInput
- JMSInput
- MQInput
The agent can detect and tag exit calls for downstream correlation at these node types:
- SOAPRequest
- HTTPRequest
- JMSOutput, JMSReply
- MQOutput, MQReply
For MQ, we use the MQRFH2 message header to provide correlation. Any applications consuming MQ messages from IIB with the IIB agent must support the MQRFH2 header.
The agent can detect database backend calls for these node types:
- DatabaseRetrieve
- DatabaseRoute
All nodes are represented within AppDynamics Business Transactions as Threads. You can view the per node timings in the tree view of the Business Transaction dashboard and in the transaction snapshots.