Linux下使用dstat监控工具

在进行性能测试的时候,我们一般需要检测很多方面的数据,这些数据包括CPU占用,内存占用情况,网络状况,load average,进程信息,磁盘信息等等。利用系统提供的命令一般来说可以完成这些数据的监测,但是一般来说,这些命令都是分散的,比如vmstat,iostat,netstat。如果能有一个工具可以完成这些数据的集中监控就好了。

dstat就是这样一款功能强大的工具,他完全覆盖了上述的功能集合,而且提供了更加强大的功能.

特性

⒈结合了vmstat,iostat,ifstat,netstat以及更多的信息⒉实时显示统计情况⒊在分析和排障时可以通过启用监控项并排序⒋模块化设计5.使用Python编写的,更方便扩展现有的工作任务6.容易扩展和添加你的计数器(请为此做出贡献)7.包含的许多扩展插件充分说明了增加新的监控项目是很方便的8.可以分组统计块设备/网络设备,并给出总数9.可以显示每台设备的当前状态10.极准确的时间精度,即便是系统负荷较高也不会延迟显示11.显示准确地单位和和限制转换误差范围12.用不同的颜色显示不同的单位13.显示中间结果延时小于1秒14.支持输出CSV格式报表,并能导入到Gnumeric和Excel以生成图形

安装方法

Ubuntu/Mint和Debin系统:

本地软件库中有相关安装包,你可以用下面命令安装:

# sudo apt-get install dstat

RHEL/CentOS和Fedora系统:

你可以在romforge软件库中添加有相关安装包,参照指导,使用如下命令很简单就能进行安装:

# yum install dstat

ArchLinux系统:

相关软件包在社区资源库中,你可以用这个命令来安装:

# pacman -S dstat

使用方法

dstat的基本用法就是输入dstat命令,输出如下:

这是默认输出显示的信息:

CPU状态:CPU的使用率。这项报告更有趣的部分是显示了用户,系统和空闲部分,这更好地分析了CPU当前的使用状况。如果你看到”wait”一栏中,CPU的状态是一个高使用率值,那说明系统存在一些其它问题。当CPU的状态处在”waits”时,那是因为它正在等待I/O设备(例如内存,磁盘或者网络)的响应而且还没有收到。

磁盘统计(dsk):磁盘的读写操作,这一栏显示磁盘的读、写总数。

网络统计(net):网络设备发送和接受的数据,这一栏显示的网络收、发数据总数。

分页统计(paging):系统的分页活动。分页指的是一种内存管理技术用于查找系统场景,一个较大的分页表明系统正在使用大量的交换空间,或者说内存非常分散,大多数情况下你都希望看到page in(换入)和page out(换出)的值是0 0。

系统统计(system):这一项显示的是中断(int)和上下文切换(csw)。这项统计仅在有比较基线时才有意义。这一栏中较高的统计值通常表示大量的进程造成拥塞,需要对CPU进行关注。你的服务器一般情况下都会运行运行一些程序,所以这项总是显示一些数值。

默认情况下,dstat每秒都会刷新数据。如果想退出dstat,你可以按”CTRL+C”键。

需要注意的是报告的第一行,通常这里所有的统计都不显示数值的。

这是由于dstat会通过上一次的报告来给出一个总结,所以第一次运行时是没有平均值和总值的相关数据。

但是dstat可以通过传递2个参数运行来控制报告间隔和报告数量。例如,如果你想要dstat输出默认监控、报表输出的时间间隔为3秒钟,并且报表中输出10个结果,你可以运行如下命令:

# dstat 3 10

在dstat命令中有很多参数可选,你可以通过man dstat命令查看,大多数常用的参数有这些:

-l :显示负载统计量

-m :显示内存使用率(包括used,buffer,cache,free值)

-r :显示I/O统计

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

-t :将当前时间显示在第一行

–fs :显示文件系统统计数据(包括文件总数量和inodes值)

–nocolor :不显示颜色(有时候有用)

–socket :显示网络统计数据

–tcp :显示常用的TCP统计

–udp :显示监听的UDP接口及其当前用量的一些动态数据

当然不止这些用法,dstat附带了一些插件很大程度地扩展了它的功能。你可以通过查看/usr/share/dstat目录来查看它们的一些使用方法,常用的有这些:

-–disk-util :显示某一时间磁盘的忙碌状况

-–freespace :显示当前磁盘空间使用率

-–proc-count :显示正在运行的程序数量

-–top-bio :指出块I/O最大的进程

-–top-cpu :图形化显示CPU占用最大的进程

-–top-io :显示正常I/O最大的进程

-–top-mem :显示占用最多内存的进程

举一些例子:

查看全部内存都有谁在占用:

# dstat -g -l -m -s –top-mem

显示一些关于CPU资源损耗的数据:

# dstat -c -y -l –proc-count –top-cpu

如何输出一个csv文件

想输出一个csv格式的文件用于以后,可以通过下面的命令:

# dstat –output /tmp/linuxidc.csv -cdn

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/200986.html<

(0)
运维的头像运维
上一篇2025-04-05 13:27
下一篇 2025-04-05 13:29

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

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