Trace Diagnostics Known Bugs & How to Fix 'Em
Introduction
We can't be perfect, but we sure can try. Jaro made a design decision when making Trace Diagnostics' Request Viewer that has caused some folks issues that we have gotten mail on. It was a honest mistake that Jaro or I ever took into consideration, such as roaming profiles, etc. that can create long paths that are derived from %temp% calls.
Technical Details
As I said, when Request Viewer is attempting to start writing to the ETL file an error is thrown. This is caused by the fact that the filename is hard-coded by the tool to iisreqmon.etl but because of a unforseen situation where we don't allow greater than 50 characters. Thus, you often will find files like iisreqm or iisreqmon (no extension), etc. when troubleshooting this problem. All you have to do is look in your %temp% directory and you will see this.
Unfortunately, there are situations where the full path for %temp% is < 50 hence causing the tool to throw an error when it attempts to locate the file. The error looks like the following:
This error message, albeit somewhat useless, told us enough that once we did a bit more investigation we found the root cause. The nice thing is that the ability to fix it is fairly trivial so we are going to share here.
ERROR: Open TraceLogFile() failed (Win32 error -largeinteger - The path specified is invalid)
If your error is different, then please let us know. You can start by posting in the Troubleshooting Forum.
Just fix it, Please...
The workaround is to not use the actual shortcut provided to you by the tool. As I said, you should always start with the shortcut but keep in mind that it is possible in various environments that this problem might occur. If you do not receive the above error then simply continue on...happy request viewing.
If you do receive the error, then you can correct the problem by following 3 easy steps:
- Open a Command Prompt
- Type the following:
Set Temp={Directory you have access to, exists, and has plenty of free space} [Ex: C:\MyTraces]
3. Start IIS Request Viewer using the path: %programfiles%\iis resources\tracediag\reqviewer\reqviewer.exe
Summary
This is a common issue and hopefully we will not find anymore. But, in case we do, we will certainly let you know by updating this blog!