He mentions a good list of tools, though he has a bit too much praise about Strace. To quote:
Ever wonder why your program can’t open that one file? Use strace to find out precisely which file it is trying to open and the exact identity of the error. Does your program simply go into a trance and stop responding? There is a fair chance that you will find out why with strace. Clueless as to why your webapp is leaking memory? Strace may supply the clue.
In reality, there are much better tools to use for those task. At least on windows, FileMon is a much better tool to check which files are being opened and Handle is great for checking which process locks what files (lsof does that for Unix). Thread dumps analysis (my tool) is better for checking what’s hanging. And Ethereal is a must for any network troubleshooting.
But the general point is strong. And the section about BeanShell was something I haven’t thought of before. Very good summary article.
BlogicBlogger Over and Out