1LTTNG-UNTRACK(1)                 LTTng Manual                 LTTNG-UNTRACK(1)
2
3
4

NAME

6       lttng-untrack - Disallow specific processes to record LTTng events
7

SYNOPSIS

9       Disallow specific processes to record Linux kernel events:
10
11       lttng [GENERAL OPTIONS] untrack --kernel [--session=SESSION]
12             (--pid=PID[,PID]... | --vpid=VPID[,VPID]... |
13              --uid=UID[,UID]... | --vuid=VUSER[,VUSER]... |
14              --gid=GID[,GID]... | --vgid=VGROUP[,VGROUP]...)...
15
16       lttng [GENERAL OPTIONS] untrack --kernel [--session=SESSION]
17             --all (--pid | --vpid | --uid | --vuid | --gid | --vgid)...
18
19       Disallow specific processes to record user space events:
20
21       lttng [GENERAL OPTIONS] untrack --userspace [--session=SESSION]
22             (--vpid=VPID[,VPID]... | --vuid=VUSER[,VUSER]... |
23              --vgid=VGROUP[,VGROUP]...)...
24
25       lttng [GENERAL OPTIONS] untrack --userspace [--session=SESSION]
26             --all (--vpid | --vgid | --vuid)...
27

DESCRIPTION

29       The lttng untrack command disallows one or more processes to record
30       LTTng events based on their attributes within:
31
32       With the --session=SESSION option
33           The recording session named SESSION.
34
35       Without the --session option
36           The current recording session (see lttng-concepts(7) to learn more
37           about the current recording session).
38
39       See lttng-concepts(7) to learn more about recording sessions and
40       recording event rules.
41
42       The untrack command removes values from inclusion sets of process
43       attributes. See lttng-track(1) to learn more about inclusion sets.
44
45       See the “EXAMPLES” section below for usage examples.
46
47   Inclusion set example
48       A common operation is to create a recording session (see lttng-
49       create(1)), remove all the entries from the Linux kernel process ID
50       inclusion set, start recording, and then manually add PIDs while the
51       recording session is active.
52
53       Assume the maximum system PID is 7 for this example.
54
55        1. Command:
56
57               $ lttng create
58
59           Initial inclusion set:
60
61               [0] [1] [2] [3] [4] [5] [6] [7]
62
63        2. Command:
64
65               $ lttng untrack --kernel --all --pid
66
67           Inclusion set:
68
69               [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ]
70
71        3. Commands:
72
73               $ lttng enable-event --kernel ...
74               $ lttng start
75               $ # ...
76               $ lttng track --kernel --pid=3,5
77
78           Inclusion set:
79
80               [ ] [ ] [ ] [3] [ ] [5] [ ] [ ]
81
82        4. Command:
83
84               $ lttng track --kernel --pid=2
85
86           Inclusion set:
87
88               [ ] [ ] [2] [3] [ ] [5] [ ] [ ]
89

OPTIONS

91       See lttng(1) for GENERAL OPTIONS.
92
93   Tracing domain
94       One of:
95
96       -k, --kernel
97           Remove values from one or more Linux kernel inclusion sets.
98
99       -u, --userspace
100           Remove values from one or more user space inclusion sets.
101
102   Recording target
103       -s SESSION, --session=SESSION
104           Remove values from one or more inclusion sets of the recording
105           session named SESSION instead of the current recording session.
106
107   Inclusion set selection
108       -p [PID[,PID]...], --pid[=PID[,PID]...]
109           For each PID argument, remove PID from the process ID inclusion set
110           of the selected recording session and domain.
111
112           PID is the process ID attribute of a process as seen from the root
113           PID namespace (see pid_namespaces(7)).
114
115           Only available with --kernel option.
116
117       --vpid[=VPID[,VPID]...]
118           For each VPID argument, remove VPID from the virtual process ID
119           inclusion set of the selected recording session and domain.
120
121           VPID is the virtual process ID attribute of a process as seen from
122           the PID namespace of the process (see pid_namespaces(7)).
123
124       --uid[=USER[,USER]...]
125           For each USER argument, remove USER from the user ID inclusion set
126           of the selected recording session and domain.
127
128           USER is either:
129
130           •   The real user ID (see getuid(3)) of a process as seen from the
131               root user namespace (see user_namespaces(7)).
132
133           •   A user name.
134
135               The connected LTTng session daemon (see lttng-sessiond(8))
136               performs the user name resolution on removal from the user ID
137               inclusion set.
138
139           Only available with --kernel option.
140
141       --vuid[=VUSER[,VUSER]...]
142           For each VUSER argument, remove VUSER from the virtual user ID
143           inclusion set of the selected recording session and domain.
144
145           VUSER is either:
146
147           •   The real user ID (see getuid(3)) of a process as seen from the
148               user namespace (see user_namespaces(7)).
149
150           •   A user name.
151
152               The connected LTTng session daemon (see lttng-sessiond(8))
153               performs the user name resolution on removal from the virtual
154               user ID inclusion set.
155
156       --gid[=GROUP[,GROUP]...]
157           For each GROUP argument, remove GROUP from the group ID inclusion
158           set of the selected recording session and domain.
159
160           GROUP is either:
161
162           •   The real group ID (see getgid(3)) of a process as seen from the
163               root user namespace (see user_namespaces(7)).
164
165           •   A group name.
166
167               The connected LTTng session daemon (see lttng-sessiond(8))
168               performs the group name resolution on removal from the group ID
169               inclusion set.
170
171           Only available with --kernel option.
172
173       --vgid[=VGROUP[,VGROUP]...]
174           For each VGROUP argument, remove VGROUP from the virtual group ID
175           inclusion set of the selected recording session and domain.
176
177           VGROUP is either:
178
179           •   The real group ID (see getgid(3)) of a process as seen from the
180               user namespace (see user_namespaces(7)).
181
182           •   A group name.
183
184               The connected LTTng session daemon (see lttng-sessiond(8))
185               performs the group name resolution on removal from the virtual
186               group ID inclusion set.
187
188   Inclusion set operation
189       -a, --all
190           With one or more empty --pid, --vpid, --uid, --vuid, --gid, and
191           --vgid options: clear the selected inclusion sets.
192
193   Program information
194       -h, --help
195           Show help.
196
197           This option attempts to launch /usr/bin/man to view this manual
198           page. Override the manual pager path with the LTTNG_MAN_BIN_PATH
199           environment variable.
200
201       --list-options
202           List available command options and quit.
203

