Babeltrace /ˈbæbəltreɪs/ is an open source trace format converter.

The Babeltrace project provides a library, Python bindings of this library, as well as a handy little command-line tool—aptly named babeltrace—which makes it very easy for mere mortals to view and convert traces.

Babeltrace is also the reference parser implementation of the Common Trace Format (CTF), a very versatile trace format. The Babeltrace library and its Python bindings can read and write CTF traces.

Getting Babeltrace

Here are a few methods to obtain your own copy of Babeltrace.

Distribution packages

Babeltrace is packaged for most major desktop and embedded Linux distributions:


sudo apt-get install babeltrace

The LTTng Stable PPA always offers the latest stable version of Babeltrace. To get the PPA version of Babeltrace, follow these steps:

sudo apt-add-repository ppa:lttng/ppa
sudo apt-get update
sudo apt-get install babeltrace


sudo apt-get install babeltrace


sudo yum install babeltrace


First, add the appropriate repository, depending on your version of openSUSE.

openSUSE 13.1:

sudo zypper addrepo

openSUSE 13.2:

sudo zypper addrepo

openSUSE Factory:

sudo zypper addrepo

Refresh the package database and install Babeltrace:

sudo zypper refresh
sudo zypper install babeltrace

Arch Linux

Babeltrace is available in the AUR.

If you have Yaourt:

yaourt -S babeltrace

Or, if you prefer the latest Git master version:

yaourt -S babeltrace-git


Enter the configuration menu:

make menuconfig

Then, under Debugging, profiling and benchmark, check the lttng-babeltrace package.

OpenEmbedded and Yocto

The babeltrace recipe is available in the openembedded-core layer of OpenEmbedded.

Building from source

See the project's README file for dependencies and detailed build instructions.


Extract, then do:
sudo make install


Clone, then do:
sudo make install


Documentation is available for the Babeltrace Python bindings.

You may also be interested in the babeltrace command-line tool's man page.

Babeltrace 2.0 is imminent!

The Babeltrace project is currently going through a major overhaul. New APIs in both the C and Python languages will come out of this work.

Upcoming features include:

Stay tuned!


Babeltrace was born to parse CTF traces produced by LTTng 2.0 and display them as a human-readable text output. Even though Babeltrace is independant from the LTTng project, their communities remain very close, which is why they share some services.