Load testing IIS using Log Parser and WCAT


There are a number of articles available that show how to use existing production IIS server logs to recreate a workload similar to that seen in production.

Unfortunately these articles are either incorrect, incomplete, have syntax errors, are specific to non-current versions of the products, or do not deal with Windows Authentication. The following process has been used to replicate production workloads successfully.

The following example uses Log Parser 2.2 and Web Capacity Analysis Tool (WCAT) 6.3.


1) Install Log Parser 2.2


Copy templates and SQL commands to the %ProgramFiles%\Log Parser 2.2 folder:


Copy IIS log files to analyse to the %ProgramFiles%\Log Parser 2.2 folder.

2) Generate WCAT Scenarios
2a) Using Anonymous Authentication on IIS

From a command prompt:

CD "\Program Files\Log Parser 2.2"
Logparser file:WCat.sql?logfile=*.log+outfile=CurrentLog.ubr -i:IISW3C -o:tpl -tpl:WCat.tpl

(missing -i:IISW3C parameter courtesy Scott Stafford)

2b) Using Windows Authentication on IIS

Edit wcat.NTLM.tpl and update DOMAIN, user and password.

From a command prompt:

CD "\Program Files\Log Parser 2.2"
Logparser file:WCat.sql?logfile=*.log+outfile=CurrentLog.ubr -i:IISW3C -o:tpl -tpl:WCat.NTLM.tpl

3) Install WCAT on Test Clients
WCAT has the architecture of a controller and many clients.

Install WCAT on the controller:


Copy the "%ProgramFiles%\Log Parser 2.2\CurrentLog.ubr" scenario file to the %ProgramFiles%\wcat folder.

Install WCAT on the clients:

From a command prompt:

CD "\Program Files\wcat"
cscript wcat.wsf -update -clients localhost Test1

Note: This will install the WCAT client (wcclient.exe) on the controller and the Test1 host. This will reboot all clients immediately.

4) Start the WCAT Controller

From a command prompt:

CD "\Program Files\wcat"
start wcctl.exe -t currentlog.ubr -s webserver.domain.com -c 2 -v 500

Note: The -c parameter specifies the number of clients to wait for.

5) Start the Clients

From a command prompt on the Controller:

CD "\Program Files\wcat"
start wcclient.exe localhost

From a command prompt on each client:

CD "%windir%\wcat"
start wcclient.exe controller.domain.com

6) Review Test Results

Run the following command on the Controller:

iexplore %ProgramFiles%\wcat\log.xml



Microsoft Internet Information Services 7.0
Microsoft Internet Information Services 6.0
Microsoft Internet Information Services 5.0

Created: 16th July 2009
Updated: 7th January 2010

© 2005-2022 Jamie Morrison