A business transaction offers a view of application performance that cuts across the environment, reflecting all services that participate in fulfilling the transaction. However, another way of viewing application performance focuses on the performance of a particular service independently of the business transactions that use it.
Like business transactions, service endpoints provide key performance indicators, metrics, and snapshots. However, they provide that information exclusively in the context of that service, omitting business transaction context or downstream performance data.
Monitor Service Endpoints
From the Applications navigation menu in the Controller, select Service Endpoints to view a list of service endpoints with key performance metrics.
Service endpoints that contain performance data within the selected time range display in the list.
Select the Filter icon (on the top right of the page) to set various filtering options for active and inactive service endpoints within the designated time range. Other view options include showing transactions of certain types or ones that exceed a configurable average response time. After you set the desired filters, select Apply.
Additionally, you can view, delete, and exclude selected service endpoints by selecting the options from the top menu bar. Select Exclude to hide the service endpoint from the list.
To completely disable metric collection for the service endpoint, you can create an exclude rule by selecting Configure. See Service Endpoint Detection.
Diagnostic sessions are not intended to run in the context of a service endpoint alone. As a result, you cannot directly start a diagnostic session from a service endpoint. If you run a diagnostic session on the business transactions that include calls to the service endpoint, the transaction snapshots from these diagnostic sessions display in the service endpoint dashboard.
Service Endpoint Health Rules
You can create health rules to monitor the parameters that represent the normal or expected operations for your Service Endpoints. The parameters rely on metric values, for example, the average response time. When the performance of a service endpoint violates the conditions set by a health rule, a health rule is violated. Alerts notify you of any violation and initiate remediation actions to mitigate the violation event. It is important that you configure alerts appropriately to ensure that you do not miss any alerts or receive false alerts. 'Alert Sensitivity Tuning' (AST) helps you configure alerts with appropriate sensitivity. AST provides historical data for the metric or the baseline being configured and hence helps you visualize the impact of the alerting configuration. To create a health rule to monitor service endpoint parameters and fine-tune the sensitivity of the health rule using AST, see Create a Health Rule and Fine-tune Metric Evaluation.
Service Endpoint Limits
A service endpoint adds a small amount of system overhead. Agents capture approximately three metrics per service endpoint, so monitoring each service endpoint results in additional metric traffic.
To prevent the possibility of a boundless expansion of service endpoints, the Controller and agent configurations apply the following limits:
|Element||Limit||For more information|
|Application Agent||25 service endpoints per entry point type||See |
|Java Agent||40 asynchronous worker thread service endpoints|
|Node||100 service endpoints||See |
|Controller account||4000 service endpoints||For an on-premises Controller, the limit is configurable using the |
|Execution thread||1 endpoint||See |
Service Endpoint Metrics
Service endpoint metrics display under Service Endpoints in the metric browser. Service endpoint metrics are subject to the same operations as other metrics, including those around metric registration, metric rollups for tiers, and limits on the number of metrics. Custom metrics are not available for service endpoints.
Customize Service Endpoints
For Java applications, AppDynamics automatically detects and registers service endpoints. For either Java or .NET, you can configure custom service endpoint detection rules. See Service Endpoint Detection.