4 How to use LTTng and LTTV in a few lines :
6 This document is made of four parts : The first one explains how to install
7 LTTng and LTTV from Debian and RPM binary packages, the second one explains how
8 to install LTTng and LTTV from sources and the third one describes the steps
9 to follow to trace a system and view it. The fourth and last part explains
10 briefly how to add a new trace point to the kernel.
12 What you will typically want is to read sections 1 and 3 : install LTTng from
13 binary packages and use it. If there are no packages ready for your system, you
14 will have to install from sources (section 2) instead.
16 These operations are made for installing LTTng 0.3 on a linux 2.6.12-rc2-mm2
17 kernel. Change the versions to fit your needs.
19 Author : Mathieu Desnoyers, September 2005
23 ***********************************************************
24 ** Section 1 * Installation from Debian or RPM packages **
25 ***********************************************************
27 No Debian or RPM packages are ready yet.
32 ***********************************************************
33 ** Section 2 * Installation from sources **
34 ***********************************************************
36 * Getting the LTTng packages
41 (see http://ltt.polymtl.ca/lttng for package listing)
42 wget http://ltt.polymtl.ca/lttng/lttng-modules-0.2.tar.bz2
43 wget http://ltt.polymtl.ca/lttng/patch-2.6.12-rc4-mm2-lttng-0.3.bz2
44 bzip2 -cd lttng-modules-0.2.tar.bz2 | tar xvof -
47 * Getting LTTng kernel sources
51 wget http://kernel.org/pub/linux/kernel/v2.6/testing/linux-2.6.12-rc4.tar.bz2
52 wget http://kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.12-rc4/2.6.12-rc4-mm2/2.6.12-rc4-mm2.bz2
53 bzip2 -cd linux-2.6.12-rc4.tar.bz2 | tar xvof -
55 bzip2 -cd ../2.6.12-rc4-mm2.bz2 | patch -p1
56 bzip2 -cd /usr/src/lttng/patch-2.6.12-rc4-mm2-lttng-0.3.bz2 | patch -p1
58 mv linux-2.6.12-rc4 linux-2.6.12-rc4-mm2-lttng-0.3
61 * Installing a LTTng kernel
64 cd /usr/src/linux-2.6.12-rc4-mm2-lttng-0.3
67 * Linux Trace Toolkit Instrumentation Support
68 M or * Linux Trace Toolkit Tracer
69 do NOT activate (not ready yet) :
70 Align Linux Trace Toolkit Traces
71 Activate Linux Trace Toolkit Heartbeat Timer
72 IMPORTANT : This is enabled by default : you must disable it!
77 The first time you use relayfs, you have to specify a mount point in you system:
79 echo "relayfs /mnt/relayfs relayfs rw 0 0" \
82 Depending on your boot loader, you may want to execute :
88 * Install the ltt-modules
91 cd /usr/src/lttng/lttng-modules-0.2
92 KERNELDIR=/usr/src/linux-2.6.12-rc4-mm2-lttng-0.3 make
93 KERNELDIR=/usr/src/linux-2.6.12-rc4-mm2-lttng-0.3 make modules_install
95 note : at this stage, you might want to execute
98 and you might also want to do this :
99 echo ltt-control >> /etc/modules
102 * Getting and installing the LTTV package
106 wget http://ltt.polymtl.ca/packages/LinuxTraceToolkitViewer-0.6.2-20092005.tar.gz
107 gzip -cd LinuxTraceToolkitViewer-0.6.2-20092005.tar.gz | tar xvof -
108 cd LinuxTraceToolkitViewer-0.6.2-20092005
109 (refer to README to see the development libraries that must be installed on you
118 ***********************************************************
119 ** Section 3 * Using LTTng and LTTV **
120 ***********************************************************
122 * Use graphical LTTV to control tracing and analyse traces
124 lttv-gui (or /usr/local/bin/lttv-gui)
125 - Spot the "Tracing Control" icon : click on it
126 (it's a traffic light icon)
127 - enter the root password
131 * You should now see a trace
133 * Use text mode LTTng to control tracing
135 The tracing can be controlled from a terminal by using the lttctl command.
139 lttctl -n trace -d -l /mnt/relayfs/ltt -t /tmp/trace1
141 Stop tracing and destroy trace channels :
145 see lttctl --help for details.
150 Fell free to look in /usr/local/lib/lttv/plugins to see all the text and
151 graphical plugins available.
153 For example, a simple trace dump in text format is available with :
155 lttv -m textDump -t /tmp/trace
157 see lttv -m textDump --help for detailed command line options of textDump.
162 ***********************************************************
163 ** Section 4 * Adding new instrumentations with genevent **
164 ***********************************************************
166 * Getting and installing genevent
170 wget http://ltt.polymtl.ca/packages/genevent-0.1.tar.gz
171 gzip -cd genevent-0.1.tar.gz | tar xvof -
177 * Add new events to the kernel with genevent
180 cd /usr/local/share/LinuxTraceToolkitViewer/facilities
181 cp process.xml yourfacility.xml
182 * edit yourfacility.xml to fit your needs.
184 /usr/local/bin/genevent /usr/local/share/LinuxTraceToolkitViewer/yourfacility.xml
185 cp ltt-facility-yourfacility.h ltt-facility-id-yourfacility.h \
186 /usr/src/linux-2.6.12-rc4-mm2-lttng-0.3/include/linux/ltt
187 cp ltt-facility-loader-yourfacility.c ltt-facility-loader-yourfacility.h \
188 /usr/src/linux-2.6.12-rc4-mm2-lttng-0.3/ltt
189 * edit the kernel file you want to instrument
190 - Add #include <linux/ltt/ltt-facility-yourfacility.h> at the beginning
192 - Add a call to the tracing functions. See their names and parameters in
193 /usr/src/linux-2.6.12-rc4-mm2-lttng-0.3/include/linux/ltt/ltt-facility-yourfacility.h