黑帽联盟

 找回密码
 会员注册
查看: 751|回复: 0
打印 上一主题 下一主题

[资源教程] Python开发的系统监视工具:Glances

[复制链接]

895

主题

38

听众

3329

积分

管理员

Rank: 9Rank: 9Rank: 9

  • TA的每日心情
    难过
    昨天 22:31
  • 签到天数: 1652 天

    [LV.Master]伴坛终老

    Glances是一款由Python开发的系统监视工具,可以实时查看CPU、内存、网络、IO等资源的使用情况。除了通过终端查看,Glances还提供了网页版,使用起来比top命令要方便。

    21.jpg

    官网:https://github.com/nicolargo/glances

    安装Glances
    安装很简单,以Alibaba Cloud Linux 3为例,运行下面语句即可

    yum install glances

    上述安装如果出现如下错误:
    2121.png

    需要安装python-psutil,版本2.0.0以上,下面是安装步骤:
    wget https://files.pythonhosted.org/packages/d6/0f/96b7309212a926c1448366e9ce69b081ea79d63265bde33f11cc9cfc2c07/psutil-5.9.5.tar.gz

    tar xf psutil-5.9.5.tar.gz
    cd psutil-5.9.5  
    python3 setup.py install

    如果上述安装出现如下错误:
    2122.png

    执行如下命令,即可解决:
    yum install gcc python3-devel python3-pip -y
    python3 setup.py install  #再次执行安装
    pip3 install -U pip  #更新pip3
    接着我们再安装glances
    pip3 install galnces

    使用Glances
    直接输入以下命令,即可查看,如果要退出,按 Ctrl + C 或者 q 或者 esc 。

    glances

    22.png

    在界面的左上角,我们可以查看hostname、系统版本和内核信息,右上角是系统运行时间,下面一行就是CPU、内存、SWAP和系统负载。左侧是网络、磁盘IO、文件系统和传感器的相关信息,右侧是任务信息和详细的进程对系统资源的占用。根据不同的系统配置,显示的内容会稍有不同。

    Glances使用不同的颜色表示不同的状态,绿色表示运行良好;蓝色表示注意,可能占用资源比较多了,以后可能会出现问题;紫色表示警告;红色表示严重了,需要采取行动,在界面的最下面一行会有提醒,示例中显示的是没监测到任何警告和严重的信息。

    快捷键
    在运行Glances的时候,可以使用快捷键进行高级的操作。具体的操作快捷键我们以使用字母 h 进行查询,再按一次 h 退出。具体的快捷键列表情况下面截图:

    23.png

    a:自动排序进程
    c:按 CPU 使用率排序进程
    m:按内存占用排序进程
    p:按名称排序进程
    i:按 I/O 速率排序进程
    d:显示或隐藏磁盘 I/O 统计
    f:显示或隐藏文件系统使用统计
    n:显示或隐藏网络流量统计
    s:显示或隐藏传感器数据统计
    l:显示或隐藏日志
    h:显示帮助信息
    q:退出

    搜索、过滤进程
    在运行Glances的时候,我们按 Enter 回车键,会跳出一个搜索框,我们可以根据示例输入关键字查找进程,也可以使用正则表达式、用户名等进行搜索。

    24.png

    输入搜索条件之后,按 Enter 回车键,Glances会显示相关进程,如果想查看该进程的详细信息,按字母 e 。退出进程查找,返回原来界面,按大写字母 E。

    25.png

    网页版查看结果
    glances -w

    运行该命令之后,我们就可以通过 http://<server-ip>:61208 进行查询,如果要把页面的刷新时间改成5秒,可以使用 http://<server-ip>:61208/5 这种形式。注意,网页版使用61208端口,需要在防火墙先打开这个端口。

    在运行网页版的时候,可能会提示“ CRITICAL: Bottle module not found. Glances cannot start in web server mode. ”,在Alibaba Cloud Linux 3 里运行下面命令安装即可:

    yum install python3-bottle

    将 WebServer 模式配置为系统服务
    创建 Unit 文件
    vim /etc/systemd/system/glancesweb.service

    文件内容如下:
    [Unit]

    Description = Glances in Web Server Mode

    After = network.target

    [Service]

    ExecStart = /usr/bin/glances  -w  -t  5  # glances路径因安装方法不同根据实际情况确定,可使用 which glances 命令获取

    [Install]

    WantedBy = multi-user.target

    启用 systemd 服务并运行
    systemctl enable glancesweb

    systemctl start glancesweb

    systemctl status glancesweb

    ● glancesweb.service - Glances in Web Server Mode

       Loaded: loaded (/etc/systemd/system/glancesweb.service; enabled; vendor preset: enabled)

       Active: active (running) since Tue 2023-07-07 00:02:17 CST; 8min ago

    Main PID: 27912 (glances)

        Tasks: 1 (limit: 4915)

       CGroup: /system.slice/glancesweb.service

               └─27912 /home/starky/miniconda3/envs/python2/bin/python /home/starky/miniconda3/envs/python2/bin/glances -w -t 5

    帖子永久地址: 

    黑帽联盟 - 论坛版权1、本主题所有言论和图片纯属会员个人意见,与本论坛立场无关
    2、本站所有主题由该帖子作者发表,该帖子作者与黑帽联盟享有帖子相关版权
    3、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和黑帽联盟的同意
    4、帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
    5、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
    6、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
    7、黑帽联盟管理员和版主有权不事先通知发贴者而删除本文

    勿忘初心,方得始终!
    您需要登录后才可以回帖 登录 | 会员注册

    发布主题 !fastreply! 收藏帖子 返回列表 搜索
    回顶部