Deployment Support

This page describes Recommended Data Collectors in AppDynamics.

Recommended Data Collectors are potential Method Invocation Data Collectors (MIDC) suggested by Analytics. Recommended Data Collectors reduce the number of steps required to configure data collectors. 

When you configure data collectors manually, provide the class and method parameters for each transaction that you want to monitor. Recommended Data Collectors automatically collect the event data from the Java Agent and publishes it to the Event Service. You can browse this data (transactions, classes, methods) and search for specific terms in the Controller. 

Recommended Data Collectors do not support HTTP and SQL data collectors.

Before You Begin

To use Recommended Data Collectors, ensure that your setup meets these requirements. 

You need the Configure Diagnostic Data Collectors permission to access Recommended Data Collectors. The Analytics Administrator does not have this permission by default.

To view application data for Recommended Data Collectors, you need view access to the application and its transactions.

  • For application permissions, configure user settings in Administration > Roles > Applications.
  • For transaction permissions, configure user settings in Administration > Roles > Analytics > Events.

See Analytics and Data Security.

Configure Diagnostic Data Collectors Permission

AppDynamics Components

  • SaaS Controller >= 20.6.0
  • Java Agent >= 21.1

Agentless Analytics 

Recommended Data Collectors require Agentless Transaction Analytics. When you use the minimum supported versions of the Controller and Java Agent, Agentless Analytics is automatically enabled. See Deploy Analytics Without an Analytics Agent to ensure that your deployment works properly. 

You must enable Agentless Analytics to use this feature. If you turn off Agentless Analytics, you cannot use Recommended Data Collectors.

Create Recommended Data Collectors

To use Recommended Data Collectors:

  1. In the Controller, select Analytics > Configuration > Transaction Analytics - Recommended Data Collectors
  2. Select an application from the Application dropdown menu. A list of business transactions appears in the left pane.
  3. If not already enabled, turn on the Recommended Data Collectors toggle to the right of Application
    Recommended Data Collectors
  4. Select the dropdown arrow next to the desired business transaction name. A list of available classes appears in the left pane.
  5. Select the desired class. A list of available methods appears.
  6. Select the desired method. 
  7. Additional data appears in the right pane. Select the desired field name. 
  8. Above the business transaction list in the left pane, click Create Data Collector
  9. Enter a data collector name and confirm that the method signature information is correct. If you select multiple fields, enter a unique name for each data collector in the dialog. 

    Create Method Invocation Data Collector

    To define a MIDC with method overloading in Recommended Data Collectors, you must re-select the Is this method overloaded? checkbox and redefine the parameters in Manual Data Collectors > Edit Method Invocation Data Collector > Define the Method Signature

  10. Click Save

View Existing Data Collectors

Select Existing Data Collectors to view the created MIDCs. The Transaction Analytics - Manual Data Collectors tab appears.

Existing Data Collectors

Recommended Data Collectors UI Overview

UI TermDescription
Business Transaction

The name of the business transaction(s) for the selected application. Business transaction names appear as:

The relative path and business transaction ID in brackets [ ]. For example, /portal/Submit Application[65].

If the Java Agent does not identify a relative path, the name is the business transaction ID only. For example, Business Transaction 1.

ClassThe fully qualified class name of the selected business transaction.
Method

The method name of the selected class.

Overloaded methods contain identifying data to distinguish each method. For example, if a class calls method1 multiple times with different return values, the return value is displayed next to the method name:

  • int method1()
  • void method1()

Variations in the method parameters are displayed in the parentheses:

  • method1(str, ...)
  • method1(int, ...)
Field NameThe name of the field of the selected method. The field name can be a parameter, return value, or invoked object.
Data TypeType of the field name.
Sample Value

Shows an example field value. Special characters (- , . @) are not obfuscated.

The following names are obfuscated for security:

  • Boolean: aaaaaa
  • Enums: the string value is pulled and obfuscated the same as upper and lower case letters
  • Lower case letters: a
  • Numbers: 0
  • Upper case letters: A
  • All other characters: #

In the case of arrays, collections, and maps, the values display a special format.

  • Array/Collection: [Aaaa, ...]
  • Map: [{aaa=Aaaa}, ...]

The Instance of <class_name> value is displayed when the depth limit is obtained after introspecting the object. If you want to introspect further on this instance type, you can increase the introspection depth with the analytics-runtime-introspection-depth property. For example, in method int getPrice(a), abcde where a has field b, b has field c, and so on. If the depth is 2, the value will be Instance of c.

This case applies to arrays, collections, and maps.

  • Array/Collection: [Instance of <class_name>, ...]
  • Map: [{Instance of <key_class_name>}={Instance of <value_class_name>}, ...]
PathDescribes where the Java Agent has located the Recommended Data Collector in your code.

Disable Recommended Data Collectors for an Application

  1. Go to Transaction Analytics > Recommended Data Collectors.
  2. Select the application from the dropdown. 
  3. Turn off the Recommended Data Collectors toggle.

Disable Recommended Data Collectors

Troubleshoot Recommended Data Collectors Issues

Recommended Data Collectors in the Controller UI

There are a few reasons why Recommended Data Collectors may not appear in the Controller UI:

  • Auto-Refresh: In the Controller UI, data under the Transaction Analytics - Recommended Data Collectors tab does not refresh automatically. If you recently created an application and do not see it in the UI, refresh your browser. 
  • Deactivated Agentless Analytics: Recommended Data Collectors require Agentless Analytics. If a particular application is unavailable, confirm that Agentless Analytics is enabled for the tier or node. 
  • Permission: Recommended Data Collectors enforces RBAC. Without the Configure Diagnostic Data Collectors permission, you cannot create data collectors, but you can view suggested Recommended Data Collectors for the applications that you have access to. 

Field Names Display Unavailable

Field names are not available for data captured on parameters, return values, and invoked objects, such as int getNumber(intValue).

For example: 

public class Calculator {    
	public int getArea(int width, int height) {
        return width * height;
    }
}
CODE
Field NameExplanation
Invoked ObjectRefers to the object on which the method is invoked. In this example, the Calculator object is being invoked. The name of the Calculator object instance is not obtained, so Invoked Object displays Unavailable.
ParametersRefers to the inputs to the method. In this example, the parameters are the width and the height. The parameter names are not obtained, so Parameters display Unavailable.
Return ValueRefers to the return value of the method. Return values do not have assigned names and Return Value displays Unavailable.