X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=LTTngManual.html;h=09236d5feeff67139fa01f68302dffd3bf87dc57;hb=82b4cbf3bc1c6ec21c3505be7fd739e1c24464c3;hp=09b6c3f3d2d208a832b9756f196c5519a6123707;hpb=5b8a3ef26161f0218077d785c05209609e05516c;p=lttv.git diff --git a/LTTngManual.html b/LTTngManual.html index 09b6c3f3..09236d5f 100644 --- a/LTTngManual.html +++ b/LTTngManual.html @@ -8,7 +8,7 @@

Linux Trace Toolkit Next Generation Manual

Author : Mathieu Desnoyers, September 2005
-Last update : January 21st, 2009
+Last update : January 30, 2010
(originally known as the LTTng QUICKSTART guide)

Table of Contents

@@ -79,7 +79,7 @@ Linux Trace Toolkit Viewer. To see the list of compatibilities between LTTng, ltt-control, LTTV, please refer to : LTTng+LTTV versions compatibility +href="http://lttng.org/cgi-bin/gitweb.cgi?p=lttv.git;a=blob_plain;f=doc/developer/lttng-lttv-compatibility.html;hb=HEAD">LTTng+LTTV versions compatibility The ongoing work had the Linux Kernel Markers integrated in the mainline Linux kernel since Linux 2.6.24 and the Tracepoints since 2.6.28. In its current @@ -98,6 +98,9 @@ which are derived work from the Linux kernel. LTTV is available under the Gnu GPLv2. The low-level LTTV trace reading library is released under Gnu LGPLv2.1.

+The Eclipse LTTng trace analysis tool is released under the EPL and uses the +LTTV trace reading library (LGPLv2.1). +

The UST (Userspace Tracing) and the Userspace RCU libraries are released under the LGPLv2.1 license, which allows linking with non-GPL (BSD, proprietary...) applications. The associated headers are released under MIT-style/BSD-style @@ -171,7 +174,7 @@ gtk 2.4 or better development libraries (Fedora : gtk2, gtk2-devel) note : For Fedora users : this might require at least core 3 from Fedora, or you might have to compile your own GTK2 library. -glib 2.4 or better development libraries +glib 2.16 or better development libraries (Debian : libglib2.0-0, libglib2.0-dev) (Fedora : glib2, glib2-devel) libpopt development libraries @@ -191,8 +194,7 @@ libc6 development librairies

See the list of compatibilities between LTTng, ltt-control and LTTV at : LTTng+LTTV -versions compatibility. +href="http://lttng.org/cgi-bin/gitweb.cgi?p=lttv.git;a=blob_plain;f=doc/developer/lttng-lttv-compatibility.html;hb=HEAD">LTTng+LTTV versions compatibility.

Getting the LTTng packages

@@ -229,7 +231,7 @@ mv linux-2.6.X linux-2.6.X-lttng-0.x.xx su - cd /usr/src/linux-2.6.X-lttng-0.x.xx make menuconfig (or make xconfig or make config) - Select the < Help > button if you are not familiar with kernel + Select the < Help > button if you are not familiar with kernel configuration. Items preceded by [*] means they has to be built into the kernel. Items preceded by [M] means they has to be built as modules. @@ -240,21 +242,21 @@ make menuconfig (or make xconfig or make config) [*] Activate markers [*] Activate userspace markers ABI (experimental, optional) [*] Immediate value optimization (optional) - [*] Linux Trace Toolkit Next Generation (LTTng) ---> - or <*> Compile lttng tracing probes - or <*> Linux Trace Toolkit High-speed Lockless Data Relay - or <*> Linux Trace Toolkit Lock-Protected Data Relay - or <*> Linux Trace Toolkit Serializer - or <*> Linux Trace Toolkit Marker Control - or <*> Linux Trace Toolkit Tracer + [*] Linux Trace Toolkit Next Generation (LTTng) ---> + <M> or <*> Compile lttng tracing probes + <M> or <*> Linux Trace Toolkit High-speed Lockless Data Relay + <M> or <*> Linux Trace Toolkit Lock-Protected Data Relay + <M> or <*> Linux Trace Toolkit Serializer + <M> or <*> Linux Trace Toolkit Marker Control + <M> or <*> Linux Trace Toolkit Tracer [*] Align Linux Trace Toolkit Traces - or <*> Support logging events from userspace + <M> or <*> Support logging events from userspace [*] Support trace extraction from crash dump - or <*> Linux Trace Toolkit Trace Controller - or <*> Linux Trace Toolkit State Dump - Select - Select - Select + <M> or <*> Linux Trace Toolkit Trace Controller + <M> or <*> Linux Trace Toolkit State Dump + Select <Exit> + Select <Exit> + Select <Yes> make make modules_install (if necessary, create a initrd with mkinitrd or your preferate alternative) @@ -321,6 +323,7 @@ modprobe jbd2-trace modprobe ext4-trace modprobe syscall-trace modprobe trap-trace +modprobe block-trace #if locking tracing is wanted, uncomment the following #modprobe lockdep-trace @@ -382,12 +385,12 @@ ldconfig
 Make sure you selected the kernel menuconfig option :
-     or <*> Support logging events from userspace
+    <M> or <*> Support logging events from userspace
 And that the ltt-userspace-event kernel module is loaded if selected as a
 module.
 
 Simple userspace tracing is available through
-echo "some text to record" > /mnt/debugfs/ltt/write_event
+echo "some text to record" > /mnt/debugfs/ltt/write_event
 
 It will appear in the trace under event :
 channel : userspace
@@ -548,10 +551,8 @@ See markers-userspace-0.5.tar.bz2 or more recent.
 
 

-Note that a new design document for a 3rd generation of tracepoint/marker-based -userspace tracing is available at LTTng User-space Tracing -Design. This new infrastructure is not yet implemented. +Note that tracepoint/marker-based userspace tracing is available at LTTng User-space Tracer (UST).

The easy quick-and-dirty way to perform userspace tracing is currently to write