lttng-relayd(8) — Linux manual page


LTTNG-RELAYD(8)                 LTTng Manual                 LTTNG-RELAYD(8)

NAME         top

       lttng-relayd - LTTng 2 relay daemon

SYNOPSIS         top

       lttng-relayd [--background | --daemonize]
                    [--control-port=URL] [--data-port=URL] [--live-port=URL]
                    [--output=PATH] [-v | -vv | -vvv]

DESCRIPTION         top

       The Linux Trace Toolkit: next generation <> is an
       open source software package used for correlated tracing of the Linux
       kernel, user applications, and user libraries.

       LTTng consists of Linux kernel modules (for Linux kernel tracing) and
       dynamically loaded libraries (for user application and library

       The LTTng relay daemon is responsible for receiving trace data from
       possibly remote LTTng session/consumer daemons and for writing it to
       the local file system. The relay daemon also accepts LTTng live
       connections from compatible viewers; this is the official approach to
       viewing LTTng events as they are emitted.

       The relay daemon listens by default on all network interfaces to
       gather trace data, but only on localhost for LTTng live connections.

       The relay daemon does not require any particular permissions, as long
       as it can write to the output directory and listen on the configured
       ports. If a user is within a secured network and/or has proper
       firewall settings, lttng-relayd can listen to LTTng live connections
       from all network interfaces by specifying --live-

       Once a trace has been streamed completely, the trace can be processed
       by any tool that can process an LTTng trace located on the local file

   Output directory
       By default, the relay daemon writes the traces to:



           Remote hostname.

           Full session name.

           Tracing domain.

       You can override the default output directory prefix
       ($LTTNG_HOME/lttng-traces) with the --output option. The other parts
       depend on the remote configuration.

   URL format
       The --control-port, --data-port, and --live-port options specify

       The format of those URLs is:

           tcp://(HOST | IPADDR):PORT


       (HOST | IPADDR)
           Binding hostname or IP address (IPv6 address must be enclosed in
           brackets ([ and ]); see RFC 2732

           TCP port.

OPTIONS         top

       -b, --background
           Start as Unix daemon, but keep file descriptors (console) open.
           Use the --daemonize option instead to close the file descriptors.

       -d, --daemonize
           Start as Unix daemon, and close file descriptors (console). Use
           the --background option instead to keep the file descriptors

       -g GROUP, --group=GROUP
           Use GROUP as Unix tracing group (default: tracing).

       -o PATH, --output=PATH
           Set base directory of written trace data to PATH.

           See the Output directory section above for more information.

       -v, --verbose
           Increase verbosity.

           Three levels of verbosity are available, which are triggered by
           appending additional v letters to the option (that is, -vv and

       See the URL format section above for more information about the
       syntax of the following options' URL argument.

       -C URL, --control-port=URL
           Listen to control data on URL URL (default: tcp://

       -D URL, --data-port=URL
           Listen to trace data on URL URL (default: tcp://

       -L URL, --live-port=URL
           Listen to LTTng live connections on URL URL (default:

   Program information
       -h, --help
           Show help.

       -V, --version
           Show version.


           Set to 1 to abort the process after the first error is

           Socket connection, receive and send timeout (milliseconds). A
           value of 0 or -1 uses the timeout of the operating system

           Path to relay daemon health’s socket.

           Set to 1 to enable TCP keep-alive.

           The TCP keep-alive mechanism allows the detection of dead peers
           (lttng-sessiond(8)) in cases of unclean termination (for example,
           a hard reset) of a peer.

           Supported on Linux and Solaris only. The default behaviour of the
           TCP keep-alive mechanism is OS-specific.

           Search for tcp_keepalive in tcp(7) for more information.

           The time threshold in seconds to abort a TCP connection after the
           keep-alive probing mechanism has failed.

           Set to 0 or -1 to use the value chosen by the operating system

           Supported on Solaris 11 only.

           Search for tcp_keepalive_abort_threshold in tcp(7) for more

           Number of seconds a connection needs to be idle before TCP begins
           sending out keep-alive probes.

           Set to 0 or -1 to use the value chosen by the operating system

           Supported on Linux and Solaris 11 only.

           On Solaris 11, the accepted values are -1, 0, and 10 to 864000.

           Search for tcp_keepalive_time and tcp_keepalive_interval in
           tcp(7) on Solaris 11 for more information.

           Maximum number of TCP keep-alive probes to send before giving up
           and killing the connection if no response is obtained from the
           other end.

           Set to 0 or -1 to use the value chosen by the operating system

           Supported on Linux only.

           Search for tcp_keepalive_probes in tcp(7) for more information.

           Number of seconds between TCP keep-alive probes.

           Set to 0 or -1 to use the value chosen by the operating system

           Supported on Linux only.

           Search for tcp_keepalive_intvl in tcp(7) for more information.

FILES         top

           User LTTng runtime and configuration directory.

           Default output directory of LTTng traces. This can be overridden
           with the --output option.

           $LTTNG_HOME defaults to $HOME when not explicitly set.

EXIT STATUS         top



           Fatal error

LIMITATIONS         top

       As of this version, only the TCP protocol is supported for both
       control and data ports. In future versions, TCP will remain the sole
       available protocol for control data since those communications are
       low-volume and need absolute reliability; trace data could be carried
       over UDP.

       For an unprivileged user running lttng-relayd, the maximum number of
       file descriptors per process is usually 1024. This limits the number
       of connections and opened trace files. This limit can be configured
       with ulimit(3).

BUGS         top

       If you encounter any issue or usability problem, please report it on
       the LTTng bug tracker <>.

RESOURCES         top

       ·   LTTng project website <>

       ·   LTTng documentation <>

       ·   Git repositories <>

       ·   GitHub organization <>

       ·   Continuous integration <>

       ·   Mailing list <> for support and

       ·   IRC channel <irc://>: #lttng on

COPYRIGHTS         top

       This program is part of the LTTng-tools project.

       LTTng-tools is distributed under the GNU General Public License
       version 2 <>.
       See the LICENSE <
       tools/blob/master/LICENSE> file for details.

THANKS         top

       Special thanks to Michel Dagenais and the DORSAL laboratory
       <> at École Polytechnique de Montréal
       for the LTTng journey.

       Also thanks to the Ericsson teams working on tracing which helped us
       greatly with detailed bug reports and unusual test cases.

AUTHORS         top

       LTTng-tools was originally written by Mathieu Desnoyers, Julien
       Desfossez, and David Goulet. More people have since contributed to

       LTTng-tools is currently maintained by Jérémie Galarneau

SEE ALSO         top

       lttng(1), lttng-sessiond(8), lttng-crash(1), lttng-ust(3),

COLOPHON         top

       This page is part of the LTTng-Tools (    LTTng tools) project.
       Information about the project can be found at ⟨⟩.
       It is not known how to report bugs for this man page; if you know,
       please send a mail to  This page was obtained
       from the project's upstream Git repository
       ⟨git://⟩ on 2019-11-19.  (At that time,
       the date of the most recent commit that was found in the repository
       was 2019-11-14.)  If you discover any rendering problems in this HTML
       version of the page, or you believe there is a better or more up-to-
       date source for the page, or you have corrections or improvements to
       the information in this COLOPHON (which is not part of the original
       manual page), send a mail to

LTTng 2.12.0-pre                 10/29/2018                  LTTNG-RELAYD(8)

Pages that refer to this page: lttng(1)lttng-crash(1)lttng-create(1)lttng-rotate(1)babeltrace2-source.ctf.lttng-live(7)lttng-sessiond(8)