每天将MYSQL SLOW QUERY REPORT分发到各个邮箱供分析改善数据库性能-PYTHON
/var/spool/cron/下面加入自动任务:
50 3 * * * mysqlsla -sort c_sum -lt slow /var/log/XXX_slow.log >/var/log/XXX_mysql_slow.log
10 4 * * * python /XXX/XXX_slow_report/mail_mysql_slow_report.py
mail_mysql_slow_report.py代码如下:
1 from smtplib import SMTP 2 import datetime 3 4 debuglevel = 0 5 6 smtp = SMTP() 7 smtp.set_debuglevel(debuglevel) 8 smtp.connect('1.2.3.4', 25) 9 smtp.login('user', 'pass') 10 11 from_addr = "user<[email protected]>" 12 to_addr = ["user1","user2"] 13 date = datetime.datetime.now().strftime( "%d/%m/%Y " ) 14 fp = open(r'/var/log/XXX_mysql_slow.log', 'r') 15 16 subj = "mysq slow query reprot for XXX web site"+date 17 message_text = fp.read() 18 19 msg = "From: %s\nTo: %s\nSubject: %s\nDate: %s\n\n%s" % ( from_addr, to_addr, subj, date, message_text ) 20 21 smtp.sendmail(from_addr, to_addr, msg) 22 smtp.quit()
测试邮件截图效果: