Search Wiki:

Microsoft Visual Studio AJAX Profiling Extensions

Microsoft Visual Studio AJAX Profiling Extensions provides server-side extensions for profiling JavaScript code executed in a client browser. It does this by modifying the JavaScript as it leaves your server to capture timings when JavaScript functions are called and when they return. The data on function entry/exit timings is then transmitted back up to the server, from where it can be later downloaded and analyzed. This method of JavaScript profiling requires no modifications to the client and should work with most popular browsers. It has been tested with Internet Explorer and Firefox, and is likely to work with other browsers that support JavaScript, but your mileage may vary.

Microsoft Visual Studio AJAX Profiling Extensions originated as a research project called AjaxView from Microsoft Research. The goal was to allow developers to gain insight into the client-side portion of the AJAX applications as they execute within the client’s browser. AjaxView was used with a variety of instrumentation policies, ranging from performance profiling, to code coverage, bug finding, feature profiling, etc.

Quick Start:

1. Download and Install Microsoft Visual Studio AJAX Profiling Extensions Server components on your server.
There is a version for 32-bit and a separate install for 64-bit operating systems. Please choose the install package that matches your operating system.
The system requirements for server install are:
• 32 or 64 bit Windows Vista or Windows Server 2008
• IIS7 with ASP.NET, .NET Extensibility, IIS6 metabase compatibility (for install)
• .NET Framework 3.5
• web pages/applications running in “Integrated-mode” in the same site as Server Components. Classic-mode is not supported for profiling.

2. Open your web application/pages in the website you chose during setup using a client browser. Right click and “view source” to verify that the JavaScript has been modified. Use the browser to exercise your JavaScript code, accumulated results are posted back to the server at 10 second intervals.

3. Download and Install Microsoft Visual Studio AJAX Profiling Extensions Visual Studio components on your client machine. There is only a 32-bit version of client install which can be used on 32 and 64 bit systems. Please exit Visual Studio before installing.
The system requirements for server install are:
• Visual Studio Team System 2008 Developer Edition (or Team Suite) with Performance Tools installed
• Service Pack 1 for Visual Studio Team System 2008
• .NET Framework 3.5

4. Launch the admin console from your client machine at http://<>/AjaxProfile (Internet shortcut is on the start menu on server). This page will allow you to create profiling sessions, turn on and off JavaScript modifications, and logging of results. A ‘Profile1’ session has been created during setup and will hold your profile results. Click on “Profile1” in the sessions list box. The page you visited in step #2 should be shown in the web pages list box.

5. Press the “Get Profile Data” button. An open/save box will be displayed, press open.
By default the downloaded files are named with a timestamp. Profiling files have an extension of AJXV and have been associated with Visual Studio during the client install. You may view the results by opening the AJXV file from Explorer, drag and drop to Visual Studio, or opening the file via the open dialog in Visual Studio. The AJAX Profiling Extensions files can also be added to an existing Performance Session under the reports folder.

6. Visual Studio will launch and show the profiling results.

7. Join the Discussion


Microsoft Visual Studio AJAX Profiling Extensions is intended as a performance optimizing tool for internal test environments, and should not be used on any external, internet connected sites.

Because of cross-site scripting Security built into browsers, we are unable to post back profile data to a different website on the same server. This means that you can only profile applications or sites that are in the same site as the Ajax Profiling Extensions components. To make adding additonal sites easier, we have included two batch files that will add the AjaxProfile application and profiling extensions handler to any other site on the same server.
This command will add profiling components to a site:

addSite.cmd “my site name”

This command removes the components from a site:

removeSite.cmd “my site name”

both command files can be found in the c:\program files\Microsoft Visual Studio\Ajax Profiling Extensions\ directory (or other directory specified in setup)
When the server components are uninstalled via setup all sites will be scanned and component references removed.

To learn more about the following, click the links:
Admin Console
Profiling Results
Server Components
Visual Studio Components
Caching and Profiling Extensions

For additional information please consult the ReadMe.doc file included with install, or by clicking the previous link.


• Microsoft Visual Studio AJAX Profiling Extensions is provided as an unsupported Visual Studio Power Tool. It is provided “as is” without technical support from Microsoft. If you need assistance please refer to community support at in the Discussions section.

Thank you for trying Microsoft Visual Studio AJAX Profiling Extensions, we hope it will be useful.

Microsoft Visual Studio AJAX Profiling Extensions Team
Last edited Apr 29 2009 at 10:43 PM  by emrek, version 32
Stu wrote  May 20 2009 at 10:44 AM  
I'm disappointed that Server 2008 is a requirement as I'm unable to upgrade from Server 2003 R2. Surely, this could easily have been implemented without a dependency on IIS 7?

MoezTounsi wrote  Aug 20 2009 at 7:32 AM  
You can depackage the installation, and then strem it on you IIS6, this worked for me before.
Hope this isn't late.


Page view tracker