dstat 用法详解


Windows 下有性能监视器,Linux 下当然也不示弱,亲还在用vmstat, iostat, nfsstat, netstat, ifstat...来查看系统性能状态?那你就弱爆了。今天给亲一个神器,只需他一个你就可以得到以上这么多工具综合的功能。

闲言表过,步入正题。

dstat
如果系统没有些工具 yum -y install dstat安装下即妥,此软件小巧玲珑,软件包大小只有144k,安装大小660k。
此工具默认情况下会动态显示CPU,disk,net,page,system负载情况,如下所示,当然会有颜色不同标示的,还是比较直观的,暂且直接复制凑合一看,还望各位看官海涵,千万莫拍砖。

[root@localhost shell]# dstat
----total-cpu-usage---- -dsk/total- -net/total- ---paging-- ---system--
usr sys idl wai hiq siq| read  writ| recv  send|  in  out | int  csw
  1  1  97  1  0  0|  20k 8421B|  0    0 |  0    0 |  46    40
  6  5  86  0  1  2|  0    0 | 328B  958B|  0    0 | 111    43
  0  0 100  0  0  0|  0    0 |  60B  346B|  0    0 |  18    21
  0  1  98  0  0  1|  0    0 |  60B  346B|  0    0 |  39    36
  0  0 100  0  0  0|  0    0 | 268B  346B|  0    0 |  25    16
  1  1  98  0  0  0|  0    0 |  60B  346B|  0    0 |  49    39
  1  0  99  0  0  0|  0    0 |  60B  346B|  0    0 |  23    15
  2  2  95  0  0  1|  0    0 | 268B  452B|  0    0 |  69    54
  2  0  97  0  0  1|  0    0 | 240B  560B|  0    0 |  54    26
  2  2  95  0  1  0|  0    0 |  60B  346B|  0    0 |  60    41

当然自己自定义显示项目那也是必须的,下面听我一一道来:

常用参数:

-c cpu是也,显示CPU系统占用,用户占用,空闲,等待,中断,软件中断等信息

-C 当有多个CPU时候,此参数可按需分别显示cpu状态

e.g -C 0,1 显示cpu0和cpu1的信息

-d disk是也,显示磁盘读写数据大小

-D hda and total

-n net 显示网络状态

-N net 有多块网卡时,指定要显示的网卡

-l load average 显示系统负载情况

-m memory 显示内存使用情况

-g page 显示页面使用情况

-p process 显示进程状态

-s swap 显示交换分区使用情况

-S 类似D/N

-r I/O请求情况

-y system status

--ipc 显示ipc消息队列,信号等信息

--socket 用来显示tcp udp端口状态

-a all 此为默认选项 等同于 -cdngy

-v vmstat 等同于 -pmgdsc -D total

--output 文件 此选项也比较有用,可以把状态信息以csv的格式重定向到指定的文件中,以便日后查看。e.g dstat --output /root/dstat.csv & 此时让程序默默的在后台运行并把结果输出到/root/dstat.csv文件中

当然dstat还有很多更高级的用法,常用的基本这些选项,更高级的用法可以结合man文档。。。

推荐阅读:

Linux的sleep()和usleep()的使用和区别

Linux下的usleep函数

Linux命令之sleep - 延迟指定时间

Linux下线程调用sleep,进程挂起

相关内容