Articles Comments

ちからの備忘録的日記 » tips » vmstat のグラフ化は、vmplot.sh で決まり!

vmstat のグラフ化は、vmplot.sh で決まり!




vmstat を gnuplot で簡単グラフ化」で紹介した方法でもいいのですが、もっと簡単なものを見つけましたので、ご紹介です。

vmplot.sh

vmplot.sh は、以下の2つのサイトで紹介されていました。
2つのサイトとも改良版の紹介でした。

vmplot.sh, a useful tool for MySQL performance tuning | Big DBA Head

Extending vmplot « MySQL Expert | MySQL Performance | MySQL Consulting

ということで、オリジナルはよくわかりません。一応、スクリプトのヘッダを引用しておきます。

# This file is released under the terms of the Artistic License.
# Please see the file LICENSE, included in this package, for details.
#
# Copyright (C) 2004 Mark Wong & Open Source Development Lab, Inc.

vmplot.sh の機能

vmstat の出力から gnuplot を用いてグラフ画像を作成し、画像のリンクをつけたHTMLファイルを作成してくれます。

vmplot.sh のスクリーンショット

出典:Extending vmplot « MySQL Expert | MySQL Performance | MySQL Consulting

vmplot.sh 使用方法

# wget http://ronaldbradford.com/downloads/vmplot.gz
# gunzip vmplot.gz
# vmstat -n 1 > vmstat.out
# ./vmplot.sh -i vmstat.out -o tmp -x sec
Warning: empty y range [0:0], adjusting to [0:1] ← swap が 0 なので警告(気にしなくていいです)
# ls tmp
合計 104
-rw-r--r-- 1 root root   557  7月 15 16:36 cpu.input
-rw-r--r-- 1 root root  5890  7月 15 16:36 cpu.png
-rw-r--r-- 1 root root   334  7月 15 16:36 cs.input
-rw-r--r-- 1 root root  6713  7月 15 16:36 cs.png
-rw-r--r-- 1 root root   316  7月 15 16:36 in.input
-rw-r--r-- 1 root root  6167  7月 15 16:36 in.png
-rw-r--r-- 1 root root   630  7月 15 16:36 vmplot.html
-rw-r--r-- 1 root root   380  7月 15 16:36 io.input
-rw-r--r-- 1 root root  6088  7月 15 16:36 io.png
-rw-r--r-- 1 root root   475  7月 15 16:36 memory.input
-rw-r--r-- 1 root root  5298  7月 15 16:36 memory.png
-rw-r--r-- 1 root root   382  7月 15 16:36 procs.input
-rw-r--r-- 1 root root  4543  7月 15 16:36 procs.png
-rw-r--r-- 1 root root   372  7月 15 16:36 swap.input
-rw-r--r-- 1 root root  3447  7月 15 16:36 swap.png
-rw-r--r-- 1 root root  2348  7月 15 16:36 vmstat.data

あとは、これをブラウザで開けばOKという感じです。

■ vmplot.sh のオプションの説明

-i : vmstat ファイル指定
-o : HTML 作成するディレクトリを指定(なければ自動で作成)
-x : vmstat の取得間隔を指定

実は、私の gnuplot バージョン(4.4 patchlevel 2)だと若干変な挙動がありましたので、修正が必要でした。

とりあえず、若干カスタマイズしたものを github にあげておきました。

vmplot.sh の改良

横軸に時刻をいれたいなと思ったので、時刻をいれたスクリプト vmplot_t.sh をつくってみました。

vmplot_t.sh のスクリーンショット

vmplot_t.sh 使用方法

# vmstat -n -S m 1 | awk '{print strftime("%H:%M:%S"), $0}' > vmstat_t.out
# ./vmplot_t -h
Usage: ./vmplot_t [optinos]...

 -i       specify input file, By default, vmstat_t.out
 -o       specify HTML output directory, By default, /var/www/html/vmplot_t
 -h       show help messages

こちらは、時刻をいれているので、vmstat の取得間隔指定オプションは外してみました。

vmplot_t.sh のダウンロード

こちらも先ほどと同じgit レポジトリからダウンロードできるようにしておきました。

nemf/vmplot – GitHub

Related Posts Plugin for WordPress, Blogger...

Filed under: tips · Tags: , , ,

Leave a Reply

*