lttng-list(1) (v2.15)

NAME

lttng-list — List LTTng recording sessions and instrumentation points

SYNOPSIS

List the recording sessions:

lttng [GENERAL OPTIONS] list

List the tracing domains of a recording session:

lttng [GENERAL OPTIONS] list --domain SESSION

List the channels and recording event rules of a recording session:

lttng [GENERAL OPTIONS] list [--channel=CHANNEL] SESSION
      [--kernel] [--userspace] [--jul] [--log4j] [--log4j2] [--python]
      [--style=(compact | breathe)] [--no-truncate]
      [--mem-usage=(total | compact | full)]

List the available LTTng tracepoints, Linux system calls, and/or Java/Python loggers:

lttng [GENERAL OPTIONS] list
      [--kernel [--syscall]] [--userspace [--fields]]
      [--jul] [--log4j] [--log4j2] [--python]

DESCRIPTION

The lttng list command lists:

Without arguments

The recording sessions of your Unix user, or of all users if your Unix user is root, within the connected session daemon.

See the “Session daemon connection” section of lttng(1) to learn how a user application connects to a session daemon.

The command shows recording session properties such as their output directories/URLs and whether or not they’re active.

The name of the current recording session is underlined.

With the SESSION argument
With the --domain option

The tracing domains of the recording session named SESSION.

Without the --domain option
With the --channel=CHANNEL option

The recording event rules of the channel(s) CHANNEL of the recording session named SESSION.

Without the --channel option

The channels of the recording session named SESSION and their recording event rules.

By default, the command shows the total memory usage of each channel. Control the memory usage display mode with the --mem-usage option.

Use the dedicated tracing domain options (--kernel, --userspace, --jul, --log4j, --log4j2, and --python) to only show specific channels.

Without the SESSION argument and with at least one dedicated tracing domain option
With the --kernel option
Without the --syscall option

The available LTTng kernel tracepoints.

With the --syscall option

The available instrumented Linux system calls.

With the --userspace option

The available LTTng user space tracepoints.

Also list the available instrumentation point fields with the --fields option.

With the --jul, --log4j, --log4j2, and/or --python options

The available java.util.logging, Apache log4j 1.x, Apache Log4j 2 and/or Python logger names.

See lttng-concepts(7) to learn more about recording sessions, tracing domains, channels, recording event rules, and instrumentation points.

By default, the command adds empty lines between blocks of related information. Remove those empty lines with the --style=compact option.

This command shows colored text when the terminal supports it. Override the terminal coloring behaviour with the LTTNG_TERM_COLOR and NO_COLOR environment variables.

See the “EXAMPLES” section below for usage examples.

List the channels and recording event rules of the current recording session (see lttng-concepts(7) to learn more) with the lttng-status(1) command.

Visual language

The lttng list command uses a structured visual language designed to make complex tracing configurations easier to read and scan. It combines terminal colors, Unicode symbols, and indentation to express hierarchy, state, and metadata.

Color semantics:

Color Meaning

Green

Enabled, active, or valid items.

Red

Disabled, inactive, or invalid items.

Cyan

Important object nodes: recording sessions, tracing domains, channels, and event rules.

Those nodes act as section headers.

Yellow

Metadata such as counts and timestamps.

Magenta

Warning information.

Symbolic conventions:

Symbol Meaning

and

Active/inactive recording session.

and

Enabled/disabled channel or event rule.

🞂

Attribute or attribute group.

Vertical continuation.

OPTIONS

Tracing domain

-j, --jul
Without the SESSION argument

List the java.util.logging logger names.

With the SESSION argument

Only list the java.util.logging recording event rules.

-k, --kernel
Without the SESSION argument

List the LTTng kernel instrumentation points.

With the SESSION argument

Only list the Linux kernel channels and their recording event rules.

-l, --log4j
Without the SESSION argument

List the Apache log4j 1.x logger names.

With the SESSION argument

Only list the Apache log4j 1.x recording event rules.

--log4j2
Without the SESSION argument

List the Apache Log4j 2 logger names.

With the SESSION argument

Only list the Apache Log4j 2 recording event rules.

-p, --python
Without the SESSION argument

List the Python logger names.

With the SESSION argument

Only list the Python recording event rules.

-u, --userspace
Without the SESSION argument

List the LTTng user space tracepoints.

With the SESSION argument

Only list the user space channels and their recording event rules.

Filtering

-c CHANNEL, --channel=CHANNEL

Only list the properties and recording event rules of the channel(s) named CHANNEL.

Only available with the SESSION argument.

-d, --domain

