linux syscall tracer

strace is a diagnostic, debugging and instructional userspace tracer for Linux. It is used to monitor interactions between userspace processes and the Linux kernel, which include system calls, signal deliveries, and changes of process state. The operation of strace is made possible by the kernel feature known as ptrace.

strace is one of the longest running free software projects and started even before Linux started.

strace is an important tool for debugging and tracing deployed on most Linux distributions with a small community of active contributors.

lightbulb_outline View ideas list


  • linux
  • c
  • git
  • shell script
  • make


email Mailing list

strace 2016 Projects

  • Yun-Chih Chen
    Multi-platform continuous tests infrastructure
    Strace is an essential tool which has been ported to multiple architectures. To confidently ship release, we need to ensure each new commit has been...
  • Fabien Siron
    Netlink socket parsers
    Netlink is, basically, an API used to transfer information between kernel and user-space processes. It consists on a standard sockets-based interface...
  • Naam
    Strace Fault Injection Proposal
    Fault injection is something that could be really usefull in many ways for developpers and testers. It could be used in test suites context to assert...
  • Lineprinter
    Truly structured output for strace
    Parsing current strace output is not an ideal solution, because: this is excessively difficult: the output is intended to humans, not robots;...