Tools for Troubleshooting SharePoint Applications
Let me share with you some public tools I’ve been using when working with SharePoint cases. Please consider that I’m learning SharePoint; likewise, if you’ve been using other tools and want to share with us (me and my readers J) feel free to do so.
These are the tools I use before trying a hardcore approach like attaching the debugger to the application or collecting dumps to do a post-mortem debugging. Of course, there’re situations where debugging is the only option, but based on the SharePoint cases I’ve been working with, it should be more of an exception than a rule.
The tools below are used for troubleshooting purposes and should give you information through formatted reports and graphics, so it’s easy to visualize the information and send the information to your customer or team.
For IIS log analysis and other log analysis:
LogParser
For SQL Server analysis:
SQL Nexus (uses LogParser under the hood)
For SQL Server Profiler analysis:
RML ReadTrace
For Performance Monitor analysis:
PAL (uses LogParser under the hood)
Anti-panic warning: I’ve seen customers in panic because the red flags from the PAL report.
In some cases they were false positives. To avoid misinterpretation follow these guidelines:
a) When analyzing a counter, analyze it within the context of other counters. Do not consider one single counter alone. Context is very important when analyzing PerfMon logs.
b) Don’t worry about a few spikes. A few spikes doesn’t mean there’s a problem.
c) Always look at the graphic. The graphic means more than the numbers alone.
For gathering detailed information about SharePoint and the server:
SPSReport
For troubleshooting authentication and authorization failures in IIS:
AuthDiag (DebugDiag 1.1 has a newer version included)
I intend to update this article whenever I use a new tool that proves to be helpful.
Fiddler
Fiddler is a HTTP Debugging Proxy which logs all HTTP traffic between your computer and the Internet. Fiddler allows you to inspect all HTTP Traffic, set breakpoints, and "fiddle" with incoming or outgoing data.
WinDiff
Great to compare files, like logs from different machines.
Process Monitor
For monitoring registry and file access.
CLR Profiler
Using this tool you can have a graphical view of all objects stored in the managed heap and their corresponding root objects.
If you have been using different tools and want to share it with us, do it.