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

    文章

    10434

    浏览量

    206522
  • 函数
    +关注

    关注

    3

    文章

    3864

    浏览量

    61307
  • python
    +关注

    关注

    51

    文章

    4671

    浏览量

    83458
收藏 人收藏

    评论

    相关推荐

    浅谈煤矿井下电力监控系统的应用

    的电力资源,保证各设备的正常运作。监控系统主要的构成部分是防爆高低压开关设备,主要依靠这设备实现对电力网络的控制,主要由通讯服务器、防爆箱和断路器组成,能够
    发表于 02-01 12:54

    python简单for循环例子

    Python是一种简单而又强大的编程语言,通过其清晰的语法和丰富的功能库,我们可以实现各种各样的任务。其中一个最基本的语法结构就是for循环,让我们来看一下如何使用for循环来编写一个最简单
    的头像 发表于 11-21 14:53 487次阅读

    Python中Excel转PDF的实现步骤

    将Excel文件转换为PDF可以方便储存表格数据,此外在打印或共享文档时也能确保表格样式布局等在不同设备和操作系统上保持一致。今天给大家分享一个使用第三方Python库Spire.XLS for Python
    的头像 发表于 11-20 15:02 369次阅读
    <b class='flag-5'>Python</b>中Excel转PDF的<b class='flag-5'>实现</b>步骤

    怎么在Python实现截图功能

    操作。 今天Python实用宝典就来讲讲怎么在Python实现截图功能,以下教程默认您已经安装好了Python哦,没有的话见这个教程, pytho
    的头像 发表于 11-03 15:32 501次阅读
    怎么在<b class='flag-5'>Python</b>中<b class='flag-5'>实现</b>截图功能

    Python 如何对文件系统进行监控提取

    现在有一个应用场景,需要对文件系统进行监控,发生变化时产生日志,对新增的文件做一些相应的操作。比如说应用到我们之前的高潮提取器:若当前文件夹下增加了一个音乐文件,监控器就调用高潮提取器,自动提取
    的头像 发表于 11-02 15:25 250次阅读
    <b class='flag-5'>Python</b> 如何对文件<b class='flag-5'>系统</b>进行<b class='flag-5'>监控</b>提取

    基于一个能监控文件变化的Python神器

    假设现在有一个应用场景,需要对文件系统进行监控,发生变化时产生日志,对新增的文件做一些相应的操作。 比如说应用到我们之前的音乐高潮提取器:若当前文件夹下增加了一个音乐文件,监控器就调用音乐高潮提取
    的头像 发表于 11-01 09:52 207次阅读
    基于一个能<b class='flag-5'>监控</b>文件变化的<b class='flag-5'>Python</b>神器

    家庭能效远程监控系统的设计与实现

    电子发烧友网站提供《家庭能效远程监控系统的设计与实现.pdf》资料免费下载
    发表于 10-31 11:30 0次下载
    家庭能效远程<b class='flag-5'>监控</b><b class='flag-5'>系统</b>的设计与<b class='flag-5'>实现</b>

    watchdog:一个能监控文件变化的Python神器

    器,自动提取该音乐文件的高潮部分。 这样的监控器写起来也不难,但是很花时间,有许多情况要考虑。不过幸好我们是写Python的,有许多轮子可以使用,本文介绍的就是一个名为 watchdog 的模块,它能帮助我们实现上述功能。 1.
    的头像 发表于 10-21 11:22 427次阅读
    watchdog:一个能<b class='flag-5'>监控</b>文件变化的<b class='flag-5'>Python</b>神器

    基于Web的远程监控系统设计及实现

    电子发烧友网站提供《基于Web的远程监控系统设计及实现.pdf》资料免费下载
    发表于 10-18 09:53 0次下载
    基于Web的远程<b class='flag-5'>监控</b><b class='flag-5'>系统</b>设计及<b class='flag-5'>实现</b>

    使用LTC2990设计一个非常简单监控系统

    使用LTC2990集成电路,您可以设计一个非常简单监控系统监控系统温度、电压和电流。通过 I2C 串行接口。
    的头像 发表于 10-15 10:52 601次阅读
    使用LTC2990设计一个非常<b class='flag-5'>简单</b>的<b class='flag-5'>监控</b><b class='flag-5'>系统</b>

    如何在biquads 1.0版中使用CMSIS-DSP的Python包装

    本指南提供了简单的示例,说明如何使用CMSIS-DSP Python包装器以及如何用Python语言表示CMSIS-DSPAPI。 嵌入
    发表于 08-28 06:30

    Python实现OpenCV的安装与使用

      本文实例讲述了 Python 实现 OpenCV 的安装与使用。分享给大家供 大家参考,具体如下:  由于下一步要开始研究下深度学习,而深度学习领域很多的算法和应 用都是用 Python
    发表于 07-20 11:46 7次下载

    使用Python和Raspberry Pi的实时图表

    电子发烧友网站提供《使用Python和Raspberry Pi的实时图表.zip》资料免费下载
    发表于 06-13 10:47 0次下载
    使用<b class='flag-5'>Python</b>和Raspberry Pi的实时<b class='flag-5'>图表</b>

    Python基于Flask+MySQL的车辆管理系统

    基于Python+Django+MySQL的车辆管理系统,采用Echart构建图表,支持一键切换颜色主题,通过连接数据库获取车辆信息。
    发表于 06-07 15:21 411次阅读
    <b class='flag-5'>Python</b>基于Flask+MySQL的车辆管理<b class='flag-5'>系统</b>

    如何构建简单的传感器?

    您可以自己构建简单的传感器。 我的博客上有 PNP 和
    发表于 04-28 08:23