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.

JVMOSMemory 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 17Linux, WindowsOIT, ALD, CI, AT
Azul Zing 15.x.Linux x64OIT, 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 17Linux, Windows, MacOSOIT, ALD
GraalVM 20.0.0, 20.2.0, 21.1.0, 21.3.0Linux, Windows, MacOSOIT, ALD, CI, AT
HP OpenVMS

IBM JVM 1.8.xAIX, 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
OpenJDK12 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, LinuxOIT, 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 
Framework

Version

Correlation/
Entry Points

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: akka-http-stream-entry-enabled

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 SourceHttp4s Blaze Client

Blaze versions: 0.21.1, 0.21.0, 0.20.23, 0.20.5
scala 2.11, 2.12

NoYesHTTP

Open Source

Groovy

-

Yes

Yes



Open SourceKtor1.0.x -1.6.xYes (Netty Engine)-HTTPEUM 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

Scala2.11.6



Open SourceSpray toolkit (Spray.io)

1.1.x

1.1.3

YesYesHTTPEntry 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

See Apple WebObjects Startup Settings.

axonframework.orgAxon2.x, 3.x--Commands on the Command Bus continue existing Business TransactionsCorrelation 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 SourceSpring Batch-




See Spring Batch Support.

Eclipse

RCP (Rich Client Platform)

-

-

-

-

-

-


Google

Google Web Toolkit (GWT)

2.5.1

HTTP

Yes

Yes

-

-


JBoss

JBossWS Native Stack

4.x, 5.x

Native Stack

-

-

-

-


IBMIBM-BPM8.5.7, 8.6-YesYesYesYesSee 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 SourceJersey1.x, 2.xREST, JAX-RSYesYesNoNot by default

See JAX-RS Support and node properties:

  • rest-num-segments
  • rest-transaction
  • rest-uri-segment-scheme

See App Agent Node Properties Reference for information on the properties.

Open Source

JRuby HTTP

-

-

-

Yes

-

Not by default

See:

Open SourceMicronaut1.1.0 to 3.3.3-YesYesYesBy default-
Open SourceNetty3.x, 4.xHTTPYesYesYesBy default
  • Node property to disable Netty Instrumentation: netty-enabled, by default it is true
Open SourceSpring Annotated Web Services2.x+HTTPYesYesNo-
Open SourceSpring WebFlux5.0, 5.1, 5.2, 5.3HTTPYesSpring Boot (Netty, Jetty, Tomcat, Undertow)WebClient (Reactor Netty, Reactive Jetty)By default

The node property enable-webclient, disables the Netty instrumentation and enables WebClient configuration.

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 SourceSpring Cloud Gateway2.0.x, 2.1.x, 2.2.x, 3.0.x, 3.1.xHTTPYesYesYesBy default
Open SourceWebSocket1.0 (Java EE 7, JSR-356)-

Yes,
BT Naming not configurable 

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

See App Agent Node Properties Reference.

Java Agent OpenTelemetry Framework Support

Vendor

Framework

Version

Entry Points

Exit Points

Configuration Notes

Open SourceJava Servlet API2.x, 3.0Yes--
ApacheApache HTTP Client-YesYesSee "HTTP Backends" on Java Backend Detection.
ApacheActiveMQ5.xYesYes-
Open SourceMicronaut3.3.3YesYes-
ApacheStruts1.x, 2.xYes-See Struts Entry Points.
Open SourceSpring Boot2.xYes--
Open SourcePlay for Java2.3, 2.4, 2.5, 2.6, 2.7, 2.8Yes-Play EUM-APM correlation supported
Open SourceSpring REST--Yes-
Open SourceSpring RMI-YesYes-
Open SourceJava Server Pages2.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 / 
OSGi Runtime

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

See OSGi Infrastructure Configuration.

Apache

Felix

-

-

-

-

Yes

See OSGi Infrastructure Configuration.

Apache

Sling

-

-

-

-

Yes

See OSGi Infrastructure Configuration.

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

-

-

-

-

See Resin Startup Settings.

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
YesSee JBoss and Wildfly Startup Settings.
Open Source

JBoss Wildfly (formerly JBoss Application Server)

4.x to 26.x
Yes
YesSee JBoss and Wildfly Startup Settings.
Sun/Oracle

GlassFish Enterprise Server

2.x

-

-

Yes

Yes

See GlassFish Startup Settings.

Oracle

GlassFish Server and 
GlassFish Server Open Source Edition

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 SOAP:Envelope set node property enable-soap-header-correlation=true

Yes

Yes

See Oracle WebLogic Startup Settings.
Software AGwebMethods9.5, 9.6, 10.x---Yes

See webMethods Startup Settings.

TibcoActiveMatrix BusinessWorks Service Engine5.x, 6.x-

