Advertisement
Guest User

Untitled

a guest
Aug 20th, 2016
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.42 KB | None | 0 0
  1. #!/usr/bin/python
  2.  
  3. import os, subprocess, smtplib
  4. import pymysql.cursors
  5. from email.mime.text import MIMEText
  6.  
  7. def send_mail(title, msg, from_addr, to_addr, cc_addrs=None):
  8. if not from_addr or not to_addr:
  9. return
  10.  
  11. mail_title = title
  12. mail_body = msg
  13.  
  14. new_mail = MIMEText(mail_body)
  15. new_mail["Subject"] = mail_title
  16. new_mail["From"] = from_addr
  17. new_mail["To"] = to_addr
  18.  
  19. if cc_addrs != None:
  20. if isinstance(cc_addrs, str):
  21. new_mail["Cc"] = cc_addrs
  22. elif isinstance(cc_addrs, list) and cc_addrs != []:
  23. new_mail["Cc"] = ','.join(cc_addrs)
  24.  
  25. smtp = smtplib.SMTP('localhost')
  26. smtp.send_message(new_mail)
  27. smtp.quit()
  28.  
  29. def send_default_error_mail():
  30. send_mail(
  31. "Database connection check",
  32. "Error, please make some action to recover",
  33. "送信元メールアドレス",
  34. "送信先メールアドレス"
  35. )
  36.  
  37. connection = pymysql.connect(
  38. host='ホスト',
  39. user='ユーザ名',
  40. password='パスワード',
  41. db='DB名',
  42. charset='utf8',
  43. cursorclass=pymysql.cursors.DictCursor)
  44.  
  45. if not connection:
  46. send_default_error_mail()
  47. try:
  48. with connection.cursor() as cursor:
  49. sql = "SELECT 1=1"
  50. cursor.execute(sql)
  51. results = cursor.fetchall()
  52. if not results or len(results) == 0:
  53. send_default_error_mail()
  54. except:
  55. send_default_error_mail()
  56. finally:
  57. connection.close
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement