I am currently working with “Performance Monitor“, shortened perfmon, to measure “Windows
Server” performance. Performance Monitor is a standard tool that is installed default and will
probably exist on every server you work on. The screenshot below show the main window of perfmon. In the window below, you can see I have created two collector sets, one for “SQL Server 2008 R2” counters and one
collector set for standard “Windows Server 2008 R2” counters. In my previous post, I found a range of basic and extended counters for Windows Server and SQL Server. These are named “Sql2008R2” and “StdWinSrv2008R2” below.
When you define collector sets, these can be created based on a template or manually selected counters. You can also monitor a server performance in real-time. The screenshot below show this option that is available under the “Monitor Tools | Performance Monitor” in the screenshot above. The screenshot below show how this window looks like on a server with the counters that is available in the “System Summary” page.
Create new set
When you create a counter collector set, you right-click on the User-defined in the menu on left, selecting “New | Collector Set”. In the first screenshot you give the collector set a name and decide if the collector set shall be created based on a template or manually. I will not cover the template based collectors in this post, but the template available are as follow:
- System Diagnostics
- System Performance
Each of these collector sets will run for approximately 1 min, collect data and generate a HTML report. But I will use the manual approach for this post. The screenshot below shows the first screen where name and type is defined.
The next step you need to define that the collector set shall apply for performance counters. The other options will covered later.
The next step is used to select the performance counters you want the collector set to include in the data collection session. In the screenshot below, I have only selected two performance counters: “Memory – Available Mbytes” and “Processor Information (_Total)\% Idle Time“. The collector set will collect data each 15 seconds when it runs, but this interval might be changes.
The next step is to save collector set, and you might change the user that user that shall run the collector set. You also have the option to set the properties for the collector set where the schedule or file settings can be configured. But these settings are covered later in this post.
When you have defined the Collector set with proper number of performance counters, you can start the set manually or schedule it to run at predefined times. Right-click on the collector set, select the Schedule tab. Click Add button to create a schedule for your collector set. These settings looks like many other scheduling applications. You can start a start-date (including time) and end-date, in addition to which days the collector set shall be running.
When the schedule is defined, you should define the stop condition for the “run”. In my case, I want to collect information in normal working hours. Normal working hours are 08:00 til 16:00. In addition, I want to collect plus, minus two hours, resulting in collecting counter values between 06:00 til 18:00. This will help us see when people start using application on the server and how the workload is during the working day.
Perfmon also offer the option to run a “windows scheduled task” when the perfmon run is completed.
This task can copy BLG files to a file share where they can be picked up and stored in a database for further analysis. The process of putting counter data into a database will be the topic of my next post.