doc/man: lttng(1): clarify UST domain and add links to languages
[lttng-tools.git] / doc / man / lttng.1.txt
1 lttng(1)
2 ========
3
4
5 NAME
6 ----
7 lttng - LTTng 2 tracer control command-line tool
8
9
10 SYNOPSIS
11 --------
12 [verse]
13 *lttng* [option:--group='GROUP'] [option:--mi='TYPE'] [option:--no-sessiond | option:--sessiond-path='PATH']
14 [option:--quiet | option:-v | option:-vv | option:-vvv] '<<commands,COMMAND>>' ['COMMAND OPTIONS']
15
16
17 DESCRIPTION
18 -----------
19 The http://lttng.org/[_Linux Trace Toolkit: next generation_] is an open
20 source software package used for correlated tracing of the Linux kernel,
21 user applications, and user libraries.
22
23 LTTng consists of Linux kernel modules (for Linux kernel tracing) and
24 dynamically loaded libraries (for user application and library tracing).
25
26 An LTTng _session daemon_, linklttng:lttng-sessiond(8), receives
27 commands from the command-line interface `lttng` to control the LTTng
28 tracers. All interactions with the LTTng tracers happen through the
29 `lttng` tool or through the liblttng-ctl library shipped with the
30 LTTng-tools package.
31
32 A _tracing domain_ is a tracer category. There are five available
33 domains. For some commands, the domain needs to be specified with a
34 command-line option. The domain options are:
35
36 nloption:-j, nloption:--jul::
37 Apply command to the `java.util.logging` (JUL) domain.
38
39 nloption:-k, nloption:--kernel::
40 Apply command to the Linux kernel domain.
41
42 nloption:-l, nloption:--log4j::
43 Apply command to the https://logging.apache.org/log4j/1.2/[Apache log4j 1.2]
44 (Java) domain.
45
46 nloption:-p, nloption:--python::
47 Apply command to the https://www.python.org/[Python] domain.
48
49 nloption:-u, nloption:--userspace::
50 Apply command to the user space domain (application using
51 liblttng-ust directly; see linklttng:lttng-ust(3)).
52
53 The LTTng session daemon is a tracing registry which allows the user to
54 interact with multiple tracers (kernel and user space) within the same
55 container, a _tracing session_. Traces can be gathered from the Linux
56 kernel and/or from instrumented applications (see
57 linklttng:lttng-ust(3)). You can aggregate and read the events of LTTng
58 traces using linklttng:babeltrace(1).
59
60 To trace the Linux kernel, the session daemon needs to be running as
61 `root`. LTTng uses a _tracing group_ to allow specific users to interact
62 with the root session daemon. The default tracing group name is
63 `tracing`. You can use the option:--group option to set the tracing
64 group name to use.
65
66 Session daemons can coexist. You can have a session daemon running as
67 user Alice that can be used to trace her applications alongside a root
68 session daemon or a session daemon running as user Bob.
69
70 NOTE: It is highly recommended to start the session daemon at boot time
71 for stable and long-term tracing.
72
73 User applications instrumented with LTTng automatically register to the
74 root session daemon and to user session daemons. This allows any session
75 daemon to list the available traceable applications and event sources
76 (see linklttng:lttng-list(1)).
77
78 By default, the linklttng:lttng-create(1) command automatically spawns a
79 user session daemon if none is currently running. The
80 option:--no-sessiond general option can be set to avoid this.
81
82
83 OPTIONS
84 -------
85 option:-g, option:--group='GROUP'::
86 Use 'GROUP' as Unix tracing group (default: `tracing`).
87
88 option:-m, option:--mi='TYPE'::
89 Print the command's result using the machine interface type 'TYPE'
90 instead of a human-readable output.
91 +
92 Supported types: `xml`.
93 +
94 The machine interface (MI) mode converts the traditional pretty-printing
95 to a machine output syntax. The MI mode provides a change-resistant way
96 to access information generated by the `lttng` command-line program.
97 +
98 When using the MI mode, the data is printed to the standard output.
99 Errors and warnings are printed on the standard error with the
100 pretty-print default format.
101 +
102 If any error occurs during the execution of a command, the return value
103 of the command will be different than 0. In this case, `lttng` does
104 :not: guarantee the syntax and data validity of the generated MI output.
105 +
106 For the `xml` MI type, an XML schema definition (XSD) file used for
107 validation is available: see the `src/common/mi_lttng.xsd` file in
108 the LTTng-tools source tree.
109
110 option:-n, option:--no-sessiond::
111 Do not automatically spawn a session daemon.
112
113 option:-q, option:--quiet::
114 Suppress all messages, including warnings and errors.
115
116 option:--sessiond-path='PATH'::
117 Set the session daemon binary's absolute path to 'PATH'.
118
119 option:-v, option:--verbose::
120 Increase verbosity.
121 +
122 Three levels of verbosity are available, which are triggered by
123 appending additional `v` letters to the option
124 (that is, `-vv` and `-vvv`).
125
126
127 Program information
128 ~~~~~~~~~~~~~~~~~~~
129 option:-h, option:--help::
130 Show help.
131
132 option:--list-commands::
133 List available commands.
134
135 option:--list-options::
136 List available general options.
137
138 option:-V, option:--version::
139 Show version.
140
141
142 [[commands]]
143 COMMANDS
144 --------
145 The following commands also have their own nloption:--help option.
146
147
148 Tracing sessions
149 ~~~~~~~~~~~~~~~~
150 linklttng:lttng-create(1)::
151 Create a tracing session.
152
153 linklttng:lttng-destroy(1)::
154 Tear down tracing sessions.
155
156 linklttng:lttng-load(1)::
157 Load tracing session configurations.
158
159 linklttng:lttng-metadata(1)::
160 Manage an LTTng tracing session's metadata generation.
161
162 linklttng:lttng-save(1)::
163 Save tracing session configurations.
164
165 linklttng:lttng-set-session(1)::
166 Set current tracing session.
167
168
169 Channels
170 ~~~~~~~~
171 linklttng:lttng-add-context(1)::
172 Add context fields to a channel.
173
174 linklttng:lttng-disable-channel(1)::
175 Disable tracing channels.
176
177 linklttng:lttng-enable-channel(1)::
178 Create or enable tracing channels.
179
180
181 Event rules
182 ~~~~~~~~~~~
183 linklttng:lttng-disable-event(1)::
184 Disable event rules.
185
186 linklttng:lttng-enable-event(1)::
187 Create or enable event rules.
188
189
190 Status
191 ~~~~~~
192 linklttng:lttng-list(1)::
193 List tracing sessions, domains, channels, and events.
194
195 linklttng:lttng-status(1)::
196 Get the status of the current tracing session.
197
198
199 Control
200 ~~~~~~~
201 linklttng:lttng-snapshot(1)::
202 Snapshot buffers of current tracing session.
203
204 linklttng:lttng-start(1)::
205 Start tracing.
206
207 linklttng:lttng-stop(1)::
208 Stop tracing.
209
210
211 Resource tracking
212 ~~~~~~~~~~~~~~~~~
213 linklttng:lttng-track(1)::
214 Track specific system resources.
215
216 linklttng:lttng-untrack(1)::
217 Untrack specific system resources.
218
219
220 Miscellaneous
221 ~~~~~~~~~~~~~
222 linklttng:lttng-calibrate(1)::
223 Quantify LTTng overhead.
224
225 linklttng:lttng-help(1)::
226 Display help information about a command.
227
228 linklttng:lttng-version(1)::
229 Show version information.
230
231 linklttng:lttng-view(1)::
232 Start trace viewer.
233
234
235 include::common-cmd-footer.txt[]
236
237
238 SEE ALSO
239 --------
240 linklttng:lttng-sessiond(8),
241 linklttng:lttng-relayd(8),
242 linklttng:lttng-crash(1),
243 linklttng:lttng-ust(3),
244 linklttng:babeltrace(1)
This page took 0.03468 seconds and 5 git commands to generate.