Below are some guidelines on configuring backends in AppDynamics:
1. AppDynamics discovers backends from exit point calls in the application code. An exit point is a call from an instrumented node to another node or to a backend.
2. You can modify the configuration to detect backends. You can:
a. Edit the default backend discovery rules.
b. Create new custom backend discovery rules.
c. Create new custom exit points to provide visibility for backend types that are not automatically discovered.
d. Disable automatic discovery of backends that are not of interest.
e. Disable correlation for the backend.
3. You can achieve the level of customization that you need by editing the default rules rather than creating new rules.
a. To edit a rule, in the Backend Detection tab, select the application and click the Edit Automatic Discovery button.
4. The Controller enforces a limit of 1000 backend registrations in the business application for each type of backend (that is, 1000 HTTP backends, 1000 JMS backends, and so on).
5. Agents apply a limit of 300 unresolved backends per application
a. When the backend count exceeds the limit, the ''All Other Traffic'' category is automatically created.
6. You can delete unused backends from the Remote Services List, any Remote Service dashboard, the Databases List, and any Database dashboard. If the backend has new traffic in the future, the app agent rediscovers it and reregisters it with the Controller.
7. When adding a custom exit point, you specify the class and method that identify an external call to the exit point. You can refine the call by specifying a return value, parameter, or getter chain match value.
8. A ''high volume'' exit point keeps the overhead associated with the exit point to a negligible amount by bypassing certain processing operations on calls to this exit point. As a result, transaction correlation and error detail reporting are not available for the exit point, nor are match conditions in the exit point configuration.
a. With a high volume exit point, you do get the number of calls, number of errors, and average response time for calls.
9. To split an exit point for backend detection you can name a getter chain, for example, and have that getter chain dynamically name the backend based on the return value when it splits.
a. You can also combine the backends using the split by using the same class, but different methods. Then use the same getter chain and when that condition is met the two different methods will resolve to the same backend of that class.
b. Example:
i. First Backend config
1. Class: com.tangosol.net.NamedCatch
2. Method: entrySet()
3. Getter Chain split: getCacheName()
4. The result of the above will dynamically name the backend as the result of the getCacheName and split into two backends
ii. Second Backend Conifg
1. Classe: same as above
2. Method: getAll()
3. Getter Chain split: same as above
4. The result of combing these two configurations will result in both the getAll() method and entrySet() method resolving to the same backend