随心一记

一二三四五,上山打老鼠


  • 首页

  • 归档

  • 标签
ywcsb

ywcsb

游戏可以不玩,小说不能不看。

153 日志
3 分类
42 标签
RSS
GitHub 知乎 随心一记
Links
  • 随心一记
  • 追梦人物的
  • MSDN

使用Python3的psutil模块监控磁盘使用率并发送邮件

发表于 2019-01-16 | 阅读 1399 | 分类于 Python |

psutil模块简介:

psutil(Python system and process utilities)是一个跨平台的进程管理和系统工具的python库,可以处理系统CPU,memory,disks,network等信息。主要用于系统资源的监控,分析,以及对进程进行一定的管理。通过psutil可以实现如ps,top,lsof,netstat,ifconfig,who,df,kill,free,nice,ionice,iostat,iotop,uptime,pidof,tty,taskset,pmap。

安装psutil模块

pip install psutil

使用psutil获取磁盘信息

import psutil
seiz = psutil.disk_usage("/")
print(seiz)
sdiskusage(total=10434662400, used=2109755392, free=7771258880, percent=21.4)

执行结果:

sdiskusage(total=10434662400, used=2109755392, free=7771258880, percent=21.4)

total是磁盘的总量 used使用用了多少磁盘空间 free 剩余多少磁盘空间 percent 磁盘使用量

代码

#!/usr/bin/env python3
#-*-coding:utf-8-*-
'''
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    File Name:   size.py
    Description : 监控磁盘使用量并发送邮件
    Author :    angell
    date:   2018/3/26
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
    Change Activity:
                    2018/3/26:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
'''
__author__ = 'xiaobing'

def mail(seiz):
    from email.mime.text import MIMEText
    from email.header import Header
    from smtplib import SMTP_SSL
    host_server = 'smtp.qq.com' # qq邮箱smtp服务器
    # sender_qq为发件人的qq号码
    sender_qq = '*******@qq.com'
    # pwd为qq邮箱的授权码
    pwd = '*******'  ## xh**********bdc
    # 发件人的邮箱
    sender_qq_mail = '****@qq.com'
    # 收件人邮箱
    receiver = '*****@163.com'

    # 邮件的正文内容
    mail_content = '磁盘使用量已经超过%%80,已使用%s%%,请及时清理'%seiz
    # 邮件标题
    mail_title = '磁盘使用量已经超过%%80,已使用%s%%,请及时清理'%seiz

    # ssl登录
    smtp = SMTP_SSL(host_server)
    # set_debuglevel()是用来调试的。参数值为1表示开启调试模式,参数值为0关闭调试模式
    smtp.set_debuglevel(0)
    smtp.ehlo(host_server)
    smtp.login(sender_qq, pwd)

    msg = MIMEText(mail_content, "plain", 'utf-8')
    msg["Subject"] = Header(mail_title, 'utf-8')
    msg["From"] = sender_qq_mail
    msg["To"] = receiver
    smtp.sendmail(sender_qq_mail, receiver, msg.as_string())
    smtp.quit()
def seiz_get():
    import psutil
    seiz = psutil.disk_usage("/").percent #获取磁盘使用率
    if seiz > 80:
        mail(seiz)
if __name__ == '__main__':
    seiz_get()
觉得不错,支持一下!
geerniya WeChat Pay

微信打赏

geerniya Alipay

支付宝打赏

# Python # 系统运维 # 脚本
使用shadowsocks实现访问google
OSI网络七层模型

发表评论

共 0 条评论

    暂无评论
© 2018 - 2022 ywcsb
冀ICP备17022045号-1
Supported by 腾讯云