Perfmon
- title
- Perfmon
- type
- toolbox
- summary
- Вкладочный TUI на Bubble Tea, запускающий top, vmstat и ss бок о бок с живыми sparkline-графиками
- tags
- golang, tui, monitoring, cli
- language
- Go
- license
- MIT
- created
- 2026-04-06
- updated
- 2026-09-01
- lang
- ru
- translation_of
- perfmon
- source_updated
- 2026-09-01
- translated
- 2026-09-01
- translator
- lllm/antigravity/gemini-3.7-flash-medium
Терминальный монитор производительности, который объединяет вывод нескольких диагностических утилит (top, vmstat, ss, netstat и других) в единый TUI с вкладками. Написан на Bubble Tea.
Главное преимущество по сравнению с отдельным запуском этих утилит - интерфейс с вкладками, позволяющий переключаться между метриками без визуального шума в терминале, а также живые sparkline'ы для нагрузки, CPU, памяти и сети в качестве наглядного индикатора состояния системы.
Использование:
perfmon # start with default system tools
Переключение между вкладками через Tab/Shift+Tab, прокрутка вывода клавишами j/k, переключение светлой и тёмной темы по t, выход по q.
Конфигурация через perfmon.toml (ищется в $PERFMON_CONFIG, ~/.config/perfmon/config.toml или в текущем каталоге):
global_refresh_interval = "5s"
[[tab]]
title = "Process Explorer"
cmd = ["top", "-b", "-n", "1"]
refresh_interval = "2s"
[[tab]]
title = "Network Connections"
cmd = ["ss", "-tulpn"]
Каждая вкладка запускает произвольную команду оболочки и показывает её вывод. Можно добавить любые диагностические команды - по сути это просто настраиваемый исполнитель команд с удобным слоем отображения. Индивидуальные интервалы обновления для каждой вкладки позволяют чаще опрашивать быстро меняющиеся метрики.
Perfmon наблюдает за хостом снаружи; slogbox служит внутрипроцессным дополнением для Go-сервиса - кольцевым буфером последних записей лога, который сбрасывается при возникновении ошибки, сохраняя контекст без необходимости постоянно держать уровень логирования debug.
Кроссплатформенность: поставляется с разумными настройками по умолчанию как для Linux, так и для macOS (разные команды для top, сетевой статистики и т. д.).
Установка: go install github.com/sumant1122/Perfmon@latest или готовый бинарник из релизов.
Репозиторий: https://github.com/sumant1122/Perfmon - 84 звезды, лицензия MIT.