No description
  • C++ 55.3%
  • Makefile 21.3%
  • Shell 10.9%
  • Python 5.3%
  • C 5.2%
  • Other 2%
Find a file
2026-02-20 11:17:38 -05:00
config New upstream version 2.14.1 2026-01-30 10:50:13 -05:00
debian Update changelog for 2.15.0-1 release 2026-02-20 11:17:38 -05:00
doc New upstream version 2.15.0 2026-02-17 14:29:26 -05:00
extras New upstream version 2.15.0 2026-02-17 14:29:26 -05:00
include New upstream version 2.15.0 2026-02-17 14:29:26 -05:00
LICENSES New upstream version 2.13.1 2021-11-01 15:51:09 -04:00
m4 New upstream version 2.15.0 2026-02-17 14:29:26 -05:00
src New upstream version 2.15.0 2026-02-17 14:29:26 -05:00
tests New upstream version 2.15.0 2026-02-17 14:29:26 -05:00
version New upstream version 2.12.0 2020-04-08 14:39:24 -04:00
.shellcheckrc New upstream version 2.15.0 2026-02-17 14:29:26 -05:00
aclocal.m4 New upstream version 2.15.0 2026-02-17 14:29:26 -05:00
aminclude_static.am New upstream version 2.15.0 2026-02-17 14:29:26 -05:00
ChangeLog New upstream version 2.15.0 2026-02-17 14:29:26 -05:00
CLAUDE.md New upstream version 2.15.0 2026-02-17 14:29:26 -05:00
CodingStyle.md New upstream version 2.15.0 2026-02-17 14:29:26 -05:00
configure New upstream version 2.15.0 2026-02-17 14:29:26 -05:00
configure.ac New upstream version 2.15.0 2026-02-17 14:29:26 -05:00
INSTALL New upstream version 2.13.1 2021-11-01 15:51:09 -04:00
LICENSE New upstream version 2.12.0 2020-04-08 14:39:24 -04:00
Makefile.am New upstream version 2.15.0 2026-02-17 14:29:26 -05:00
Makefile.in New upstream version 2.15.0 2026-02-17 14:29:26 -05:00
pre-inst-env.in New upstream version 2.15.0 2026-02-17 14:29:26 -05:00
README.adoc New upstream version 2.15.0 2026-02-17 14:29:26 -05:00

Jenkins Coverity

LTTngtools is a set of components to control LTTng tracing.

The project includes:

  • The LTTng session daemon.

  • The LTTng consumer daemon.

  • The LTTng relay daemon.

  • liblttngctl, a library with a C API used to communicate with the session daemon.

  • Python 3 bindings of liblttngctl.

  • lttng, a command-line tool over liblttngctl.

  • lttngcrash, a command-line tool to recover and view LTTng 2 trace buffers in the event of a crash.

Required and optional dependencies

You need the following dependencies to build and run the LTTngtools components:

  • Linux kernel ≥ 4.4.0

  • Userspace RCU ≥ 0.14.0.

    Debian/Ubuntu package: liburcudev.

  • popt ≥ 1.13

    Debian/Ubuntu package: libpoptdev.

  • Libxml2 ≥ 2.7.6

    Debian/Ubuntu package: libxml2dev

The following dependencies are optional:

  • Babeltrace ≥ 2.1: default viewer of the lttng view command, make check and tests.

    Debian/Ubuntu package: babeltrace2 libbabeltrace2-dev

  • LTTngUST (same minor version as LTTngtools): LTTng user space tracing (applications and libraries).

    Debian/Ubuntu package: liblttngustdev

  • Python ≥ 3.5: make check and tests.

    Debian/Ubuntu package: python3

  • SWIG ≥ 2.0 and Python 3 development headers: Python bindings (enabled at build configuration time with the enablepythonbindings option).

    Debian/Ubuntu packages: swig2.0 and python3dev

  • modprobe and/or kmod ≥ 22: automatic LTTng kernel modules loading (kernel tracing).

  • Bash: make check.

  • man (manual pager): view lttng command manual pages with the help option or with the lttng help command.

    Note
    You can use the build configuration option enableembeddedhelp to embed the manual pages into the lttng, lttngsessiond, lttngrelayd, and lttngcrash programs so that you dont need man to view them.
  • libpfm ≥ 4.0: perf regression test suite.

    Debian/Ubuntu package: libpfm4-dev

  • xxd: make check and certain tests.

    Debian/Ubuntu package: xxd

  • lcov: make check-code-coverage

    Debian/Ubuntu package: lcov

LTTngtools supports both the LTTng Linux kernel tracer and LTTng user space tracer sharing the same minor version. While some minor releases do not change the tracer ABIs and could work, no testing is performed to ensure that cross-version compatibility is maintained.

You dont need to rebuild or modify applications instrumented with older versions of the LTTngUST project to make them work with the components of the latest LTTngtools release.

See the LTTng Documentation for more information on versioning.

Build from source

Dependencies

You need the following tools to build LTTngtools:

To build the LTTngtools manual pages:

  • AsciiDoc ≥ 8.4.5

    Note
    Previous versions could work, but were not tested.
  • xmlto ≥ 0.0.21

    Note
    Previous versions could work, but were not tested.

If you use GNU gold, which is not mandatory:

  • GNU gold ≥ 2.22

Note
With GNU gold, you might need to add -L/usr/local/lib to the LDFLAGS environment variable.

Build steps

  1. If you have the LTTngtools Git source, run:

    $ ./bootstrap

    This script creates the configure script.

  2. Configure the build:

    $ ./configure

    If you want the liblttngctl Python bindings, use the enablepythonbindings option. See also the PYTHON and PYTHON_CONFIG environment variables in ./configure help.

    If you dont want to build the manual pages, use the disablemanpages option.

    If you want to embed the manual pages into the lttng, lttngsessiond, lttngrelayd, and lttngcrash programs so that you dont need man to view them, use the enableembeddedhelp option.

    This build configuration script finds LTTngUST with pkgconfig: set the PKG_CONFIG_PATH environment variable accordingly if pkgconfig cannot find the lttngust package information.

    See ./configure help for the complete list of options.

  3. Build the project:

    $ make
  4. Install the project:

    $ sudo make install
    $ sudo ldconfig

Tests

To run all the tests:

$ make check

Usage

See the Tracing control section of the LTTng Documentation to learn how to use the LTTngtools components.

See also the LTTng manual pages (all section 1 and 8 pages).

As theres no official liblttngctl Python bindings yet, see doc/python-howto.txt to understand how to use them.

Supported versions

The LTTng project supports the last two released stable versions (e.g. stable-2.13 and stable-2.12).

Fixes are backported from the master branch to the last stable version unless those fixes would break the ABI or API. Those fixes may be backported to the second-last stable version, depending on complexity and ABI/API compatibility.

Security fixes are backported from the master branch to both of the last stable version and the second-last stable version.

New features are integrated into the master branch and not backported to the last stable branch.

Community

Mailing list

lttng-dev (lttng-dev@lists.lttng.org)

IRC channel

#lttng on the OFTC network

Mastodon

lttng

Bug tracker

LTTngtools bug tracker

GitHub project

lttng/lttngtools

Continuous integration

LTTngtoolss master build on LTTngs CI

Code review

lttngtools project on LTTng Review

Contributors guide

https://github.com/lttng/lttng-tools/blob/master/CONTRIBUTING.md