X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=doc%2Fman%2Flttng-ust.3.txt;h=ab3c47754b5d78fdeb5a871dbc65de4f7a2db527;hb=156b0cf7b48f8f2e0e99b148803354ba8b1e5c6a;hp=9f9a1d53a9bd2269088f620c4ec7035cd31deac5;hpb=702d1b7d91bc75f4fc01415fc625af1b834ddec4;p=lttng-ust.git diff --git a/doc/man/lttng-ust.3.txt b/doc/man/lttng-ust.3.txt index 9f9a1d53..ab3c4775 100644 --- a/doc/man/lttng-ust.3.txt +++ b/doc/man/lttng-ust.3.txt @@ -755,7 +755,9 @@ man:lttng-add-context(1). The following context fields are supported by LTTng-UST: -`cpu_id`:: +General context fields:: ++ +`cpu_id`::: CPU ID. + NOTE: This context field is always enabled, and it cannot be added @@ -763,38 +765,106 @@ with man:lttng-add-context(1). Its main purpose is to be used for dynamic event filtering. See man:lttng-enable-event(1) for more information about event filtering. -`ip`:: +`ip`::: Instruction pointer: enables recording the exact address from which an event was emitted. This context field can be used to reverse-lookup the source location that caused the event to be emitted. -`perf:thread:COUNTER`:: +`pthread_id`::: + POSIX thread identifier. ++ +Can be used on architectures where `pthread_t` maps nicely to an +`unsigned long` type. + +Process context fields:: ++ +`procname`::: + Thread name, as set by man:exec(3) or man:prctl(2). It is + recommended that programs set their thread name with man:prctl(2) + before hitting the first tracepoint for that thread. + +`vpid`::: + Virtual process ID: process ID as seen from the point of view of the + current process ID namespace (see man:pid_namespaces(7)). + +`vtid`::: + Virtual thread ID: thread ID as seen from the point of view of the + current process ID namespace (see man:pid_namespaces(7)). + +perf context fields:: ++ +`perf:thread:COUNTER`::: perf counter named 'COUNTER'. Use `lttng add-context --list` to list the available perf counters. + Only available on IA-32 and x86-64 architectures. -`perf:thread:raw:rN:NAME`:: +`perf:thread:raw:rN:NAME`::: perf counter with raw ID 'N' and custom name 'NAME'. See man:lttng-add-context(1) for more details. -`pthread_id`:: - POSIX thread identifier. Can be used on architectures where - `pthread_t` maps nicely to an `unsigned long` type. +Namespace context fields (see man:namespaces(7)):: ++ +`cgroup_ns`::: + Inode number of the current control group namespace (see + man:cgroup_namespaces(7)) in the proc file system. -`procname`:: - Thread name, as set by man:exec(3) or man:prctl(2). It is - recommended that programs set their thread name with man:prctl(2) - before hitting the first tracepoint for that thread. +`ipc_ns`::: + Inode number of the current IPC namespace (see + man:ipc_namespaces(7)) in the proc file system. -`vpid`:: - Virtual process ID: process ID as seen from the point of view of - the process namespace. +`mnt_ns`::: + Inode number of the current mount point namespace (see + man:mount_namespaces(7)) in the proc file system. -`vtid`:: - Virtual thread ID: thread ID as seen from the point of view of - the process namespace. +`net_ns`::: + Inode number of the current network namespace (see + man:network_namespaces(7)) in the proc file system. + +`pid_ns`::: + Inode number of the current process ID namespace (see + man:pid_namespaces(7)) in the proc file system. + +`time_ns`::: + Inode number of the current clock namespace (see + man:time_namespaces(7)) in the proc file system. + +`user_ns`::: + Inode number of the current user namespace (see + man:user_namespaces(7)) in the proc file system. + +`uts_ns`::: + Inode number of the current UTS namespace (see + man:uts_namespaces(7)) in the proc file system. + +Credential context fields (see man:credentials(7)):: ++ +`vuid`::: + Virtual real user ID: real user ID as seen from the point of view of + the current user namespace (see man:user_namespaces(7)). + +`vgid`::: + Virtual real group ID: real group ID as seen from the point of view + of the current user namespace (see man:user_namespaces(7)). + +`veuid`::: + Virtual effective user ID: effective user ID as seen from the point + of view of the current user namespace (see man:user_namespaces(7)). + +`vegid`::: + Virtual effective group ID: effective group ID as seen from the + point of view of the current user namespace (see + man:user_namespaces(7)). + +`vsuid`::: + Virtual saved set-user ID: saved set-user ID as seen from the point + of view of the current user namespace (see man:user_namespaces(7)). + +`vsgid`::: + Virtual saved set-group ID: saved set-group ID as seen from the + point of view of the current user namespace (see + man:user_namespaces(7)). [[state-dump]] @@ -896,6 +966,20 @@ Fields: |Debug link file name. |=== +`lttng_ust_statedump:procname`:: + The process procname at process start. ++ +Fields: ++ +[options="header"] +|=== +|Field name |Description + +|`procname` +|The process name. + +|=== + [[ust-lib]] Shared library load/unload tracking @@ -1022,7 +1106,7 @@ if (lttng_ust_loaded) { EXAMPLE ------- NOTE: A few examples are available in the -https://github.com/lttng/lttng-ust/tree/master/doc/examples[`doc/examples`] +https://github.com/lttng/lttng-ust/tree/v{lttng_version}/doc/examples[`doc/examples`] directory of LTTng-UST's source tree. This example shows all the features documented in the previous @@ -1293,11 +1377,15 @@ are located in a specific directory under `$LTTNG_HOME` (or `$HOME` if `$LTTNG_HOME` is not set). `LTTNG_UST_ALLOW_BLOCKING`:: - If set, allow application to retry event tracing when there's + If set, allow the application to retry event tracing when there's no space left for the event record in the sub-buffer, therefore effectively blocking the application until space is made available - or timeout is reached. This only has effect on channels with - `blocking-timeout` set. + or the configured timeout is reached. ++ +To allow an application to block during tracing, you also need to +specify a blocking timeout when you create a channel with the +nloption:--blocking-timeout option of the man:lttng-enable-channel(1) +command. + This option can be useful in workloads generating very large trace data throughput, where blocking the application is an acceptable trade-off to @@ -1310,7 +1398,7 @@ affect application timings. Path to the shared object which acts as the clock override plugin. An example of such a plugin can be found in the LTTng-UST documentation under - https://github.com/lttng/lttng-ust/tree/master/doc/examples/clock-override[`examples/clock-override`]. + https://github.com/lttng/lttng-ust/tree/v{lttng_version}/doc/examples/clock-override[`examples/clock-override`]. `LTTNG_UST_DEBUG`:: If set, enable `liblttng-ust`'s debug and error output. @@ -1319,7 +1407,7 @@ affect application timings. Path to the shared object which acts as the `getcpu()` override plugin. An example of such a plugin can be found in the LTTng-UST documentation under - https://github.com/lttng/lttng-ust/tree/master/doc/examples/getcpu-override[`examples/getcpu-override`]. + https://github.com/lttng/lttng-ust/tree/v{lttng_version}/doc/examples/getcpu-override[`examples/getcpu-override`]. `LTTNG_UST_REGISTER_TIMEOUT`:: Waiting time for the _registration done_ session daemon command @@ -1329,12 +1417,16 @@ The value `0` means _do not wait_. The value `-1` means _wait forever_. Setting this environment variable to `0` is recommended for applications with time constraints on the process startup time. + -Default: {lttng_ust_register_timeout}. +Default: 3000. `LTTNG_UST_WITHOUT_BADDR_STATEDUMP`:: If set, prevents `liblttng-ust` from performing a base address state dump (see the <> section above). +`LTTNG_UST_WITHOUT_PROCNAME_STATEDUMP`:: + If set, prevents `liblttng-ust` from performing a procname state + dump (see the <> section above). + include::common-footer.txt[]