"Excluding proprietary solutions, a few competing software tracers exist for Linux. ftrace is the de facto function tracer of the Linux kernel. strace is able to record all system calls made by a user process. SystemTap is a Linux kernel and user space tracer which uses custom user scripts to produce plain text traces. sysdig also uses scripts, written in Lua, to trace and analyze the Linux kernel.
The main distinctive features of LTTng is that it produces correlated kernel and user space traces, as well as doing so with the lowest overhead amongst other solutions. It produces trace files in the CTF format, an optimized file format for production and analyses of multi-gigabyte data. LTTng is the result of close to 10 years of active development by a community of passionate developers. It is currently available on all major desktop and embedded Linux distributions."
Further down you'll discover that your application(s) are linked with a library provided by the project.
Most of them rely on kprobes [1], or like ftrace on [2]. But there is also oprofile [3], and almighty perf [4], which rely on CPU extensions to implement tracing, (also implemented and by the HW manufacturer as well -- but in a OS-agnostic way).
The main distinctive features of LTTng is that it produces correlated kernel and user space traces, as well as doing so with the lowest overhead amongst other solutions. It produces trace files in the CTF format, an optimized file format for production and analyses of multi-gigabyte data. LTTng is the result of close to 10 years of active development by a community of passionate developers. It is currently available on all major desktop and embedded Linux distributions."
Further down you'll discover that your application(s) are linked with a library provided by the project.
Most of them rely on kprobes [1], or like ftrace on [2]. But there is also oprofile [3], and almighty perf [4], which rely on CPU extensions to implement tracing, (also implemented and by the HW manufacturer as well -- but in a OS-agnostic way).
[1] http://lxr.free-electrons.com/source/Documentation/kprobes.t...
[2] http://lxr.freeelectrons.com/source/Documentation/filesystem...
[3] http://oprofile.sourceforge.net/doc/internals/index.html
[4] https://perf.wiki.kernel.org/index.php/Main_Page