def send_alert(self, service, users, duty_officers): """Implement your send_alert functionality here.""" # 从 conf 配置文件获取 环境变量 corpid = env.get('WECHAT_CORP_ID') corpsecret = env.get('WECHAT_CORP_SECRET') appid = env.get('WECHAT_APPID') partyid = env.get('WECHAT_PARTY_ID') # 获取 service 状态 如果不是 PASSING 则报警 if service.overall_status != service.PASSING_STATUS: title = ' %s 状态 %s' % (service.name, service.overall_status) else: title = '%s back to normal ' % (service.name, ) # 渲染正文 t = Template(wechat_template) c = Context({'service': service}) content = t.render(c) # 记日志 print "[Wechat Alert] 时间:{0}\n标题:{1}\n内容:{2}".format( time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(time.time())), title, content) # 发送逻辑 send_msg(title, content, corpid, corpsecret, appid, partyid) return
def send_alert(self, service, users, duty_officers): """Implement your send_alert functionality here.""" # 从 conf 配置文件获取 环境变量 corpid = env.get('WECHAT_CORP_ID') corpsecret = env.get('WECHAT_CORP_SECRET') appid = env.get('WECHAT_APPID') partyid = env.get('WECHAT_PARTY_ID') # 获取 service 状态 如果不是 PASSING 则报警 if service.overall_status != service.PASSING_STATUS: title = ' %s 状态 %s' % (service.name, service.overall_status) else: title = '%s back to normal ' % (service.name,) # 渲染正文 t = Template(wechat_template) c = Context({ 'service': service }) content = t.render(c) # 记日志 print "[Wechat Alert] 时间:{0}\n标题:{1}\n内容:{2}".format(time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(time.time())),title, content) # 发送逻辑 send_msg(title,content,corpid,corpsecret,appid,partyid) return
def get_recent_tweet(post_wechat=False): auth_url = 'https://twitter.com/realDonaldTrump' headers = { "User-Agent": "Mozilla/5.0 (Linux; U; Android 8.0.0; zh-cn; LLD-AL00 Build/HONORLLD-AL00) AppleWebKit/537.36 (KHTML, like Gecko) MQQBrowser/7.3 Chrome/37.0.0.0 Mobile Safari/537.36" } session = requests.Session() session.request('GET', auth_url, headers=headers) cookie_obj = session.cookies cookie_list = list() for key, value in requests.utils.dict_from_cookiejar( cookie_obj).iteritems(): cookie_list.append('{}={}'.format(key, value)) cookie = '; '.join(cookie_list) headers.update({ "Accept": "application/json, text/javascript, */*; q=0.01", "Host": "twitter.com", "Accept-Language": "en-us", "Accept-Encoding": "br, gzip, deflate", "Referer": "https://twitter.com/realDonaldTrump", "Connection": "keep-alive", "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_2) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0.2 Safari/605.1.15", "Cookie": cookie, "X-Requested-With": "XMLHttpRequest", "X-Previous-Page-Name": "profile", "X-Overlay-Request": "true", "X-Twitter-Active-User": "******" }) resp = session.get("https://twitter.com/realDonaldTrump", headers=headers).json()["page"] ids = re.findall(r'data-tweet-id=\"(\d+)\"', resp) for _id in ids: if not search(_id): tweet = session.get( "https://twitter.com/realDonaldTrump/status/{id}?conversation_id={id}" .format(id=_id), headers=headers).json() tweet_time_str = re.findall( r'realDonaldTrump/status/{}\" class=\"tweet-timestamp js-permalink js-nav js-tooltip\" title=\"(.*)\"\s+' r'data-conversation-id'.format(_id), tweet["page"])[0] print _id title = tweet["title"] translation = translate(tweet["title"]) tweet_time = datetime.datetime.strptime( tweet_time_str, "%H:%M %p - %d %b %Y") insert(_id, tweet["title"], translate(tweet["title"]), tweet_time_str) msg = { "content": title, "translation": translation, "time": str(tweet_time) } if post_wechat: send_msg(msg) print "###################"
def index(): if not request.form: abort(400) current_app.logger.debug(request.form) content = request.form.get('content') ret = send_msg(content) current_app.logger.debug(ret) return ret
mr7 = mrServerStatus("10.100.162.117", "MR_7") mr8 = mrServerStatus("10.100.162.119", "MR_8") mr9 = mrServerStatus("10.100.162.120", "MR_9") mr10 = mrTiaoBan("10.100.162.131", "MR_10") mr11 = mrTiaoBan("10.100.162.133", "MR_11") mr12 = mrTiaoBan("10.100.162.135", "MR_12") mr13 = mrTiaoBan("10.100.162.137", "MR_13") mrs = [mr1, mr2, mr3, mr4, mr5, mr6, mr7, mr8, mr9, mr10, mr11, mr12, mr13] title = ("%s MR Server Status:\\n" % now.strftime('%Y_%m_%d_%H_%M_%S')) message_wx0 = "Server FTP MR eNodeB Trace\\n" mrs = [trimStatus(mr) for mr in mrs] if not os.path.isdir(os.path.abspath('./log')): #若 log 文件夹不存在则创建log文件夹 os.makedirs(os.path.abspath('./log')) file = open(os.path.abspath('./log/') + '\\' + now.strftime('%Y_%m_%d_%H_%M_%S') + '.log', mode='w+', encoding='utf-8') file.write(title + '\n' + message_wx0 + '\n' + '\n'.join(mrs)) file.flush() file.close() print(title + '\n' + message_wx0 + '\n' + '\n'.join(mrs)) return title + message_wx0 + ''.join(mrs) if __name__ == '__main__': message = getServerStatus() wechat.send_msg(message) print('over!')