Free Citrix XenApp Farm Monitoring Tool

Free Citrix XenApp Farm Monitoring Tool

Free Citrix XenApp Farm Monitoring Tool

This post has already been read 34103 times!

Free XenApp Monitoring

Free XenApp Monitoring

I have been working with Citrix for quite some time now and have always been looking for an effective dashboard that could display a current snapshot of whats happening on the farm at any point in time.  I wanted a simple interface that could alert you of any critical errors that may me happening.  Something to allow you to be more pro-active rather than re-active.

After looking for some time I found scripts that looked at bits and pages that displayed other bits but nothing (for free) that gave you a good overview.  So, I decided to write something myself.

You can use this tool for free, distribute it as you like, e-mail it, blog about it, basically do whatever you like.  I would only ask that you give me credit where due and also comment and request new features.  This is by no means finished but it is a good starting point and should give you some useful information to start with.

I will supply you with all the files and instructions on how to get it up and running for your farm.

Click HERE to download the files required

Currently it supports XenApp 6 and XenApp 6.5 Farms.


  • You will need to run the scheduled task as a farm administrator
  • You will need to run the power shell scheduled task on a Data Collector
  • You need a web server that is accessable from the data collector to upload the data collection output files
  • The web server must have asp installed

Setting it up

Web Server

As previously mentioned – you must have IIS installed and have the ASP function enabled.  Once this is done create a new directory in the wwwroot folder called monitoring and copy the following files into that directory (all the files are in the attached zip file)

  • display_errors.asp
  • index.asp
  • load_monitoring_data.asp
  • monitoring.css

Once these files are in the new directory you will need to open IIS and create a new Virtual Directory.  When the Virtual Directory is created open the default documents for the new directory and set the default document to index.asp

Data Collector

On the XenApp Data Collector log in as a XenApp admin and create a new directory in the root of C called monitoring.

Copy the following 2 files from the attached zip file into the new directory

  • monitoring.ps1
  • monitoring.ini

Edit the monitoring.ini file and set the following fields as appropriate.

  • LoadEval – The Default Load Evaluator used in your estate
  • Company – Your Company Name
  • LogoFile – your Company Logo File ie: logo.jpg (This will need to be copied into the same directory as index.asp
  • OutPutPath – The full path to the index.asp file in UNC format ie: \\server\c$\iNetPub\wwwroot\monitoring
  • UpTime – The number of days your servers can go without a reboot before they start alerting
  • SRPort – The Session Reliability Port Used
  • Good – The RGB Colour code for good status servers ie: #66cc66 for Green (include the #)
  • Bad – The RGB Colour code for bad status servers ie: #cc0000 for Red (include the #)

Once you have set these you should be able to run the powershell script and it will populate the web page.  I normally set this up on 2 Data Collectors at different intervals to provide some fail over.

If your powershell will not run the script type in the following command to enable unrestricted script access.

Set-ExecutionPolicy Unrestricted

That should be it – please comment and please share – the more people using it the better it will become as I can fix bugs, improve functions etc.  Feel free to donate any code you want for additional extras.



37 thoughts on “Free Citrix XenApp Farm Monitoring Tool

  1. Kevin Stanfield

    Awesome XenApp monitor fun. I think the disconnected users and unique users are flipped in the ps script….but great job man. I appreciate this tool.

    1. Bretty Post author

      Thanks mate, glad you like it. Let others know, trying to get it out there as a good free tool. I will edit the script and update the users.
      Thanks again and have a good new year!!

  2. Arman

    Hey Bretty,

    I’m running this for second time but now is only giving me the monitoring_log.txt file not sure why webfile.txt, webuserfile.txt and the others are not longer appearing. do you have any idea what could be causing this?
    It ran fine for the very first time.


      1. Arman


        Yes let me provide you some details:

        I’m logging into my data collector server, creating monitoring folder on C:\ and copying monitoring.conf and monitoring.ps1 files there, on my data collector server I dont have any site installed since I’m using the webfile.txt, webuserfile.txt and the others to create graphics on an external web hosting so in my data collector server I only have C:\inetpub so not sure if this could be afecting the resulting files since the very first time I use your script I was able to get all those files and create my graphics but now I can’t.
        Do you think somebody could change something on the environment that could be affecting?

        Thanks in advance

    1. Bretty Post author

      Hi there,

      Apologies for the slow reply – I have not been around of late. What is the account you are running the script as? Does it have Admin rights to the XenApp estate?


  3. Nov Red

    Does anyone have screen shots of what the functioning results look like?

    If so, can you please post or provide a link to the screen shots?


  4. Matt Paler

    Is it possible in the monitoring.ini file to have the script look at all load evaluators besides just one?

    1. Bretty Post author

      Hi there,

      Yes, but with a little customisation of the scripting engine behind it. Drop me an e-mail if your interested in me adding the additional code.


  5. Alex


    Good work, this tool is very simple to set up and it is very useful.

    I think that the “disconnected users” and “unique users” are flipped in the index.asp file.

    Like Matt, I’m interested in a multiple Load Evaluator value.
    Also it would be great to dispose the date and hour of the generated data into the result html page.

    To launch the script into a task I had to use this command :
    PowerShell -ExecutionPolicy Bypass -file C:\Monitoring\monitoring.PS1

    Thank you Bretty

    1. Bretty Post author

      Thanks Alex. Always nice to know people actually find these things useful!
      I will look at making a v2 of this when I get a chance. Will put your requests in.


  6. anwarul Islam

    Hi Bretty,

    Cool script, is it possible to add multiple Load Evaluators and also can the script send out email.

    1. Bretty Post author

      Yes, that is something that I have been asked for in the past. How many load evaluators do you need ? Will make a difference on the validation of the server assigned eval if there are more than one.

  7. Angel

    Hi Bretty,
    Great script! I am hoping I can get some help. I am trying to make it work in our environment but unsuccessful. When I go to the web page it only states ‘ Citrix Monitoring Dashboard, Active Sessions, Unique Users and Disconnected Session with no info. It also states, Server Online ‘If you are the systems administrator please click here to find out more about this error.
    Any help will be appreciated. Thank you.


  8. Kandan M

    Good script. am also interested in having multiple Load evaluators(4) as it is applied for different Silo servers. can the script modified for getting the users count shown based on the connected Citrix zone as they are running from different Data Center, it is one of the monitoring requirement.

    1. Bretty Post author

      Hi there,

      This is something that I am being asked for more and more these days. I will take a look at the script over the next week or so and post a v2 of the monitoring scripts. Stay Tuned!!

      Thanks for the comments,

    1. Bretty Post author

      Hi there.

      Yes I have done the v2 work but been swamped so not tested / released the code yet. Will try to get it out over the next week or two.

      Apologies 🙂

  9. Mark

    Hi Bretty,

    Great tool you put together there. Any updates in regards to version for 7.x? Would really like to use this in my current environment.

    Cheers Mark

  10. Amar Honnungar

    Good script!! I am not sure if somebody noticed it yet though, The webpage displaying the stats has a small correction. The “Unique Users” and “Disconnected Sessions” values needs to be interchanged. This change is to be done in index.asp file that we download here. Also multiple load evaluator shouldnt be considered as error. Awaiting for v2 🙂

  11. Pingback: Free Citrix Platform Monitoring Tool - Licensing, XenServer, StoreFront and far |

  12. Mark

    Hi, How can I restrict all servers in the farm from being checked. Is their a server filter ?
    Not all servers in our farm are active we have test servers and I would like to exclude from the checks is this possible?

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.