awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
bpftrace avatar

bpftrace/bpftrace

0
View on GitHub↗
9,950 stars·1,439 forks·C++·apache-2.0·17 viewsbpftrace.org↗

Bpftrace

bpftrace is a high-level eBPF tracing tool and kernel instrumentation framework for Linux. It provides a tracing language to instrument kernel and user-space events without recompiling the system, functioning as a dynamic system profiler and event aggregator.

The project enables dynamic system tracing and Linux kernel observability by capturing tracepoints and dynamic probes in real time. It allows for kernel data inspection and runtime process debugging by accessing internal data structures and filtering specific process events.

Its capability surface covers system performance analysis, including execution stack sampling and event latency measurement. It also provides utilities for event data summarization through histograms and frequency maps, as well as a probe discovery utility to locate available instrumentation points.

Features

  • Dynamic System Tracing - Enables adding instrumentation to a live system using eBPF to observe kernel and user-space function calls.
  • Data Structure Inspectors - Allows accessing and summarizing internal kernel data structures to diagnose complex system behaviors.
  • Runtime Type Resolution - Provides dynamic type resolution using BTF and kernel headers to cast raw memory addresses into readable C structures.
  • eBPF Tooling - Provides a high-level tracing language that leverages eBPF to instrument kernel and user-space events.
  • Event Aggregators - Summarizes system event data into histograms and frequency maps for deep performance analysis.
  • Kernel Observability Programs - Provides advanced observability of the Linux kernel by capturing internal events and inspecting system state in real time.
  • Kernel Structure Tracing - Provides the capability to access and dereference internal kernel structures by casting raw arguments or using type information.
  • Kernel-Userspace Shared Maps - Utilizes shared hash maps and arrays between the kernel and userspace to aggregate and store event counters.
  • Kernel Tracing Frameworks - Provides a framework for capturing tracepoints and dynamic probes to analyze kernel data structures and function calls.
  • Kernel Event Tracers - Captures event data using stable tracepoints and dynamic probes at function entry and exit points.
  • Dynamic Kernel Probes - Allows attaching custom eBPF bytecode to kprobes and tracepoints for live kernel function instrumentation.
  • Performance Profiling Tools - Functions as a dynamic system profiler that samples execution stacks and measures event latency.
  • System Performance Analyzers - Measures event latency and execution stacks to identify performance bottlenecks and resource contention in running systems.
  • Execution Stack Samplers - Captures execution stack traces at a set frequency to identify system performance bottlenecks.
  • Event Frequency Counters - Aggregates event occurrences into maps, frequency counts, and histograms for performance trend visualization.
  • Runtime Debugging - Filters and captures specific process events to troubleshoot application crashes or unexpected behavior on a live host.
  • Predicate-Based Execution Filters - Executes actions only when specific boolean expressions or predicates are true to isolate targeted process IDs.
  • Source Translators - Implements a backend that translates high-level tracing scripts into C code before eBPF compilation.
  • Just-in-Time Compilers - Translates high-level scripts into eBPF bytecode at runtime using an LLVM-based just-in-time compiler.
  • Program Lifecycle Managers - Manages the lifecycle of kernel programs by loading bytecode and reading data from shared memory maps.
  • Event Latency Measurements - Implements high-resolution timestamping to measure the time elapsed between two specific events.
  • Probe Discovery Utilities - Provides a utility to discover available instrumentation points using search terms and wildcards.
  • Command Line Tools - Listed in the “Command Line Tools” section of the The Book Of Secret Knowledge awesome list.

Star history

Star history chart for bpftrace/bpftraceStar history chart for bpftrace/bpftrace

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Projects sharing features with Bpftrace

These projects share indexed features with Bpftrace. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • iovisor/bcciovisor avatar

    iovisor/bcc

    22,459View on GitHub↗

    BCC is an eBPF development toolkit and tracing framework used for monitoring and analyzing the Linux kernel. It functions as a performance analysis tool and debugging utility to capture system events, measure kernel latency, and provide network observability. The project distinguishes itself by providing a build system that integrates with LLVM to compile C-like code into BPF bytecode at runtime. It utilizes BPF Type Format data for relocations to maintain cross-kernel compatibility and extracts kernel headers to ensure the generated programs match the specific kernel version. The toolkit co

    C
    View on GitHub↗22,459
  • brendangregg/flamegraphbrendangregg avatar

    brendangregg/FlameGraph

    19,307View on GitHub↗

    FlameGraph is a performance profiling and visualization toolkit designed to identify bottlenecks in software execution. It functions as a processing engine that transforms raw stack trace samples into interactive, hierarchical diagrams. By representing aggregated execution frequency as nested rectangles, the tool allows developers to visualize hot code paths and analyze system behavior across both kernel and user-space environments. The project distinguishes itself through its ability to perform differential profile analysis, which highlights performance regressions or improvements by compari

    Perl
    View on GitHub↗19,307
  • brendangregg/perf-toolsbrendangregg avatar

    brendangregg/perf-tools

    10,434View on GitHub↗

    This project is a specialized toolset for profiling kernel latency, analyzing tracepoint frequency, and monitoring system-wide performance data. It functions as a kernel performance profiler, tracepoint analyzer, and a collection of utilities for the Linux ftrace and perf_events subsystems. The toolkit provides high-level abstractions via shell-scripted wrappers to manage complex kernel tracing interfaces. It distinguishes itself through the use of bucket-based event histograms to visualize the distribution of kernel events and the ability to identify functions exceeding specific latency thre

    Shell
    View on GitHub↗10,434
  • iovisor/bpftraceiovisor avatar

    iovisor/bpftrace

    10,169View on GitHub↗

    bpftrace is a dynamic instrumentation tool and high-level tracing language for eBPF. It functions as a Linux kernel tracer and user-space profiler used to analyze live software behavior through the on-the-fly insertion of tracing and logging probes. The tool enables the collection of real-time data from the Linux kernel and applications to diagnose issues on live production systems. It intercepts user-level events using uprobes and USDT to debug and profile applications without modifying the original source code. The project covers system observability and performance analysis by monitoring

    C++
    View on GitHub↗10,169
Compare all 30 related projects→

Frequently asked questions

What does bpftrace/bpftrace do?

bpftrace is a high-level eBPF tracing tool and kernel instrumentation framework for Linux. It provides a tracing language to instrument kernel and user-space events without recompiling the system, functioning as a dynamic system profiler and event aggregator.

What are the main features of bpftrace/bpftrace?

The main features of bpftrace/bpftrace are: Dynamic System Tracing, Data Structure Inspectors, Runtime Type Resolution, eBPF Tooling, Event Aggregators, Kernel Observability Programs, Kernel Structure Tracing, Kernel-Userspace Shared Maps.

Which projects share features with bpftrace/bpftrace?

Projects with overlapping indexed features include: iovisor/bcc — BCC is an eBPF development toolkit and tracing framework used for monitoring and analyzing the Linux kernel. It… brendangregg/flamegraph — FlameGraph is a performance profiling and visualization toolkit designed to identify bottlenecks in software… brendangregg/perf-tools — This project is a specialized toolset for profiling kernel latency, analyzing tracepoint frequency, and monitoring… iovisor/bpftrace — bpftrace is a dynamic instrumentation tool and high-level tracing language for eBPF. It functions as a Linux kernel… eunomia-bpf/bpf-developer-tutorial — This project is an educational resource providing a comprehensive development tutorial for writing and loading eBPF… cilium/ebpf — This project is a Go library and runtime for loading and managing eBPF programs and maps. It provides a bytecode…