Utility SpotlightServer Performance Advisor

Joshua Hoffman

Download the code for this article: Microsoft Windows Server 2003 Performance Advisor (4,000KB)

Establishing solid configurations that are optimized for a server’s unique environment can often be challenging work, especially in large or complex environments. Once your servers are deployed, keeping an eye on performance to ensure that every server is running in tip-top shape can be a full-time job.

To help get that job done well, consider using the Server Performance Advisor (SPA). SPA provides a system administrator with advice and guidance on common configuration and performance issues. By gathering data from a variety of sources, including performance counters, registry keys, and Event Tracing for Windows® (ETW), SPA can give you an in-depth look at current server performance, and show where you can make improvements.

Also, by gathering metrics over short periods of time and repeating the process regularly, SPA can provide insight into developing trends and help to quickly identify trouble areas. By comparing this data against a set of predefined rules and thresholds, SPA can help to analyze those trends.

Data Collector Groups

The data collected by SPA and the reports it can generate are defined by data collector groups, which enable SPA to collect the data that is most relevant to the role of the server. Data collector groups included with SPA correspond to common server roles, such as File Server, DNS Server, and Domain Controller.

Figure 1 Server Performance Advisor in Action

Figure 1** Server Performance Advisor in Action **

When you install SPA, it automatically detects the server roles currently configured for the system. When SPA detects a known server role for which it has a corresponding data collector group, that data collector group is installed automatically. You can also create your own data collector groups, customized for your environment.

Each data collector group is defined in an XML-based configuration template. The configuration template defines all of the elements that a system administrator might want to know about for a given server role. These include various system performance counters, event traces, and registry keys that provide information needed to determine if a server is not performing optimally. An additional XML-based file contains the rules by which these metrics are processed: thresholds and definitions of optimal performance, as well as possible remedies and additional resources should your server values differ from those definitions.


SPA provides a rich reporting infrastructure that enables you to present the data in whatever way is most effective for you. For example, you may want to present detailed performance numbers to your system engineers, while choosing to present a big-picture view to your IT managers. The report schemas are rooted in flexible XML-based config files, and there’s a graphical interface for modifying them.


SPA provides a robust command-line interface, allowing for the use of scripts or other management tools to query data, start and stop tasks, and make configuration changes. SPA also provides a Management Pack for Microsoft® Operations Manager (MOM), allowing you to roll up the role-based performance data it collects into your organization’s larger monitoring and management solution. SPA makes for a great addition to any IT pro toolbox. You can grab your own copy by visiting the Code Downloads section of the TechNet Magazine Web site.

Joshua Hoffman is the Technical and Acquisitions Editor for TechNet Magazine.

© 2008 Microsoft Corporation and CMP Media, LLC. All rights reserved; reproduction in part or in whole without permission is prohibited.