Repolode
jfernandez

jfernandez/bpftop

Терминальный монитор в стиле top, показывающий запущенные eBPF-программы, время их выполнения, число событий в секунду и примерную загрузку CPU.

Звёзды
2,709
Форки
130
Открытые issues
5
Последний коммит
2 месяца назад

Что это?

bpftop в реальном времени показывает все eBPF-программы, загруженные на хост Linux, в интерфейсе, похожем на top. Для каждой программы отображаются среднее время выполнения, число событий в секунду и примерная доля общей загрузки CPU; эти показатели также можно просматривать на графиках в динамике.

Инструмент включает сбор статистики времени выполнения eBPF только на время работы и отключает его при выходе, поэтому в остальное время почти не нагружает систему. Для работы нужны права root и ядро Linux версии 5.8 или новее; в более старых ядрах используется резервный вариант на основе procfs.

Программа написана на C и поставляется в виде одного бинарного файла с динамической линковкой к libz и libelf. Установочные скрипты доступны для x86_64 и aarch64; пакеты — для Fedora, Arch Linux и Nix.

Ключевые возможности

  • 01Показывает все запущенные eBPF-программы, их ID, тип и имя.
  • 02Для каждой программы отображает среднее время выполнения, число событий в секунду и примерную загрузку CPU.
  • 03Строит графики показателей производительности в динамике.
  • 04Поддерживает навигацию клавишами со стрелками или в стиле vim (j/k), а также фильтрацию и сортировку столбцов.
  • 05Показывает имена процессов и PID, ссылающихся на каждую eBPF-программу.
  • 06Интервал обновления можно настроить от 1 до 3600 секунд.

Сценарии использования

  • Определить, какие eBPF-программы сильнее всего нагружают CPU на сервере Linux.
  • Диагностировать влияние инструментов трассировки или работы с сетью на производительность, если они используют eBPF.
  • Проверить, какие процессы удерживают ссылки на конкретную eBPF-программу.

Быстрый старт

  1. 1

    Запустите официальный скрипт установки из README

  2. 2

    Запустите bpftop с помощью sudo

    sudo bpftop

Что важно знать

  • Для запуска требуются права sudo/root.
  • Требуется ядро Linux версии 5.8 или новее, а также наличие libz и libelf.

В подборках

Темы

Частые вопросы

Что такое bpftop?
Терминальный монитор в стиле top, показывающий запущенные eBPF-программы, время их выполнения, число событий в секунду и примерную загрузку CPU. bpftop в реальном времени показывает все eBPF-программы, загруженные на хост Linux, в интерфейсе, похожем на top. Для каждой программы отображаются среднее время выполнения, число событий в секунду и примерная доля общей загрузки CPU; эти показатели также можно просматривать на графиках в динамике.
bpftop можно использовать бесплатно? Какая у него лицензия?
bpftop распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
bpftop всё ещё поддерживается?
Обновлялся за последние 6 месяцев. Последний коммит в bpftop — 1 сент. 2026 г..
Для чего можно использовать bpftop?
Определить, какие eBPF-программы сильнее всего нагружают CPU на сервере Linux. Диагностировать влияние инструментов трассировки или работы с сетью на производительность, если они используют eBPF. Проверить, какие процессы удерживают ссылки на конкретную eBPF-программу.
Как установить bpftop?
Запустите официальный скрипт установки из README Запустите bpftop с помощью sudo: sudo bpftop
Где скачать bpftop?
Исходный код и инструкции по установке — на GitHub: https://github.com/jfernandez/bpftop

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты