Lttng-relayd lttng remote trace collection daemon
The LTTng project aims at providing highly efficient tracing tools for Linux. It's tracers help tracking down performance issues and debugging problems involving multiple concurrent processes and threads. Tracing across multiple systems is also possible.
The relay daemon listens by default on all network interfaces to gather trace data, but only on localhost for viewer connections. This daemon does not require any particular permissions as long as it can write in the output folder and listen on the ports. If a user is within a secured network and/or has proper firewall settings, lttng-relayd can listen to viewer connections from all network interfaces by specifying '-L tcp://0.0.0.0:5344'.
Traces can be either viewed "live" (as they are produced) by attaching to the live viewer port using LTTng live protocol, or after tracing has been stopped. Once a trace has been streamed completely, the trace can be processed by any tool that can process a local LTTng CTF trace.
By default, the relayd outputs the traces in : ~/lttng-traces/hostname/session-name/domain-name
The prefix (~/lttng-traces) can be configured on the relayd side (see below for the option), the other folders can be configured when creating the trace on the sessiond side.
This program follow the usual GNU command line syntax with long options starting with two dashes. Below is a summary of the available options.
Show summary of possible options and commands
There is three debugging level which will print on stderr. Maximum verbosity is -vvv.
Start as a daemon
Start as a daemon, keeping console open
-g, --group NAME
Specify the tracing group name. (default: tracing)
Control port URL (tcp://0.0.0.0:5342 is the default)
Data port URL (tcp://0.0.0.0:5343 is the default)
-L, --live-port URL
Live view port URL (tcp://localhost:5344 is the default).
Output base directory. Must use an absolute path (~/lttng-traces is the default)
Show version number
Control timeout of socket connection, receive and send. Takes an integer parameter: the timeout value, in milliseconds. A value of 0 or -1 uses the timeout of the operating system (this is the default).
File path used for relay daemon health check communication.
For now only TCP is supported on both control and data port. Control will always remain TCP-only since it is low-volume and needs absolutely to be reliable, but eventually the data connection could support UDP.
For unprivileged user running lttng-relayd, the maximum number of file descriptors per process is usually 1024. This limits the number of connections and tracefiles opened. This limit can be configured see ulimit(3).
No show stopper bugs are known yet in this version.
If you encounter any issues or usability problem, please report it on our mailing list <[email protected]> to help improve this project.
lttng-relayd is distributed under the GNU General Public License version 2. See the file COPYING for details.
A Web site is available at http://lttng.org for more information on the LTTng project.
You can also find our git tree at http://git.lttng.org.
Mailing lists for support and development: <[email protected]>.
You can find us on IRC server irc.oftc.net (OFTC) in #lttng.
lttng-relay was originally written by Julien Desfossez and David Goulet. More people have since contributed to it. It is currently maintained by Julien Desfossez <[email protected]>.