EXIT STATUS

205       0
206           Success
207
208       1
209           Command error
210
211       2
212           Undefined command
213
214       3
215           Fatal error
216
217       4
218           Command warning (something went wrong during the command)
219

ENVIRONMENT

221       LTTNG_ABORT_ON_ERROR
222           Set to 1 to abort the process after the first error is encountered.
223
224       LTTNG_HOME
225           Path to the LTTng home directory.
226
227           Defaults to $HOME.
228
229           Useful when the Unix user running the commands has a non-writable
230           home directory.
231
232       LTTNG_MAN_BIN_PATH
233           Absolute path to the manual pager to use to read the LTTng
234           command-line help (with lttng-help(1) or with the --help option)
235           instead of /usr/bin/man.
236
237       LTTNG_SESSION_CONFIG_XSD_PATH
238           Path to the directory containing the session.xsd recording session
239           configuration XML schema.
240
241       LTTNG_SESSIOND_PATH
242           Absolute path to the LTTng session daemon binary (see lttng-
243           sessiond(8)) to spawn from the lttng-create(1) command.
244
245           The --sessiond-path general option overrides this environment
246           variable.
247

FILES

249       $LTTNG_HOME/.lttngrc
250           Unix user’s LTTng runtime configuration.
251
252           This is where LTTng stores the name of the Unix user’s current
253           recording session between executions of lttng(1).  lttng-create(1)
254           and lttng-set-session(1) set the current recording session.
255
256       $LTTNG_HOME/lttng-traces
257           Default output directory of LTTng traces in local and snapshot
258           modes.
259
260           Override this path with the --output option of the lttng-create(1)
261           command.
262
263       $LTTNG_HOME/.lttng
264           Unix user’s LTTng runtime and configuration directory.
265
266       $LTTNG_HOME/.lttng/sessions
267           Default directory containing the Unix user’s saved recording
268           session configurations (see lttng-save(1) and lttng-load(1)).
269
270       /usr/local/etc/lttng/sessions
271           Directory containing the system-wide saved recording session
272           configurations (see lttng-save(1) and lttng-load(1)).
273
274       Note
275           $LTTNG_HOME defaults to the value of the HOME environment variable.
276

EXAMPLES

278       Example 1. Remove the PIDs 1728 and 3775 from the Linux kernel process
279       ID inclusion set of the current recording session.
280
281           See the --pid option.
282
283               $ lttng untrack --kernel --pid=1728,3775
284
285       Example 2. Remove the IDs of a specific groups from the user space
286       virtual group ID inclusion set of a specific recording session.
287
288           See the --vgid and --session options.
289
290               $ lttng untrack --userspace --session=my-session \
291                               --vgid=docker,mysql
292
293       Example 3. Remove all the user IDs from the Linux kernel user ID
294       inclusion set of the current recording session.
295
296           See the --all and --uid options.
297
298               $ lttng untrack --kernel --all --uid
299

RESOURCES

301       •   LTTng project website <https://lttng.org>
302
303       •   LTTng documentation <https://lttng.org/docs>
304
305       •   LTTng bug tracker <https://bugs.lttng.org>
306
307       •   Git repositories <https://git.lttng.org>
308
309       •   GitHub organization <https://github.com/lttng>
310
311       •   Continuous integration <https://ci.lttng.org/>
312
313       •   Mailing list <https://lists.lttng.org/> for support and
314           development: lttng-dev@lists.lttng.org
315
316       •   IRC channel <irc://irc.oftc.net/lttng>: #lttng on irc.oftc.net
317
319       This program is part of the LTTng-tools project.
320
321       LTTng-tools is distributed under the GNU General Public License
322       version 2 <http://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html>.
323       See the LICENSE <https://github.com/lttng/lttng-
324       tools/blob/master/LICENSE> file for details.
325

THANKS

327       Special thanks to Michel Dagenais and the DORSAL laboratory
328       <http://www.dorsal.polymtl.ca/> at École Polytechnique de Montréal for
329       the LTTng journey.
330
331       Also thanks to the Ericsson teams working on tracing which helped us
332       greatly with detailed bug reports and unusual test cases.
333

SEE ALSO

335       lttng(1), lttng-track(1), lttng-concepts(7)
336
337
338
339LTTng 2.13.7                     14 June 2021                 LTTNG-UNTRACK(1)
Impressum