python 监测内存和cpu的使用率实例


Posted in Python onNovember 28, 2019

我就废话不多说了,直接上代码吧!

import paramiko
import pymysql
import time

linux = ['192.168.0.179']
def connectHost(ip, uname='shenyuming', passwd='ajiongqqq'):
  ssh = paramiko.SSHClient()
  ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
  ssh.connect(ip, username=uname, password=passwd,port=22)
  return ssh
def MainCheck():
  try:
    while True:
      time.sleep(1)
      for a in range(len(linux)):
        ssh = connectHost(linux[a])
        # 查询主机名称
        cmd = 'hostname'
        stdin, stdout, stderr = ssh.exec_command(cmd)
        host_name = stdout.readlines()
        host_name = host_name[0]
        # 查看当前时间
        csj = 'date +%T'
        stdin, stdout, stderr = ssh.exec_command(csj)
        curr_time = stdout.readlines()
        curr_time = curr_time[0]
        

        # 查看cpu使用率,并将信息写入到数据库中(取三次平均值)
        cpu = "vmstat 1 3|sed '1d'|sed '1d'|awk '{print $15}'"
        stdin, stdout, stderr = ssh.exec_command(cpu)
        cpu = stdout.readlines()
        cpu_usage = str(round((100 - (int(cpu[0]) + int(cpu[1]) + int(cpu[2])) / 3), 2)) + '%'

        # 查看内存使用率,并将信息写入到数据库中

        mem = "cat /proc/meminfo|sed -n '1,4p'|awk '{print $2}'"
        stdin, stdout, stderr = ssh.exec_command(mem)
        mem = stdout.readlines()
        mem_total = round(int(mem[0]) / 1024)
        mem_total_free = round(int(mem[1]) / 1024) + round(int(mem[2]) / 1024) + round(int(mem[3]) / 1024)
        mem_usage = str(round(((mem_total - mem_total_free) / mem_total) * 100, 2)) + "%"

        sql = "insert into memory_and_cpu values('%s','%s','%s','%s')" % (
        host_name, curr_time, cpu_usage, mem_usage)
        db = connectDB()
        sqlDML(sql, db)
  except:
    print("连接服务器 %s 异常" % (linux[a]))

def connectDB(dbname='test11'):
  if dbname == 'test11':
    db = pymysql.connect("localhost", "root", "shen123", "test11")
    return db
def sqlDML(sql, db):
  cr = db.cursor()
  cr.execute(sql)
  db.commit()
  cr.close()

  #
if __name__ == '__main__':

  MainCheck()

以上这篇python 监测内存和cpu的使用率实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python脚本文件打包成可执行文件的方法
Jun 02 Python
python在windows下创建隐藏窗口子进程的方法
Jun 04 Python
深入解析Python中的线程同步方法
Jun 14 Python
快速解决安装python没有scripts文件夹的问题
Apr 03 Python
配置 Pycharm 默认 Test runner 的图文教程
Nov 30 Python
python如何制作英文字典
Jun 25 Python
wxPython实现绘图小例子
Nov 19 Python
flask 实现上传图片并缩放作为头像的例子
Jan 09 Python
python+openCV对视频进行截取的实现
Nov 27 Python
Python如何使用神经网络进行简单文本分类
Feb 25 Python
python 对图片进行简单的处理
Jun 23 Python
django中websocket的具体使用
Jan 22 Python
python随机生成库faker库api实例详解
Nov 28 #Python
python的faker库用法
Nov 28 #Python
关于python中plt.hist参数的使用详解
Nov 28 #Python
python创建子类的方法分析
Nov 28 #Python
python 实现快速生成连续、随机字母列表
Nov 28 #Python
Python操作多维数组输出和矩阵运算示例
Nov 28 #Python
Python创建一个元素都为0的列表实例
Nov 28 #Python
You might like
PHP中实现图片的锐化
2006/10/09 PHP
用文本文件实现的动态实时发布新闻的程序
2006/10/09 PHP
PHP flush()与ob_flush()的区别详解
2013/06/03 PHP
PHP Reflection API详解
2015/05/12 PHP
Laravel5框架自定义错误页面配置操作示例
2019/04/17 PHP
PHP进阶学习之反射基本概念与用法分析
2019/06/18 PHP
php模拟实现斗地主发牌
2020/04/22 PHP
分享别人写的一个小型js框架
2007/08/13 Javascript
优化javascript的执行速度
2010/01/23 Javascript
基于jQuery的树控件实现代码(asp.net+json)
2010/07/11 Javascript
jQuery代码优化 选择符篇
2011/11/01 Javascript
Node.js模块加载详解
2014/08/16 Javascript
jQuery中get()方法用法实例
2014/12/27 Javascript
使用VS开发 Node.js指南
2015/01/06 Javascript
js中跨域方法原理详解
2015/07/19 Javascript
浅谈时钟的生成(js手写简洁代码)
2016/08/20 Javascript
js html5 css俄罗斯方块游戏再现
2016/10/17 Javascript
js 转json格式的字符串为对象或数组(前后台)的方法
2016/11/02 Javascript
JS+canvas绘制的动态机械表动画效果
2017/09/12 Javascript
微信小程序实现简单购物车功能
2020/12/30 Javascript
Python实现Mysql数据库连接池实例详解
2017/04/11 Python
详解python使用Nginx和uWSGI来运行Python应用
2018/01/09 Python
Python使用pylab库实现绘制直方图功能示例
2018/06/01 Python
Python 变量类型详解
2018/10/10 Python
python 不同方式读取文件速度不同的实例
2018/11/09 Python
Html5实现单张、多张图片上传功能
2019/04/28 HTML / CSS
HTML5 Canvas入门学习教程
2016/03/17 HTML / CSS
北美大型运动类产品商城:Champs Sports
2017/01/12 全球购物
毕业生自我鉴定
2013/11/05 职场文书
自荐书封面下载
2013/11/29 职场文书
课程设计心得体会
2013/12/28 职场文书
聊城大学毕业生自荐书
2014/02/01 职场文书
80后职场人的职业生涯规划
2014/03/08 职场文书
五四青年节优秀演讲稿范文
2014/05/28 职场文书
党建工作整改措施
2014/10/28 职场文书
解析:创业计划书和商业计划书二者之间到底有什么区别
2019/08/14 职场文书