server-stats — サーバー統計(Linux)スクリプト
概要
server-statsは、Linux環境で稼働する単一のシェルスクリプト(server-stats.sh)によってサーバーの基本的なパフォーマンス指標を表示する軽量ユーティリティです。表示項目は総CPU使用率、メモリ使用(Free/Usedと割合)、ディスク使用(Free/Usedと割合)、およびCPU/メモリ使用の上位5プロセスです。外部ライブラリ不要で、freeコマンドがあれば動作するように設計されており、簡易的な監視やトラブルシューティング目的で利用できます。実行はchmodで実行権を付与した後、スクリプトを直接実行するのみです。
リポジトリの統計情報
- スター数: 1
- フォーク数: 0
- ウォッチャー数: 1
- コミット数: 8
- ファイル数: 3
- メインの言語: Shell
主な特徴
- 単一のシェルスクリプトで完結する軽量ツール
- CPU・メモリ・ディスク使用率の表示(Free/Used と割合)
- CPU/メモリ使用上位のプロセス(上位5件)を一覧表示
- 最低限の依存(freeコマンドが必要)で即実行可能
技術的なポイント
server-statsはシェル(sh/bash)ベースの実装を採用しており、Linux上の標準ユーティリティを利用して情報を収集します。READMEに明示されているようにfreeが必要で、ディスク情報はdf、プロセス情報はps(またはtopの非対話モード)を経由して取得するのが一般的です。スクリプト内ではawkやsed、sort、headといったテキスト処理ツールでコマンド出力を整形し、数値から使用率を計算して文字列として表示します。単一ファイル設計の利点は導入の容易さと依存の少なさで、cronから定期実行して簡易ログ取得を行ったり、リモートで一時的に実行して状態確認を行う用途に適しています。
注意点としては、各ディストリビューションやロケールによってfreeやdfの出力フォーマットが若干異なる場合があるため、スクリプト内のパース処理は環境に依存しやすい点です。また、プロセスのソート基準(CPUかRSSか)や表示項目の粒度を上げたい場合はpsコマンドのオプション追加やカラム計算が必要になります。拡張案としては、JSONやCSV形式での出力オプション追加、複数サンプルを取り平均/ピークを出すサンプリング機能、systemdタイマーやDockerコンテナでのラップ、アラート連携(メールやWebhook)などが考えられます。ライセンスファイルが含まれているため、再利用・改変時の条件も明確です。
プロジェクトの構成
主要なファイルとディレクトリ:
- LICENSE: file
- README.md: file
- server-stats.sh: file
まとめ
シンプルで導入しやすく、短期的な状況把握に最適なシェル製モニタリングスクリプトです(50字程度)。
リポジトリ情報:
- 名前: server-stats
- 説明: 説明なし
- スター数: 1
- 言語: Shell
- URL: https://github.com/jory-1/server-stats
- オーナー: jory-1
- アバター: https://avatars.githubusercontent.com/u/173734827?v=4
READMEの抜粋:
server-performance-stats (Linux)
-
The project from: https://roadmap.sh/projects/server-stats
-
Total CPU usage
-
Total memory usage (Free vs Used including percentage)
-
Total disk usage (Free vs Used including percentage)
-
Top 5 processes by CPU usage
-
Top 5 processes by memory usage
make sure you have free installed
Usage
- Step 1: Make the script executable
chmod +x server-stats.sh
- Step 2: Run the script
./server-stats.sh
…