Компания Netflix представила утилиту bpftop, предоставляющую интерфейс для мониторинга за выполнением eBPF-программ в ядре Linux, реализованный в стиле утилиты top. Утилита показывает показатели производительности, нагрузки на CPU и обработки событий для каждой eBPF-программы. Поддерживается построение графиков для оценки динамики изменения характеристик выполнения во времени. Код bpftop написан на языке Rust и распространяется под лицензией Apache 2.0.
Основные возможности:
- Отображение списка запущенных eBPF-программ, их идентификаторов, типа и имени.
- Показ периода и общего среднего времени выполнения каждой eBPF-программы.
- Расчёт для каждой eBPF-программы нагрузки на CPU и обработанных событий в секунду.
- Графики времени выполнения, событий в секунду и нагрузки на CPU в 10-секундные отрезки.
- Ежесекундное обновление списка.
Одной из целей разработки bpftop называется упрощение оптимизации eBPF-программ и возможность динамического наблюдения за эффективностью тех или иных изменений в eBPF-программах. Для получения статистики в bpftop используется системный вызов BPF_ENABLE_STATS и сбор информации каждую секунду. Для снижения накладных расходов статистика собирается только во время работы утилиты.
Источник: http://www.opennet.ru/opennews/art.shtml?num=60676