性能を見るのでPSやらsarを使うわけですがやっぱりデータはグラフ化したいです。
PSだったらPSグラフ化君とかがあって便利なのですが、IOとかも一緒に全部みたいとかなるとSarが楽です。
んで、Sarをグラフ化したいなと思っていたらめっちゃ便利なものがありました。
http://ksar.atomique.net/
ダウンロードは以下
http://sourceforge.net/project/showfiles.php?group_id=179805
すごいところ
- グラフがかっこいい。シンプルで見やすい。
画面はこんな感じ。
CPU情報
Eth情報
IO情報
メモリ情報
Sarを見る時のニーズはほぼ全て満たしていると思います。
使い方
事前実行されているSaファイル(/var/log/sa/sa*)をファイルに吐くもしくはSarコマンドを実行してテキストに出力します。
Saファイルを出力する。(sa22をテキストに出力する場合)
# cd /var/log/sa # LANG=C # sar -A -f sa22 > sa22.txt
都度ファイルに出力するシェル。
#!/bin/bash export iodate=`date +"%Y%m%d%H%M%S"` LANG=C sar -A 10 10000 > ./logdir/sar_$iodate.log
出来たファイルを取得してKsarの「Data」⇒「Load From Text File」を選びテキストファイルを選択します。
するとこんな感じで見れる。
気をつけるところ
文字コード
sar実行前に必ず「LANG=C」をしましょう。じゃないと日本語を読み込めずにエラーとなります。
日本語で出てしまったら後からLANG=Cで出力したのと同じ結果になるように置換する。
日本語環境で普通にSarするとこんな結果になるので
Linux 2.6.18-92.el5PAE (localhost.localdomain) 2009年03月22日 06時26分04秒 proc/s 06時26分14秒 0.20 ・・・・
「"時"⇒":"」「"分"⇒":"」「秒⇒""」「"平均値"⇒"Average"」に置換する。そうすると読み込める。
ファイルサイズ
読み込めるログの量に制約があるようでファイルサイズが巨大になると動かなかった。
デフォルトで動いている10分1回の出力であれば1日分でも読めるが、性能とかみたくて10秒に1回とか取得する場合は都度都度ファイルを分割したほうが良さそうです。
※UbuntuへのSarコマンドのインストール方法書きました。
garapon.hatenablog.com