ftrace!

Ftrace is the Linux kernel internal tracer that was included in the Linux kernel in 2.6.27. Although Ftrace is named after the function tracer it also includes many more functionalities. But the function tracer is the part of Ftrace that makes it unique as you can trace almost any function in the kernel and with dynamic Ftrace, it has no overhead when not enabled. The interface for Ftrace resides in the debugfs file system in the tracing directory. Documentation for this can be found in the Linux kernel source tree at Documentation/trace/ftrace.txt http://git.kernel.org/?p
linux/kernel/git/torvalds/linux-2.6.git;a blob;f Documentation/trace/ftrace.txt;. * 1 trace-cmd

ftrace alternatives

  • strace

  • strace is a diagnostic, debugging and instructional userspace utility for Linux. It is used to monitor interactions between 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.

    tags: debugger os-kernel traces
  • DTrace

  • DTrace is a performance analysis and troubleshooting tool that is included by default with various operating systems, including Solaris, Mac OS X and FreeBSD. A Linux port is in development.

    tags: debugger developer-tools development os-kernel software-development
  • ltrace

  • ltrace intercepts and records dynamic library calls which are called by an executed process and the signals received by that process. It can also intercept and print the system calls executed by the program. Used for debugging.

    tags: debugger os-kernel system-utilities
  • ktap

  • ktap is a script-based dynamic tracing tool for Linux. It uses a scripting language and lets users trace the Linux kernel dynamically. ktap is designed to give operational insights with interoperability that allows users to tune, troubleshoot and extend the kernel and applications. It's similar to Systemtap and DTrace.

    tags: debugger developer-tools development os-kernel software-development
  • ktrace

  • The ktrace utility enables kernel trace logging for the specified processes. Kernel trace data is logged to the file ktrace.out. The kernel operations that are traced include system calls, namei translations, signal processing, and I/O.

    tags: debugger developer-tools os-kernel software-development tracing
  • SystemTap

  • SystemTap provides free software (GPL) infrastructure to simplify the gathering of information about the running Linux system. This assists diagnosis of a performance or functional problem. SystemTap eliminates the need for the developer to go through the tedious and disruptive instrument, recompile, install, and reboot sequence that may be otherwise required to collect data.

    tags: debugger developer-tools development os-kernel traces