On this page:
This topic helps you understand how to configure and use object instance tracking. For more information about why you may need to configure this, see Java Memory Thrash.
When object instance tracking is enabled, AppDynamics tracks the top 20 application and top 20 system (core Java) classes in the heap by default. You can configure specific classes to track as described below.
Enabling object instance tracking increases the amount of information captured by the agents, resulting in additional overhead. AppDynamics recommends using object instance tracking only while troubleshooting potential memory leaks. It does not normally need to be enabled during normal operation.
AppDynamics does not perform allocation tracking for core Java classes by default, since doing so would add significant system overhead. However, it is possible to track core classes on a short-term basis (for example, while troubleshooting) or in pre-production environments. For more information, see the knowledge base article Enabling Allocation Tracking for Core Java Classes.
To enable object instance tracking, you need the Configure Agent Properties permission.
To configure the custom classes to track, you need the Configure Memory Monitoring permission.
For information on AppDynamics Role Based Access Control, see Roles and Permissions.
When using the JDK runtime environment, set the classpath using the -classpath option for the application. For example:
java -classpath <complete-path-to-tools.jar>;%CLASSPATH% -jar myApp.jar
java -Xbootclasspath/a:<complete-path-to-tools.jar> -jar myApp.jar
To start an object instance tracking session, follow these steps:
Tracked classes now appear in the Object Instance Tracking table. You can drill down to the tracked classes to see details.
For performance reasons, only the top 20 application classes and the top 20 system (core Java) classes in the heap are tracked automatically.
Use the "Configure Custom Classes to Track" option to specify instances of specific classes to track. Note that the classes you configure here are tracked only if their instance count is among the top 1000 instance counts in the JVM.
The class you added is now tracked during object instance tracking sessions.