当前位置: 首页 > Linux

dstat工具使用

时间:2023-04-06 23:17:34 Linux

dstat是一个多样化的资源统计工具。官网是这么说的,感受一下:dstat是vmstat、iostat、netstat和ifstat的全能替代品。Dstat克服了它们的一些限制并添加了一些额外的功能、更多的计数器和灵活性。Dstat可以方便地在性能调整测试、基准测试或故障排除期间监控系统。Dstat允许您实时查看所有系统资源,例如,您可以。比较磁盘利用率和IDE控制器的中断,或者直接比较网络带宽数字和磁盘吞吐量(在相同的时间间隔内)。dstat将为您提供列表中的选项,并清楚地告诉您输出的范围和单位被展示。这样可以更好地避免信息混淆和误报。更重要的是,它使您可以更轻松地编写插件来收集您想要的数据信息,并以前所未有的方式扩展它。Dstat的默认输出是为人们实时查看而设计的,但您也可以通过CSV将详细信息输出到文件,并将其导入到Gnumeric或Excel生成的表格中。特点结合vmstat、iostat、ifstat、netstat信息等在完全相同的时间范围内显示统计信息启用/排序计数器,因为它们在分析/故障排除期间最有意义模块化设计用python编写,因此可以轻松扩展手头的任务易于扩展,添加您自己的计数器(请贡献那些)包括许多外部插件以显示添加计数器是多么容易可以总结分组的块/网络设备并给出总数可以显示每个设备的中断非常准确的时间范围,系统压力时没有时间偏移显示精确的单位并限制转换错误用不同的颜色表示不同的单位显示intermediateresultswhendelay>1Allowstoexportcsv输出,可以在gnumeric和excel中导入做图以上的特点是从官网摘下的,可以参考一下。安装centos可以直接使用以下命令安装:yuminstalldstatexternalplugin[root@pandora~]#dstat--listinternal: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:电池,电池剩余,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可以通过dstat--list查看dstat可以使用的所有参数,其中上面的internal是dstat本身自带的一些监控参数,而下面的/usr/share/dstat是dstat的一个插件。这些插件可以扩展dstat的功能,比如监控电源(电池)、mysql等。以下插件并非都可以直接使用,部分插件依赖于其他包。如果要监控mysql,必须安装python连接mysql的一些包。您可以使用-h选项来检查用例使用情况,或者使用mandstat进行检查。我执行了下,大致是这样的:[root@pandora~]#dstat-hUsage:dstat[-afv][options..][delay[count]]Versatiletoolforgeneratingsystemresourcestatisticsdstatoptions:-c,--cpuenablecpustats-C0,3,totalincludecpu0,cpu3andtotal-d,--diskenablediskstats-Dtotal,hdaincludehdaandtotal-g,--page启用页面统计-i,--intenableinterruptstats-I5,eth2includeint5和eth2使用的中断-l,--loadenableloadstats-m,--memenablememorystats-n,--netenablenetworkstats-Neth1,totalincludeeth1和total-p,--procenableprocessstats-r,--ioenableiostats(I/Orequestscompleted)-s,--swapenableswapstats-Sswap1,totalincludeswap1andtotal-t,--time启用时间/日期输出-T,--epochen可用时间计数器(自纪元以来的秒数)-y,--sys启用系统统计信息--aio启用aio统计信息--fs,--filesystem启用fs统计信息--ipc启用ipc统计信息--lock启用锁定统计信息--raw启用原始数据stats--socketenablesocketstats--tcpenabletcpstats--udpenableudpstats--unixenableunixstats--vmenablevmstats--plugin-name按插件名称启用插件(参见手册)--list列出所有可用插件-a,--all等于-cdngy(默认)-f,--full自动展开-C,-D,-I,-N和-S列表-v,--vmstat等于-pmgdsc-Dtotal--bw,--blackonwhite改变白色背景终端的颜色--float在屏幕上强制浮点值--integer在屏幕上强制整数值--nocolor禁用颜色(隐含--noupdate)--noheaders禁用重复的标题--noupdate禁用中间更新--outputfilewriteCSVoutputtofiledelay是每次更新之间的延迟秒数(默认值:1)count是次数updatestodisplaybeforeexiting(default:unlimited)直接执行dstat命令,默认选项是-cdngy,1s显示一条消息,最后可以指定显示一条消息的时间间隔,比如dstat5显示一条messageevery5s,dstat510表示每5s显示一个item,一共显示10个item。可能的输出如下:[root@pandora~]#dstat----total-cpu-usage-----dsk/total--net/total----paging-----system--usrsysidlwaihiqsiq|阅读令状|接收发送|进出|intcsw3492000|135k4182k|00|52k86k|20k50k4393000|30k51k4393000|03632k|6040B4520B|0100k|32k55k4393000|4096B3832k|3274B1574B|072k|1654B|0120k|33k57k可以看到的统计项如下:-c选项。CPU状态:从左到右分别是用户/系统/空闲部分的cpu比例,wait,硬中断/软中断的个数。-d选项。DiskStatus:磁盘读写操作,该栏显示磁盘读写总数。-n选项。网络状态:网络设备发送和接收的数据。-g选项。页面状态:系统的分页活动。分页指的是一种用于查找系统场景的内存管理技术。大分页表明系统正在使用大量交换空间,或者内存非常分散。在大多数情况下,您希望看到页入(swappedin)和页出(swappedout)值都是0。-y选项。系统统计信息:中断次数(int)和上下文切换次数(csw)。较高的值一般表示有大量进程拥塞,需要CPU关注。常用选项--socket显示常用socket统计信息--tcp显示常用TCP统计信息--mem显示内存使用情况--io显示I/O统计信息--int显示终端统计信息--disk-util显示某个时间的磁盘忙状态--freespace显示当前磁盘空间使用情况--proc-count显示正在运行的程序数--top-bio指出块I/O最大的进程--top-cpu图形化显示最大的进程CPU使用情况--top-io显示I/O最正常的进程--top-mem显示内存使用最多的进程可能的输出如下:[root@pandora~]#dstat--tcp--io--top-cpu--top-io--mem--top-mem----tcp-sockets------io/total--most-expensive-----most-expensive----------memory-usage-------most-expensive-lisactsyntimclo|阅读令状|处理器进程|输入/输出过程|免费使用buff缓存|内存进程1229000|4.9346.2|codis-config0.0|sshd102k46k|38.7G333M60.4G152G|java183M1229000|配置0.0|redis-服务34k47B|38.7G333M60.4G152G|java183M1229000|01.00|bin/codis-con0.0|redis-serve34k54B|38.7G333M60.3G152G|java183M