LTTng Trace Control
----------------
-Please visit http://lttng.org for more information.
+Please visit https://lttng.org for more information. The current maintainer is
+David Goulet <dgoulet@efficios.com>.
Latest development can be found at:
- * Gitweb : http://git.lttng.org/lttng-tools.git/
+ * Gitweb : https://git.lttng.org/?p=lttng-tools.git;a=summary
* Git : git://git.lttng.org/lttng-tools.git
REQUIREMENTS:
+ - Linux kernel >= 2.6.27
+ For epoll() support, at least this version is needed. However, poll() is
+ also supported by running "./configure --disable-epoll". Using that, the
+ kernel version can probably be older but we can't provide any guarantee.
+ Please let us know if you are able to go lower without any problems.
+
- liburcu
Userspace RCU library, by Mathieu Desnoyers and Paul E. McKenney
- -> Tested with liburcu >= v0.6.5
+ -> Tested with liburcu 0.7.x stable.
* Debian/Ubuntu package: liburcu-dev
- * Git : git://lttng.org/userspace-rcu.git
- * Website: http://lttng.org/urcu
+ * Git : git://git.lttng.org/userspace-rcu.git
+ * Website: https://lttng.org/urcu
- - libpopt
+ - libpopt >= 1.13
Library for parsing command line parameters
* Debian/Ubuntu package: libpopt-dev
+ - Perl (optional)
+ Needed for make check and tests.
+
+ - Python >= 3.0 (optional)
+ Needed for make check and tests.
+
+ * Debian/Ubuntu package: python3
+
+ - SWIG >= 2.0 (optional)
+ Needed for Python bindings (--enable-python-bindings).
+
+ * Debian/Ubuntu package: swig2.0
+
+ - python-dev (optional)
+ Python headers
+
+ * Debian/Ubuntu package: python-dev
+
+ - For kernel tracing: modprobe
+
+ - bash
+ Needed for running "make check".
+
+For developers using the git tree:
+
+This source tree is based on the autotools suite from GNU to simplify
+portability. Here are some things you should have on your system in order to
+compile the git repository tree :
+
+- GNU autotools (automake >=1.10, autoconf >=2.50, autoheader >=2.50)
+ (make sure your system wide "automake" points to a recent version!)
+- GNU Libtool >=2.2
+ (for more information, go to https://www.gnu.org/software/autoconf/)
+- flex >= 2.5.35
+- bison >= 2.4
+
+If you use GNU gold, which is NOT mandatory, make sure you have this version:
+- GNU gold >= 2.22
+(Before this version we hit a known bug documented at:
+ http://sourceware.org/bugzilla/show_bug.cgi?id=11317)
+Be advise that with GNU gold, you'll might have to specify -L/usr/local/lib in
+LDFLAGS.
+
+If you get the tree from the repository, you will need to use the "bootstrap"
+script in the root of the tree. It calls all the GNU tools needed to prepare
+the tree configuration.
+
INSTALLATION INSTRUCTIONS:
- Download, compile and install the prerequisites.
Then:
+ $ ./boostrap
$ ./configure
$ make
$ sudo make install
If compiling from the git repository, run ./bootstrap before running
the configure script, to generate it.
+ If you want Python bindings, run ./configure --enable-python-bindings.
+
USAGE:
Please see doc/quickstart.txt to help you start tracing. You can also use the
-h/--help command on 'lttng' and all other commands offered in this tool (Ex:
lttng enable-event -h).
+A network streaming HOWTO can be found in doc/streaming-howto.txt which quickly
+helps you understand how to stream a LTTng 2.0 trace.
+
+A Python HOWTO can be found in doc/python-howto.txt which quickly
+helps you understand how to use the Python module to control the LTTng API.
+
PACKAGE CONTENTS:
This package contains the following elements:
- - liblttngctl
+ - liblttng-ctl (public API)
The LTTng tracing control library.
- - liblttng-sessiond-comm
- The ltt-sessiond communication library. In order to talk with ltt-sessiond,
- this library must be used.
+ - libsessiond-comm (internal)
+ The lttng-sessiond communication library. In order to talk with
+ lttng-sessiond, this library must be used.
- - libkernelctl
+ - libkernel-ctl (internal)
Kernel tracer control and ioctl definitions.
- - liblttng-consumer
+ - libconsumer (internal)
Library for Kernel and (optionally) UST trace consumer.
+ - libkernel-consumer (internal)
+ Library for Kernel consumer control
+
+ - libust-consumer (internal)
+ Library for UST consumer control
+
+ - libhashtable (internal)
+ Library wrapper over URCU hashtables.
+
+ - libcommon (internal)
+ Contains multiple useful function call used by the whole tree.
+
+ - libcompat (internal)
+ Compatibility library mostly for FreeBSD and Linux.
+
+ - librelayd (internal)
+ Library for all relayd interactions over the network.
+
+ - lttng-relayd
+ The relay daemon used for network streaming
+
- lttng-consumerd
- The consumer daemon which uses liblttng-consumer.
+ The consumer daemon which uses libconsumer.
- - ltt-sessiond
+ - lttng-sessiond
The LTTng session daemon binary.
- lttng
The LTTng tracer command line control tool.
- - include (lttng.h --> installed in $(includedir)/lttng/lttng.h)
+ - include (installed in $(includedir)/lttng/)
The liblttngctl API header file.
- tests
Various test programs.
+
+ - doc
+ Various documentations and quickstart guide.
+
+ - extras
+ Contains extra data such as bash completion file. Python bindings for
+ liblttng-ctl are also available there.