Methods and arrangements are provided that substantially reduce the requisite
amount of data required to conduct postmortem analysis following a computer failure.
The methods and arrangements can be advantageously configured to allow for rapid
online user support for a variety of users, computing devices, operating systems,
applications, and the like. One method includes determining when to generate a
dump file, and generating a dump file by gathering thread, callstack and thread
context information for the running thread, process identifying information associated
with the running thread, and information identifying the reason for generating
the dump file. The resulting dump file is then stored to a storage medium and accessed
during subsequent analysis. The dump file can be a kernel minidump file that is
associated with an operating system program failure, in which case the running
thread is the single thread that was running when the failure occurred. The kernel
minidump file would include the kernel callstack and the process identifying information
that would identify the process that initiated the single thread. The method is
further applicable to non-operating system programs, wherein a user minidump file
is generated by also gathering callstack information for all running threads, thread
context information for all running threads, and a listing of all loaded modules
for the faulting non-operating system program.