2013年7月10日水曜日

Linuxのdstatコマンド

サーバの動作が重いとき、topとかnetstatとかvmstatとか、あれこれコマンド実行して原因を探ります。

こういうのをひとまとめに調べられないかと思ったら、アプリエンジニア向け:「サーバがなんか重い」時にすること にdstatコマンドというものが書いてありました。


dstatとnetstatは両方statで終わってますが、実は他にもvmstat、iostat、ifstatなんかもあります。

このdstatというのは、これら乱立したXXXstatコマンドをひとまとめにし、かつ、使いやすくしよう、という目的で作られた後発ツールらしいです。なので、使うならdstatがいいと思います。
例えば dstat --tcp とやるとTCPコネクションの様子を見たり dstat --net とやるとネットワークの様子を見ることができます。

ということで、早速インストールしてみました。
普段使っているCentOS 5.9にはdstatが入っていないので、yumでインストール。
$ sudo yum install dstat
 実行してみるとこんな感じ。
原因がCPUリソースなのか、I/Oなのか、ネットワークなのか並べてみたいときに便利です。