<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Object instance tracking for interfaces and abstract classes in Splunk AppDynamics</title>
    <link>https://community.splunk.com/t5/Splunk-AppDynamics/Object-instance-tracking-for-interfaces-and-abstract-classes/m-p/732556#M8043</link>
    <description>&lt;P&gt;It looks like the dialog for adding a custom class for object instance tracking allows you to specify an interface or an abstract class. As interfaces or abstract classes cannot be instantiated, one would expect the semantics of this to add object instance tracking for all concrete subclasses of the given class/interface. Is that how it works?&lt;/P&gt;

&lt;P&gt;For example, I added object instance tracking for the interface java.util.concurrent.ScheduledExecutorService, and I am pretty sure that my app creates a number of&amp;nbsp;java.util.concurrent.ScheduledThreadPoolExecutor objects (which is a concrete implementation of&amp;nbsp;&lt;SPAN&gt;ScheduledExecutorService). However the instance count constantly remains at zero.&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;Ideally, I'd like OIT to behave as described (mainly because that would be the most convenient behavior). If that's not how it's supposed to work, the AppDynamics UI should probably prevent users from entering class names of non-concrete classes.&lt;/P&gt;

&lt;P&gt;Can someone clarify how OIT deals with abstract classes and interfaces?&lt;/P&gt;</description>
    <pubDate>Tue, 13 Mar 2018 00:04:34 GMT</pubDate>
    <dc:creator>CommunityUser</dc:creator>
    <dc:date>2018-03-13T00:04:34Z</dc:date>
    <item>
      <title>Object instance tracking for interfaces and abstract classes</title>
      <link>https://community.splunk.com/t5/Splunk-AppDynamics/Object-instance-tracking-for-interfaces-and-abstract-classes/m-p/732556#M8043</link>
      <description>&lt;P&gt;It looks like the dialog for adding a custom class for object instance tracking allows you to specify an interface or an abstract class. As interfaces or abstract classes cannot be instantiated, one would expect the semantics of this to add object instance tracking for all concrete subclasses of the given class/interface. Is that how it works?&lt;/P&gt;

&lt;P&gt;For example, I added object instance tracking for the interface java.util.concurrent.ScheduledExecutorService, and I am pretty sure that my app creates a number of&amp;nbsp;java.util.concurrent.ScheduledThreadPoolExecutor objects (which is a concrete implementation of&amp;nbsp;&lt;SPAN&gt;ScheduledExecutorService). However the instance count constantly remains at zero.&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;Ideally, I'd like OIT to behave as described (mainly because that would be the most convenient behavior). If that's not how it's supposed to work, the AppDynamics UI should probably prevent users from entering class names of non-concrete classes.&lt;/P&gt;

&lt;P&gt;Can someone clarify how OIT deals with abstract classes and interfaces?&lt;/P&gt;</description>
      <pubDate>Tue, 13 Mar 2018 00:04:34 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-AppDynamics/Object-instance-tracking-for-interfaces-and-abstract-classes/m-p/732556#M8043</guid>
      <dc:creator>CommunityUser</dc:creator>
      <dc:date>2018-03-13T00:04:34Z</dc:date>
    </item>
    <item>
      <title>Re: Object instance tracking for interfaces and abstract classes</title>
      <link>https://community.splunk.com/t5/Splunk-AppDynamics/Object-instance-tracking-for-interfaces-and-abstract-classes/m-p/732557#M8044</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;

&lt;P&gt;&lt;SPAN&gt;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.&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;If you want to track all objects, then you can use the following&amp;nbsp;controller property:&lt;/SPAN&gt;&lt;/P&gt;

&lt;UL&gt;
&lt;LI&gt;&lt;SPAN&gt;&lt;SPAN&gt;Access the controller URL with allowObjectActivityTraceOnAllObjects=true. For example:&lt;/SPAN&gt;&lt;/SPAN&gt;
&lt;PRE&gt;http://&amp;lt;controller-host&amp;gt;:&amp;lt;controller-port&amp;gt;/controller/?allowObjectActivityTraceOnAllObjects=true&lt;/PRE&gt;
&lt;P&gt;&lt;SPAN&gt;Note that tracking allocation for the core Java classes may cause high overhead. Use this at your own risk.&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;We do not turn this on by default because it causes a lot more tracking and therefore much higher overhead on the agent side.&lt;/P&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;Also,please share the agent log and screenshot depicting the issue.&lt;/P&gt;

&lt;P&gt;Doc:&amp;nbsp;&lt;A href="https://docs.appdynamics.com/display/PRO44/Object+Instance+Tracking+for+Java" target="_blank" rel="nofollow noopener noreferrer"&gt;https://docs.appdynamics.com/display/PRO44/Object+Instance+Tracking+for+Java&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Please let us know if there is any disconnect.&lt;/P&gt;

&lt;P&gt;Thanks,&lt;/P&gt;
&lt;P&gt;Atyuha&lt;/P&gt;</description>
      <pubDate>Wed, 14 Mar 2018 11:57:10 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-AppDynamics/Object-instance-tracking-for-interfaces-and-abstract-classes/m-p/732557#M8044</guid>
      <dc:creator>Atyuha_Pal</dc:creator>
      <dc:date>2018-03-14T11:57:10Z</dc:date>
    </item>
  </channel>
</rss>

