Simplify networkwide performance monitoring and routine reporting

What would you give to automatically monitor the performance of your network's crucial systems? Would your job be easier if you could collect only the performance counters you want from each system, then copy the performance data you collect from each server to a central location? Would you like to easily view the data you collect with sets of predefined charts? Performance Gallery makes all these tasks possible.

Performance Gallery is a computer-performance data collection and reporting system for Windows 2000 (Win2K) and Windows NT. Two vendors provide the components for the package. Demand Technology Software's Performance SeNTry 2.3 uses the Win2K or NT Performance Monitor API to collect performance data and store the fields you select in standard comma-delimited ASCII files. Lund Performance Solutions' Performance Gallery Gold C.02 provides flexible data presentation and reporting tools, including a variety of prepared reports.

When you install Performance Gallery, you install three components: SeNTry Administration, SeNTry Collection Service, and Performance Gallery Gold. The three components require less than 35MB of disk space. You also need to install SeNTry Collection Service (which requires only 1711KB of disk space) on each computer you want to monitor. The installation wizard lets you select which of the three components you install on each machine. In the Windows 2000 Magazine Lab, I installed the full package on a Compaq Deskpro with NT Workstation 4.0 installed. The installation procedure ran in just a few minutes with no surprises.

With the software, Demand Technology includes two spiral-bound user guides: one for the Performance SeNTry components and one for Performance Gallery Gold. A third manual, Getting Started in Windows NT Performance Monitoring Using Lund Performance Gallery, describes the meanings of many basic performance counters. (This manual also appears on the installation CD-ROM as a Portable Document Format—PDF—file.) The user guides introduce you to basic concepts and clearly show how to use each component. The SeNTry documentation is easy to use and includes clear instructions for using the command-line interface utilities for automating routine Collection Service management.

To use Performance SeNTry, you first create collection sets, which comprise groups of objects and counters you want to capture and collection parameters for each group. Next, you assign NT computers to the collection sets and tell SeNTry which computers you want to monitor. Then, you review the data collection results.

To start my Performance Gallery test, I installed the SeNTry Collection Service on a system running Windows 2000 Server (Win2K Server) Release Candidate 3 (RC3) and Microsoft SQL Server 7.0. The Collection Service installed and initialized without requiring a system reboot. I moved back to the Deskpro on which I'd installed SeNTry Administration and created a Data Collection Set (DCS) for my SQL Server 7.0 computer. SeNTry has several predefined DCSs. The Master Collection Set lists all the Performance Monitor objects SeNTry knows about, including many objects from Microsoft, IBM (i.e., DB2 and Lotus objects), Benchmark Factory, and a variety of other software vendors. Screen 1, page 143, shows the DCS Administration window, in which you can create and assign DCSs. Screen 2 shows the Network Browser window, in which you view how you've set up SeNTry on your network. I found the SQL Server 7.0 Starter Set in the DCS Administration Window. This predefined set was close to the configuration I wanted, so I copied the set (to preserve the original) and customized the copy by adding and removing objects and counters.

Performance SeNTry 2.3 can't browse a computer system to find Performance Monitor objects that aren't a part of the Master Collection Set or to create a collection set for a monitored computer, but this shortcoming isn't serious. The Master Collection Set is fairly complete, and Demand Technology will create custom DCSs for you. To control how much data the program writes to each file, you can configure the first collection cycle's start time and the duration of subsequent collection cycles when you configure the DCS. SeNTry will also log activities and the error conditions the program detects to an ASCII file, to the NT Event Log, or both.

After I created a DCS for my SQL Server machine, I assigned the DCS to the server. SeNTry Administration copied the collection parameters from the DCS into the SeNTry part of the Registry on the server. I could either wait until the end of the collection cycle to start the new set or close the active collection file to start the new set immediately.

After I set up my DCS, I tested cross- domain performance monitoring. I installed the SeNTry Collection Service on my Benchmark Factory Control Console computer (which I named AMDAHL_ENVISTA). I made sure that AMDAHL_ENVISTA and my SeNTry Administration computer belonged to separate domains, then created a DCS and attempted to assign AMDAHL_ENVISTA to the collection set. The attempt failed because the user ID I was using on the SeNTry Administration computer didn't have administrative rights on the AMDAHL_ENVISTA server and couldn't modify the server's Registry. To correct the problem, I created a local machine account on AMDAHL_ENVISTA that had administrative authority and that impersonated the account I was using on my SeNTry Administration computer. This change let SeNTry Administration successfully write the new data collection parameters to AMDAHL_ENVISTA's Registry. An alternative correction is to create a trust relationship between the two domains so that you can administer the remote machine using a domain administrator account for the local domain. Or you can export the DCS to a file, copy the file to the computer running the DCS you want to configure, and import the DCS file. However, if you want SeNTry Collection Service to copy collected data files to a common server, the service must run with an account that is authorized to write to the common server. Otherwise, you must use a method that is less direct than having SeNTry Collection Service copy the files directly. By default, SeNTry Collection Service runs using the local system account, which doesn't have authority to access resources on remote systems.

