FAQ. dotTrace 4.0 + IIS. dotTrace doesn't start profiling IIS
Several users reported a problem that IIS 7.5 is not detected by dotTrace 4.0 and thus dotTrace starts and all buttons in the profiler controller stays disabled.
What should happen? After the user presses Run in Profiler configuration dotTrace stops w3wp.exe process and starts it again under profiler.
What are the known possible problems:
1. The user account which runs the application pool in iis must have a read-only permissions to dotTrace bin catalog.
If you use ApplicationPoolIdentity as the user account, then your account to add permissions will be IIS APPPOOL\YourAppPoolName.
Add the rules to dotTrace\v4.0\Bin folder and all items and subfolders inside:
- Open folder C:\Program Files (x86)\JetBrains\dotTrace\v4.0
- Right click on Bin folder inside -> Properties ->Security->Advanced->Change Permissions->Add
- In the Select user or group dialog manually enter IIS APPPOOL\YourAppPoolName
- Press CheckNames and Ok.
- Add Read permission, read attributes and read extended attributes to this folder, subfolders and files.
2. Other profilers (YourKit) may affect IIS/Windows service/Net process profiling scenarios by maintaining the registry key values"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\COR_ENABLE_PROFILING"
2.1. Remove YourKit
2.2. Run regedit. Search for registry keys COR_* and remove them manually.
In 4.0.1 we have introduced several fixes regarding other profilers. Try upgrading to the most recent build.
3. Try to temporary disable firewall and antivirus, it may somehow help.
If nothing helps:
Try to (temporary) run the application pool from some Local Admin account.
What else could be done to diagnose:
1. Enable the Core logs, reproduce the problem and send us the logs.
Steps to enable logs:
- Delete everything from %temp% folder
- Open Profiler configuration windows (Profile->IIS)
- Press Ctrl+Shift+Alt+F11 -> You will get “Expert options button”. Press it.
- Check the checkbox “Enable Logs” (only this checkbox). Press OK.
- Start profiling.
-
After profilation check the contents of the %temp%\JetLogs. If there are some files containing 'Core' in their names, then it means that profilation started and core was loaded but died of exception. If there were no 'Core' files, then it mean the profilation didn't start.
- If there are no log with 'Core' in the file name, then check if there were some lgc*.* files in the %temp% folder.
Don't forget:
To contact support at jetbrains.com
Please sign in to leave a comment.
http://devnet.jetbrains.net/message/5278043?tstart=0#5278043
Attachment(s):
JetLogs.zip
Hi,
I want to apologize for the delayed answer.
If you need to extend of the trial license, then please contact me directly (support at jetbrains.com).
I have checked the video that you added.
Do you want to profile application in IIS or VS development server?
It looks like that you want to profile VS development server but dotTrace fails to determine the project type and gives you a choice.
BTW what is your startup project type? It looks like MVC or MVC2, right?
After that you select to profile IIS, but do you have actually deployed something to IIS?
WRB, Ivan Shakhov
I have found that the profiler will not attach to the IIS process if the App Pool is running with a user identity and "Load User Profile" is set to True.
Setting this value to False may fix the issue for some users.
Hi and thank you.
The original post fixed my problem when running locally, but I still get the same error as the screenshot when trying to run the profiler remote.
I can telnet the agent and the local profiler configuration can connect to the remote server agent (using default port 9000 and a passphrase). The remote agent reports "Authenticated as passphrase match" once setting up the profiler and then again once when running the profiler (without "start immediately"). After that I get the same dialog as shown in the screendump in the original message. The list of w3wp.exe processes is empty. The agent writes nothing anymore in the console.
Do I have to set any folder permissions on the remote server? I tried adding IIS_IUSRS to the agent exe folder, but that didn't help.
BR
Anders.
Hi Anders,
dotTrace Performance v4.x uses .NET remoting technology for profiling remote application. In fact this technology is bad for our purposes. It requires bidirectional connection for computers through TCP. It means both computers have to be in the same network and have their firewalls disabled. Please check that your configuration is compatible with the requirements.
---
Mikhail Pilin
Senior Software Engineer
JetBrains GmbH
http://JetBrains.com
"Develop with pleasure!"
Spent the whole yesterday with the same problem.
What helped me is to restore my system using a restore point set to several days ago, and reinstall JetBrains dotTrace completely.
Sounds crazy, but nothing helped, including all advices above. I have also tried to clean up registry entries, Windows Services, temporary folders, uninstall dotTrace and install it again. Profiler haven't started until system restore + reinstalling.
Possible problem 1: after I first installed JetBrains dotTrace, I have also installed RedGate Ants profiler. But uninstalling it with registry cleanup also wasn't helpful, and I should say that some colleagues of mine use both profilers at a time successfully.
Possible problem 2: in my Application Event Log I started to receive errors from .Net Runtime with text "Failed to CoCreate profiler." I blamed this exception for profiler not working before. However, now my profiler works fine despite these messages.
Possible problem 3: When profiler didn't start, in JetLogs, ExternalLauncherProcess log the last message of each profiling session was:
9:21:06 AM.448: Thread:1: Starting process 'C:\Program Files (x86)\Internet Explorer\iexplore.exe' http://sesmarchexample
9:21:07 AM.485: Thread:9: process [7972] 'iexplore' has exited with code 0
Note "has exited" message. I also blamed this error as main cause of non-working profiler.
And again, now with my profiler working, I also receive this message, but it doesn't prevent dotTrace from creating nice snapshots.
Hi Kate, sorry for late response and thank you for detailed feedback. I'll pass it to developers, and we'll try to figure out what's wrong and why this message appears.