Features/LTTng

From FedoraProject

< Features(Difference between revisions)
Jump to: navigation, search
(Moved to FeatureReadyForFesco, ticket #919)
(update with status of babeltrace)
 
(6 intermediate revisions by 2 users not shown)
Line 4: Line 4:
 
<!-- A sentence or two summarizing what this feature is and what it will do.  This information is used for the overall feature summary page for each release. -->
 
<!-- A sentence or two summarizing what this feature is and what it will do.  This information is used for the overall feature summary page for each release. -->
  
Introduction of the new LTTng infrastructure for userspace and kernel tracing.  
+
Introduction of the new LTTng infrastructure including its userspace tracer component and the control tool.  
  
 
== Owner ==
 
== Owner ==
Line 15: Line 15:
 
== Current status ==
 
== Current status ==
 
* Targeted release: [[Releases/18 | Fedora 18 ]]  
 
* Targeted release: [[Releases/18 | Fedora 18 ]]  
* Last updated: 2012-07-17
+
* Last updated: 2012-10-22
* Percentage of completion: 80%
+
* Percentage of completion: 100%
 
+
** The tracing component are all present. The babeltrace viewer would have been nice to have, but still in RC upstream.
  
 
== Detailed Description ==
 
== Detailed Description ==
Line 24: Line 24:
 
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 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:
+
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 manually built against a standard kernel. Other new features:
  
 
* Produces CTF (Common Trace Format) natively (http://www.efficios.com/ctf),
 
* 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,
+
* Emit SDT markers
* Integrated interface for both kernel and userspace tracing,
+
* See lttng.org/lttng2.0 for the complete feature list
* 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).
+
* Allow multiple users and multiple sessions to trace simultaniously
 
+
  
 
== Benefit to Fedora ==
 
== Benefit to Fedora ==
Line 62: Line 61:
 
# For userspace tracing
 
# For userspace tracing
 
## Compile one of the example in /usr/share/doc/lttng-ust/examples/
 
## Compile one of the example in /usr/share/doc/lttng-ust/examples/
## Create, start a tracing session (http://lttng.org/quickstart)
 
## Read the resulting trace
 
# For kernel tracing
 
## Install the kernel module from http://lttng.org/lttng-kernel-tracer
 
 
## Create, start a tracing session (http://lttng.org/quickstart)
 
## Create, start a tracing session (http://lttng.org/quickstart)
 
## Read the resulting trace  
 
## Read the resulting trace  
Line 77: Line 72:
 
<!-- What other packages (RPMs) depend on this package?  Are there changes outside the developers' control on which completion of this feature depends?  In other words, completion of another feature owned by someone else and might cause you to not be able to finish on time or that you would need to coordinate?  Other upstream projects like the kernel (if this is not a kernel feature)? -->
 
<!-- What other packages (RPMs) depend on this package?  Are there changes outside the developers' control on which completion of this feature depends?  In other words, completion of another feature owned by someone else and might cause you to not be able to finish on time or that you would need to coordinate?  Other upstream projects like the kernel (if this is not a kernel feature)? -->
 
None
 
None
(Having the lttng kernel module would be a nice add-on, but per policy, its not possible.)
 
  
 
== Contingency Plan ==
 
== Contingency Plan ==
Line 97: Line 91:
  
  
[[Category:FeatureReadyForFesco]]
+
[[Category:FeatureAcceptedF18]]
 
<!-- When your feature page is completed and ready for review -->
 
<!-- When your feature page is completed and ready for review -->
 
<!-- remove Category:FeaturePageIncomplete and change it to Category:FeatureReadyForWrangler -->
 
<!-- remove Category:FeaturePageIncomplete and change it to Category:FeatureReadyForWrangler -->
 
<!-- After review, the feature wrangler will move your page to Category:FeatureReadyForFesco... if it still needs more work it will move back to Category:FeaturePageIncomplete-->
 
<!-- After review, the feature wrangler will move your page to Category:FeatureReadyForFesco... if it still needs more work it will move back to Category:FeaturePageIncomplete-->
 
<!-- A pretty picture of the page category usage is at: https://fedoraproject.org/wiki/Features/Policy/Process -->
 
<!-- A pretty picture of the page category usage is at: https://fedoraproject.org/wiki/Features/Policy/Process -->

Latest revision as of 19:09, 22 October 2012

Contents

[edit] LTTng 2.0

[edit] Summary

Introduction of the new LTTng infrastructure including its userspace tracer component and the control tool.

[edit] Owner

  • Email: yannick.brosseau at gmail.com

[edit] Current status

  • Targeted release: Fedora 18
  • Last updated: 2012-10-22
  • Percentage of completion: 100%
    • The tracing component are all present. The babeltrace viewer would have been nice to have, but still in RC upstream.

[edit] 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 manually built against a standard kernel. Other new features:

  • Produces CTF (Common Trace Format) natively (http://www.efficios.com/ctf),
  • Emit SDT markers
  • See lttng.org/lttng2.0 for the complete feature list
  • Allow multiple users and multiple sessions to trace simultaniously

[edit] 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.


[edit] Scope

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

[edit] 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

[edit] User Experience

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

[edit] Dependencies

None

[edit] 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)

[edit] Documentation

[edit] Release Notes

  • Introduce LTTng 2.0 tracing tools

[edit] Comments and Discussion