サーバのリソース使用状況を確認する
サーバトラブル原因調査を行うときに、その原因が発生した時点でのサーバの状態を確認したい場面がままあります。サーバのモニタリングはvmstat、topといったコマンドでも行うことができますが、現時点での情報しか表示することができません。sarコマンドを使用することで、今だけでなく、過去のリソース使用状況を確認も確認することができます。
使い方
sarコマンドは表示したい情報のオプションを後ろにつけて使います。
sar <オプション>
主要なオプションは以下の通り
オプション | 内容 |
---|---|
-u | CPU |
-q | ロードアベレージ |
-r | メモリ使用状況 |
-b | ディスクIO |
-n DEV | 送受信パケット |
-n EDEV | エラーパケット |
-A | 全て |
-f | 対象ファイル |
-s | 開始時間 |
-e | 終了時間 |
sarコマンドの過去のデータは通常 /var/log/sysstat/ 以下に保存されます。※debianの場合
過去のデータを見る場合は -f オプションでファイルを指定して実行します。
例えば、エラーログなどから9日の13時前後に何かが起こったのだろうとあたりをつけ、その時間帯のCPU使用率を確認したいとなった場合は
sar -f /var/log/sysstat/sa20170109 -s 12:00 -e 14:00 -u
といった感じで実行します。