SkillAgentSearch skills...

Bpftrace

High-level tracing language for Linux

Install / Use

/learn @bpftrace/Bpftrace
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

<p align="center"> <picture> <source media="(prefers-color-scheme: dark)" srcset="images/bpftrace_Full_Logo-White.svg"/> <img alt="bpftrace" src="images/bpftrace_Full_Logo-Black.svg" width="60%"/> </picture> </p>

Build Status Latest Release License

bpftrace is a general purpose tracing tool and language for Linux. It leverages eBPF to provide powerful, efficient tracing capabilities with minimal overhead. bpftrace uses LLVM as a compiler backend, and libbpf for interacting with the Linux BPF subsystem, including kernel dynamic tracing (kprobes, hardware and software perf events), user-level dynamic tracing (USDT, uprobes), tracepoints (regular, raw), and more. The bpftrace language is inspired by awk, C, and predecessor tracers such as DTrace and SystemTap.

Visit bpftrace.org for tutorials, documentation, and labs!

This respository also contains some canonical tools.

For migrating from older versions, see the migration guide.

Quick Start

Get started with bpftrace in just a few minutes! To build from source, see the development guide. However, you can often install it using your distribution's package manager.

[!IMPORTANT] When using a distribution package, be sure to verify bpftrace --version when referencing documentation.

<table> <tr> <td valign="middle">Distributions</td> <td valign="middle">Command</td> </tr> <tr> <td valign="middle"> <a href="https://packages.ubuntu.com/jammy/bpftrace"><img src="https://repology.org/badge/version-for-repo/ubuntu_22_04/bpftrace.svg" alt="Ubuntu 22.04"/></a> <a href="https://packages.ubuntu.com/noble/bpftrace"><img src="https://repology.org/badge/version-for-repo/ubuntu_24_04/bpftrace.svg" alt="Ubuntu 24.04"/></a> <a href="https://packages.ubuntu.com/plucky/bpftrace"><img src="https://repology.org/badge/version-for-repo/ubuntu_25_04/bpftrace.svg" alt="Ubuntu 25.04"/></a> <a href="https://packages.ubuntu.com/questing/bpftrace"><img src="https://repology.org/badge/version-for-repo/ubuntu_25_10/bpftrace.svg" alt="Ubuntu 25.10"/></a> <a href="https://packages.debian.org/trixie/bpftrace"><img src="https://repology.org/badge/version-for-repo/debian_13/bpftrace.svg" alt="Debian 13"/></a> <a href="https://packages.debian.org/forky/bpftrace"><img src="https://repology.org/badge/version-for-repo/debian_14/bpftrace.svg" alt="Debian 14"/></a> <a href="https://packages.debian.org/sid/bpftrace"><img src="https://repology.org/badge/version-for-repo/debian_unstable/bpftrace.svg" alt="Debian Unstable"/></a> </td> <td valign="middle"> <pre lang="bash">sudo apt install bpftrace<pre> </td> </tr> <tr> <td valign="middle"> <a href="https://packages.fedoraproject.org/pkgs/bpftrace/bpftrace/fedora-42-updates.html"><img src="https://repology.org/badge/version-for-repo/fedora_42/bpftrace.svg" alt="Fedora 42"/></a> <a href="https://packages.fedoraproject.org/pkgs/bpftrace/bpftrace/fedora-43.html"><img src="https://repology.org/badge/version-for-repo/fedora_43/bpftrace.svg" alt="Fedora 43"/></a> <a href="https://packages.fedoraproject.org/pkgs/bpftrace/bpftrace/fedora-rawhide.html"><img src="https://repology.org/badge/version-for-repo/fedora_rawhide/bpftrace.svg" alt="Fedora Rawhide"/></a> <a href="https://centos.pkgs.org/9/centos-crb-x86_64/"><img src="https://repology.org/badge/version-for-repo/centos_stream_9/bpftrace.svg" alt="CentOS 9"/></a> <a href="https://centos.pkgs.org/10/centos-crb-x86_64/"><img src="https://repology.org/badge/version-for-repo/centos_stream_10/bpftrace.svg" alt="CentOS 10"/></a> </td> <td valign="middle"> <pre lang="bash">sudo dnf install bpftrace</pre> </td> </tr> <tr> <td valign="middle"> <a href="https://pkgs.alpinelinux.org/packages?name=bpftrace&branch=v3.21"><img src="https://repology.org/badge/version-for-repo/alpine_3_21/bpftrace.svg" alt="Alpine 3.21"/></a> <a href="https://pkgs.alpinelinux.org/packages?name=bpftrace&branch=v3.22"><img src="https://repology.org/badge/version-for-repo/alpine_3_22/bpftrace.svg" alt="Alpine 3.22"/></a> <a href="https://pkgs.alpinelinux.org/packages?name=bpftrace&branch=edge"><img src="https://repology.org/badge/version-for-repo/alpine_edge/bpftrace.svg" alt="Alpine Edge"/></a> </td> <td valign="middle"> <pre lang="bash">sudo apk add bpftrace</pre> </td> </tr> <tr> <td valign="middle"> <a href="https://archlinux.org/packages/extra/x86_64/bpftrace/"><img src="https://repology.org/badge/version-for-repo/arch/bpftrace.svg" alt="Arch Linux"/></a> </td> <td valign="middle"> <pre lang="bash">sudo pacman -S bpftrace</pre> </td> </tr> <tr> <td valign="middle"> <a href="https://packages.gentoo.org/packages/dev-util/bpftrace"><img src="https://repology.org/badge/version-for-repo/gentoo/bpftrace.svg" alt="Gentoo"/></a> </td> <td valign="middle"> <pre lang="bash">sudo emerge -av bpftrace</pre> </td> </tr> <tr> <td valign="middle"> <a href="https://search.nixos.org/packages?query=bpftrace"><img src="https://repology.org/badge/version-for-repo/nix_unstable/bpftrace.svg" alt="nixpkgs"/></a> </td> <td valign="middle"> <pre lang="bash">nix-shell -p bpftrace</pre> </td> </tr> <tr> <td valign="middle"> <a href="https://software.opensuse.org/package/bpftrace"><img src="https://repology.org/badge/version-for-repo/opensuse_tumbleweed/bpftrace.svg" alt="openSUSE Tumbleweed"/></a> </td> <td valign="middle"> <pre lang="bash">sudo zypper install bpftrace</pre> </td> </tr> <tr> <td valign="middle"> <a href="https://github.com/bpftrace/bpftrace/actions/workflows/binary.yml"><img src="https://img.shields.io/badge/AppImage-nightly-green" alt="AppImage (nightly)"></a> </td> <td valign="middle"> <pre lang="bash">declare -A suffixes=([x86_64]="X64" [amd64]="AMD64"); declare prefix="bpftrace/bpftrace/workflows/binary/master/bpftrace"; declare url="https://nightly.link/${prefix}-${suffixes[$(uname -m)]}.zip"; curl -L -o bpftrace.zip "${url}" && unzip bpftrace.zip</pre> </td> </tr> </table>

Contributing

See our contributing guide for details on how to contribute, and our governance document for details on how the project is run.

If you have tools built with bpftrace that you'd like to submit, please contribute to the user-tools repository.

Building

For full build instructions (Nix or distro-native), see the development guide.

Community & Support

bpftrace is built and maintained by a diverse community of contributors, users, and organizations who rely on it for production tracing and debugging.

Get help or get involved:

View on GitHub
GitHub Stars10.0k
CategoryDevelopment
Updated45m ago
Forks1.4k

Languages

C++

Security Score

100/100

Audited on Mar 31, 2026

No findings