Troubleshooting IIS profiling
Published 11 June 2013
When you click Start Profiling for an ASP.NET web application (IIS), profiling may not start, and a "Cannot start IIS" error may be displayed. This can indicate that:
- The logged-in user has insufficient account permissions to run the web application
- Internet Explorer is running in protected mode
- IIS is unable to resolve the web application's URL
- ANTS Performance Profiler has encountered a conflict with another performance profiler installed on your computer
This page describes how to fix these issues.
The logged-in user has insufficient account permissions to run the web application
ANTS Performance Profiler starts the IIS application pool with permissions inherited from the currently logged-in user account, rather than using the IIS application settings.
To fix this issue:
- If possible, run ANTS Performance Profiler as an administrator
- If you can't run ANTS Performance Profiler as an administrator, grant the logged-in user account permissions to access the IIS configuration system and write to the ASP.NET temporary files.
For more information on how to do this, see Assign ASP.NET Permissions to the New Account (MSDN)
Manually specifying the ASP.NET account
The error may also occur when using "Manually specify ASP.NET account details". Check that the specified account is a valid user, has administrator privileges, and has read access to %ProgramFiles%\Red Gate\ANTS Performance Profiler 8\RedGate.ProfilerCore.dll and %ProgramFiles%\Red Gate\ANTS Performance Profiler 8\X64\RedGate.ProfilerCore.dll
IIS cannot resolve the web application's URL
If the bindings in IIS have been changed from the default, ANTS Performance Profiler may be unable to resolve your site's hostname. This error message may be shown:
Couldn't determine the IIS Site associated with URL 'http://< URL>:port'. Please check that the URL is serviced by the instance of IIS running on this machine.
To fix this issue:
- On the settings screen, from the list of application types, select IIS - ASP.NET.
- In the URL for ASP.NET web application field, enter localhost or the loopback IP address (127.0.0.1).
- Try to profile your application again.
Some assemblies don't show line-level timings
This is usually caused by enabling line-level timings with code using the SecurityTransparent attribute. For more information, see Profiling SecurityTransparent and partially-trusted assemblies.
ANTS Performance Profiler encounters a conflict with another performance profiler installed on your computer
IIS can fail to start if ANTS Performance Profiler encounters a conflict with another performance profiler. We recommend uninstalling other profilers while profiling with ANTS Performance Profiler. You can tell if another product is profiling IIS using the free Microsoft Process Explorer (download here):
- Close down all instances of ANTS Performance Profiler running on your machine.
- Open Process Explorer, and look for the IIS user mode worker process (w3wp.exe).
- Right click on the process, click Properties and then click the Environment tab.
- Look for the COR_ENABLE_PROFILING and COR_PROFILER values. If these are present, another product is profiling IIS.
If you had ANTS Performance Profiler version 7.0 and installed the early access build of the continuous profiling tool, an IIS module installed by the continuous profiler may be preventing profiling. To re-enable other profilers with IIS, uninstall the IIS Profiler Module:
- From your computer's Start menu, launch the Continuous Profiling Configuration Tool.
- Click Uninstall.
Contacting Red Gate support
If you still can't fix your problem using the information in this topic, please contact support, and supply as much information as you can, including:
- the versions of IIS and ANTS Performance Profiler you are using
- your computer's operating system
- the steps you have already tried
- any error messages ANTS Performance Profiler has generated, including any in the log files