AppDynamics Application Intelligence Platform
3.9.x Documentation
This topic explains HTTP exit point configuration. To review general information about monitoring databases and remote services (collectively known as backends) and for an overview of backend configuration see Backend Monitoring. For configuration procedures, see Configure Backend Detection for Java.
By default, AppDynamics automatically detects and identifies HTTP exit points (backends). HTTP exit point activity includes all HTTP calls done outside of a web service call. Web service calls are not considered an HTTP exit point. The Host and Port properties are enabled in the default HTTP automatic discovery rule. From the enabled properties AppDynamics derives a display name, for example: "myHTTPHost:5000". By default, AppDynamics groups HTTP backends together on the application flow map as shown:
Click the HTTP Backends label to see the individual backends listed.
If you edit the flow map to ungroup the HTTP backends, you can see each separate HTTP backend and how it uses the default discovery rule for naming.
You can enable or disable the use of the following properties for HTTP exit points.
Configurable Properties | Used by Default |
---|---|
Host | Yes |
Port | Yes |
URL | No |
Query String | No |
For procedures, see Configure Backend Detection (Java)
Depending on exactly what you need to monitor, there may be times when you want to change the default HTTP configuration. When you see things such as EC2 host names, file paths, and ports in the backend name, changing the default discovery rule may help. For example, when all the HTTP backends for a tier or application have a similar format, such as a prefix like "ec2storage", you can generate the right name and the correct number of backends to monitor by editing the automatic discovery rule. Doing this enables you to monitor the key performance indicators (KPIs) that are of most interest to you.
Consider a scenario with the following HTTP URLs:
http://ec2-17:5400/service1 http://ec2-17:5450/service2 http://ec2-18:5400/service1 http://ec2-18:5450/service2
In this case, measuring performance based on host name would be of no use since the IP addresses are transient and all performance numbers would be irrelevant after the IP addresses recycle. Therefore, you want to monitor by service name. To do this you need to avoid using the Host and Port properties in your configuration and use only the URL property.
1. Edit the Automatic Backend Discovery rule for HTTP. See Configure Backend Detection (Java) for details on accessing this screen.
2. First select and disable the use of Host and Port.
3. Then select and enable the property you want to use to uniquely identify the backend. In this case, select URL and check Use URL in the Backend Name.
4. For the field How will URL be used in the Backend name?, select Use a segment of it.
5. From the segment options drop-down list, select Use the first N Segments, then specify that the first segment should be used. In this case the split delimiter is a / (slash). The backend naming configuration looks similar to the following:
A similar technique can be used to strip out some segment of the URL, such as a user name as in the following URLs:
[http://host:34/create/username1] [http://host:34/create/username2]
What you care about in this case is the "create" service, so your configuration is the same as in the previous screen shot.
6. Once you change the configuration, you should delete all HTTP backends. Then, as the agent rediscovers the backends according to the changed configuration, you see only the service backends in the flow map.
Consider a set of HTTP backends that have different formats, for example, some are prefixed with ec2storage, some are salesforce.com or localhost and so on,. In this case, you don't change the automatic discovery rule. Instead you create a custom rule. This is because you need different rules for the different URL formats as follows:
In some cases, your HTTP backend discovery configuration might consist of a combination of the default rule and custom rules. A custom rule to handle the "ec2storage" URLs might look similar to the following: