Esempio n. 1
0
    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
Esempio n. 2
0
    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
Esempio n. 3
0
    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 "###################"
Esempio n. 4
0
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
Esempio n. 5
0
    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!')