To access: AppDynamics Home > Servers > Service Availability (left navigation menu)
The Service Availability feature of Server Visibility enables you to monitor internal or external HTTP and HTTPS services. You configure service monitoring from the controller UI. After you configure monitoring for a service, Service Availability evaluates the service as follows:
- The agent evaluates each response, based on your specified violation rules, and flags each response as failed (rule violation) or successful (no violation).
- The service monitor maintains a rolling buffer of evaluated responses. This buffer has a configurable window size (number of evaluated responses), success threshold (number of successful responses), and failure ratio (number of failed responses).
- The monitor collects evaluated responses until the response buffer is full. Then it evaluates the service as:
- NORMAL - Successful responses is greater than or equal to the success threshold.
- CRITICAL - Failed responses is greater than or equal to the failure threshold.
- When the buffer is full, the monitor re-evaluates the service every time it evaluates a new response.
For example, with the following values:
- Success threshold = 3
- Failure threshold = 1
- Results window size = 5
The agent waits until five check results are received and from these five results, if there is one failure then the target state is CRITICAL. If there are at least three successful results, then the target state is NORMAL.
Licensing and System Requirements
Service Availability Monitoring requires a separate license and a Server Visibility license. Server Visibility is currently available for Linux, Windows and Solaris. See License Management and Server Visibility Requirements and Supported Environments.
Viewing the Monitored Services
The monitored services can be viewed in the Monitored Services list. The state is determined as described above by evaluating the Response Validators during the results window. Response Validators are rules you configure that are used to evaluate against the responses received from the service.
The possible states are:
- NORMAL - The number of successful responses in the result window is greater than or equal to the configured success threshold.
- CRITICAL - The number of failed responses in the result window is greater than or equal to the configured failed threshold.
- UNKNOWN - If the machine agent does not provide any data.
Monitored Services List
From the top navigation bar, click Servers > Service Availability to see a list of monitored services. Use the action toolbar to manage your monitored services by adding new ones, viewing details and so on.
Monitored Service Details
Select a monitored service and double-click to see the associated details.
Configure Service Availability
By default, configuration changes take effect within at least two minutes of the change, so you do not need to restart the Machine Agent after changing the configuration. If the protocol, target, or method of a service are changed once a service is created, the state of the service is set to UNKOWN, and is re-evaluated with the new configuration.
To access the configuration window do the following:
- From the Controller top navigation bar, select Servers > Service Availability.
You see a list of monitored services if any are configured.
- To add a service, click Add.
You see the Add Service Monitoring Configuration window with three tabs.
- On the Main tab, specify the required fields and save the configuration. Each field has an associated tool tip to that provides help. For details, see Main Configuration Window.
- On the Request Configuration tab, specify your request headers. For details, see Request Configuration.
- On the Response Validators tab, configure your validation rules. For details, see Response Validators.
Main Configuration Window
|Name||Name of your choice for this target configuration. This name appears in the Service Availability list.||N/A||Yes|
|Target||The resource to be monitored, for example,. Specify which HTTP method to use to send the request (GET, POST, HEAD)||N/A||Yes|
|Server||Name of the machine agent performing the monitoring. Only servers that are enable for Server Visibility show in the drop-down list.||N/A||Yes|
|Socket Timeout||How long to wait, in milliseconds, after a successful connection for a complete HTTP response.||30000||Yes|
|Success threshold||Number of required successes within the results window for a NORMAL state.||3||Yes|
|Check Interval||Interval time in between checks in seconds. Note - Setting this interval to more than 60 seconds will result in visible gaps in the metric graphs for monitored services.||10||Yes|
|Results Window Size||Number of most recent results to use in determining the state of the service.||5||Yes|
|Connect Timeout||How long to wait (in ms) for the service to respond to a connection request.||30000||Yes|
|Failure threshold||Number of required failures within the result window for a CRITICAL state.||1||Yes|
|Max response size||Maximum response size to collect in bytes.||5000||Yes|
|Follow redirects||Follow redirect to determine state of service.||Yes||No|
You can define a list of customized headers to send with requests. For example, the list can mimic desktop or mobile browsers. You can also define a request body for POST requests. An "Authorization" header can be specified if credentials are required.
|HTTP||header name and value pair||String||empty||Customized header to send with requests.|
|body||String||empty||Any data to send with the request. Usually used for POST.|
You can provide a list of rules for the machine agent to use to validate whether the monitored service is healthy. If any rule is violated, the response is considered failed.
For each rule you can specify the following:
- HTTP property
- a value
The list of operators varies depending on the property selected in the first drop-down.
Monitoring the Service Health
An event is sent to the controller for every state change and periodically (by default every 5 minutes). The update interval can be changed by setting the System property:
The events are visible from the Monitored Service details window and from the Server Visibility Events list.
You can see details by double-clicking the event.
The event properties are as follows:
- Category: CUSTOM
- Event Type: Service Availability
Severity- values can be ERROR (failure) or INFO (passing).
Use these steps to create alerts for your monitored services:
- From the Servers window, click Alert & Respond.
- Select Policies.
- Select Create Policy Manually.
If policies already exist, you may not see this option. Just click + to add a policy manually.
- Under Custom Events, click + to Add Custom Event.
- In the Actions section of the Policy window, add the action you want to execute if the policy violates and save the policy.