python2怎么监控多源复制状态并发邮件
admin
2023-03-09 22:22:33
0

我们环境中用到了多源复制,因此写个查看状态的Python脚本,python为系统中自带的2.6.6,邮件内容为html格式,隔行变色,脚本如下:

# -*- coding: UTF-8 -*-
import smtplib
from email.mime.text import MIMEText
from email.header import Header
import datetime
import MySQLdb
date_end = datetime.date.today()
html_part1 = """

  
  

Report of 10.10.100.10 multi source repl status {current_time}

                                           Master_Host                 Slave_IO_Running                 Slave_SQL_Running                 Seconds_Behind_Master                 Channel_Name              """.format(current_time=date_end) html_part2 = """    """ td_bgcolor_num = 1 db = MySQLdb.connect("10.10.100.10","mysqldba","mysql-dba-168" ) cursor = db.cursor() cursor.execute("show slave status") results = cursor.fetchall() with open('/tmp/slavesof10010.html',mode='w') as f:     f.write(html_part1)     for row in results:         Master_Host = row[1]         Slave_IO_Running = row[10]         Slave_SQL_Running = row[11]         Seconds_Behind_Master = row[32]         Channel_Name = row[-2]         if td_bgcolor_num%2==0:             td_bgcolor='#F0F0F0'         else:             td_bgcolor='#FFFFCE'         td_bgcolor_num += 1         pro = '''                      '''+ row[1].encode('utf-8','ignore') + "" + '''             '''+ row[10].encode('utf-8','ignore') + "" + '''             '''+ row[11].encode('utf-8','ignore') + "" + '''             '''+ str(row[32]) + "" + '''             '''+ Channel_Name + '''                  '''         f.write(pro)     f.write(html_part2) db.close() mail_host="smtp.xxxx.com" sender = 'devops@xxxx.com' receivers = ['devops@xxxx.com','123456789@qq.com','126@126.com','163@163.com'] with open('/tmp/slavesof10010.html',mode='r') as f:     html=f.read() message = MIMEText(html, 'html') message['From'] = Header("devops@xxxx.com") message['To'] = Header(";".join(v for v in receivers)) subject = 'multi-source-repl of 100.10汇总' message['Subject'] = Header(subject, 'utf-8') try:     smtpObj = smtplib.SMTP()     smtpObj.connect(mail_host, 25)    # 25 为 SMTP 端口号     smtpObj.sendmail(sender, receivers, message.as_string())     print "邮件发送成功" except smtplib.SMTPException as e:     print "Error: 无法发送邮件",     print e

计划任务

00 09 * * * python /server/scripts/get_html_10010.py &> /dev/null

相关内容

热门资讯

不止聂永真,九把刀拿了上亿补助... 海峡导报综合报道 台电(台湾电力公司)近日更换新的LOGO引发争议,尤其是现在台电还在亏损3000多...
阿根廷法医披露马拉多纳去世前状... 阿根廷一名法医日前在足球名宿迭戈·马拉多纳死亡案件的审判中表示,马拉多纳去世前遭受了约12个小时的痛...
斯洛伐克总理在俄表态:我是欧盟... 【环球网报道 记者 索炎琦】据俄罗斯《消息报》《乌克兰真理报》等媒体报道,斯洛伐克总理菲佐8日在莫斯...
日媒炒作:日本政府计划新设“对... 【环球网报道 记者 林泽宇】据日本《读卖新闻》、全日本新闻网5月9日报道,日本政府计划在2027年末...
与伊朗战争有关,阿联酋被曝大规... 美以对伊朗的战争搅动地区局势,巴基斯坦致力于通过外交途径结束战争。然而据美媒爆料,遭到伊朗猛烈打击的...
腾格里沙漠的光伏电,一度只值5... 【文/观察者网科工力量 石燕红】4月下旬,我们沿着腾格里沙漠的南缘跑了几天。在宁夏中卫,国家能源集团...
郑州古荥城市更新一期097地块... 【大河财立方 记者 陈诗昂】 郑州市惠济区古荥城市更新(一期)项目(下称古荥一期项目)迎来新进展。5...
赋能高端算力自主化!我国首台双... 由中国科学院牵头,联合武汉大学、华中科技大学和武汉量子技术研究院等团队联合研发的国内首台双核原子量子...
凝聚品牌力量 共筑美好未来——... 五月的莫干山,竹林叠翠,生机盎然。5月9日至12日,2026世界品牌莫干山大会将在浙江省湖州市德清县...
四部门发文!促进人工智能与能源... 【大河财立方消息】 5月8日,据国家能源局微信公众号,国家能源局近日会同国家发展改革委、工业和信息化...