NAME
lttng-create - Create an LTTng recording sessionSYNOPSIS
Create a local mode recording session:lttng [GENERAL OPTIONS] create [SESSION] [--shm-path=DIR] [ --no-output | --output=DIR | --set-url=file://DIR]
lttng [GENERAL OPTIONS] create [SESSION] [--shm-path=DIR] ( --set-url=URL | --ctrl-url=URL --data-url=URL)
lttng [GENERAL OPTIONS] create [SESSION] --snapshot [--shm-path=DIR] [ --no-output | --output=DIR | --set-url=URL | --ctrl-url=URL --data-url=URL]
lttng [GENERAL OPTIONS] create [SESSION] --live[=DELAYUS] [ --shm-path=DIR] [--set-url=URL | --ctrl-url=URL --data-url=URL]
DESCRIPTION
The lttng create command creates a new recording session for your Unix user 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).•A session daemon for your Unix user if
none is currently running.
Override the path of the session daemon binary to spawn with the general
--sessiond-path option.
Avoid automatically spawning a session daemon with the general
--no-sessiond option.
•A relay daemon (see
lttng-relayd(8)) if all the following statements are true:
In this case, the create command spawns a relay daemon as such:
Override the path of the relay daemon binary to spawn with the general
--relayd-path option.
•You specify the --live
option.
•You don’t specify any of the
--set-url, --ctrl-url, or --data-url options.
•No relay daemon is currently listening
for TCP connections on 127.0.0.1:5344 (default LTTng live reader
connection address and port).
lttng-relayd --live-port=tcp://localhost:5344
Recording session modes
As documented in lttng-concepts(7), LTTng offers four recording session modes: Local modeWrite the trace data to the local file system.
The trace data output directory is:
With the --no-output option
Network streaming mode
None: the file system output is
disabled.
With the --output=DIR or --set-url=file://DIR
option
The directory DIR.
Otherwise
A subdirectory, under the
$LTTNG_HOME/lttng-traces ( $LTTNG_HOME defaults to $HOME)
directory, of which the name contains the recording session name and the
date/time.
Send the trace data over the network to a
listening relay daemon (see lttng-relayd(8)).
Set the trace output destination with the --set-url option, or with the
--ctrl-url and --data-url options (see the “URL
format” section below).
Snapshot mode ( --snapshot option)
Only write the trace data to the local file
system or send it to a listening relay daemon ( lttng-relayd(8)) when
LTTng takes a snapshot (see the lttng-snapshot(1) command).
With this mode, LTTng:
With the --no-output option
Live mode ( --live option)
Does NOT add any snapshot output to the
created recording session.
With the --output option, the --set-url option, or the
--ctrl-url and --data-url options
Adds a snapshot output named snapshot-1
using the provided path or URL(s) to the created recording session.
Otherwise
Adds an automatic snapshot output named
snapshot-1 to the created recording session.
The automatic snapshot output is a subdirectory, under the
$LTTNG_HOME/lttng-traces ( $LTTNG_HOME defaults to $HOME)
directory, of which the name contains the recording session name and the
date/time.
Send the trace data over the network to a
listening relay daemon (see lttng-relayd(8)) for live reading.
Set the trace output destination with the --set-url=URL option, or
with the --ctrl-url=URL and --data-url=URL options
(see the “URL format” section below). URL may NOT start
with file://.
URL format
The argument of the --set-url=URL, --ctrl-url=URL, and --data-url=URL options is an URL.file:// TRACEDIR
Absolute path to the directory containing the
trace data on the local file system.
NETPROTO://(HOST | IPADDR)[:CTRLPORT[:DATAPORT]][/TRACEDIR]
Network protocol, amongst:
net
( HOST | IPADDR)
TCP over IPv4.
The default values of CTRLPORT and DATAPORT are respectively 5342
and 5343.
net6
TCP over IPv6.
The default values of CTRLPORT and DATAPORT are respectively 5342
and 5343.
tcp
Same as the net protocol.
You may only use this with the --ctrl-url and --data-url options
together.
tcp6
Same as the net6 protocol.
You can only be use this with the --ctrl-url and --data-url
options together.
Hostname or IP address.
IPv6 address must be enclosed in square brackets ( [ and
]); see RFC 2732
<https://www.ietf.org/rfc/rfc2732.txt>.
CTRLPORT
Control TCP port.
DATAPORT
Data TCP port.
TRACEDIR
Path of the directory containing the trace
data on the remote file system.
This path is relative to the base output directory of the LTTng relay daemon
(see the --output option of lttng-relayd(8)).
OPTIONS
See lttng(1) for GENERAL OPTIONS.Mode selection
See the “Recording session modes” section above.Create the recording session in live mode.
The optional DELAYUS argument is the maximum time (in µs) you can
wait for the data to be flushed (sent to the connected LTTng relay daemon).
The default value of DELAYUS is 1000000.
Set the URL of the relay daemon to connect to with the --set-url option,
or with the --ctrl-url and --data-url options, instead of using
net://127.0.0.1.
The session daemon must be able to connect to a listening relay daemon (see
lttng-relayd(8)).
--snapshot
Create the recording session in snapshot mode.
This is equivalent to:
•One of:
With the --no-output option
Not adding any snapshot output after LTTng
creates the recording session.
With the --output option, the --set-url option, or the
--ctrl-url and --data-url options
Adding a snapshot output named
snapshot-1 using the provided path or URL(s) immediately after LTTng
creates the recording session.
Otherwise
Adding an automatic snapshot output named
snapshot-1 immediately after LTTng creates the recording session.
The automatic snapshot output is a subdirectory, under the
$LTTNG_HOME/lttng-traces ( $LTTNG_HOME defaults to $HOME)
directory, of which the name contains the recording session name and the
date/time.
•Forcing all the channels to be created
for the recording session to be configured with the --override and
--output= mmap options (see
lttng-enable-channel(1)).
Output
--no-outputDepending on the recording session mode (see
the “Recording session modes” section above):
Local mode
-o DIR, --output=DIR
Disable the file system output.
Snapshot mode ( --snapshot option)
Do NOT add a snapshot output after creating
the recording session.
Equivalent to
--set-url=file://DIR.
--shm-path=DIR
Set the path of the directory containing the
shared memory files holding the channel ring buffers to DIR on the
local file sytem.
Note
As of LTTng 2.13.9, LTTng only
considers this option for user space (including Java and Python) channels, but
this may change in the future.
URL
See the “URL format” section above to learn more about the syntax of the URL argument of the following options. -C URL, --ctrl-url=URLSet the control path URL to URL.
You must also use the --data-url option.
Not available in local mode (see the “Recording session modes”
section above).
In snapshot mode, this is equivalent to using the --ctrl-url option of
the add-output action of the lttng-snapshot(1) command
immediately after creating the recording session.
-D URL, --data-url=URL
Set the trace data path URL to URL.
You must also use the --ctrl-url option.
Not available in local mode (see the “Recording session modes”
section above).
In snapshot mode, this is equivalent to using the --data-url option of
the add-output action of the lttng-snapshot(1) command
immediately after creating the recording session.
-U URL, --set-url=URL
Set the destination URL of the control path
and trace data to URL.
This URL remains unchanged as long as the recording session exists.
Depending on the recording session mode (see the “Recording session
modes” section above):
Local mode
URL must start with file://,
followed with the destination directory path on the local file system.
Network streaming and live modes
Equivalent to using both the --ctrl-url
and --data-url options.
Snapshot mode ( --snapshot option)
Equivalent to using the URL non-option
argument of the add-output action of the lttng-snapshot(1)
command immediately after creating the recording session.
Program information
-h, --helpShow 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
0Success
1
Command error
2
Undefined command
3
Fatal error
4
Command warning (something went wrong during
the command)
ENVIRONMENT
LTTNG_ABORT_ON_ERRORSet 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_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_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
command.
The --sessiond-path general option overrides this environment
variable.
FILES
$LTTNG_HOME/.lttngrcUnix 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). 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
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)).
EXAMPLES
Example 1. Create a normal mode recording session with a generated name.$ lttng create
$ lttng create my-session
$ lttng create --output=/path/to/traces
$ lttng create --set-url=net://10.0.0.242/inv4
$ lttng create --snapshot
$ lttng create --snapshot \ --set-url=tcp://192.168.1.102:1234:5678/my-snapshots
$ lttng create --snapshot --no-output
$ lttng create --live
$ lttng create --live=250000 \ --set-url=tcp://relayd34:4885:4886
$ lttng create my-session --shm-path=/mnt/nvram2/lttng
RESOURCES
•LTTng project website
<https://lttng.org>
•LTTng documentation
<https://lttng.org/docs>
•LTTng bug tracker
<https://bugs.lttng.org>
•Git repositories
<https://git.lttng.org>
•GitHub organization
<https://github.com/lttng>
•Continuous integration
<https://ci.lttng.org/>
•Mailing list
<https://lists.lttng.org/> for support and development:
[email protected]
•IRC channel
<irc://irc.oftc.net/lttng>: #lttng on irc.oftc.net
COPYRIGHT
This program is part of the LTTng-tools project.THANKS
Special thanks to Michel Dagenais and the DORSAL laboratory <http://www.dorsal.polymtl.ca/> at École Polytechnique de Montréal for the LTTng journey.SEE ALSO
lttng(1), lttng-destroy(1), lttng-enable-channel(1), lttng-list(1), lttng-rotate(1), lttng-save(1), lttng-set-session(1), lttng-start(1), lttng-status(1), lttng-track(1), lttng-concepts(7), lttng-relayd(8), lttng-sessiond(8)7 December 2021 | LTTng 2.13.9 |