在Linux系统中有很多流行且经常使用的系统资源监控工具,例如:vmstat、netstat、iostat、ifstat和mpstat, 这些工具可用于监控不同系统组件的统计信息, 包括:虚拟内存、网络连接和接口、CPU、输入/输出设备等。
dool是一款功能强大且灵活的多功能命令行工具, 除了提供上述工具提供的功能之外, 还具备额外的功能和能力, 用于监控Linux系统资源的各个方面, 如:CPU、内存、网络、负载均衡等, 该工具还具备额外的功能和计数器, 而且非常容易扩展, 如果具备Python编程能力,还可以构建属于自己的插件, 最后该工具的界面让人感觉舒适。
dool的核心功能如下:
-
能够汇聚来自vmstat、netstat、iostat、ifstat和mpstat工具的信息。
-
显示统计信息
-
具有排序计数器功能且可高度扩展。
-
支持对网络设备进行汇总。
-
显示每个设备的中断。
-
在精确的时间框架下工作, 不会因系统受到高强度压力时发生时间偏移。
-
支持彩色输出, 以不同颜色表示不同的单位。
-
支持将CSV格式输出或导出到Gnumeric和Excel文档。
安装dool工具非常简单, 以ubuntu为例, 直接输入以下命令安装即可:
[root@hankyoon]# git clone https://github.com/scottchiefbaker/dool.git
[root@hankyoon]# cd dool
[root@dool]# ./install.py
以下是使用dool工具在不加任何参数的情况下执行输出结果, dool默认加载的插件包括:cpu、disk、net、load, 如图:
[root@hankyoon dool]# dool上述输出信息包括以下几个维度:
-
CPU使用率:用户(user)进程、系统(sys)进程以及空间(idl)和等待(wai)进程的CPU使用率, 以及被窃取的时间(stl)。
-
磁盘统计信息:磁盘上的读取(read)和写入(writ)操作的总数。
-
网络统计信息: 网络接口上接收(recv)和发送(send)的总字节数。
-
负载平均值: 显示系统在不同时间间隔(1分钟、5分钟和15分钟)内的平均负载。
-
系统统计信息: 提供了数据收集的时间戳。
如果要显示vmstat显示的信息, 可以使用-v或--vmstat参数, 如图:
[root@hankyoon dool]# dool --vmstat
在上图中, 显示下以下信息:
-
进程统计信息: 运行(run)、阻塞(BLK)和新生成(new)进程的数量。
-
内存统计信息: 已用(used)、缓冲(buff)、缓存(cach)和空闲(free)内存的数量。
下面看一个高级案例, 如果想要监控一个使用最多CPU并消耗内存最多的单个程序需要输入什么命令?命令参数如下:
-
-c : CPU使用率
-
--top-cpu: 使用最多CPU的进程
-
-dn: 磁盘和网络统计信息
-
--top-mem: 消耗最多内存的进程
完整命令执行后结果如图:
[root@hankyoon dool]# dool -c --top-cpu -dn --top-mem
另外,还可以启用--output选项将dool的输出存储到.csv文件中,以便离线分析, 完整命令如下:
[root@hankyoon dool]# dool --time --cpu --mem --load --output /tmp/report.csv 1 5
该命令的作用是显示时间、CPU、内存和系统负载统计信息, 每5次计数更新之间延迟一秒, 输出的report.csv
转自:https://mp.weixin.qq.com/s/dDc_BqNFxgLEOqOUxDP7Pw
标签:--,性能,信息,监控,Linux,dool,hankyoon,root,CPU From: https://www.cnblogs.com/hankyoon/p/18171413