原文链接:https://mp.weixin.qq.com/s/TvfzIy4uXHPOFQ1h5Q4KWg

建议点击原文链接查看

续上篇分享的【性能测试工具】,今天整理了常用的系统监控工具,当然有特殊业务情况也可以自己自研系统监控工具,没有编程能力的小伙伴们就多利用好简单的工具也可以达到很好的效率,不过linux中本来就自带了很多进程查看管理工具,诸如:ps ,top,vmstat除了这些之外还有很多提供类似功能的工具程序,本节分享的这三款瑞士军刀,我认为还算方便的工具htop/glances/dstat。

小巧工具【1】

htop是Linux系统中的一个互动的进程查看器,与Linux传统的top比较的话,htop更人性化并且还支持鼠标操作!但是htop提供的功能却是top望尘莫及。

说明:

从上面的截图中可以看到,htop命令输出总共分成了五个展示区:

(1)CPU状态区域

(2)整体状态区域

(3)内存状态区域

(4)进程状态区域

(5)管理控制区域

管理控制台:

F1: 查看htop说明

F2: htop设定:提供了许多自定义选项

F3: 搜索进程,提供了易用的方式来搜索进程

F4: 进程过滤器

F5: 显示属性结构,提供了进程的树状视图查看功能

F6: 折叠或展开(新版本里的),或选择排序方式(旧版本里的)

F7: 减少nice值,提高进程优先级

F8: 增加nice值,降低进程优先级

F9: 可对进程传递信号:让你很容易地在 htop 窗口内给一个进程发送任意的信号

F10: 退出

另:通过空格键来设置颜色标注进程条目:要标注某个进程条目,需要做的就是选中此条目,然后按下‘空格’键,所以通过此方法,你就能很轻松地追踪想查看的进程。

命令行选项:

除了上面介绍的一些热键,htop 还提供了很有用的命令行选项。下面是其中一部分:

-s 选项 : 按指定的列排序。例如,htop -s PID 命令会按 PID 列的大小排序来显示。

-u 选项 : 显示指定的用户的进程信息列表。例如,htop -u himanshu 命令会只显示出用户名为 himanshu 的相关进程。

-d 选项 : 设置刷新的延迟时间。例如,htop -d 100 命令会使输出在1秒后才会刷新(参数 -d 的单位是10微秒)。

这就是htop,一款人性化的类top工具,超赞赞!!!更多使用帮助,请自行man htop查阅。

小巧工具【2】

Linux中比Top颜值更高的系统监控工具Glances,由 Python 编写跨平台命令行系统监视工具。

(1)囊括系统监控对象广:能够对:CPU,内存,磁盘I/O,网卡网络流量,系统负载,文件系统等提供监控。

(2)监控界面中显示对象可自定义,可对监控对象显示值自定义。

(3)对现实终端屏幕没有特殊要求。

(4)支持C/S工作模式,1V1监控远程主机数据。

(5)可将监控数据输出至文件,且可自定义文件的格式为html或者cvs。

Glances 会用以下几种颜色来代表状态:

绿色:OK(一切正常)

蓝色:CAREFUL(需要注意)

紫色:WARNING(警告)

红色:CRITICAL(严重)

Glances 选项:

a – 对进程自动排序

c – 按 CPU 百分比对进程排序

m – 按内存百分比对进程排序

p – 按进程名字母顺序对进程排序

i – 按读写频率(I/O)对进程排序

d – 显示/隐藏磁盘 I/O 统计信息

f – 显示/隐藏文件系统统计信息

n – 显示/隐藏网络接口统计信息

s – 显示/隐藏传感器统计信息

y – 显示/隐藏硬盘温度统计信息

l – 显示/隐藏日志(log)

b – 切换网络 I/O 单位(Bytes/bits)

w – 删除警告日志

x – 删除警告和严重日志

1 – 切换全局 CPU 使用情况和每个 CPU 的使用情况

h – 显示/隐藏这个帮助画面

t – 以组合形式浏览网络 I/O

u – 以累计形式浏览网络 I/O

q – 退出(‘ESC‘ 和 ‘Ctrl+C‘ 也可以)

远程使用 Glances:

命令启动:glances -s

Define the password for the Glances server

Password:

Password (confirm):

Glances server is running on 0.0.0.0:61209

当 Glances 服务器启动后,到本地执行下面的命令来指定服务器IP地址或主机名的链接:

glances -c -P Glances服务器的IP地址

下面是一些在使用服务器/客户端模式时需知道的点:

在服务器模式,你可以通过 -B 地址 来设置绑定地址,也可以通过 -p 端口 来绑定监听的 TCP 端口

