1. 安装
CentOS下:(其他自行百度)
yum install dstat
2. 说明
直接使用dstat,默认为-cdngy参数,分别显示cpu、disk、net、page、system信息,也即每个字母对应一类信息,字母顺序随意;默认每1s显示一行信息。可以在最后指定时间间隔,如dstat 5是没5s显示一行,dstat 5 10表示每5s显示一行,一共显示10行。如下:
[zm@hw167 ~]$ dstat 5 10
----total-cpu-usage---- -dsk/total- -net/total- ---paging-- ---system--
usr sys idl wai hiq siq| read writ| recv send| in out | int csw
0 0 100 0 0 0|7088B 43k| 0 0 |1270B 2271B| 916 1464
0 0 100 0 0 0| 0 5734B|5980B 3066B| 0 0 | 633 1289
0 0 100 0 0 0| 0 4096B|5908B 2973B| 0 0 | 641 1300
0 0 100 0 0 0| 0 34k|5871B 2961B| 0 0 | 648 1275
0 0 100 0 0 0| 0 5734B|6295B 2964B| 0 0 | 654 1311
0 0 100 0 0 0| 0 10k|6307B 2958B| 0 0 | 648 1276
0 0 100 0 0 0| 0 0 |6191B 2963B| 0 0 | 639 1292
0 0 100 0 0 0| 0 4915B|7911B 2953B| 0 0 | 669 1290
0 0 100 0 0 0| 0 4915B|9480B 2975B| 0 0 | 697 1302
0 0 100 0 0 0| 0 451k|8551B 2970B| 0 0 | 744 1327
0 0 100 0 0 0| 0 22k| 11k 2942B| 0 0 | 700 1304
3. 参数解释
-a:--all 此为默认选项,等同于-cdngy。
-c:--cpu 显示CPU系统占用。
usr(用户进程占用CPU时间百分比),sys(内核占用),idl(空闲),wai(IO等待),hiq(硬件中断次数),siq(软件中断次数)。
-C:当有多个CPU时候,此参数可按需分别显示cpu状态,例:dstat -C 0,1 -c 是显示cpu0和cpu1的信息。
-d:--disk 显示磁盘读写数据大小。
read(读),writ(写)。
-D hda,total。指定盘符显示,例:dstat -D hda,total -d
-g:--page 显示页面使用情况。
in(页面换入),out(页面换出)。
-l:--load 显示系统负载情况。
1m(一分钟平均值),5m(5分钟平均值),15m(15分钟平均值)。
-m:--mem 显示内存使用情况。
used(用户和系统使用的内存数量),buff(磁盘缓存Buffer Cache的大小),cach(磁盘缓存Page Cache的大小),free(空闲的物理内存数量)。
注:Page cache实际上是针对文件系统的,是文件的缓存;Buffer cache是针对磁盘块的缓存,也就是在没有文件系统的情况下,直接对磁盘进行操作的数据会缓存到buffer cache中。
-n:--net 显示网络使用情况,接受和发送。
recv(接收),send(发送)
-N eth1,total:有多块网卡时,指定要显示的网卡。
-p:--proc 显示进程状态。
run(runnable),blk(uninterruptible),new(new)。
-r:--io 显示I/O请求情况。
read(读请求),writ(写请求)。
-s:--swap 显示交换分区使用情况。
used(swap已使用),free(swap剩余)。
-S:指定swap。例:dstat -S swap1,total -s
-t:--time 显示时间
-T:--epoch 显示时间计数(seconds since epoch)
-y:--sys 系统状态。
int(中断),csw(上下文切换)。
-v:--vmstat 等同于-pmgdsc -D total
--output 输出文件:把状态信息以csv的格式重定向到指定的文件中。
以下为插件:
--list 列出所有可用插件名
--disk-util 列出每个磁盘的使用率
--freespace 列出每个文件系统的磁盘使用情况
--net-packets 发送和接收的包数量
--top-bio 最耗的IO阻塞进程
--top-cpu 最耗CPU的进程
--top-cputime 最耗CPU时间的进程,单位ms
--top-cputime-avg 最高平均时间片的进程。show process with the highest average timeslice (in ms)
--top-io 最耗的IO进程。
--top-latency 最高总时延的进程,单位ms
--top-latency-avg 最高平均时延的进程,单位ms
--top-mem 最耗内存的进程
--top-oom 将因为内存溢出被kill的进程