To save disk space and processing time, Performance Gallery lets you limit the size of the Performance Monitor data files you collect. (NT Performance Monitor is designed to collect all counters for each object you select. If you've ever used the utility to collect data over time, you are aware that limiting file size is important.) First, you limit your DCSs by specifying the counters you want to collect. Then, you can use five filters, which you select from the Collection Filters window, to discard process and thread object data that have limited value. The %Processor Time filter lets you specify a value for the %Processor Time counter. The system saves Process object data only when the counter exceeds the value you specify. The Enable Thread State filter examines each thread and saves its object data only when the thread is waiting to execute in the scheduler queue. The Enable Thread Wait State Reason filter saves thread object data when the filter detects one of several predefined memory-related causes of wait state. The Enable Thread Objects for Busy Process filter saves thread object data when the %Processor Time counter is greater than a value you specify. When you select the last filter, Enable Suppress Idle Process, the filter discards System Idle Process data.

In addition to listing the Performance Monitor counters you want to collect, the DCS specifies when the program will collect data and where the data will go. When you edit a DCS, you'll encounter the Parameter Administration window. This window lets you specify what time of day the data collection cycle starts and how long each collection cycle lasts. The Parameter Administration window also lets you specify a command or script that the SeNTry Collection Service runs either at the end of each collection cycle (when the program closes the active collection data file and sends subsequent data to a new file) or at the end of a new daily cycle. Your script can copy data files to a central location where Performance Gallery can either use them for periodic reporting or invoke scripts that you produce.

Managing the data is simple. By default, SeNTry creates a hierarchical data file structure on the computers it monitors. SeNTry places the file that is open for collection in a Current directory. At the end of the collection cycle, the program moves the file to a Previous directory. At the day's end, SeNTry moves the file to an Archive directory and deletes archived files that are older than a number of days you specify.

You can copy all data files to the same directory without worrying about overwriting files with duplicate names and losing data because the program constructs each data file's name from the system name and the date and time data collection started. For example, the program collected a file on my SQL Server computer on January 25, 2000, at 6:00 a.m. and named the file JPGSQL_200001250600.smf.

After I'd learned about SeNTry's file structure, I set up reporting on my system. To ensure that the Collection Service on each computer had the authority to run the service and copy files to a common share, I used a local systems administrator account to set up the Collection Service. To accommodate systems in the other domain, I also created a local machine account with the same name and password as the server hosting the common share. I gave the local machine account the authority to write to the common share, which let the local machine account running SeNTry Collection Service impersonate the account that was authorized to access the common share. Finally, I made sure the account I used with Performance Gallery Gold also had access to the shared data.

Performance Gallery Gold, Performance Gallery's reporting component, uses data files that Performance SeNTry collects to show one or more charts in its display area, the Desktop. To design a chart, you create a template in which you assign the data elements for the chart and specify the chart's layout. You can save the Desktop, which Screen 3 shows, and display a predefined set of charts.

Performance Gallery Gold provides a variety of 2-D and 3-D charting options (e.g., you can rotate 3-D charts or superimpose one 2-D chart onto another). When you graph an All Process or All Processor group, you can select Modify Chart from the chart's context menu and display a subchart, which charts one instance within the category, (e.g., one process or one processor). You can display data graphically or in a table, and you can switch between the two options with a couple of mouse clicks. When you define a chart template, you can select as many as five other existing charts to appear on the primary chart's right-click shortcut menu. This feature lets you display information related to the active chart. Of course, you can print and export charts in several graphic and tabular formats.

Performance Gallery didn't include a few features that I expected. For example, I wanted the system to consolidate data files for historical tracking. I knew that I could save a lot of disk space over time if Performance Gallery could sum or average counters in the file to reduce the number of samples from 60 per hour to 6 per hour. I also wanted to make a custom copy of a data file limited to a specific time range and include a selected subset of counters (such as those that Performance Monitor's Relog function creates). Other Performance SeNTry features let systems administrators script and automate various aspects of data collection. However, Performance Gallery Gold doesn't include such automation features. The chart-exporting feature also seems incomplete. For example, Performance Gallery Gold can export tabular reports in HTML format. However, the program would be more valuable if administrators could schedule exports of charts from one or more desktops to an HTML representation in a shared network directory, then email a link to interested parties. According to Lund Performance Solutions, the next release of Performance Gallery Gold will let you display data in realtime and write scripts to automatically export Desktop charts as files.

Performance Gallery is a useful performance monitoring and reporting tool that includes a feature set that will make life easier for systems administrators who are responsible for NT performance management. Because Performance Gallery is easy to use, busy systems administrators can review performance data consistently. The program is well worth the purchase price.

Performance Gallery
Contact: Demand Technology Software * 800-531-6143
Price: $1999 for a standard five-pack bundle (one SeNTry Administrator and Systems Console, five data collectors, and one reporting package). Additional data collectors and reporting package licenses are available.
Decision Summary:
Pros: Lets administrators efficiently collect routine data for Windows NT performance monitoring, consolidate Performance Monitor data from many systems to one server, define charts for routine performance data review, display a set of charts with one operation, and link to other charts to easily view related data
Cons: Doesn't let administrators schedule generation or distribution of predefined charts; can't consolidate data files on disk