Perfmon – 将你最喜欢的命令行监控工具整合到一个TUI界面。
Perfmon – Consolidate your favorite CLI monitoring tools into a single TUI

原始链接: https://github.com/sumant1122/Perfmon

Perfmon 是一款快速的跨平台系统监控工具,旨在简化性能分析。它不同于传统的监控工具,将 `top`、`vmstat` 和 `netstat` 等工具的输出整合到一个简洁的选项卡界面中。 主要功能包括 CPU、内存、网络和负载的实时火花图,用于快速健康检查,以及通过 TOML 文件进行高度可定制的配置——允许用户定义自己的命令和刷新间隔。Perfmon 使用 Go 构建,开销最小,并提供浅色和深色主题。 安装方法很简单,可以使用 `go install` 或克隆 GitHub 仓库并使用 `make` 构建。用户可以使用键盘快捷键进行导航,并通过调整 `perfmon.toml` 配置文件来个性化监控。欢迎贡献,并提供详细的贡献指南。它采用 MIT 许可。

对不起。
相关文章

原文

Traditional performance monitors often overwhelm users with information or lack the flexibility to show exactly what you need. Perfmon solves this by providing:

  • Consolidation: View output from multiple diagnostic tools (like top, vmstat, netstat) in one place.
  • Focus: A clean, tabbed interface lets you switch between different metrics without terminal clutter.
  • Visibility: Real-time sparklines provide an immediate "at-a-glance" health check of your system's core resources.
  • Flexibility: Don't like the defaults? Bring your own shell commands via a simple TOML file.
  • 🚀 Blazing Fast: Written in Go with minimal CPU and memory overhead.
  • 📂 Tabbed Navigation: Organize your monitoring tools into logical, navigable views.
  • 📈 Live Sparklines: Visual summaries for Load, CPU, Memory, and Network.
  • 🎨 Adaptive Themes: Seamlessly toggle between Light and Dark modes.
  • ⚙️ Deeply Configurable: Custom commands, refresh intervals, and environment-specific settings.
  • 🐧 Cross-Platform: Intelligent defaults for both Linux and macOS.

Perfmon Dark Mode

Perfmon Light Mode

Download the latest pre-compiled binaries from the Releases page.

go install github.com/sumant1122/Perfmon@latest
git clone https://github.com/sumant1122/Perfmon.git
cd Perfmon
make build
# Binary will be in the project root

Simply run the command to start monitoring with default system tools:

Key Action
Tab / Shift+Tab Next / Previous Tab
j / k (or /) Scroll through command output
t Toggle Light/Dark theme
v Display version information
q / Esc / Ctrl+C Exit Perfmon

Perfmon is designed to be personalized. It looks for perfmon.toml in:

  1. $PERFMON_CONFIG
  2. ~/.config/perfmon/config.toml
  3. Current working directory

📝 Configuration Schema

# Interval for updating the sparklines and default tabs
global_refresh_interval = "5s"

[[tab]]
title = "Process Explorer"
cmd = ["top", "-b", "-n", "1"]
refresh_interval = "2s" # Specific interval for this tab

[[tab]]
title = "Network Connections"
cmd = ["ss", "-tulpn"]

We utilize a simple Makefile for a streamlined development experience:

  • make run: Start the application in development mode.
  • make build: Compile the binary.
  • make test: Execute the test suite.
  • make lint: Run the golangci-lint (if installed).

We love contributions! Whether it's a bug report, a new feature idea, or a documentation improvement, please feel free to:

  1. Check out the Contributing Guidelines.
  2. Open an Issue.
  3. Submit a Pull Request.

Distributed under the MIT License. See LICENSE for details.


联系我们 contact @ memedata.com