How do I monitor Adobe Experience Manager using APM Introscope Java Agent ?

Document ID : KB000028776
Last Modified Date : 14/02/2018
Show Technical Document Details


Application Server: Adobe Experience Manager (based on Adobe CQ Server)

Version: 5.6.0

JVM version: 1.6



Adobe Experience Manager(AEM) is an Publishing Application built on top of Adobe CQ platform.

To monitor AEM with Introscope Java Agent, make the following changes to the Agent\Application Server configuration.


Step 1:

Locate file in Application Server installation directory and add the line below so Sling OSGI classes can properly locate Agent code



Step 2:

Create a new pbd, name it aem.pbd, and add the following directives:

SkipClassForFlag: JSPTracing

IdentifyInheritedAs: JSPTracing

SkipClassForFlag: HTTPServletTracing


Step 3:

Add the aem.pbd to the agent directive list property in IntroscopeAgent profile:



Important: Step 2 and 3 are critical. Otherwise there will be lot of ClassNotFound Exceptions similar to the one shown below in the Appserver error logs due to agent instrumenting HttpJspBase class, potentially preventing the application from working properly

java.lang.NoClassDefFoundError: javax/servlet/http/HttpServletRequest

at java.lang.Class.forName0(Native Method)

at java.lang.Class.forName(

at com.wily.introscope.agent.trace.servlet.ServletHelperFactory.getServletHelper(

at com.wily.introscope.appmap.agent.trace.hc2.AppMapApplicationNameFormatter.quickGetComponentName(



and also Agent logs will have the following error:

[ERROR] [IntroscopeAgent.hc2.AppMapApplicationNameFormatter] An error occurred getting the application name: java.lang.NullPointerException


Note:  Without custom pbd directives, most of the JSP code in Adobe EM will not be instrumented\reported by the Wily Agent.