Babeltrace 2 C API  2.0.3
Open-source trace manipulation framework
 All Functions Variables Typedefs Enumerations Enumerator Modules Pages
Välkommen!
Note
This documentation (text and illustrations) is licensed under a Creative Commons Attribution-ShareAlike 4.0 International license.

Welcome to the Babeltrace 2 C API (libbabeltrace2) documentation!

To get an idea of how to use the libbabeltrace2 API, have a look at the guides and examples. That being said, we recommend that you read the API fundamentals to understand what the API expects exactly.

If you are developing a Babeltrace 2 plugin or an application which uses libbabeltrace2, we recommend that you build the Babeltrace 2 library for development.

Babeltrace 2 in a nutshell

Babeltrace 2 is an open-source software project by EfficiOS; its purpose is to process or convert traces.

The Babeltrace 2 project contains:

With the Babeltrace 2 library, you can:

A trace processing graph contains connected components. The specific component topology determines the trace processing task to realize.

basic-convert-graph.png
A conversion graph, a specific trace processing graph.

Between the components of a trace processing graph, messages flow from output ports to input ports following the configured connections through message iterators. There are many types of messages, chief amongst which is the event message.

With libbabeltrace2, you can also query some specific object from a component class (for example, the available LTTng live sessions of an LTTng relay daemon). This is what the babeltrace2 CLI tool's query command does, for example.

Make sure to read babeltrace2-intro(7) to learn even more about the Babeltrace 2 project and its core concepts.

What's in this documentation?

API fundamentals

Explains the basic principles of the Babeltrace 2 C API.

Make sure you understand this section as you need this knowledge to use the API correctly.

Guides

Shows how to achieve common tasks with libbabeltrace2.

Guides help you navigate through the most important features of the library and its API.

Examples

Contains simple and more complex examples which apply the different parts of the API to accomplish real tasks.

API reference

Documents all the Babeltrace 2 C functions, definitions, macros, enumerators, and types.

Each documentation module describes its API thoroughly and how it's related to other modules.