気ままなつぶやき

おべんきょしたこととか

dstat

dstatめも。

CPU使用率とかdiskIOとかシステムのリソース情報がいろんなみれるようだ。

yumで簡単にいれれる。ひゃっほ

参考文献的な感じなのかな。
http://dag.wieers.com/home-made/dstat/
https://github.com/dagwieers/dstat/issues


ざくっとみるにはこのページがいいかな
http://dag.wieers.com/home-made/dstat/dstat.1.html


わたしはCentOSにいれてみたけど、
FedoraとかOpenSUSEとかいろいろ使えるっぽい。

dstat 3

デフォは1秒間隔更新される。

ヘルプは、使用できるオプションについて比較的丁寧にかいているな。

dstat -h

output fileオプションを使うとcsv形式で保存することもできる。
なんかfluentdにも結果をながせるようだ。ほっほー。

特にオプションなどを指定せずに表示される項目はこれ。
※デフォオプションはcdngy

f:id:pnsk:20120509204455p:plain

                                                    • -

・total cpu usage(cpu使用率

usr ユーザ空間
sys システム空間
idl アイドル状態
wai 待ち状態
hiq HW
siq SW

・dsk/total

read リード
writ ライト

まんまやな

・net/total(NW情報

recv データの受信
send データの送信

・paging(ページング

in 必要なページをHDから取り出して物理メモリに書き込む
out 不要なページをHDに書き出して物理メモリから消去

・system

int 割り込みっぽい
csw コンテキストスイッチ
                                                    • -

プラグインとかも使える。listオプションで利用できるプラグインの一覧がでるので、使いたいものを指定してみると良い。
どのプラグインでどんなものが表示されるかは使ってみないとわからんなー

# dstat --list
internal:
	aio, cpu, cpu24, disk, disk24, disk24-old, epoch, fs, int, int24, io, ipc, load, lock, mem, net, page, page24, proc, raw, socket, swap, swap-old, sys, tcp, time, udp, unix, vm, 
	vm-adv, zones
/usr/share/dstat:
	battery, battery-remain, condor-queue, cpufreq, dbus, ddwrt-cpu, ddwrt-load, ddwrt-mem, ddwrt-net, ddwrt-net-err, ddwrt-sys, disk-tps, disk-util, dstat, dstat-cpu, dstat-ctxt, 
	dstat-mem, fan, freespace, fuse, gpfs, gpfs-ops, helloworld, innodb-buffer, innodb-io, innodb-ops, lustre, md-status, mem-adv, memcache-hits, mysql-io, mysql-keys, mysql5-cmds, 
	mysql5-conn, mysql5-io, mysql5-keys, net-packets, nfs3, nfs3-ops, nfsd3, nfsd3-ops, ntp, postfix, power, proc-count, qmail, rpc, rpcd, sendmail, snooze, squid, test, thermal, top-bio, 
	top-bio-adv, top-childwait, top-cpu, top-cpu-adv, top-cputime, top-cputime-avg, top-int, top-io, top-io-adv, top-latency, top-latency-avg, top-mem, top-oom, utmp, vm-memctl, vmk-hba, 
	vmk-int, vmk-nic, vz-cpu, vz-io, vz-ubc, wifi


たとえばこんな感じ。

# dstat --top-bio --top-latency
----most-expensive---- --highest-total--
  block i/o process   | latency process 
init [3]    205B 1302B|ntpd            0
java          0  8192B|ksoftirqd/0    27
httpd         0  8192B|sshd: okuda_j   1
httpd         0  8192B|sshd: okuda_j   1
kjournald     0   164k|                 
java          0    16k|sshd: okuda_j   1
java          0    12k|                 
httpd         0  8192B|snmpd           1
httpd         0  4096B| 


今のところこんな感じでみてるかなー

nohup dstat -tcglmnpy  --output /tmp/dstat_hostname_xxxreq.log  5 &

リクエスト数めっちゃ多いから、5秒間隔でだしている。