Linux Tools Project - LTTng Integration

Overview

LTTng (Linux Trace Toolkit, next generation) is a high performance tracing tool for Linux that efficiently handles large amounts of trace data. Initially aimed at the Linux kernel, its technology has been extended to support user space tracing (UST).

The scope of this project is to deliver an OS-independent Eclipse front-end for LTTng, in order to [1] configure and control LTTng, [2] collect the trace data, and [3] visualize and analyze the data collected.

It also provides a framework for the integration of various tracers and loggers (e.g. HW) as well as specialized trace analysis tools.

Current Status

LTTng perspective

  • Project View - Project management
  • Events View - Tabular view of the raw events
  • Histogram View - Event distribution analysis
  • Control Flow View - Processes state analysis
  • Resource View - System resources state analysis
  • Statistics View - General traces statistics
  • Latency View - Graphical representation of system latency
  • Integrated Help

LTTng internals

  • Integration of User Space Tracing (UST)
  • Integration of distributed, multi-processor, multi-core traces

Infrastructure (non-LTTng specific)

  • Generic Event Model
  • Event searching, filtering, bookmarking and color coding
  • Generic Trace Model
  • Generic Component Model
  • Generic Text Parser (XML, regex)
  • Generic, request-based, inter-component communication mechanism
  • Generic Project View
  • Generic Events View
  • Generic Statistics View
  • Generic Histogram View
  • Support for arbitrarily large traces (that exceed available memory)
  • Wizards for parser generation (CSV, XML, plain text, regular expression, ...)
  • Support for trace Drag&Drop

Future Plans

LTTng perspective

  • Control View - Tracer control (local or remote)

LTTng internals

  • Integration of a LTTng 2.x CTF-based trace parser
  • Integration of a Kernel State History manager
  • Integration of trace synchronization analysis
  • Integration of dependency analysis

Infrastructure (non-LTTng)

  • Generic Trace Parser (CTF-based)
  • Generic Gantt Chart View
  • Viewing Widget Toolbox (e.g. XY-plot, histogram, Gantt chart, etc)
  • Statistical Widget Toolbox
  • Efficient retrieval and handling of trace files
  • Trace streaming
  • Correlation of heterogeneous traces
  • Generic tracing tool control
  • Source code lookup
  • Wizards for tracing/logging/monitoring application integration
  • Wizards for analysis components integration (generic or proprietary)

Screenshots



LTTng Perspective

Video Demo

Coming soon.

Try it out

Follow the instructions on the wiki.

Incubation
Incubation