VMware View Performance Analysis of Logs (PAL) Utility

Introducing a new free tool for doing performance analysis on VMware View environments.


I’ve been using the Performance Analysis of Logs (PAL) tool for years (since the first version released in 2007) to assist in analyzing, reporting, and visualizing performance logs in Windows environments.  The real power of PAL is the built-in threshold files that interpret Perfmon counters, providing an explanation of what the counter is, why it matters, and thresholds for warnings and critical to help quickly zero in on performance bottlenecks.  PAL includes templates for Windows, Hyper-V, SQL, Active Directory, IIS, Exchange, .NET, and SharePoint.

I’m often called in to help customers conduct performance analysis and troubleshooting within their VMware View environments.  There are several great tools available for on-going monitoring and alerting in View environments – VMware offers vCenter Operations for VMware View, Xangati makes a good product, and there’s a free PCoIP Log Viewer from Chuck Hirstius at http://mindfluxinc.net/?p=367.  But some customers do not have budget for these products or have an immediate need to do spot troubleshooting for a particular VM, or have problems that extend beyond PCoIP.  I thought why not combine the power of PAL with some VMware View specific data to help analyze Perfmon logs in a View environment?

PAL Report Showing CPU Ready in a View Desktop

A Microsoft engineer, Jeff Stokes, wrote a very simple threshold file for VMware Tools counters for VMware guest VM’s.  It was a great start, but I found it didn’t provide enough detail and didn’t include PCoIP statistics for VMware View desktops.  I used Jeff’s template for inspiration and built my own, including VM Processor, VM Memory, and PCoIP Session statistics perfmon counters, along with explanations of each counter, links to resources for each counter, and ideas for remediating performance problems identified with counters that exceed expected thresholds or are suspected of being a bottleneck.  Windows System stats are included in PAL and are included in the PAL report my threshold file generates.  All told, there are 122 different Windows Performance Monitor (perfmon) counters included in my VMware View Desktop PAL report.

I also built a threshold file that can be used to analyze VMware View Connection Servers and Security Servers.  The standard PAL tool with Windows System Overview thresholds can be used to analyze VMware vCenter Server and VMware Composer servers.  All combined, you can use PAL to analyze all components of your VMware View environment, with the exception of Thin or Zero clients.

The full reports can be information overload – you’ll not use it for day-to-day monitoring.  Rather, use it for a deep analysis for specific VM’s with performance issues.

This is my first version of the VMware View specific thresholds.  I plan to add more analysis, calculated thresholds, etc. in future versions.  Also, stay tuned for a threshold file that is capable of analyzing ESXi ESXTOP batch mode output.

More details, usage instructions, and the PAL Threshold files for download are on the permalink page for this tool here: http://vmtoday.com/scripts-free-tools/view-pal/.  Watch this page for updates to the tool.

As always, I am open for constructive feedback on this tool.  Let me know if it is useful to you, needs some tweaking or tuning, or if you have ideas for cool new features.

Quick tip #1: You can use the View Desktop template to analyze any Windows-based VM, not just View desktops.  In this usage scenario, the PCoIP counters will be ignored.

Quick Tip #2: You can edit my PAL Template file and comment out the inheritence of the SystemOverview.xml file if you just want to collect and report on my VMware counters.


My fellow vExpert, Jonathan Medd, has a great script for deploying Perfmon Data Collector sets based on an XML template on his blog.  Use this to deploy my template to a batch of View desktops, all Connection Servers, etc.  Find Jonathan’s script here: www.jonathanmedd.net/2010/11/managing-perfmon-data-collector-sets-with-powershell.html

Ryen Tang takes a slightly different approach to deploying Perfmon data collectors – his approach will work with a bit of modifications for my counters.

Laerte Junior has another PowerShell approach for gathering Perfmon data from multiple remote computers here: http://www.simple-talk.com/sql/database-administration/gathering-perfmon-data-with-powershell/

Sample Reports

A quick screenshot of a small part of a View Desktop PAL report is to the right.  Full reports from my lab environment are linked below (warning – these reports are pretty massive pages and will take a bit of time to load, and the data is representative of a lab, not a production environment).  The VMware specific parts of the report will be at the bottom as PAL chains threshold files together, starting with the basic Windows system overview counters.

View PAL Desktop Sample Report

View PAL Connection Server Sample Report


  1. Hi, thanks for this brilliant article !
    Do you know where I could dig a threshold file for PAL in order to analyze a file server ?

    • The ‘System Overview’ template included in PAL should be able to report on everything of interest in a Windows file server. If there’s anything missing that you think would be helpful let me know and I’ll see if I can put something together.

  2. Hey Joshua, good job taking the baton on this and moving it forward. I tried (in vain) to find a VMware perf guy at the time so couldn’t really do the template justice. In fact the definitions I found were from cracking open a dll. 🙁 Good work here sir.

Drop a comment below: