0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何使用Python实现一个简单的系统监控图表

Wildesbeast 来源:今日头条 作者:扣丁学堂 2020-02-04 12:45 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

作为运维人员,想必大家肯定都做过这样的事情:为了监控系统资源使用情况,开了若干个窗口,来回切换看输出:

只要我切得够快,性能异常点就逃不过我的眼睛!

这个时候你要是有个监控工具自然是很好的,例如我们美创的监控报警工具onekeeper,画面又好看,数据也准确,还是实时更新的。

然而好用的东西都是要花钱的,今天我们就利用python实现一个简单的动态监控图表。

1. 系统环境需求

我们这次要写的脚本主要基于Psutil与Matplotlib两个模块。

首先,我们这里选择python3环境,安装这两个模块:

Pip install psutil matplotlib

表示安装成功。

2. Psuitl模块的使用

顾名思义,psutil = process and system utilities,它不仅可以通过一两行代码实现系统监控,还可以跨平台使用,支持Linux/UNIX/OSX/Windows等。

它有许多函数功能,能够轻松实现获取系统运行的进程和系统利用率(包括CPU、内存、磁盘、网络等)信息,示例如下:

获取cpu使用率:

获取内存使用率:

获取磁盘IO信息:

写成一个函数:

私信小编01 领取精心整理的电子手三佰本

3. Matplotlib的使用

Matplotlib 可能是 Python 2D-绘图领域使用最广泛的套件。它能让使用者很轻松地将数据图形化,并且提供多样化的输出格式。

我们以cpu使用率图为例:

我们可以得到一张监控系统cpu使用率的动态图表。

4. 多子图制作

同样的,我们将其他两个性能指标也取出来,并做成同一个画布下不同的子图:

最后我们通过python得到了一个简单的系统性能动态监控图表:

Psutil模块还有其他很多获取系统信息的函数,是python系统运维方面必备的模块,Matplotlib作为应用最广的画图模块之一,也有许多其他让你的图表更加好看好用的使用方法。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • cpu
    cpu
    +关注

    关注

    68

    文章

    11331

    浏览量

    225904
  • 函数
    +关注

    关注

    3

    文章

    4422

    浏览量

    67853
  • python
    +关注

    关注

    58

    文章

    4885

    浏览量

    90314
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    使用Python/MyHDL创建自定义FPGA IP

    使用 Python/MyHDL 创建自定义 FPGA IP,与 Vivado 集成,并通过 PYNQ 进行控制——实现软件上的简单硬件设计。
    的头像 发表于 04-09 09:53 232次阅读
    使用<b class='flag-5'>Python</b>/MyHDL创建自定义FPGA IP

    使用PYTHON进行的跨平台仿真

    快速物理光学软件VirtualLab Fusion以其“连接场求解器”方法而自豪,该方法将应用于不同组件上的专用电磁场求解器结合在起,以实现整个系统的物理光学模拟。这种方法的逻辑扩展不仅是连接软件
    发表于 04-02 08:21

    [VirtualLab] 使用Python运行VirtualLab Fusion光学仿真

    使用代码编辑器Visual Studio Code(VS Code),因为它提供了用户友好的安装工作流程*。当然,如果需要,也可以使用其他Python编辑器。 对于使用VS Code的用户: 1.1
    发表于 03-31 09:39

    如何在单个图表上绘制多个测量结果曲线

    用户常常希望对批设备进行测量,并将结果显示在同一个图表上以便比较。APx序列(Sequence)的设计是每次仅显示设备的结果。如果您的
    的头像 发表于 02-11 09:02 243次阅读
    如何在单个<b class='flag-5'>图表</b>上绘制多个测量结果曲线

    Python运行本地Web服务并实现远程访问

    本文介绍使用Python搭建本地Web服务并结合 ZeroNews 实现公网访问。
    的头像 发表于 02-06 11:39 357次阅读
    <b class='flag-5'>Python</b>运行本地Web服务并<b class='flag-5'>实现</b>远程访问

    基于RK3506的监控系统

    1 简介 本文基于 RK3506开发板的监控系统的详细方案与实现流程,结合硬件选型、软件部署、算法优化和系统集成实现
    的头像 发表于 11-30 00:54 1398次阅读
    基于RK3506的<b class='flag-5'>监控</b><b class='flag-5'>系统</b>

    【EASY EAI Nano-TB(RV1126B)开发板试用】命令行功能测试-红绿灯按钮项目-Python实现简单的Web服务器

    Nano-TB(RV1126B)****开发板‌,构建能够通过Web服务读取物理按键三色LED灯状态的设备监控系统,打造符合简单状态显
    发表于 11-16 16:35

    Python调用API教程

    不同系统之间的信息交互。在这篇文章中,我们将详细介绍Python调用API的方法和技巧。 、用Requests库发送HTTP请求 使用Pyth
    的头像 发表于 11-03 09:15 1192次阅读

    【CPKCOR-RA8D1】打造迷你系统监控中心:ADC电压与温度实时显示

    本文将带领大家在CPKCOR-RA8D1开发板上,实现兼具实用与观赏性的“迷你系统监控中心”。项目基于MIPI显示屏,实时可视化地展示A
    发表于 10-30 15:14

    【CPKCOR-RA8D1】+ 打造迷你系统监控中心:ADC电压与温度实时显示

    本文将带领大家在CPKCOR-RA8D1开发板上,实现兼具实用与观赏性的“迷你系统监控中心”。项目基于MIPI显示屏,实时可视化地展示A
    发表于 10-30 09:44

    详解ROMA中复杂图表的渲染实现

    、背景 ROMA承接很多复杂图表的渲染需求,在京东金融APP内,特别是首页首屏的图表,对图表渲染的及时性要求很高。近期业务反馈频繁重启时,首页的黄金走势图偶现渲染不出的问题,通过梳理
    的头像 发表于 10-21 13:57 666次阅读
    详解ROMA中复杂<b class='flag-5'>图表</b>的渲染<b class='flag-5'>实现</b>

    Python脚本实现运维工作自动化案例

    还在为重复性运维工作而烦恼?每天被各种告警、监控、部署搞得焦头烂额?作为名有10年经验的运维老司机,今天分享5超实用的Python自动化脚本,让你的运维工作效率提升300%!这些都
    的头像 发表于 08-27 14:46 1368次阅读

    光伏系统监控的内容及其实现方法

    光伏系统监控是指对光伏电站的设备状态、发电性能及环境参数进行实时监测与管理的种技术,目的在于确保电站安全运行、提升发电效率、延长设备寿命,并为运维决策提供数据支持。如何通过采用科学化、智能化的技术手段来
    的头像 发表于 07-02 17:18 869次阅读

    移动基站远程集中监控系统与基站电力远程监控系统是什么监控系统

    物联网智能配电室监控系统包含哪些:综合监控系统、安全监控系统、环境监测
    的头像 发表于 05-26 15:19 1073次阅读
    移动基站远程集中<b class='flag-5'>监控</b><b class='flag-5'>系统</b>与基站电力远程<b class='flag-5'>监控</b><b class='flag-5'>系统</b>是什么<b class='flag-5'>监控</b><b class='flag-5'>系统</b>

    电机运行监控系统的设计与实现

    纯分享帖,需要者可点击附件免费获取完整资料~~~*附件:电机运行监控系统的设计与实现.pdf【免责声明】本文系网络转载,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请第
    发表于 05-26 02:19