To enable correlation using a header transported in the SOAP:Envelope set node property enable-soap-header-correlation=true

-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 ProviderBuildpack
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
AmazonSimple Queue Service (SQS)--Yes (correlation only)Yes-

See "Amazon Simple Queue Service Backends" on Java Backend Detection

AmazonSimple Notification Service (SNS)--NoYes

-

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

See Example Message Queue Backend Configuration.

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.
ApacheKafka

0.9.0.0 to 3.0.0

-YesYesYesKafka 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 enable-soap-header-correlation=true

Fiorano

Fiorano MQ


-

-

-

-


IBM

IBM Web Application Server (WAS)

6.1+, 7.x

Embedded JMS

-

Yes

-

See Example Message Queue Backend Configuration.

IBM

IBM MQ (formerly IBM WebSphere MQ)

6+

JMS

Yes

Yes

-

See Example Message Queue Backend Configuration.

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

-

See Mule ESB Startup Settings.

Open SourceEclipse Vert.x verticles3.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

-

-

-

-

-


OracleJava Message Service 2.0JMSCorrelation of the listener
is disabled by default 
Yes

Oracle

Oracle AQ

-

JMS

-

Yes

-


OracleOSB deployed on WebLogic12.2.1

HTTP

JMS

YesYes

See OSB Support.

Oracle / BEA

WebLogic

9.x+

JMS 1.1

Yes

Yes

Yes

See Oracle WebLogic Startup Settings.

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 HatHornetQ (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

WSO2ESB4.7.0-YesYes- EUM Correlation is not supported
WSO2API Microgateway3.1.x, 3.2.0, 3.2.3HTTP1YesYes-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 driverDB211.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

OracleRAC


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
AmazonDynamoDB -Exit Points-

See Amazon Web Services.

AmazonSimple Storage Service (S3)---

"Amazon Simple Storage Service Backends" on Java Backend Detection.

Apache

Casandra

  • DataStax drivers

1.x, 2.x, 3.x, 4.x

Correlation for Thrift drivers only

Yes

  • Thrift drivers
1.x, 2.x

Apache

Lucene - Apache Solr

1.4.1

Entry Points

Yes

See Apache Solr Startup Settings.

Couchbase


Couchbase3.xExit Points-See "Couchbase Backends" on Java Backend Detection

JBoss

Cache TreeCache

-

-

-

See JBoss Startup Settings.

JBossInfinispan5.3.0+Correlation--

Open Source

Memcached

-

-

-

See Memcached Exit Points.

Open SourceMongoDB Async Driver3.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 SourceMongoDB 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

See Coherence Startup Settings.

Red Hat

JBoss DataGrid---

See JBoss Startup Settings.

JBoss Cache TreeCache---
JBoss Infinispan5.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-
WebServices

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-------
ApacheRibbon
HTTP Client
2.7.18HTTP ClientYesYes (correlation)
Entry - NA
YesNAYes

Apache

Apache Thrift

-

-

Yes

Yes

Yes

Yes

Yes

See Binary Remoting Entry Points for Apache Thrift.
EclipseJetty8.x, 9.xHTTP ClientYesYes (correlation only)Yes (ART supported)-YesSee "HTTP Backends" on Java Backend Detection
GooglegRPC1.6.x to 1.42.xRPCYesYes (Asynchronous)Yes (Asynchronous)ServiceName/MethodNameYesSee 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
IBMWebsphere6.1, 7.x, 8.x, 9.xJAX-WSYes

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 namingYes-
JBoss

7,8,11,16, and 18

JAX-WSYesYes, detect and correlate. To enable correlation using a header transported in the SOAP:Envelope set node property enable-soap-header-correlation=true
Web Service namingYes

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

java.net.Http

-

HTTP

Yes

-

Yes

Yes

Yes

See "HTTP Backends" on Java Backend Detection.
Open SourceHTTPClient 0.3-3Oracle SOA (and potentially others that embed this library) -Correlation: Yes; Entry: NoYes-Yes

See Oracle WebLogic Startup Settings and Default configuration excludes WebLogic classes

Open SourceGrizzly

Grizzly Async HTTP Client (com.ning.http-client 1.8.x, 1.9.x, grizzly-http-client 1.1x)

  • NingAsyncClient v1 with NettyProvider, GrizzlyProvider
  • NingAsyncClient v2 with NettyProvider
HTTP-Correlation: Yes; Entry:NoYes-Yes

Oracle

GlassFish Metro

-

JAX-WS

-

-

-

-

-


Oracle

GlassFish Metro with Grails

-

JAX-WS

-

Yes

-

-

Not by Default


OracleJAX-WS RI2.3.1JAX-WS-To enable correlation using a header transported in the SOAP:Envelope set node property enable-soap-header-correlation=true-Web Service namingYes-
Spring WSWeb Services3.x, 4.x, and 5.xHTTP, SOAP-To enable correlation using a header transported in the SOAP:Envelope set node property enable-soap-header-correlation=true-Web Service namingYes-

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.
SquareOkHttp2.x, 3.x, 4.x (upto 4.9.3)HTTPYesCorrelation: Yes Entry: NoYes-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.ioReactive JAX-RS client API2.25+HTTP ClientYesYes (correlation) Entry – NAYesNAYesSee "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 and Log4j 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
  • 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
    For Azure App Services, certain infrastructure monitoring features are not supported, those include: CLR crash reporting, machine snapshots, and Windows performance counter monitoring.
  • 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
ASP.NET MVC 3
ASP.NET MVC 4
ASP.NET MVC 5

Yes

Yes

ASP.NET CoreYesYes

Open Web Interface for .NET (OWIN) web API

YesYes

.NET Remoting

No

See Enable Correlation for .NET Remoting.

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)NoYes
Microsoft Service Bus / Windows Azure Service BusNoYes
NServiceBus over MSMQ or RabbitMQ transportNoYes
RabbitMQYesYes

