linux性能查看命令之dstat

linux性能查看命令之dstatlinux性能查看命令之dstat – 吴昊博客 (whsir.com) stat是一个全能型的系统信息统计工具,可以替代vmstat、iostat、ifstat等。在执行dstat命令时,可以很容易的监控到系统CPU、I/0、网络等相关信息,默认每秒刷新一条信息,并且可以统计输出csv文件等。 注

linux性能查看命令之dstat

linux性能查看命令之dstat – 吴昊博客 (whsir.com)

stat是一个全能型的系统信息统计工具,可以替代vmstat、iostat、ifstat等。在执行dstat命令时,可以很容易的监控到系统CPU、I/0、网络等相关信息,默认每秒刷新一条信息,并且可以统计输出csv文件等。

注:Centos系统可通过yum install dstat直接安装

dstat

dstat [-afv] [options..] [delay [count]]

默认分组字段含义

—-total-cpu-usage—- -dsk/total- -net/total- —paging– —system–
—-cpu状态—- -磁盘读写- -网络统计- —分页统计– —系统统计–

usr sys idl wai hiq siq| read writ| recv send| in out | int csw

cpu使用率:usr用户使用率 sys系统使用率 idl空闲率 wai等待占比 hiq中断 siq上下文
磁盘读写:read磁盘读 writ磁盘写
网络发送和接收的数据:recv网络接收 send网络发送
系统分页统计:in换入 out换出
系统统计:int统计中断 csw上下文切换

命令参数:

delay:两次结果输出的时间间隔,默认1秒。例:dstat 2表示2秒输出一次信息,可以和–noupdate一起用
count:结果输出次数,默认一直输出,直到ctrl+c中断。例:dstat 2 2表示2秒输出一次信息,在结果额外输出2次后中断

常用选项:

-c, –cpu:默认参数,只显示cpu状态
-C:当存在多个cpu时,可以显示指定cpu的使用情况。例:dstat -c -C 0,1这里只显示cpu0和cpu1的使用情况,此处如果不加-c选项,则显示cpu0和cpu1以及磁盘、网络、分页、系统信息。
-d, –disk:默认参数,只显示磁盘读写
-D:当存在多个磁盘时,可以显示指定磁盘的使用情况。例:dstat -d -D /dev/vda,/dev/vdb这里只显示vda和vdb这两块盘的读写情况,此处如果不加-d选项,则显示vda和vdb以及cpu、网络、分页、系统信息。
-g, –page:默认参数,只显示分页状态
-i, –int:只显示中断信息
I:查看指定设备中断号,例:dstat -i -I 0,1只显示0,1设备中断信息,查询中断号cat /proc/interrupts
-l, –load:只查看系统1分钟、5分钟、15分钟负载情况
-m, –mem:只显示内存使用情况(已用、缓冲、缓存、空闲)
-n, –net:默认参数,只显示网络状态
-N:可以指定需要监控的网卡。例:dstat -n -N eth0,eth1这里监控eth0和eth1网卡状态,如果不加-n选项,则显示eth0和eth1以及cpu、磁盘、分页、系统信息。
-p, –proc:只显示进程状态信息,可运行态run、睡眠态blk、新进程new,运行态高表示系统负载较高,等待cpu处理的进程过多,睡眠态过多可能IO存在问题。
–proc-count:显示进程数量
-r, –io:只显示I/O请求情况
-s, –swap:只显示swap即交换分区使用情况
-t, –time:只显示系统时间和日期
-T, –epoch:当前时间到1970-01-01 00:00:00 UTC间隔的秒数,即date +%s
-y, –sys:默认参数,只显示系统中断int和上下文切换数csw,如果数值过高系统负载可能过高,程序或存在问题
–aio:异步I/O状态
–fs, –filesystem:只显示文件系统统计信息(打开文件数、正在使用的inode数)
–ipc:只显示ipc统计信息,msg消息队列、sem线程队列、shm共享内存使用
–lock:只显示lock信息,pos锁数,lck锁数,rea读锁数、wri写锁数
–raw:只显示raw
–socket:只显示套接字统计信息,tot总量、tcp套接字数量、udp套接字数量、raw原始套接字数量
–tcp:只显示tcp统计信息(监听、活动、同步、时间等待、关闭)
–udp:只显示udp统计信息,lis监听数量、act活动数量
–unix:只显示unix统计信息
–vm:只显示虚拟内存信息
-a, –all:等于-cdngy,默认参数
-f, –full:展开-C, -D, -I, -N、-S
-v, –vmstat:等于-pmgdsc
–dbus:显示dbus连接数
–bits:显示单位换算
–float:显示浮点数
–integer:显示整数,默认值
–bw, –blackonwhite:改变终端颜色
–nocolor:关闭颜色
–noheaders :禁用重复输出header
–noupdate:时间间隔大于1时,下一条统计信息未打印完成时,不进行更新,配合delay参数
–output file:监控到的状态信息以csv格式标准输出到指定文件中。例:dstat –output wh.csv
–profile:记录组件和时间资源消耗,并生成日志文件。例:dstat –profile 1 3
–top-cpu:最耗CPU的进程和占比
–top-cpu-adv:最耗CPU的进程,及其PID,CPU占比等
–top-cputime:消耗CPU时间最多的进程名和耗费时间ms
–top-cputime-avg:平均消耗CPU时间最多的进程名和耗费时间ms
–top-latency:延迟最高的进程名和延迟时间ms
–top-latency-avg:平均延迟最高的进程名和延迟时间ms
–top-bio:最耗block I/O的进程名、读写
–top-bio-adv:最耗费block I/O的进程名、PID、读写、CPU占比
–top-io:最耗I/O的进程名和读写信息
–top-io-adv:最耗I/O的进程名、PID、读写、CPU占比
–top-mem:最耗内存的进程名和内存消耗
–top-oom:最先OOM(内存回收机制)杀死的进程
–top-childwait:等待子进程最多的父进程
–plugin-name:插件名称替换–plugin-name,其实这些插件都是python脚本写的,默认路径/usr/share/dstat,可以结合自己需求编写python脚本
–list:列出dstat可以使用的所有参数,internal是自身自带的参数,/usr/share/dstat是可用扩展监控,这些插件并不是可以直接使用,有些需要一些依赖。

常用的一些例子:

查看当前内存、I/O、cpu占用最高的进程信息

dstat –top-mem –top-io –top-cpu

将cpu、磁盘、网络信息标准输出至csv中

dstat -cdn –output /tmp/wh.csv

3秒收集一次数据,输出5次后中断

dstat –noupdate 3 5

今天的文章linux性能查看命令之dstat分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/53236.html

(0)
编程小号编程小号
上一篇 2023-08-30
下一篇 2023-08-30

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注