dstat 是一个可以取代vmstat,iostat,netstat和ifstat这些命令的多功能产品。dstat克服了这些命令的局限并增加了一些另外的功能,增加了监控项,也变得更灵活了。dstat可以很方便监控系统运行状况并用于基准测试和排除故障。
dstat可以让你实时地看到所有系统资源,例如,你能够通过统计IDE控制器当前状态来比较磁盘利用率,或者直接通过网络带宽数值来比较磁盘的吞吐率(在相同的时间间隔内)。
dstat将以列表的形式为你提供选项信息并清晰地告诉你是在何种幅度和单位显示输出。这样更好地避免了信息混乱和误报。更重要的是,它可以让你更容易编写插件来收集你想要的数据信息,以从未有过的方式进行扩展。
Dstat的默认输出是专门为人们实时查看而设计的,不过你也可以将详细信息通过CSV输出到一个文件,并导入到Gnumeric或者Excel生成表格中。
特性
· 结合了vmstat,iostat,ifstat,netstat以及更多的信息
· 实时显示统计情况
· 在分析和排障时可以通过启用监控项并排序
· 模块化设计
· 使用python编写的,更方便扩展现有的工作任务
· 容易扩展和添加你的计数器(请为此做出贡献)
· 包含的许多扩展插件充分说明了增加新的监控项目是很方便的
· 可以分组统计块设备/网络设备,并给出总数
· 可以显示每台设备的当前状态
· 极准确的时间精度,即便是系统负荷较高也不会延迟显示
· 显示准确地单位和和限制转换误差范围
· 用不同的颜色显示不同的单位
· 显示中间结果延时小于1秒
· 支持输出CSV格式报表,并能导入到Gnumeric和Excel以生成图形
安装方法
Ubuntu/Mint和Debin系统:
本地软件库中有相关安装包,你可以用下面命令安装:
1. # sudo apt-get install dstat
RHEL/Centos和Fedora系统:
你可以在romforge软件库中添加有相关安装包,参照指导,使用如下命令很简单就能进行安装:
1. # yum install dstat
ArchLinux系统:
相关软件包在社区资源库中,你可以用这个命令来安装:
1. # pacman -S dstat
使用方法
dstat的基本用法就是输入dstat命令,输出如下:
这是默认输出显示的信息:
CPU状态:CPU的使用率。这项报告更有趣的部分是显示了用户,系统和空闲部分,这更好地分析了CPU当前的使用状况。如果你看到"wait"一栏中,CPU的状态是一个高使用率值,那说明系统存在一些其它问题。当CPU的状态处在"waits"时,那是因为它正在等待I/O设备(例如内存,磁盘或者网络)的响应而且还没有收到。
磁盘统计:磁盘的读写操作,这一栏显示磁盘的读、写总数。
网络统计:网络设备发送和接受的数据,这一栏显示的网络收、发数据总数。
分页统计:系统的分页活动。分页指的是一种内存管理技术用于查找系统场景,一个较大的分页表明系统正在使用大量的交换空间,或者说内存非常分散,大多数情况下你都希望看到page in(换入)和page out(换出)的值是0 0。
系统统计:这一项显示的是中断(int)和上下文切换(csw)。这项统计仅在有比较基线时才有意义。这一栏中较高的统计值通常表示大量的进程造成拥塞,需要对CPU进行关注。你的服务器一般情况下都会运行运行一些程序,所以这项总是显示一些数值。
默认情况下,dstat每秒都会刷新数据。如果想退出dstat,你可以按"CTRL-C"键。
需要注意的是报告的第一行,通常这里所有的统计都不显示数值的。
这是由于dstat会通过上一次的报告来给出一个总结,所以第一次运行时是没有平均值和总值的相关数据。
但是dstat可以通过传递2个参数运行来控制报告间隔和报告数量。例如,如果你想要dstat输出默认监控、报表输出的时间间隔为3秒钟,并且报表中输出10个结果,你可以运行如下命令:
1. 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 :显示占用最多内存的进程
举一些例子:
查看全部内存都有谁在占用:
1. dstat -g -l -m -s --top-mem
显示一些关于CPU资源损耗的数据:
1. dstat -c -y -l --proc-count --top-cpu
如何输出一个csv文件
想输出一个csv格式的文件用于以后,可以通过下面的命令:
1. # dstat –output /tmp/sampleoutput.csv -cdn
via: http://linuxaria.com/howto/linux-terminal-dstat-monitoring-tools
相关推荐
《Linux环境下dstat监控工具详解及应用实践》 在Linux系统管理与优化过程中,实时监控系统资源的使用情况至关重要。其中,对于网络流量和磁盘性能的监测是尤为关键的一环,这有助于我们及时发现并解决系统瓶颈,...
**使用dstat监控系统** 启动dstat后,你可以看到CPU使用率、内存使用、磁盘读写速度、网络流入流出速率等信息。例如,基本的命令`dstat`会显示所有信息。要监控特定部分,可以使用参数,如`dstat -c`仅查看CPU使用...
以上工具覆盖了系统监控、文本编辑、终端管理、日志监控、数据备份和娱乐等多个方面,是Linux用户不可或缺的好帮手。熟练掌握这些工具的使用方法,不仅可以提高工作效率,还能让日常工作变得更加轻松愉快。
10. **dstat**:多功能监控工具,可以同时显示CPU、内存、磁盘和网络的统计数据。 11. **htop**:top命令的增强版,带有颜色和树状视图,更易读且交互性强。 12. **atop**:提供日志记录功能,可以回溯历史性能数据...
- **dstat**:综合监控工具,可同时监控CPU、内存、磁盘、网络等资源。 - **htop**:top命令的增强版,提供彩色界面和更友好的用户交互。 这些工具的熟练掌握和应用,能够帮助系统管理员快速定位和解决问题,确保...
这些工具涵盖了Unix/Linux环境下的多个方面,从系统性能监控到文本编辑,再到远程会话管理和备份解决方案,每一种工具都针对特定的需求进行了优化设计。掌握这些工具的使用方法,能够显著提升在Unix/Linux环境下的...
本文将通过类比武侠小说《四大名捕》中的角色,介绍Linux环境下四个常用的进程管理命令:ps、dstat、top和htop。这四个命令分别被比喻为“无情”、“铁手”、“追命”和“冷血”,它们各具特色,承担着不同的进程...
在Linux系统管理中,监控工具是必不可少的,它们可以帮助管理员了解系统的健康状况,及时发现并解决性能问题。以下是30个每个系统管理员都应该熟悉的Linux系统监控工具的详细介绍: 1. **top**:这是一个实时显示...
在Linux环境下工作时,掌握一系列高效实用的命令行工具至关重要。本文将详细介绍“28个必备的Linux命令行工具”中提到的各种工具,这些工具不仅功能强大,而且是每个Linux用户的必备技能。 #### dstat & sar & ...
- **tpp**:这是一个终端下的幻灯片制作工具,允许用户在命令行界面上创建和播放幻灯片。虽然它的功能相对简单,但对于喜欢极简风格的用户来说,tpp提供了一种非常有趣的方式来展示信息。 #### xargs & parallel -...
tpp是一个在终端环境下运行的演示工具,适用于技术会议或展示。 **官方网站**:http://www.ngolde.de/tpp.html ### 7. xargs & parallel #### (a) xargs xargs是一个老式的命令行工具,用于读取标准输入并执行...
- **dstat**:全面的系统资源监控工具,包括CPU、内存、磁盘、网络等。 - **kill/pkill**:发送信号给进程,终止或控制进程。 - **job/bg/fg**:在shell中管理作业,`bg`将进程放到后台,`fg`将进程调到前台,`...
1. **桌面环境与终端**:Linux有许多不同的桌面环境,如GNOME、KDE、XFCE等,而终端是Linux的核心,通过命令行进行操作。 2. **文件系统结构**:遵循FHS(Filesystem Hierarchy Standard),根目录`/`下有`bin`、`...
Linux 提供了多种命令来管理和监控进程,这些命令可以帮助系统管理员和开发者更好地了解和控制系统中的进程。 一、进程相关基础知识 在 Linux 中,进程是指一个独立的执行单元,它可以拥有自己的虚拟内存空间、...
使用`export LANG=zh.UTF8`或`export LANG=zh.GB18030`以及`source /etc/profile`可以让Linux终端支持中文显示,这对于中文日志的阅读和理解非常有帮助。 2. **硬件信息查询**: - `dmidecode -t processor | ...
为了在终端中正确显示中文,可以使用`export LANG=zh.UTF8`或`export LANG=zh.GB18030`设置环境变量,然后执行`source /etc/profile`使设置生效。 2. **CPU和内存信息**: - `dmidecode -t processor | grep ...
`tpp`是一个终端下的PPT演示工具,适合极客风格的演讲。 `xargs`和`parallel`用于执行命令行任务,`xargs`可以将标准输入转换为命令参数,而`parallel`则能并行执行任务,特别适用于多核处理器环境。`duplicity`和`...
- 安装一系列实用工具,包括但不限于:`dstat`(监控系统资源)、`screen`(终端会话管理器)、`lrzsz`(文件传输工具)、`lsof`(进程文件描述符查看器)、`tcpdump`(网络数据包捕获工具)、`pciutils`(PCI设备...
`vlock`命令是Linux操作系统中的一个实用工具,它的主要功能是锁定虚拟终端,防止未经授权的用户访问或操作。在多用户环境中,特别是在没有物理屏幕保护器的情况下,`vlock`是一个非常有用的工具,可以确保当您离开...