Ksarでsarをグラフ化するのが便利すぎる

性能を見るのでPSやらsarを使うわけですがやっぱりデータはグラフ化したいです。
PSだったらPSグラフ化君とかがあって便利なのですが、IOとかも一緒に全部みたいとかなるとSarが楽です。
んで、Sarをグラフ化したいなと思っていたらめっちゃ便利なものがありました。
http://ksar.atomique.net/
ダウンロードは以下
http://sourceforge.net/project/showfiles.php?group_id=179805

すごいところ

  • グラフがかっこいい。シンプルで見やすい。

画面はこんな感じ。
f:id:GARAPON:20090323103356j:plain
CPU情報
f:id:GARAPON:20090323103355j:plain
Eth情報
f:id:GARAPON:20090323103354j:plain
IO情報
f:id:GARAPON:20090323103353j:plain
メモリ情報
f:id:GARAPON:20090323103352j:plain

  • グラフの任意の場所を拡大できる。
    • マウスでボックス選択するとそこが拡大。
  • 時間指定でグラフ化したり出来る。
  • グラフを以下の形式で出力できる。

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」を選びテキストファイルを選択します。
するとこんな感じで見れる。
f:id:GARAPON:20090323103356j:plain


気をつけるところ

文字コード

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