dstat 全能系统信息统计工具
安装
yum install -y dstat
或者
wget http://dag.wieers.com/rpm/packages/dstat/dstat-0.6.7-1.rh7.rf.noarch.rpm
rpm -ivh dstat-0.6.7-1.rh7.rf.noarch.rpm
语法
dstat [-afv] [options..] [delay [count]]
dstat显示结果说明
如上图:显示CPU(cpu)、硬盘(disk)、网卡(network)、包(package)、系统(system)
usr:用户占用 sys:系统占用 idl:空闲 wai:等待的进程 hiq:硬中断 siq:软中断
read:磁盘读操作数 writ:磁盘写操作数
recv:接受请求数 send:发送请求数
in:系统分页 out:系统分页
int:系统中断次数 csw:上下文切换次数
分页统计:系统的分页活动。分页指的是一种内存管理技术用于查找系统场景,一个较大的分页表明系统正在使用大量的交换空间,或者说内存非常分散,大多数情况下你都希望看到page in(换入)和page out(换出)的值是0 0。
参数
-c:CPU状态
-C 0,3,total:包括CPU0,CPU3,和所有的
-d,--disk:磁盘读写
-D total,hda:统计磁盘或汇总信息
-g:系统分页
-i:系统中断
-l(load):显示负载状态
-m:内存
-n:网卡
-N eth0,total:显示单个或多个网卡信息(这里是eth0 所有的)
-p:线程信息
-r:io事务状态
-s:交换分区信息
-S swap1..:具体哪个交换分区
-t:显示时间
-y:系统状态
--aio:异步io
--fs:文件系统状态,打开的文件数和iNode数
--ipc:IPC状态(消息队列、信号、共享内存)
--lock:文件锁状态(posix, flock, read, write)
--raw:原始套接字信息
--socket:套接字信息(所有的、tcp、udp、原始的、IP片段的)
--tcp:tcp状态(listen, established, syn, time_wait, close)
--udp:udp状态(listen, active)
--unix:Unix接口状态(datagram, stream, listen, active)
--vm: 虚拟内存信息(hard pagefaults, soft pagefaults, allocated, free)硬页面错误、软页面错误、分配的、未分配的
下面为不(zi)常(ding)用(yi)选项
--list:列出内部和外部的插件名
-a,--all:等于 -cdngy是默认参数
-f,--full:expand -C, -D, -I, -N and -S discovery lists
-v,--vmstat:等同-pmgdsc -D
--float:显示浮点数值
--integer:显示整数值
--bw,--blackonwhite:改变输出的颜色背景
--nocolor:无背景颜色
--noheaders
--noupdate
--output FILE:输出为文件
--profile:show profiling statistics when exiting dstat
插件
--disk-tps:磁盘每秒事务数统计
--disk-util:每个磁盘利用率
--innodb-buffer:显示innodb buffer状态
--memcache-hits:显示memcache的命中和miss
--MySQL5--:显示MySQL5的状态,有命令、连接、io等选项
--proc-count:显示进程总数
--top-bio:显示最消耗块io的进程
--top-bio-adv:显示最消耗块io的进程,有pid和其他状态信息
--top-childwait:显示子进程的系统等待
--top-cpu:显示最耗CPU的进程
--top-cpu-adv:详细显示最耗CPU的进程
--top-cputime:显示使用CPU时间最长的进程(ms毫秒=0.001秒) 需要dstat_top_cputime模块
--top-int:显示最频繁的中断
--top-io:显示最消耗io的进程
--top-io-adv:详细显示
--top-latency:显示最高延迟的进程 需模块
--top-mem:显示占用内存最多的进程
示例:
dstat -tcndylp --top-cpu:显示时间、CPU、网卡、磁盘、系统、负载、进程、最耗CPU(和top显示的东西差不多)
dstat -tcyif:
dstat重点(个人意见)
dstat --top-cpu:显示最消耗CPU的进程
dstat --top-cuptime:最消耗CPU时间的进程,以毫秒为单位
dstat --top-io:显示消耗io最多的进程
dstat --top-latency:显示哪个进程有最大的延迟
dstat --top-mem:显示用内存最多的线程
dstat --top-mem --top-cpu:俩个一起使用也是OK的