LTTNG-REGENERATE(1)

NAME
lttng-regenerate - Regenerate specific data of an LTTng recording session

SYNOPSIS

Regenerate the metadata of a recording session:

lttng [GENERAL OPTIONS] regenerate metadata [--session=SESSION]

Regenerate the state dump event records of a recording session:

lttng [GENERAL OPTIONS] regenerate statedump [--session=SESSION]

DESCRIPTION

The lttng regenerate command regenerates specific data of:

With the --session=SESSION option
    The recording session named SESSION.

Without the --session option
    The current recording session (see lttng-concepts(7) to learn more about the current recording session).

See lttng-concepts(7) to learn more about recording sessions.

As of this version, the metadata and statedump targets are available.

See the “EXAMPLES” section below for usage examples.

  Regenerate the metadata of a recording session

Use the metadata target to resample the offset between the monotonic clock and the wall time of the system, and then regenerate the metadata stream files.

More specifically, you may want to resample the wall time following a major NTP <https://en.wikipedia.org/wiki/Network_Time_Protocol> correction. As such, LTTng can trace a system booting with an incorrect wall time before its wall time is NTP-corrected. Regenerating the metadata of the selected recording session ensures that trace readers can accurately determine the event record timestamps relative to the Unix epoch.

Note that if you plan to rotate (see lttng-concepts(7) to learn more) the selected recording session, this target only regenerates the metadata stream files of the current and next trace chunks.

Important

    You can only use the metadata target when the selected recording session:

        • Is not in live mode (--live option of lttng-create(1)).

        • If it has user space channels, they’re configured to use a per-user buffer ownership model (--buffer-ownership=user option of lttng-enable-channel(1)).

        See lttng-concepts(7) to learn more about channels.

  Regenerate the state dump event records of a recording session

Use the statedump target to collect up-to-date state dump information and create corresponding event records.

This is particularly useful if the selected recording session is in snapshot mode (--snapshot option of the lttng-create(1) command) or if LTTng rotates trace files for one of its channels (see lttng-concepts(7)): in both cases, the state dump information may be lost.

OPTIONS

See lttng(1) for GENERAL OPTIONS.

-s SESSION, --session=SESSION
    Regenerate specific data of the recording session named SESSION instead of the current recording session.

  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_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 lttng-create(1) command.

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

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)).

/usr/local/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 1. Regenerate the metadata of the current recording session.

        $ lttng regenerate metadata

Example 2. Regenerate the state dump event records of a specific recording session.

    See the --session option.

        $ lttng regenerate statedump --session=my-session

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: lttng-dev@lists.lttng.org

    • IRC channel <irc://irc.oftc.net/lttng>: #lttng on irc.oftc.net

    • Mastodon <https://mastodon.social/@lttng>

COPYRIGHT

This program is part of the LTTng-tools project.

LTTng-tools is distributed under the GNU General Public License version 2 <http://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html>. See the LICENSE <https://github.com/lttng/lttng-tools/blob/master/LICENSE> file for details.

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.

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

SEE ALSO

lttng(1), lttng-concepts(7)