---
name: "lttng-regenerate"
section: "1"
platform: "linux"
package: "lttng-tools"
version: "2.13.15-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/lttng-regenerate"
---

# lttng-regenerate(1)

Regenerate specific data of an LTTng recording session

## 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)](/lttng-concepts/7.md) to learn more about the current recording session).

See [**lttng-concepts**(7)](/lttng-concepts/7.md) 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)](/lttng-concepts/7.md) 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)](/lttng-create/1.md)).

• If it has user space channels, they’re configured to use a per-user buffering scheme (**--buffers-uid** option of [**lttng-enable-channel**(1)](/lttng-enable-channel/1.md)).

See [**lttng-concepts**(7)](/lttng-concepts/7.md) 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)](/lttng-create/1.md) command) or if LTTng rotates trace files for one of its channels (see [**lttng-concepts**(7)](/lttng-concepts/7.md)): in both cases, the state dump information may be lost.

## OPTIONS

See [**lttng**(1)](/lttng/1.md) 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)](/lttng-help/1.md) 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)](/lttng-sessiond/8.md)) to spawn from the [**lttng-create**(1)](/lttng-create/1.md) 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/1.md). [**lttng-create**(1)](/lttng-create/1.md) and [**lttng-set-session**(1)](/lttng-set-session/1.md) 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)](/lttng-create/1.md) 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)](/lttng-save/1.md) and [**lttng-load**(1)](/lttng-load/1.md)).

**/etc/lttng/sessions**

Directory containing the system-wide saved recording session configurations (see [**lttng-save**(1)](/lttng-save/1.md) and [**lttng-load**(1)](/lttng-load/1.md)).

**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**

## 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/1.md), [**lttng-concepts**(7)](/lttng-concepts/7.md)
