Commit | Line | Data |
---|---|---|
c263c4eb | 1 | LTTngTop |
1fc22eb4 JD |
2 | Julien Desfossez <julien.desfossez@polymtl.ca> |
3 | August 2011 | |
4 | ||
5 | Lttngtop is an ncurses interface for reading and browsing traces recorded by | |
6 | the LTTng tracer and displaying various statistics. | |
7 | As of now, the cpu usage and perf counters are displayed. This version currently | |
8 | only supports offline traces, but a live version is in alpha and will be | |
9 | available for testing soon. | |
10 | ||
11 | USAGE | |
12 | ----- | |
13 | ||
14 | Record a trace with LTTng 2.0 with at least the sched_switch event, and the pid, | |
15 | procname, tid, ppid contexts. To have the perftop view working you can enable | |
16 | any number of perf contexts (depending on your hardware). | |
17 | For the iotop view, you need to have some syscall events : sys_read, sys_write | |
18 | and exit_syscall. | |
19 | ||
20 | Once your trace is recorded, you can use lttngtop this way : | |
21 | $ lttngtop /path/to/your/trace | |
22 | ||
23 | Make sure you have read permissions on the whole directory. | |
24 | ||
1fc22eb4 JD |
25 | EXAMPLE |
26 | ------- | |
27 | ||
28 | # lttng create lttngtop | |
29 | # lttng enable-event -k sched_switch | |
30 | # lttng add-context -k -t pid -t procname -t tid -t ppid -t perf:cache-misses \ | |
31 | -t perf:major-faults -t perf:branch-load-misses | |
32 | # lttng start | |
33 | # ...do stuff... | |
34 | # lttng stop | |
35 | # lttng destroy | |
36 | ||
37 | $ lttngtop $HOME/lttng-traces/lttngtop-... | |
38 | ||
39 | BUILDING | |
40 | -------- | |
41 | ||
42 | ./bootstrap (skip if using tarball) | |
43 | ./configure | |
44 | make | |
45 | make install | |
46 | ||
47 | DEPENDENCIES | |
48 | ------------ | |
49 | ||
50 | To compile Babeltrace and lttngtop, you will need: | |
51 | ||
52 | gcc 3.2 or better | |
53 | libc6 development librairies | |
54 | (Debian : libc6, libc6-dev) | |
55 | (Fedora : glibc, glibc) | |
56 | glib 2.22 or better development libraries | |
57 | (Debian : libglib2.0-0, libglib2.0-dev) | |
58 | (Fedora : glib2, glib2-devel) | |
1fc22eb4 JD |
59 | libpopt >= 1.13 development libraries |
60 | (Debian : libpopt-dev) | |
61 | (Fedora : popt) | |
62 | ncurses development libraries | |
63 | (Debian : libncurses5-dev) | |
c263c4eb | 64 | babeltrace development library |
1fc22eb4 JD |
65 | |
66 | For developers using the git tree: | |
67 | ||
68 | This source tree is based on the autotools suite from GNU to simplify | |
69 | portability. Here are some things you should have on your system in order to | |
70 | compile the git repository tree : | |
71 | ||
72 | - GNU autotools (automake >=1.10, autoconf >=2.50, autoheader >=2.50) | |
73 | (make sure your system wide "automake" points to a recent version!) | |
74 | - GNU Libtool >=2.2 | |
75 | (for more information, go to http://www.gnu.org/software/autoconf/) | |
76 | - Flex >=2.5.35. | |
77 | - Bison >=2.4. | |
78 | ||
79 | If you get the tree from the repository, you will need to use the "bootstrap" | |
80 | script in the root of the tree. It calls all the GNU tools needed to prepare the | |
81 | tree configuration. |