
2026/04/05 23:16
**Perfmon** ― お気に入りのCLIモニタリングツールをひとつのTUIに統合する ---
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
Perfmon は、軽量で Go で書かれたターミナル UI です。
top・vmstat・netstat といった従来のシステム診断ツールから出力を統合し、1 つのタブ付きインターフェースにまとめます。各タブには Load、CPU、Memory、および Network のメトリクスをライブで表示する Sparklines があり、テーマは「t」キーでライト/ダークに切り替えられます。
モニターは
perfmon.toml ファイルを介して完全に設定可能です(カスタムコマンド、更新間隔、環境設定など)。設定ファイルは $PERFMON_CONFIG、~/.config/perfmon/config.toml、または現在の作業ディレクトリに置くことができます。例として示されるスキーマでは、グローバルな更新間隔とタブごとのコマンド(Process Explorer 用の top -b -n 1 や Network Connections 用の ss -tulpn)が設定されています。
Perfmon は Linux と macOS 上で動作し、事前ビルド済みバイナリとして配布されます。
go install github.com/sumant1122/Perfmon@latest でインストールするか、ソースから git clone … && make build で構築できます。デフォルトのキー割り当ては次の通りです:Tab / Shift+Tab でタブを切替;j/k(または ↓/↑)で出力をスクロール;t でテーマをトグル;v でバージョン情報表示;q/Esc/Ctrl+C で終了。
プロジェクトは MIT ライセンス下にあり、issue や pull request を通じたコミュニティ貢献を奨励しています。開発は Makefile によって簡素化されており、
make run・make build・make test・make lint の各ターゲットが用意されています。複数の監視ツールを 1 つのカスタマイズ可能なダッシュボードに統合することで、Perfmon はユーザー、開発者、および組織全体にとってパフォーマンス監視を簡素化します。本文
Perfmon – 軽量でカスタマイズ可能な TUI パフォーマンスモニタ
Perfmon は、複数の診断ツール(例:
top、vmstat、netstat)から出力を統合し、リアルタイムのスパークライン付きでクリーンなタブ式インターフェイスにまとめた端末ベースのダッシュボードです。Go で書かれ、速度・柔軟性・クロスプラットフォーム対応を実現しています。
✨ 主な機能
- 高速 – Go で実装され、CPU とメモリへの負荷が最小限
- タブ式ナビゲーション – モニタリングツールを論理的にビューごとに整理
- ライブスパークライン – 負荷・CPU・メモリ・ネットワークの視覚的サマリー
- テーマ切替 – ライト/ダークモードを簡単に切り替え可能
- 高度な設定性 – カスタムコマンド、更新間隔、環境固有設定まで自由に構成
- クロスプラットフォーム – Linux と macOS で動作し、インテリジェントなデフォルトを備える
📸 スクリーンショット
| ダークモード(既定) | ライトモード |
|---|---|
![]() | ![]() |
(画像リンクは実際のスクリーンショットに置き換えてください。)
🚀 インストール方法
📦 事前ビルド済みバイナリ
最新のコンパイル済みバイナリを Releases ページ からダウンロードしてください。
🛠️ go install
を使用
go installgo install github.com/sumant1122/Perfmon@latest
🔨 ソースからビルド
git clone https://github.com/sumant1122/Perfmon.git cd Perfmon make build # バイナリはプロジェクトルートに生成されます
📖 使い方
perfmon を実行すると、デフォルトのシステムツールで監視が開始します。
⌨️ キーバインディング
| キー | アクション |
|---|---|
| Tab / Shift+Tab | 次/前のタブへ移動 |
| j / k (または ↓/↑) | コマンド出力をスクロール |
| t | ライト/ダークテーマを切替 |
| v | バージョン情報を表示 |
| q / Esc / Ctrl+C | Perfmon を終了 |
⚙️ 設定
Perfmon は以下の順序で
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"]
🛠️ 開発環境
シンプルな Makefile でワークフローを簡素化しています:
make run # 開発モードでアプリケーション起動 make build # バイナリのコンパイル make test # テストスイート実行 make lint # golangci-lint を走らせる(インストール済みなら)
🤝 コントリビュート
ご協力を歓迎します!バグ報告、新機能提案、ドキュメント改善など:
- Contributing Guidelines を確認
- Issue を作成し、アイデアや問題点を議論
- 準備ができたら Pull Request を送信
📜 ライセンス
MIT License の下で配布 – 詳細は
LICENSE ファイルをご覧ください。
