Add captions to figures
[lttng-docs.git] / contents / understanding-lttng / plumbing / lttng-relayd.md
CommitLineData
5e0cbfb0
PP
1---
2id: lttng-relayd
3---
4
5When a tracing session is configured to send its trace data over the
6network, an LTTng _relay daemon_ must be used at the other end to
7receive trace packets and serialize them to trace files. This setup
8makes it possible to trace a target system without ever committing trace
9data to its local storage, a feature which is useful for embedded
10systems, amongst others. The command implementing the relay daemon
11is `lttng-relayd`.
12
13The basic use case of `lttng-relayd` is to transfer trace data received
14over the network to trace files on the local file system. The relay
15daemon must listen on two TCP ports to achieve this: one control port,
16used by the target session daemon, and one data port, used by the
17target consumer daemon. The relay and session daemons agree on common
18default ports when custom ones are not specified.
19
20Since the communication transport protocol for both ports is standard
21TCP, the relay daemon may be started either remotely or locally (on the
22target system).
23
24While two instances of consumer daemons (32-bit and 64-bit) may run
25concurrently for a given user, `lttng-relayd` needs only be of its
26host operating system's bitness.
27
28The other important feature of LTTng's relay daemon is the support of
29_LTTng live_. LTTng live is an application protocol to view events as
47bfcb75 30they arrive. The relay daemon still records events in trace files,
ecccc788
PP
31but a _tee_ allows to inspect incoming events.
32
5703c9f3 33<figure class="img img-100">
ecccc788 34<img src="/images/docs26/lttng-live.png" alt="LTTng live">
d9a0e8b1
PP
35<figcaption>
36 The relay daemon creates a <em>tee</em>, forwarding the trace data
37 to both trace files and a live viewer.
38</figcaption>
5703c9f3 39</figure>
ecccc788
PP
40
41Using LTTng live
5e0cbfb0 42locally thus requires to run a local relay daemon.
This page took 0.030015 seconds and 4 git commands to generate.