每天将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代码如下:

每天将MYSQL SLOW QUERY REPORT分发到各个邮箱供分析改善数据库性能-PYTHON
 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()
每天将MYSQL SLOW QUERY REPORT分发到各个邮箱供分析改善数据库性能-PYTHON

测试邮件截图效果:

每天将MYSQL SLOW QUERY REPORT分发到各个邮箱供分析改善数据库性能-PYTHON