domain: add Python domain to list
[lttng-docs.git] / contents / understanding-lttng / plumbing / lttng-consumerd.md
CommitLineData
5e0cbfb0
PP
1---
2id: lttng-consumerd
3---
4
5The _consumer daemon_, or `lttng-consumerd`, is a program sharing some
6ring buffers with user applications or the LTTng kernel modules to
7collect trace data and output it at some place (on disk or sent over
8the network to an LTTng relay daemon).
9
10Consumer daemons are created by a session daemon as soon as events are
11enabled within a tracing session, well before tracing is activated
12for the latter. Entirely managed by session daemons,
13consumer daemons survive session destruction to be reused later,
14should a new tracing session be created. Consumer daemons are always
15owned by the same user as their session daemon. When its owner session
16daemon is killed, the consumer daemon also exits. This is because
17the consumer daemon is always the child process of a session daemon.
18Consumer daemons should never be started manually. For this reason,
19they are not installed in one of the usual locations listed in the
20`PATH` environment variable. `lttng-sessiond` has, however, a
e99e591b 21<a href="/man/8/lttng-sessiond/v2.7" class="ext">bunch of options</a> to
5e0cbfb0
PP
22specify custom consumer daemon paths if, for some reason, a consumer
23daemon other than the default installed one is needed.
24
25There are up to two running consumer daemons per user, whereas only one
26session daemon may run per user. This is because each process has
27independent bitness: if the target system runs a mixture of 32-bit and
2864-bit processes, it is more efficient to have separate corresponding
2932-bit and 64-bit consumer daemons. The `root` user is an exception: it
30may have up to _three_ running consumer daemons: 32-bit and 64-bit
31instances for its user space applications and one more reserved for
32collecting kernel trace data.
33
34As new tracing domains are added to LTTng, the development community's
35intent is to minimize the need for additionnal consumer daemon instances
c23b8cb1 36dedicated to them. For instance, the `java.util.logging` (JUL) domain
5e0cbfb0
PP
37events are in fact mapped to the user space domain, thus tracing this
38particular domain is handled by existing user space domain consumer
39daemons.
This page took 0.029479 seconds and 4 git commands to generate.