dstat
最近发现一个比较好用的多功能资源统计工具dstat
特征
官网上是这么说的http://dag.wiee.rs/home-made/dstat/
Dstat是vmstat,iostat,netstat和ifstat的多功能替代品。Dstat克服了一些限制,增加了一些额外的功能,更多的计数器和灵活性。在性能调整测试,基准测试或故障排除期间,Dstat对于监控系统非常方便。
Dstat允许您实时查看所有系统资源,例如。将磁盘利用率与IDE控制器的中断进行比较,或直接将网络带宽数与磁盘吞吐量进行比较(在相同的时间间隔内)。
Dstat为您提供列中的详细选择性信息,并清楚地指示输出显示的大小和单位。减少混乱,减少错误。最重要的是,它使编写插件以收集您自己的计数器并以您从未预料到的方式扩展变得非常容易。
默认情况下,Dstat的输出设计用于由人类实时解释,但是您可以将详细信息导出到CSV输出到稍后要导入Gnumeric或Excel的文件以生成图形。
特征
- 结合vmstat,iostat,ifstat,netstat信息等
- 在完全相同的时间范围内显示统计数据
- 启用/订购计数器,因为它们在分析/故障排除期间最有意义
- 模块化设计
- 用python编写,可以轻松扩展到手头的任务
- 易于扩展,添加自己的计数器(请提供这些)
- 包含许多外部插件,以显示添加计数器的容易程度
- 可以汇总分组的块/网络设备并提供总数
- 可以显示每个设备的中断
- 非常准确的时间范围,在系统受到压力时没有时移
- 显示确切的单位并限制转换错误
- 指示不同颜色的不同单位
- 延迟> 1时显示中间结果
- 允许导出CSV输出,可以在Gnumeric和Excel中导入以生成图形
安装
安装很简单直接yum安装
[root@localhost ~]# yum -y install dstat
使用
单独敲命令
默认情况下查CPU,磁盘,网络,内存分页,系统信息5个区域,也就是-cdngy
1、 --total-cpu-usage---- CPU使用率
usr:用户空间的程序所占百分比;
sys:系统空间程序所占百分比;
idel:空闲百分比;
wai:等待磁盘I/O所消耗的百分比;
hiq:硬中断次数;
siq:软中断次数;
2、-dsk/total-磁盘统计
read:读总数
writ:写总数
3、-net/total- 网络统计
recv:网络收包总数
send:网络发包总数
4、—paging-- 内存分页统计
in: pagein(换入)
out:page out(换出)
注:系统的分页活动。分页指的是一种内存管理技术用于查找系统场景,一个较大的分页表明系统正在使用大量的交换空间,通常情况下当系统已经开始用交换空间的时候,就说明你的内存已经不够用了,或者说内存非常分散,理想情况下page in(换入)和page out(换出)的值是0 0。
5、–system–系统信息
int:中断次数
csw:上下文切换
注:中断(int)和上下文切换(csw)。这项统计仅在有比较基线时才有意义。这一栏中较高的统计值通常表示大量的进程造成拥塞,需要对CPU进行关注。你的服务器一般情况下都会运行运行一些程序,所以这项总是显示一些数值。
默认情况下,dstat 会每隔一秒刷新一次数据,一直刷新并一直输出,按 Ctrl+C 退出 “dstat”;
指定查找
可以指定的性能资源
[root@localhost ~]# dstat --help
用法:dstat [-afv] [选项…] [延迟[计数]]
用于生成系统资源统计信息的通用工具
Dstat选项:
-c, - cpu启用cpu stats
-C 0,3,总计包括cpu0,cpu3和total
-d, - disk启用磁盘统计信息
-D total,hda包括hda和total
-g, - 页面启用页面统计信息
-i, - int启用中断统计信息
-I 5,eth2包括eth2和eth2使用的中断
-l, - load启用加载统计信息
-m, - mem启用内存统计信息
-n, - net启用网络统计信息
-N eth1,总数包括eth1和total
-p, - proc启用进程统计信息
-r, - ic启用io stats(I / O请求已完成)
-s, - swap启用交换统计信息
-S swap1,总计包括swap1和total
-t, - time启用时间/日期输出
-T, - enable启用时间计数器(自纪元以来的秒数)
-y, - sys启用系统统计信息
–aio启用aio统计
–fs, - filesystem启用fs stats
–ipc enable ipc stats
–lock启用锁定统计信息
–raw启用原始统计数据
–socket启用套接字统计信息
–tcp enable tcp stats
–udp enable udp stats
–unix启用unix统计信息
–vm enable vm stats
–plugin-name按插件名称启用插件(参见手册)
- 列出所有可用的插件
-a, - all equals -cdngy(默认)
-f, - fulll自动扩展-C,-D,-I,-N和-S列表
-v, - vststat等于-pmgdsc -D total
- 浮动强制浮动值在屏幕上
- 屏幕上的整数强制整数值
–bw, - blackwhite改变白色背景终端的颜色
–nocolor禁用颜色(暗示–noupdate)
–noheaders禁用重复标题
–noupdate禁用中间更新
- 输出文件将CSV输出写入文件
延迟是每次更新之间的延迟(以秒为单位)(默认值:1)
count是退出前显示的更新数(默认值:无限制)
查cpu
查进程数量
查全部
cdlmnpsyt
查找cpu 磁盘 load 内存 网络 process swap 时间 等具体资源
隔1秒查一次 一共查4次就可以用dstat 1 3 例如:
高级用法
查找资源消耗最大的资源
- -–top-bio :指出块I/O最大的进程
- -–top-cpu :图形化显示CPU占用最大的进程
- -–top-io :显示正常I/O最大的进程
- -–top-mem :显示占用最多内存的进程
输出为csv文件
生成的csv文件可以在Windows上用Excel打开非常方便
[root@localhost ~]# dstat -cdlmnpsyt --output /tmp/output.csv