As a software performance company and the owner of a dot.net profiler, we receive a lot of enquiries to provide data-related consultancy. I'll let you in on a secret: Before we visit our clients on site, we first invite people to use
SpeedTrace. As a result we are able to develop long-standing business relationships.
Reading this article, perhaps you might think … what's he talking about? For this reason I would like to show you, with a simple example, how SpeedTrace dot.net profiler uses its unique
data tracing capabilities to get down to the root of a problem.
I have a very nice dot.net application from Microsoft called MS Expression Design; it will help me to illustrate the SpeedTrace dot.net profiler trace capabilities. Just a few days ago I installed a program which, as if by some spell, knocked out the MS application. Don’t ask me how, but it tampered it, and yesterday when I tried to use Expression Design, I received the error message below:
What this message essentially says is: Oops! Error, sorry, bye! — Not much description, is it ??
You might think: In order to solve the problem he could have installed the application again. Yes, that may be a fair solution, but don't forget, this is just a sample, and in the real world things are more involved, and there is also a lot more at stake. Anyway, I wanted to see what actually happened to my application, so I used our dot.net profiler to find the answers.
First I created a new Generic Project (Ctrl + G) keeping the default settings and selecting the External Program.
Then in order to get more information, I needed to activate Data Trace.
Finally, clicking the Activate Project button, I started to record the loading of Expression Design.
After receiving the same error message as the one interpreted above (Oops! Error, sorry, bye!), I took a snapshot by pressing the Stop Recording button, and SpeedTrace dot.net profiler created my trace output.
Now, I was able to run a search for the cause of this faulty behavior. I opened the trace output in
Trace and Profile Data mode to search for a string description.
The Trace Analyzer appeared, and I clicked the Trace tab immediately.
By selecting the Find All Exceptions option, I could quickly see the string error.
Therefore, I was able to conclude that the Microsoft.Expression.Design.UserInterface.dll was affected. In this case, all I had to do was: just copy the Dll again, so I saved myself the time I would have needed to wait for the installation process and then repair it. However, in a complex multi-thread system, solutions are usually not that simple — all the more reason to use a powerful tool like SpeedTrace dot.net profiler to find the root cause of any performance problem or faulty behavior. And I don't think I'm exaggerating in telling you that this tool happens to be the best and fastest software profiling and tracing tool on the market. See for yourself! Download our free
SpeedTrace trial version!