勝手のいいdstatコマンドオプション

dstatのコマンドオプションが多くて便利なので定番の組み合わせを整理してまとめた。

使えるオプションの確認

以下のコマンドでdstatについて調べられる。 これによると機能拡張は/usr/share/dstat/にモジュールを置けば良さそう。 ミドルウェア作ったらdstat用のpluginを提供するの良さそう。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
# ヘルプを表示する
$ dstat -h
# 使えるモジュールを一覧表示する
$ dstat --list
internal:
        aio, cpu, cpu24, disk, disk24, disk24old, epoch, fs, int, int24, io, ipc, load, lock, mem, net, page, page24, proc, raw, socket, swap, swapold, sys, tcp, time, udp, unix, vm
/usr/share/dstat:
        battery, battery-remain, cpufreq, dbus, disk-util, fan, freespace, gpfs, gpfs-ops, helloworld, innodb-buffer, innodb-io, innodb-ops, lustre, 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, rpc, rpcd, sendmail, snooze, thermal, top-bio,
        top-cpu, top-cputime, top-cputime-avg, top-io, 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

基本的な確認

これで基本的な負荷を確認する。ロードアベレージが伸びていたら注意が必要。 使えているコア数より大きくならない様に考える。実際のコア数ではなくて、稼働システムのコア利用の偏りも考慮する必要がある。

1
$ dstat -tal

dstat で基本情報を表示する

CPU状態を確認する

CPUの分散具合を確認する。systemの部分は割り込み・コンテキストスイッチの切り替えなどを表示してる。

1
$ dstat -taf --top-cpu

dstat でCPU情報を表示する

I/O状況を確認する

どのプロセスがI/O, ブロックI/Oを使っているか確認したり、 開かれてるファイル数を確認したり、またファイルロックの取得状態を確認したりする。

1
$ dstat -tdng --file --lock --top-io --top-bio

dstat でI/O情報を取得する

メモリの状況を確認する

メモリの使用状況を確認する、ページング・スワップ領域・メモリ・仮想メモリ・IPC・一番メモリを使っているプロセスを表示している。

1
$ dstat -t -gs --mem --vm --ipc --top-mem

dstat でメモリ情報を取得する

ネットワーク状況を確認する

ソケットの利用状況を表示する。

1
$ dstat -tn --socket --tcp --udp --unix

dstat でソケットの情報を取得する

ファイルロックとかページフォルトとか割り込み量とかIPCとか詰まりそうな基本的なの一通り出してみる。

1
$ dstat -tspy --lock --vm --ipc --free

dstat でロック周辺の情報を取得する

comments powered by Disqus