1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
| import os
def disk_stat(): hd = {} disk = os.statvfs("/var/lib/test") disk1 = os.statvfs("/")
disksize = disk.f_bsize * disk.f_blocks/(1024*1024*1024) used = disk.f_bsize * (disk.f_blocks - disk.f_bfree) / (1024 ** 3) hd['diskused'] = format((used / float(disksize)), '.2f')
disksize1 = disk1.f_bsize * disk1.f_blocks/(1024*1024*1024) used1 = disk1.f_bsize * (disk1.f_blocks - disk1.f_bfree) / (1024 ** 3) hd['diskused1'] = format((used1 / float(disksize1)), '.2f')
return hd
def Email(): import smtplib from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText from email.mime.application import MIMEApplication import datetime
user = 'test@test.com' pwd = 'test' to = ['test@test.com'] msg = MIMEMultipart() msg['Subject'] = 'disk Exceed the limit, Please Process' msg['From'] = user msg['To'] = ','.join(to)
part = MIMEText('test disk Exceed the limit, Please Process') msg.attach(part)
server = smtplib.SMTP('smtp.test.com') server.login(user, pwd) server.sendmail(user, to, msg.as_string()) server.close()
if __name__ == '__main__': hd = disk_stat() if hd['diskused'] > 0.75 or hd['diskused1'] > 0.75: Email()
|