barectf

raw JSON →
3.1.2 verified Fri May 01 auth: no python

barectf is a generator of ANSI C tracers that output CTF (Common Trace Format) data streams. It takes a YAML configuration file describing trace events and generates a standalone C tracer suitable for embedded systems. Current version: 3.1.2, released 2023-12. Release cadence: irregular, with major versions every few years.

pip install barectf
error ImportError: No module named barectf
cause User tries to import barectf as a Python module, but it's a CLI tool.
fix
Do not import barectf. Run 'barectf --help' from the terminal.
error couldn't load YAML config: top-level keys 'trace' and 'events' required
cause The YAML configuration schema changed in version 3.x.
fix
Update the config file to use the new schema. See https://barectf.readthedocs.io/en/latest/config-schema.html
error PyYAML or jsonschema not found; barectf requires these dependencies
cause Missing dependencies when running barectf as a script.
fix
Install barectf via pip to automatically install dependencies, or run 'pip install PyYAML jsonschema'.
breaking Version 3.x uses a new configuration schema incompatible with 2.x. Old configs will fail.
fix Refer to the migration guide: https://barectf.readthedocs.io/en/latest/migration.html
gotcha barectf is not a runtime library; it generates C source code. Users often try to import it in Python, which is incorrect.
fix Do not import barectf. Use it from the command line or via subprocess.
deprecated The 'barectf' Python package may be deprecated in favor of the standalone binary distribution in future versions.
fix Watch for announcements. For now, both pip and binary releases are supported.

barectf is used as a CLI tool. No Python import is needed.

# barectf is a command-line tool, not a Python library.
# After installation, run:
# barectf --help
# To generate a tracer from a YAML config:
# barectf config.yaml -o output_dir