Show the tracing domains of the recording session named SESSION.

-f, --fields

When listing user space tracepoints, also show their fields if they’re available.

--syscall

When listing LTTng kernel instrumentation points, only list Linux system calls.

Display

--mem-usage=MODE

Set the channel memory usage display mode to MODE.

MODE is one of:

total (default)

Show the total memory usage of the channel.

compact

Show the memory usage for each Unix user or process, depending on the buffer ownership model of the channel (see the --buffer-ownership option of lttng-enable-channel(1)).

full

Show the memory usage for each CPU (if available).

Only available with the SESSION argument.

--no-truncate

Do not truncate long output lines.

By default, the command truncates lines, adding an ellipsis, to fit the current terminal width.

--style=STYLE

Set the command output style to STYLE.

STYLE is one of:

breathe (default)

Add empty lines to make blocks of related information stand out.

compact

Make the the output compact.

Program information

-h, --help

Show help.

This option attempts to launch /usr/bin/man to view this manual page. Override the manual pager path with the LTTNG_MAN_BIN_PATH environment variable.

--list-options

List available command options and quit.

EXIT STATUS

0

Success

1

Command error

2

Undefined command

3

Fatal error

4

Command warning (something went wrong during the command)

ENVIRONMENT

LTTNG_ABORT_ON_ERROR

Set to 1 to abort the process after the first error is encountered.

LTTNG_HOME

Path to the LTTng home directory.

Defaults to $HOME.

Useful when the Unix user running the commands has a non-writable home directory.

LTTNG_LIST_LEGACY

Set to 1 to use the legacy output format (LTTng 2.14 and earlier) for the lttng-list(1) command instead of the modern output format.

Note that the legacy output doesn’t show anything related to features introduced after LTTng 2.14.

LTTNG_MAN_BIN_PATH

Absolute path to the manual pager to use to read the LTTng command-line help (with lttng-help(1) or with the --help option) instead of /usr/bin/man.

LTTNG_NO_UTF_8

Set to 1 to not emit multi-byte UTF-8 sequences, even if the locale claims to support it.

LTTNG_SESSION_CONFIG_XSD_PATH

Path to the directory containing the session.xsd recording session configuration XML schema.

LTTNG_SESSIOND_PATH

Absolute path to the LTTng session daemon binary (see lttng-sessiond(8)) to spawn from the lttng-create(1) command.

The --sessiond-path general option overrides this environment variable.

LTTNG_TERM_COLOR

Controls when to emit terminal SGR codes in the output.

The NO_COLOR environment variable overrides this.

One of:

auto (default)

Only emit SGR codes when the standard output is connected to a color-capable terminal.

always

Always emit SGR codes.

never

Never emit SGR codes.

NO_COLOR

If set and not empty, then it’s equivalent to setting LTTNG_TERM_COLOR to never.

See NO_COLOR to learn more.

FILES

$LTTNG_HOME/.lttngrc

Unix user’s LTTng runtime configuration.

This is where LTTng stores the name of the Unix user’s current recording session between executions of lttng(1). lttng-create(1) and lttng-set-session(1) set the current recording session.

$LTTNG_HOME/lttng-traces

Default output directory of LTTng traces in local and snapshot modes.

Override this path with the --output option of the lttng-create(1) command.

$LTTNG_HOME/.lttng

Unix user’s LTTng runtime and configuration directory.

$LTTNG_HOME/.lttng/sessions

Default directory containing the Unix user’s saved recording session configurations (see lttng-save(1) and lttng-load(1)).

/etc/lttng/sessions

Directory containing the system-wide saved recording session configurations (see lttng-save(1) and lttng-load(1)).

Note:$LTTNG_HOME defaults to the value of the HOME environment variable.

EXAMPLES

Example:List the recording sessions.

$
lttng list

Example:Show the details of a specific recording session.

$
lttng list my-session

Example:List the available Linux kernel system call instrumentation points.

$
lttng list --kernel --syscall

Example:List the available user space tracepoints with their fields.

See the --fields option.

$
lttng list --userspace --fields

Example:List the tracing domains of a specific recording session having at least one channel.

See the --domain option.

$
lttng list --domain my-session

Example:Show the details of a specific channel, including its current data stream infos, in a specific recording session.

See the --channel option.

$
lttng list my-session --channel=channel0 --stream-info-details

RESOURCES

THANKS

Special thanks to Michel Dagenais and the DORSAL laboratory at École Polytechnique de Montréal for the LTTng journey.

Also thanks to the Ericsson teams working on tracing which helped us greatly with detailed bug reports and unusual test cases.

SEE ALSO