LTTng

From eLinux.org
Revision as of 14:12, 24 September 2007 by Prpplague (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Linux Trace Toolkit Viewer/Next Generation

LTTV is a modular viewer/analysis tool specifically designed to deal with very large traces generated by a production system.

It comes with a Linux kernel tracer, Linux Trace Toolkit Next Generation (LTTng), which builds on the existing LTT tracepoints and RelayFS delivery mechanism but is a complete rewrite of LTT tracing module and daemon.

The design aims at facilitating contributions from the community. We know that the vast quantity of analysis that can be performed on trace data is practically unlimited, so we want to make it as easy and fun as possible to add those to the project.


You can get it at http://ltt.polymtl.ca. Follow the Quickstart guide to know how to get it from Debian packages, RPM or sources.

LTTV key features :

- Support for large traces (it has been tested with 15GB traces). I has been

 designed from the start to deal with huge traces.

- Information from several tracefiles can be combined in a single view on the

 fly.

- Deals with traces coming from any architecture size or endianness. - Text command line interface supporting plugins for trace batch analysis. - Graphical interface supporting visualisation plugins. - Flexible event filter. - Modular architecture :

   * dynamically loadable plugins : each specific view/analysis becomes a
     plugin.
   * module dependencies architecture for maximum functionnality reuse and
     easier testing.

- Addition of new instrumentations (or any kind of trace point) becomes easier

 with an event description parser and a tracing code generator (genevent).


You can also get LTTng from http://ltt.polymtl.ca. Available in Debian, RPM and sources packages. See the Quickstart guide.

LTTng key features :

- Easy addition of new instrumentations by supporting the genevent code

 generator.

- Very precise timestamps on events by using the processor cycle counter

 as an unique monotonic time reference.

- Minimal impact on the traced system : instrumentation does not disable

 interrupts or take locks. It uses RCU and cmpxchg atomic operations instead.

- Non maskable interrupts (NMI) reentrancy. - Supports many nestable types : structures, unions, arrays, sequences. - Supports host dependant types. - Makes dynamic alignment of trace data with a low overhead. - Integration with LTTV viewer so tracing can be controlled directly from the

 graphical interface.

- Can record many (n) independant traces at once. - Modular architecture.

http://lwn.net/Articles/166952/