Features/LTTng

From FedoraProject

Jump to: navigation, search

Contents

LTTng 2.0

Summary

Introduction of the new LTTng infrastructure for userspace and kernel tracing.

Owner

  • Email: yannick.brosseau at gmail.com

Current status

  • Targeted release: Fedora 18
  • Last updated: 2012-07-17
  • Percentage of completion: 80%


Detailed Description

The LTTng project aims at providing highly efficient tracing tools for Linux. Its tracers help tracking down performance issues and debugging problems involving multiple concurrent processes and threads. Tracing across multiple systems is also possible.

The LTTng 2.0 Tracer Toolchain allows integrated kernel and user-space tracing from a single user interface: the "lttng" command. The 2.0 kernel tracer can be build against standard kernel. Other new features:

  • Produces CTF (Common Trace Format) natively (http://www.efficios.com/ctf),
  • Support Tracepoints, detailed syscall tracing (fast strace replacement), Function tracer, CPU Performance Monitoring Unit (PMU) counters and kprobes support,
  • Integrated interface for both kernel and userspace tracing,
  • Have the ability to attach "context" information to events in the trace (e.g. any PMU counter, pid, ppid, tid, comm name, etc). All the extra information fields to be collected with events are optional, specified on a per-tracing-session basis (except for timestamp and event id, which are mandatory).


Benefit to Fedora

Bringing the LTTng tracing capability to Fedora users. The lttng-ust library allows developper to instrument their application with static tracepoint. Other packages could be built with integrated ust tracepoint, allowing users to trace them without having to recompile them.


Scope

UST tracer and control package are already in place. The last part to add are the basic viewers.

How To Test

  1. Install the packages (mainly lttng-tools)
  2. For userspace tracing
    1. Compile one of the example in /usr/share/doc/lttng-ust/examples/
    2. Create, start a tracing session (http://lttng.org/quickstart)
    3. Read the resulting trace
  3. For kernel tracing
    1. Install the kernel module from http://lttng.org/lttng-kernel-tracer
    2. Create, start a tracing session (http://lttng.org/quickstart)
    3. Read the resulting trace

User Experience

New tool (lttng) will be available to manage the tracing.

Dependencies

None (Having the lttng kernel module would be a nice add-on, but per policy, its not possible.)

Contingency Plan

All the tracer component are integrated. The only missing part is one or more viewer. So even without the viewer, it would still be possible to create a trace with the lttng tool. You will need an external tool to view your trace. (Work to package them are already underway)

Documentation

Release Notes

  • Introduce LTTng 2.0 tracing tools

Comments and Discussion