The utilities available with the operating system or available from third parties are often very useful in providing additional information that can complete the diagnostic picture or indeed identify specific problems directly, for example, with the environment setup or network.
On Windows, you might need to obtain additional tools to those included in your operating system. In particular, a suite of tools originally supplied by Sysinternals.com and now distributed by Microsoft include most of the useful tools, for example, procmon).
On UNIX, tools such as strace and truss might be provided as optional installation components, or are otherwise available for download and installation.
The following external utilities have proved useful in providing supporting information when a problem occurs, or in investigating problems that would be exposed directly to the operating system:
- Windows
- Process Monitor (Procmon – real-time process activity)
- Netstat (TCP/UDP port connection information)
- Process Explorer (open handles and DLLs), also (from command line):
- Handle (open handles/files in the OS)
- listDLLs (DLLs loaded in a process)
- Depends (dependent modules and exported functions)
- Windows Task Manager
- Windows Resource Manager
- Windows Performance Monitor (+SCOM)
- Windows Event Manager
- TCPview and Wireshark (TCP endpoints, addresses and traffic)
- Debugging Tools for Windows (ADplus, Windbg)
- Microsoft Network Monitor (NetMon) (can trace VPN networks)
- Rawcap (can trace the loopback interface)
- UNIX
- strace/truss
- lsof (list open files)
- netstat (TCP/UDP port connection information)
- ipcs (interprocess communications - for shared memory etc)
- ulimit (limits on open files)