Citrix EdgeSight Active Application Monitoring is an automated performance testing tool included with EdgeSight Service Pack 2.0 and higher. With Active Application Monitoring, you can create scripts to perform specific application actions and run it against the targeted XenApp server. Specific monitoring points can be created within the script to generate alerts. For example, if a specific action within the script takes longer than specified or does not complete successfully, EdgeSight will generate an alert.
Recently, I was tasked with demonstrating script creation and alerting for a critical business application. Information on Active Application Monitoring is provided with the Help feature of the software console, but the instructions for configuring alerting in EdgeSight are not very clear. Because of this, I had to troubleshoot why EdgeSight wasn’t generating alerts when a failure event was created. As a test, I created a simple script to launch Notepad, added a few monitoring points, then configured EdgeSight to send an alert if any of the monitoring points failed or took longer than a specific amount of time.
On the EdgeSight server, I configured alerts for several monitoring points using both the Application Response Failure rule and the Application Response Time rule. I set Application Response time to two seconds; if a response took longer, it should send an alert. I also tested the e-mail capability via EdgeSight; it was functioning properly.
To see if I could force the script to generate an alert using the Application Response Failure, I configured the published Notepad to allow only one concurrent connection. When the script tried to connect, it generated a message stating that I already had a session open and could not open another. It then waited 30 seconds and logged off. In the AAM console, this showed as an Instruction 8 Timed Out, but no alerts were generated.
I also set up a monitoring point on the actual instruction that timed out and configured EdgeSight to alert for response time and failure. It too did not generate an alert. Neither the EdgeSight logs nor Event Viewer showed an entry to why the alerts were not being generated.
The problem was due to where the script name with the .mon extension was entered. From the screenshot below, it would be easy to assume that the full name would be entered under the Script name field, not under Test name.
The following procedure describes the correct way of writing a script.
Creating a New Alert Rule
This work is done under the Configuration Tab of the EdgeSight Web console.
- Go to Company Configuration > Alerts > Rules, and select New Alert Rule on the left side.
- For creating an Alert which will be attached to an AAM Monitoring Point, select XenApp Performance Alerts.
- For AAM scripts, you can select from two options:
- Applications Response Failure. Creates an alert when a script fails.
- Applications Response Time. Creates an alert when the time it takes a monitoring point to run exceeds the threshold you set.
- Define the Alert Rule condition:
- Note that in the Test name field, you must enter the actual script file name, ending with “.mon”.
- In the Monitoring point field, enter the name of the Monitoring point; this can be verified in the AAM Controller.
- The Duration (seconds) refers to the threshold of time which, if exceeded, will generate an alert.
- Review the Alert Rule Summary, then click Next.
- Assign an Alert Rule to a department, then click Next.
- On the next screen, select the Department you wish to map an Alert Action to.
- Select the Alert Actions that will be map to this Alert Rule or Create a New Alert Action. If you have already configured an E-mail Action Group, it will show up here.
- Select Next to view a summary of these mappings.
- Click Finish.