Strace

Revision 1 as of 2006-05-01 21:44:34

Clear message

Sometimes, a program starts behaving errantly. It gives incorrect output on its input, it doesn't print anything at all, or even hangs. Under a Linux-based system, every userspace process has to interact with its environment through the kernel. And it does this by invoking system calls.

Strace is a utility that intercepts and logs these system calls. In this way, you can watch how a program interacts with the system, which is useful for tracking down behavioural issues.

Generation

  1. Make sure strace is installed.

    apt-get install strace
  2. Start the program under control of strace:

    strace -Ff -tt <program> <arguments> 2>&1 | tee strace.log
  3. The program will start. Perform any actions necessary to reproduce the crash
  4. Attach the complete output from strace, contained in strace.log, in your bug report.