I've never been able to find anything good online for monitoring Citrix XenApp client desktops.

Usually the problems that stop the show only appear to users once they login and try to launch an application.

It rarely helps to monitor the Windows services being up, sometimes even those have locked and shows as started but still requiring a restart.

So how does the community solve monitoring of Citrix XenApp client desktops? How do you make sure end users can login and launch their apps?

I found something about Citrix EdgeSight here on serverfault, I would not be against a solution outside of Nagios as long as it can alert us when user sessions start failing.


Doing merely "alive" checks of server, services etc. provides little benefit in my experience.

A bad performing XenApp server can be almost as bad, as one that's completely out of service - In either case, users are not productive and your helpdesk gets flooded with calls.

I'm using EdgeSight at my employer, which is tailored to monitor XenApp, but it's showing its age and hasn't seen an upgrade, let alone a significant one, in ages (development was stopped long ago, and EdgeSight is now merged into XenDesktop).

A few alternatives off the top of my head, that I'm planning to look into myself (not affiliated with any of those, by the way):

Now, as for monitoring using Nagios, I assume it can get performance metrics from Windows nodes? I'd pay special attention to these performance metrics (not an exhaustive list):

  • CPU % usage (short peaks are usually OK, more than a few seconds at ~95+%, or 30 seconds at ~80+% usually indicates problems)
  • CPU interrupt time (driver problems can cause CPU power to be consumed by interrupts, thus not be available to applications)
  • Context switches/sec (high level of context switching, indicates too few logical CPU cores to handle the workload)
  • Available RAM (memory starvation causes excessive paging, which in turn hurts user performance)
  • Disk % busy time (constantly busy disks indicates, well, disk bottleneck)
  • Disk read/write latency (high disk latency immediately hurts user experience. Can the disks/RAID controller/SAN deliver enough I/O's?)
  • Disk free space (no disk space, no work space, no productivity)
  • Active XenApp sessions (often you can define a rule of thumb of the maximum number of sessions, you can comfortably fit on a server. Consider including "user count" in your load evaluator, so servers approaching this limit, are less likely to get new user sessions)

Get some performance history for these metrics from your live environment, determine your "red/yellow/green" values, then set up alerts.

| improve this answer | |
  • It's hard to answer this thread but I'll give you the point since you mentioned EdgeSight. The answer is clearly to move to a platinum license imo. – Stefan Midjich Jan 9 '14 at 15:35
  • While there are certainly benfits of the Platinum license level, it's also much more expensive than Enterprise. We run Enterprise and license "EdgeSight for XenApp" separately. – abstrask Jan 9 '14 at 16:25

The most obvious check is check_tcp to port 1494 (standard ica port), if that does not work, users won't be able to log in.

It is also useful to monitor port 8080 (ica xml) for the web interface.

Oh, and one more: monitor the store front web interface, if that fails, users will not be able to log in either.

| improve this answer | |

In addition t Natxo's good suggestions, don't forget to monitor TCP 2598, which is used instead of 1494 for Session Reliability applications.

Also monitor your active session counts across all servers in your farm. If one server stops accepting new logins, you'll see its count drop below what it normally is and/or what the other servers currently have.

I'm not that familiar with Nagios; a quick search doesn't show a synthetic transaction for actually performing a login. However, if you can find or write one, that would be gold - actually logging into an application is the most correct way to test if XenApp is functioning properly.

| improve this answer | |

Not the answer you're looking for? Browse other questions tagged or ask your own question.