TIBCO Enterprise Message Service

No

Yes

TIBCO Rendezvous

No

Yes

Windows Azure QueueNoNo

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:

  • v2.x (Microsoft.Azure.DocumentDB.Core)
  • v3.x (Microsoft.Azure.Cosmos)
NoSee Asynchronous Exit Points for .NET.N/A

Directory Services, including LDAP

No

No

N/A

HTTP

Yes

See Asynchronous Exit Points for .NET.

Yes

MongoDB: C# and .NET MongoDB Driver version 1.10, 2.0NoSee Asynchronous Exit Points for .NET.N/A

.NET Remoting

Yes

No

See Enable Correlation for .NET Remoting.

WCF

Yes

See Asynchronous Exit Points for .NET.

Yes

WCF Data Services

Yes

No

No

Web Services, including SOAP

Yes

See Asynchronous Exit Points for .NET.

Yes

Azure Service Fabric Remoting v1 and v2—for the .NET Microservices Agent---
Data Integration


Microsoft BizTalk Server 2010, 2013NoYesSee 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

See MSMQ Backends for .NET

See MSMQ Backends for .NET

Microsoft Service Bus / Windows Azure Service Bus

No

Async exit points only

Yes

NServiceBus over MSMQ or RabbitMQ transportNoSee NServiceBus Backends for .NETYes
RabbitMQSee RabbitMQ Backends for .NETNoYes

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.RedisNoYesNo


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 StorageNoYesNo
Windows Azure Table StorageNoYesNo

* 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

VendorFrameworkVersion(s)Entry PointsExit Points
MicrosoftASP.NET Core6.0Yes-
MicrosoftWeb 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 VersionsNode.js Versions
21.8.0 - 22.8.012, 13, 14, 15, 16
21.5.08.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

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 using mod_php
  • worker MPM mode using mod_fastcgi with php-fpm or mod_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

Drupal89.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

Laravel5.7, 6, 8, 9.x6.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 Serviceservice name.operation name
PHP CLIlast 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 ProviderBuildpack
Pivotal Cloud Foundry

https://github.com/Appdynamics/php-buildpack
See 
http://docs.pivotal.io/appdynamics/index.html for information about integration with PCF.

Exit Points

Supported HTTP Exit Points

curl/curl-multi*

drupal_http_request()

fopen(), file_get_contents()

Zend_HTTP_Client::request()

*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

FastAPI0.72.0 - 0.82.0Only HTTP endpoints are supported

WSGI-Based Frameworks

Version

Notes

WSGI1.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_wsgi4.7.1

Miscellaneous Frameworks

Version

Notes

Tornado3.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 PointsVersion
cx_Oracle5.1.x
MongoDB3.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

Apache Server Agent Support

Apache Web Servers

Supported Apache Web Server Version
  • Apache HTTP Server 2.2.x
  • Apache HTTP Server 2.4.x
  • IBM HTTP Server >= 7.0
  • Oracle HTTP Server >= 11g

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:

TypeCustom Configuration OptionsDownstream Correlation
Web (HTTP)YesYes

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

For End User Monitoring, the Apache Agent does not support automatic injection of the Javascript 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 SystemIIB Version

Linux

(Any Linux distribution based on glibc >= 2.17)

  • IIB v9
  • IIB v10
  • ACE v11
  • ACE v12

AIX 7.1

(minimum patch level 7100-03-09-1717 or 7100-04-04-1717)

  • IIB v9
  • IIB v10
AIX 7.2
  • IIB v9
  • IIB v10
  • ACE v11 (requires ACE Fix Pack >= v11.0.0.9)
  • ACE v12

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.