PAL v2.0 is an easy to use tool which simplifies the analysis of Microsoft Performance Monitor Logs (.blg | .csv). It generates an HTML report containing graphical charts and alerts of the performance counters using known thresholds.
This alpha release is a technology preview containing only base operating system thresholds. As we progress through the beta cycle more threshold files for specific products will release with the tool such as Microsoft Exchange Server, Microsoft SQL Server, and Microsoft SharePoint Server.
This build of the tool is command line only in a PowerShell. A graphical user interface (GUI) will ship in a minor release version later in the development cycle.
.\PAL.ps1 -Log <Path to the Perfmon Log> -ThresholdFile <Path to the PAL xml threshold file> -NumberOfProcessors Integer -TotalMemory Integer -SixtyFourBit $True|$False -AllCounterStats $True|$False
-Log: (Required) System.String This is the file path to a Microsoft Performance Monitor Log in either binary (.blg) or text (.csv). Multiple counter logs can be specified by separating each file path with a semicolon (;). PAL will merge these files togeher using the Relog.exe command line tool built into the operating system.
-ThresholdFile: (Optional) System.String This is the file path to the PAL threshold file (*.xml). These files exist in the installation directory of the PAL tool. If omitted, the QuickSystemOverview.xml threshold file is used.
-NumberOfProcessors: (Optional) System.Int32 This is the number of logical processors (including mult-core processors) running on the computer where the Perfmon log was captured. Do not count Hyper-Threaded processors.
-TotalMemory: (Optional) System.Int32 This is the amount of physical RAM in gigabytes installed on the computer where the Perfmon log was captured. If omitted, 4GBs is assumed.
-SixtyFourBit: (Optional) System.Boolean This a whether or not the computer where the perfmon log was captured is a 32-bit (x86) or 64-bit (x64) computer. If omitted, False (32-bit) is assumed.
-AllCounterStats: (Optional) System.Boolean This is a new feature in PAL v2.0 which tells PAL to chart all performance counters found in the log. Warning: This can be resource intensive. If omitted, False is assumed - meaning PAL will only chart and analyze counters found in the PAL threshold file specified in the ThresholdFile argument.
-OutputDir: (Optional) System.String This is the directory path of the directory location create the output of the tool.
PAL threshold files might need more arguments passed into the script for proper analysis. Consult the documentation of the threshold file for more information on special arguments.
.\PAL.ps1 -Log SamplePerfmonLog.blg -ThresholdFile QuickSystemOverview.xml -NumberOfProcessors 1 -TotalMemory 1 -SixyFourBit $False -AllCounterStats $False
Process all counters in the log Example:
.\PAL.ps1 -Log SamplePerfmonLog.blg -ThresholdFile QuickSystemOverview.xml -NumberOfProcessors 1 -TotalMemory 1 -SixtyFourBit $False -AllCounterStats $True
No installation is required, but dependent, free, products are required.
Required Products (free and public):
- PowerShell v1.0 or greater. (developed on PowerShell v2.0)
- Microsoft .NET Framework 3.5 Service Pack 1
- Microsoft Chart Controls for Microsoft .NET Framework 3.5
The PALv2.0_Alpha1.zip zip file contains the following files:
*PAL.ps1: This is the PAL tool and is a PowerShell script.
*QuickSystemOverview.xml: This is the only PAL threshold file in this release.
*SamplePerfmonLog.blg: This is a sample Perfmon log to test with.