import pymysql import sys import time import signal import os import logUtils database_host = "10.144.120.30" database_data = "sogowebqa" database_table = "fanyi_gpumonitor" database_user = "******" database_pass = "******" monitor_id = int(sys.argv[1]) host_id = sys.argv[2] logInfo = logUtils.logutil(monitor_id) def get_now_time(): timeArray = time.localtime() return time.strftime("%Y-%m-%d %H:%M:%S", timeArray) def update_errorlog(log): log = log.replace("'", "\\'") db = pymysql.connect(database_host, database_user, database_pass, database_data) cursor = db.cursor() sql = "UPDATE %s set errorlog=CONCAT(errorlog, '%s') where id=%d;" % ( database_table, log, monitor_id) cursor.execute(sql)
'body' : mail_body.encode('GBK'), #use nl2br to adjust html-mail content. 'mode' : "html", 'maillist' : tlist, 'attname' : attname, 'attbody' : attbody } try: response = requests.get(mail_url,params=mail_Info) logstr.log_info('send mail success') except Exception as e: logstr.log_info("Send Mail ERROR. %s" % (e)) template_mail = """<html><head><style type="text/css">table{border-collapse:collapse;margin:0 auto;text-align:center;}table td,table th{border:1px solid #cad9ea;color:#666;height:30px;}table thead th{background-color:#CCE8EB;width:100px;}table tr:nth-child(odd){background:#fff;}table tr:nth-child(even){background:#F5FAFA;}</style></head><table width='90%' class='table'><thead><tr><th>ID</th><th>StartTime</th><th>EndTime</th><th>test_url</th><th>base_url</th><th>Finished</th><th>DiffNum</th><th>DiffRate(%)</th><th>Testtag</th><th>Detail</th></tr></thead>""" temp_format = """<tr><td>%s</td><td>%s</td><td>%s</td><td>%s</td><td>%s</td><td>%s</td><td>%s</td><td>%s</td><td>%s</td><td><a href="http://frontqa.web.sjs.ted/fy_xmldetail?tasknum=%d">Detail</a></td></tr></table></body></html>""" if __name__ == '__main__': try: logstr = logUtils.logutil(task_id) subpid = os.getpid() set_subpid(subpid,1) (test_url,base_url,reqtype,queryip,queryuser,querypassw,querypath,user) = getInfoFromDb(task_id) filename = os.path.basename(querypath) getQueryFile(root_path,filename) getDiff(root_path,filename,task_id,base_url,test_url,reqtype) except Exception as e: traceback.print_exc() print(e) update_errorlog("init failed!") set_status(3) sys.exit() try: # send result by mail db = pymysql.connect(database_host,database_user,database_pass,database)