LTTng
This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these messages)
|
Developer(s) | EfficiOS |
---|---|
Initial release | 2005 |
Stable release | 2.10.1
/ August 3, 2017 |
Repository | |
Written in | C |
Operating system | Linux, FreeBSD[citation needed] |
Available in | English |
Type | Tracing |
License |
|
Website | lttng |
LTTng (Linux Trace Toolkit Next Generation) is a system software package for correlated tracing of the Linux kernel, applications and libraries. The project was originated by Mathieu Desnoyers with an initial release in 2005. Its predecessor is the Linux Trace Toolkit.
LTTng uses the Tracepoint instrumentation of the Linux kernel, as well as various other information sources such as kprobes, and the Perf performance monitoring counters.
Designed for minimal performance impact and having a near-zero impact when not tracing, it is useful for debugging a wide range of bugs that are otherwise extremely challenging.
Features
The challenging problems traceable with LTTng include, for example, performance problems on parallel systems and on real-time systems.
Custom instrumentation is easy to add.
Structure
LTTng consists of kernel modules (for Linux kernel tracing) and dynamically linked libraries (for application and library tracing). It is controlled by a session daemon, which receives commands from a command line interface, lttng. The Babeltrace project allows translating traces into a human-readable log, and provides a trace reading library, libbabeltrace.
Deployment
LTTng is available as a set of packages.[1]
LTTng has at least basic support for all Linux-supported architectures (see the LTTng-modules README file for more details) as well as support for FreeBSD[citation needed].
Major users include Google, IBM, Autodesk, Siemens, Nokia, Sony and Ericsson. It is included in Wind River Workbench, Mentor Graphics Mentor Embedded Linux, ELinOS embedded Linux, MontaVista Mobilinux 5.0, STLinux and SUSE Linux Enterprise Real-Time Linux distributions. Once collected, multiple solutions exist to process and visualize LTTng trace data (kernel and userspace) such as the open-source LTTV viewer, Eclipse Trace Compass[2] or commercial tools such as Mentor Graphics' Sourcery Analyzer and Percepio Tracealyzer.[3]
LTTng-modules, LTTng-UST, LTTng-tools and Babeltrace are actively developed by an open community.
See also
Further reading
- LTTng, Filling the Gap Between Kernel Instrumentation and a Widely Usable Kernel Tracer
- LTTng: Tracing across execution layers
- Tracing for HardWare, Driver, and Binary Reverse Engineering in Linux