在客户端模式,你可以通过同样的 -p 端口 来指定服务器端口

默认的绑定地址是 0.0.0.0,但这么做会监听所有网络接口的指定端口

在服务器/客户端模式下,限制的阀值将由服务器的设置决定

你也可以在命令行下用过 -P 密码 的方式来为服务器端设置一个密码

glances 的高级应用:

glances 的结果输出方法

1.输出 HTML 格式文件,首先安装相关软件包

pip-Python install Jinja2

glances -o HTML -f /var/www/html

下面可以使用浏览器输入网址: http://localhost/glances.html

2.输出 csv 格式

该文件采用逗号分隔值(CSV)的格式,并且可以将其直接导入到电子表格中。

glances -o CSV -f /home/cjh/glances.csv

下面使用 libreoffice 的 calc 工具打开 csv 格式文件

libreoffice --calc %U /tmp/glances.csv

这就是glances,又是一款比top好用的工具,超赞赞!!!更多使用帮助,请自行man glances查阅。

小巧工具【3】

最后出场的是dstat了,它是款强大的命令行系统数据收集展示工具,是一个用来替换vmstat、iostat、netstat、nfsstat和ifstat这些命令的工具,是一个全能系统信息统计工具。既可以在同一个界面中显示cpu,内存,磁盘,网卡数据这些对象的信息,也可通过不同的参数,一次展示某个对象的信息,还可找出占用对象最多的进程。

常见选项:

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

-C:当有多个CPU时候,此参数可按需分别显示cpu状态,例:-C 0,1 是显示cpu0和cpu1的信息。

-d:显示磁盘读写数据大小。

-D hda,total:include hda and total。

-n:显示网络状态。

-N eth1,total:有多块网卡时,指定要显示的网卡。

-l:显示系统负载情况。

-m:显示内存使用情况。

-g:显示页面使用情况。

-p:显示进程状态。

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

-S:类似D/N。

-r:I/O请求情况。

-y:系统状态。

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

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

-a:此为默认选项,等同于-cdngy。

-v:等同于 -pmgdsc -D total。

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

dstat --list可以查看dstat能使用的所有参数

语法:

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

直接使用dstat,默认使用的是-cdngy参数,分别显示cpu、disk、net、page、system信息,默认是1s显示一条信息。可以在最后指定显示一条信息的时间间隔,如dstat 5是没5s显示一条,dstat 5 10表示没5s显示一条,一共显示10条。

实例:

如想监控swap,process,sockets,filesystem并显示监控的时间:

dstat -tsp --socket --fs

----system---- ----swap--- ---procs--- ------sockets------ --filesystem-

date/time | used free|run blk new|tot tcp udp raw frg|files inodes

26-07 09:23:48| 0 0 | 0 0 0.0|104 8 5 0 0| 704 6488

26-07 09:23:49| 0 0 | 0 0 0|104 8 5 0 0| 704 6488

26-07 09:23:50| 0 0 | 0 0 0|104 8 5 0 0| 704 6489

26-07 09:23:51| 0 0 | 0 0 0|104 8 5 0 0| 704 6489

26-07 09:23:52| 0 0 | 0 0 0|104 8 5 0 0| 704 6489

26-07 09:23:53| 0 0 | 0 0 0|104 8 5 0 0| 704 6489

若要将结果输出到文件可以加--output filename:

dstat -tsp --socket --fs --output /tmp/ds.csv

----system---- ----swap--- ---procs--- ------sockets------ --filesystem-

date/time | used free|run blk new|tot tcp udp raw frg|files inodes

26-07 09:25:31| 0 0 | 0 0 0.0|104 8 5 0 0| 736 6493

26-07 09:25:32| 0 0 | 0 0 0|104 8 5 0 0| 736 6493

26-07 09:25:33| 0 0 | 0 0 0|104 8 5 0 0| 736 6493

26-07 09:25:34| 0 0 | 0 0 0|104 8 5 0 0| 736 6493

26-07 09:25:35| 0 0 | 0 0 0|104 8 5 0 0| 736 6494

26-07 09:25:36| 0 0 | 0 0 0|104 8 5 0 0| 736 6494

这样生成的csv文件可以用excel打开,然后生成图表。

这就是datat,也是超赞赞!!!

