第7回 RRDtoolでグラフ化モニタリングSNMPによるネットワークモニタリング「第2版」(5/8 ページ)

» 2007年05月30日 09時05分 公開
[大澤文孝,ITmedia]

値をグラフ化する

 リスト1のスクリプトを実行すれば、その瞬間のインタフェースのトラフィックがRRDに格納され、自動的に平均がとられる。

 すなわち、リスト1に示したスクリプトを5分ごとに実行するようにcronを使って定期的に動かせば、統計が蓄積されていくようになる。次に必要となるのが、値のグラフ化だ。値をグラフ化するには、次のようにgraphを指定する。


rrdtool graph [出力ファイル名] --start [開始タイムスタンプ] --end [終了タイムスタンプ] DEF:[変数名]=[値] DEF:[変数名]=[値] … LINE1:[変数名]#RRGGBB:[凡例] …

 graphオプションにはたくさんのオプションがあり、すべてを紹介しきれない。そこで、ごく簡単な折れ線グラフのみを扱う。そのほかのグラフオプションについては、rddgraphの解説を参照してほしい(関連リンク)

 グラフを描画するには、DEFオプションで変数を定義して、その変数を描画するという方法をとる。


DEF:[変数名]=[RRDファイル名]:[フィールド名]:[CFタイプ]

 ここまでの手順では、すでに入力パケットと出力パケットをそれぞれ「InPackets」「OutPackets」という名前で、packets.rrdファイルに保存してある。

 そこで例えば次のように指定すると、2007年5月28日の13:00(タイムスタンプ値:1180323000)から翌日の13:00(同1180411200)までのトラフィックをグラフ化できる。


$ rrdtool graph outgraph.png --start 1180323000 --end 1180324800 DEF:indata=packets.rrd:InPackets:AVERAGE DEF:outdata=packets.rrd:OutPackets:AVERAGE LINE1:indata#FF0000 LINE1:outdata#00FF00

 グラフ化した画像はPNG形式になる。実際にグラフ化したものを図3に示す。

図3■作成されたグラフ

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