Repolode
hotpath-rs

hotpath-rs/hotpath

Профилировщик Rust для поиска узких мест CPU, памяти, async-кода, SQL, HTTP и I/O с экспортом в Prometheus и Grafana.

Звёзды
1,899
Форки
61
Открытые issues
8
Последний коммит
19 часов назад

Что это?

hotpath — набор инструментов для профилирования Rust, который помогает выяснить, на что уходит время, какие участки загружают CPU и где выделяется память. Он отличает медленные функции, ожидающие завершения I/O, от функций с высокой нагрузкой на CPU, а также позволяет инструментировать функции, каналы, futures, streams, locks, SQL-запросы, HTTP-вызовы и побайтовый I/O.

Профилирование включается через features: если не активировать, например, hotpath или hotpath-alloc, макросы инструментирования превращаются в no-op. Результаты можно вывести в виде статического отчёта при завершении программы или смотреть в интерактивной TUI-панели. Метрики также можно экспортировать в Prometheus и Grafana для мониторинга в production.

В проект входит MCP-сервер, через который AI-агенты могут запрашивать данные профилирования, а также команда CLI для настройки профилирования в репозитории с помощью coding agent.

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

  • 01Измеряет время выполнения функций, собирает сэмплы CPU и данные о выделении памяти, формирует отчёты по каждой функции.
  • 02Отслеживает async futures, каналы и streams, включая глубину очереди и задержки.
  • 03Профилирует SQL-запросы в sqlx и Diesel, а также HTTP-вызовы в reqwest и ureq.
  • 04Собирает данные о задержках и ошибках для каждого маршрута в серверах axum.
  • 05Экспортирует метрики в Prometheus и Grafana для отображения на дашбордах.
  • 06Предоставляет интерактивную TUI-панель и MCP-сервер для AI-агентов.

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

  • Поиск функций, на которые приходится основная нагрузка на CPU или наибольшее число выделений памяти в сервисе на Rust.
  • Определение того, замедляется ли код из-за ожидания I/O или высокой нагрузки на CPU.
  • Диагностика конкуренции за locks и медленной работы каналов в async-приложениях на Tokio.
  • Мониторинг задержек SQL и HTTP в production с помощью Prometheus и Grafana.

В подборках

Темы

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

Что такое hotpath?
Профилировщик Rust для поиска узких мест CPU, памяти, async-кода, SQL, HTTP и I/O с экспортом в Prometheus и Grafana. hotpath — набор инструментов для профилирования Rust, который помогает выяснить, на что уходит время, какие участки загружают CPU и где выделяется память. Он отличает медленные функции, ожидающие завершения I/O, от функций с высокой нагрузкой на CPU, а также позволяет инструментировать функции, каналы, futures, streams, locks, SQL-запросы, HTTP-вызовы и побайтовый I/O.
hotpath можно использовать бесплатно? Какая у него лицензия?
hotpath распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
hotpath всё ещё поддерживается?
Активно поддерживается. Последний коммит в hotpath — 21 окт. 2026 г..
Для чего можно использовать hotpath?
Поиск функций, на которые приходится основная нагрузка на CPU или наибольшее число выделений памяти в сервисе на Rust. Определение того, замедляется ли код из-за ожидания I/O или высокой нагрузки на CPU. Диагностика конкуренции за locks и медленной работы каналов в async-приложениях на Tokio. Мониторинг задержек SQL и HTTP в production с помощью Prometheus и Grafana.
Где скачать hotpath?
Исходный код и инструкции по установке — на GitHub: https://github.com/hotpath-rs/hotpath

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

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