Commit | Line | Data |
---|---|---|
1fc22eb4 JD |
1 | lttngtop |
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 | ||
25 | NOTE | |
26 | ---- | |
27 | ||
28 | Since this is an early release of lttngtop, it is still inside the babeltrace | |
29 | source tree. As soon as all babeltrace dependencies are available from the | |
30 | library and header files, lttngtop will be in its own repository. Until then, | |
31 | changes in the babeltrace source tree will be merged in this tree to avoid | |
32 | conflicts. This repository doesn't install the babeltrace binary, or any of its | |
33 | libraries. This way you can safely install it in the default locations. | |
34 | ||
35 | EXAMPLE | |
36 | ------- | |
37 | ||
38 | # lttng create lttngtop | |
39 | # lttng enable-event -k sched_switch | |
40 | # lttng add-context -k -t pid -t procname -t tid -t ppid -t perf:cache-misses \ | |
41 | -t perf:major-faults -t perf:branch-load-misses | |
42 | # lttng start | |
43 | # ...do stuff... | |
44 | # lttng stop | |
45 | # lttng destroy | |
46 | ||
47 | $ lttngtop $HOME/lttng-traces/lttngtop-... | |
48 | ||
49 | BUILDING | |
50 | -------- | |
51 | ||
52 | ./bootstrap (skip if using tarball) | |
53 | ./configure | |
54 | make | |
55 | make install | |
56 | ||
57 | DEPENDENCIES | |
58 | ------------ | |
59 | ||
60 | To compile Babeltrace and lttngtop, you will need: | |
61 | ||
62 | gcc 3.2 or better | |
63 | libc6 development librairies | |
64 | (Debian : libc6, libc6-dev) | |
65 | (Fedora : glibc, glibc) | |
66 | glib 2.22 or better development libraries | |
67 | (Debian : libglib2.0-0, libglib2.0-dev) | |
68 | (Fedora : glib2, glib2-devel) | |
69 | uuid development libraries | |
70 | (Debian : uuid-dev) | |
71 | (Fedora : uuid-devel) | |
72 | libpopt >= 1.13 development libraries | |
73 | (Debian : libpopt-dev) | |
74 | (Fedora : popt) | |
75 | ncurses development libraries | |
76 | (Debian : libncurses5-dev) | |
77 | ||
78 | For developers using the git tree: | |
79 | ||
80 | This source tree is based on the autotools suite from GNU to simplify | |
81 | portability. Here are some things you should have on your system in order to | |
82 | compile the git repository tree : | |
83 | ||
84 | - GNU autotools (automake >=1.10, autoconf >=2.50, autoheader >=2.50) | |
85 | (make sure your system wide "automake" points to a recent version!) | |
86 | - GNU Libtool >=2.2 | |
87 | (for more information, go to http://www.gnu.org/software/autoconf/) | |
88 | - Flex >=2.5.35. | |
89 | - Bison >=2.4. | |
90 | ||
91 | If you get the tree from the repository, you will need to use the "bootstrap" | |
92 | script in the root of the tree. It calls all the GNU tools needed to prepare the | |
93 | tree configuration. |