Htop/Glances/Dstat性能测试系统监控工具领域的瑞士军刀的更多相关文章

  1. 进程管理工具htop/glances/dstat的使用

    进程管理工具htop/glances/dstat的使用 Linux中进程的相关知识 1.什么是进程呢? 通俗的来说进程是运行起来的程序.唯一标示进程的是进程描述符(PID). 2.进程的分类 1)根据 ...

  2. linux系统监控工具glances

    glances linux系统自带了很多系统性能监控工具,如top,vmstat,iftop等等,还有一款监视工具glances,它能把其他几个监控的指标都集于一身.Glances是一个相对比较新的系 ...

  3. 系统监控工具glances

      glances是一款由python开发的系统监控工具,可以实时查看CPU.内存.网络.IO.进程.磁盘空间使用率的使用情况,并且支持三种运行模式,个人感觉比top命令使用更便捷: 安装glance ...

  4. 非常实用的Linux 系统监控工具

    随着互联网行业的不断发展,各种监控工具多得不可胜数.这里列出网上最全的监控工具.让你可以拥有超过80种方式来管理你的机器.在本文中,我们主要包括以下方面: 命令行工具 网络相关内容 系统相关的监控工具 ...

  5. linux学习-系统监控工具

    系统监控工具 come from:https://blog.csdn.net/free050463/article/details/82842273top.free.vmstat.iostat.pma ...

  6. 系统管理员都要知道的 30 个 Linux 系统监控工具

    1. top - 进程活动监控命令 top 命令会显示 Linux 的进程.它提供了一个运行中系统的实时动态视图,即实际的进程活动.默认情况下,它显示在服务器上运行的 CPU 占用率最高的任务,并且每 ...

  7. linux 系统信息展示 htop glances conky psensor

    htop glances conky psensor htop glances 只能在终端内展示. htop 使用系统自带程序包管理程序就可以安装 glances github地址:https://g ...

  8. 高并发&性能优化(二)------系统监控工具使用

    上一篇主要从总体介绍了高并发&性能优化的相关思路和方法,本篇主要介绍系统监控工具. [CPU查看工具] ------top命令(性能) 进入top命令后,按1即可看到每核CPU的运行指标与详细 ...

  9. 管理员必备的Linux系统监控工具

    管理员必备的Linux系统监控工具 #1: top - 进程活动 top提供一个当前运行系统实时动态的视图, 也就是正在运行进程.在默认情况下,显示系统 中CPU使用率最高的任务,并每5秒钟刷新一次. ...

随机推荐

  1. 计算5的n次幂html代码

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. Lucene的FuzzyQuery中用到的Levenshtein Distance(LD)算法

    2019独角兽企业重金招聘Python工程师标准>>> Lucene的FuzzyQuery中用到的Levenshtein Distance(LD)算法 博客分类: java 搜索引擎 ...

  3. CSDN排名及积分规则

    博客排行榜排名分值=个人Blog全部随笔与文章的阅读数之和+个人Blog全部评论数之和*10+个人所发表的评论数之和*50 CSDN博客积分计算规则: 1.每公布一篇原创或者翻译文章:可获得10分. ...

  4. 程序员还在用360,腾讯电脑管家清理注册表,清理垃圾?只能说你太low

    首先明明电脑上,就有清理垃圾和无用注册表的功能,只是我么缺少发现美的眼睛. 为什么不用360,腾讯全家桶. 那玩意固然香,而且真香,但是后台占用率太高,作为一个有洁癖的我,实在是不想看到自己右下角多一 ...

  5. Codeforce 1311A Add Odd or Subtract Even

    Add Odd or Subtract Even time limit per test2 seconds memory limit per test256 megabytes inputstanda ...

  6. Java 函数式接口

    目录 Java 函数式接口 1. 函数式接口 1.1 概念 1.2 格式 1.3 函数式接口的使用 2. 函数式编程 2.1 Lambda的延迟执行 性能浪费的日志案例 使用Lambda表达式的优化 ...

  7. Spring Cloud 学习 之 Spring Cloud Ribbon(基础知识铺垫)

    文章目录 1.负载均衡: 2.RestTemplate详解: xxxForEntity/xxxForObject:主要介绍get跟post exchange: execute源码分析: 1.负载均衡: ...

  8. VS Code的安装与配置

    VS Code的安装与配置 Visual Studio Code(VS Code)是微软旗下的一个开源文本编辑器,支持Windows.macOS.Linux操作系统.数量众多.种类多样的插件极大提高了 ...

  9. android实现计时器

    新建布局文件activity_main.xml <?xml version="1.0" encoding="utf-8"?> <LinearL ...

  10. android的布局 (如何实现空心圆效果的布局)

    layer-list : 简单来说layer-list就是图层列表的意思,是用来创建LayerDrawable的,LayerDrawable是DrawableResource的一种,所以,layer- ...