doc/man: use specific revision date for each manual page
[lttng-tools.git] / doc / man / lttng-relayd.8.txt
CommitLineData
f5595c32
PP
1lttng-relayd(8)
2===============
4605890e 3:revdate: 5 June 2018
f5595c32
PP
4
5
6NAME
7----
8lttng-relayd - LTTng 2 relay daemon
9
10
11SYNOPSIS
12--------
13[verse]
14*lttng-relayd* [option:--background | option:--daemonize]
15 [option:--control-port='URL'] [option:--data-port='URL'] [option:--live-port='URL']
16 [option:--output='PATH'] [option:-v | option:-vv | option:-vvv]
17
18
19DESCRIPTION
20-----------
a18d9544 21The https://lttng.org/[_Linux Trace Toolkit: next generation_] is an open
f5595c32
PP
22source software package used for correlated tracing of the Linux kernel,
23user applications, and user libraries.
24
25LTTng consists of Linux kernel modules (for Linux kernel tracing) and
26dynamically loaded libraries (for user application and library tracing).
27
28The _LTTng relay daemon_ is responsible for receiving trace data from
29possibly remote LTTng session/consumer daemons and for writing it to
30the local file system. The relay daemon also accepts _LTTng live_
31connections from compatible viewers; this is the official approach to
32viewing LTTng events as they are emitted.
33
34The relay daemon listens by default on all network interfaces to gather
35trace data, but only on localhost for LTTng live connections.
36
37The relay daemon does not require any particular permissions, as long as
38it can write to the output directory and listen on the configured ports.
39If a user is within a secured network and/or has proper firewall
40settings, `lttng-relayd` can listen to LTTng live connections from _all_
c93eadad
PP
41network interfaces by specifying
42+--live-port=tcp://{default_network_viewer_bind_address}:{default_network_viewer_port}+.
f5595c32
PP
43
44Once a trace has been streamed completely, the trace can be processed by
45any tool that can process an LTTng trace located on the local
46file system.
47
48
49[[output-directory]]
50Output directory
51~~~~~~~~~~~~~~~~
52By default, the relay daemon writes the traces to:
53
54[verse]
2ff6d569 55$LTTNG_HOME/lttng-traces/'HOSTNAME'/'SESSION'/'DOMAIN'
f5595c32
PP
56
57with:
58
59'HOSTNAME'::
60 Remote hostname.
61
62'SESSION'::
63 Full session name.
64
65'DOMAIN'::
66 Tracing domain.
67
68You can override the default output directory prefix
2ff6d569 69(`$LTTNG_HOME/lttng-traces`) with the option:--output option. The other
f5595c32
PP
70parts depend on the remote configuration.
71
72
73[[url-format]]
74URL format
75~~~~~~~~~~
76The option:--control-port, option:--data-port, and option:--live-port
77options specify URLs.
78
79The format of those URLs is:
80
81[verse]
82tcp://('HOST' | 'IPADDR'):__PORT__
83
84with:
85
86('HOST' | 'IPADDR')::
87 Binding hostname or IP address (IPv6 address *must* be enclosed in
88 brackets (`[` and `]`); see
89 https://www.ietf.org/rfc/rfc2732.txt[RFC 2732]).
90
91'PORT'::
92 TCP port.
93
94
95OPTIONS
96-------
97Daemon
98~~~~~~
99option:-b, option:--background::
100 Start as Unix daemon, but keep file descriptors (console) open.
101 Use the option:--daemonize option instead to close the file
102 descriptors.
103
104option:-d, option:--daemonize::
105 Start as Unix daemon, and close file descriptors (console). Use the
106 option:--background option instead to keep the file descriptors
107 open.
108
59b19c3c 109option:-g 'GROUP', option:--group='GROUP'::
f5595c32
PP
110 Use 'GROUP' as Unix tracing group (default: `tracing`).
111
59b19c3c 112option:-o 'PATH', option:--output='PATH'::
f5595c32
PP
113 Set base directory of written trace data to 'PATH'.
114+
115See the <<output-directory,Output directory>> section above for more
116information.
117
118option:-v, option:--verbose::
119 Increase verbosity.
120+
121Three levels of verbosity are available, which are triggered by
122appending additional `v` letters to the option
123(that is, `-vv` and `-vvv`).
124
125
126Ports
127~~~~~
128See the <<url-format,URL format>> section above for more information
129about the syntax of the following options' 'URL' argument.
130
59b19c3c 131option:-C 'URL', option:--control-port='URL'::
c93eadad
PP
132 Listen to control data on URL 'URL' (default:
133 +tcp://{default_network_control_bind_address}:{default_network_control_port}+).
f5595c32 134
59b19c3c 135option:-D 'URL', option:--data-port='URL'::
c93eadad
PP
136 Listen to trace data on URL 'URL' (default:
137 +tcp://{default_network_data_bind_address}:{default_network_data_port}+).
f5595c32 138
59b19c3c 139option:-L 'URL', option:--live-port='URL'::
f5595c32 140 Listen to LTTng live connections on URL 'URL'
c93eadad
PP
141 (default:
142 +tcp://{default_network_viewer_bind_address}:{default_network_viewer_port}+).
f5595c32
PP
143
144
145Program information
146~~~~~~~~~~~~~~~~~~~
147option:-h, option:--help::
148 Show help.
149
150option:-V, option:--version::
151 Show version.
152
153
154ENVIRONMENT VARIABLES
155---------------------
9bbd8e06
MD
156`LTTNG_ABORT_ON_ERROR`::
157 Set to 1 to abort the process after the first error is encountered.
158
f5595c32
PP
159`LTTNG_NETWORK_SOCKET_TIMEOUT`::
160 Socket connection, receive and send timeout (milliseconds). A value
161 of 0 or -1 uses the timeout of the operating system (default).
162
163`LTTNG_RELAYD_HEALTH`::
164 Path to relay daemon health's socket.
165
e0512bf5
JR
166`LTTNG_RELAYD_TCP_KEEP_ALIVE`::
167 Set to 1 to enable TCP keep-alive.
168+
169The TCP keep-alive mechanism allows the detection of dead peers
170(man:lttng-sessiond(8)) in cases of unclean termination
171(for example, a hard reset) of a peer.
172+
173Supported on Linux and Solaris only. The default behaviour of the TCP
174keep-alive mechanism is OS-specific.
175+
176Search for `tcp_keepalive` in man:tcp(7) for more information.
177
178`LTTNG_RELAYD_TCP_KEEP_ALIVE_ABORT_THRESHOLD`::
179 The time threshold in seconds to abort a TCP connection after the keep-alive
180 probing mechanism has failed.
181+
182Set to 0 or -1 to use the value chosen by the operating system (default).
183+
184Supported on Solaris 11 only.
185+
186Search for `tcp_keepalive_abort_threshold` in man:tcp(7) for more information.
187
188`LTTNG_RELAYD_TCP_KEEP_ALIVE_IDLE_TIME`::
189 Number of seconds a connection needs to be idle before TCP begins
190 sending out keep-alive probes.
191+
192Set to 0 or -1 to use the value chosen by the operating system (default).
193+
194Supported on Linux and Solaris 11 only.
195+
196On Solaris{nbsp}11, the accepted values are -1, 0, and 10 to 864000.
197+
198Search for `tcp_keepalive_time` and `tcp_keepalive_interval`
199in man:tcp(7) on Solaris 11 for more information.
200
201`LTTNG_RELAYD_TCP_KEEP_ALIVE_MAX_PROBE_COUNT`::
202 Maximum number of TCP keep-alive probes to send before giving up and
203 killing the connection if no response is obtained from the other end.
204+
205Set to 0 or -1 to use the value chosen by the operating system (default).
206+
207Supported on Linux only.
208+
209Search for `tcp_keepalive_probes` in man:tcp(7) for more information.
210
211`LTTNG_RELAYD_TCP_KEEP_ALIVE_PROBE_INTERVAL`::
212 Number of seconds between TCP keep-alive probes.
213+
214Set to 0 or -1 to use the value chosen by the operating system (default).
215+
216Supported on Linux only.
217+
218Search for `tcp_keepalive_intvl` in man:tcp(7) for more information.
219
f5595c32 220
900690ca
PP
221FILES
222-----
223`$LTTNG_HOME/.lttng`::
224 User LTTng runtime and configuration directory.
225
226`$LTTNG_HOME/lttng-traces`::
227 Default output directory of LTTng traces. This can be overridden
228 with the option:--output option.
229
230NOTE: `$LTTNG_HOME` defaults to `$HOME` when not explicitly set.
231
232
f5595c32
PP
233EXIT STATUS
234-----------
235*0*::
236 Success
237
238*1*::
239 Error
240
241*3*::
242 Fatal error
243
244
245LIMITATIONS
246-----------
247As of this version, only the TCP protocol is supported for both control
248and data ports. In future versions, TCP will remain the sole available
249protocol for control data since those communications are low-volume and
250need absolute reliability; trace data could be carried over UDP.
251
252For an unprivileged user running `lttng-relayd`, the maximum number of
253file descriptors per process is usually 1024. This limits the number of
254connections and opened trace files. This limit can be configured with
255*ulimit*(3).
256
257
258include::common-footer.txt[]
259
260
261SEE ALSO
262--------
7c1a4458
PP
263man:lttng(1),
264man:lttng-sessiond(8),
265man:lttng-crash(1),
266man:lttng-ust(3),
267man:babeltrace(1)
This page took 0.037527 seconds and 4 git commands to generate.