Azure Status의 RSS를 닫고 Hipchat에 투고한 Python 스크립트
6965 단어 feedparserAzurePythonRSS
개요
Azure 감시 서비스를 위해 Azure status로부터 Azure 자체의 건강 상태를 확인하고 싶습니다.
다만, 푸시 알림에서 알려주지 않기 때문에 RSS를 닫고 Hipchat에 알리려고 만들었습니다.
해봤어요.
python으로 RSS를 읽으면 feedparser가 좋다고 하니 한번 써보세요.
힙합은 룸의 토큰으로restapi를 두드리는 것뿐입니다.
여러 가지 상황, 프록시를 사이에 둔 방문이기 때문에 살짝 설정해 주세요.
azure_status_notificator.py
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import requests
import json
import urllib2
import feedparser
proxies = {
"http": "hoge:8080",
"https": "hoge:8080",
}
def hipchat_post_to_room(room_id, auth_token, msg):
global proxies
data = {
"color": "red",
"message_format": "text",
"message": msg,
}
headers = {'Content-type': 'application/json', 'Accept': 'text/plain'}
request_url = "https://api.hipchat.com/v2/room/" + room_id + "/notification?auth_token=" + auth_token
return requests.post(request_url, proxies=proxies, data=json.dumps(data), headers=headers)
def get_azure_status():
global proxies
proxy = urllib2.ProxyHandler(proxies)
data = feedparser.parse("http://azure.microsoft.com/ja-jp/status/feed/", handlers = [proxy])
res = ""
for e in data["entries"]:
if e:
res += e.summary_detail.value
return res
if __name__ == "__main__":
status = get_azure_status()
room_id = "XXXXXX"
auth_token="XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
if status:
msg = "@all %s" % status
hipchat_post_to_room(room_id, auth_token, msg)
만약 아무것도 없다면, 통지하지 않기 위해 사전에 if문장을 쓰세요.참고로 힙합도 html 형식으로 투고할 수 있지만 이렇게 하면 @all과 메이크업 워터는 효과가 없기 때문에 주의해야 한다.
만약 Hipchat에 통지했다면 그중Azure status에서 링크가 있으면 바로 열기가 편리합니까?그렇게 생각하지만 이렇게 하면 형식이 다르기 때문에 두 번 투고할 필요가 있다.
이후 매 시간 정도 만들어진 스크립트를cron에 넣는다.
00 * * * * python /home/hoge/azure_status_notificator.py
완성했습니다.총결산
RSS는 평소에feedly나 지도자에게만 보이기 때문에 실체로서feedly가 어떤 데이터 n구조로 흐르는지 알 수 있는 좋은 기회이다.
RSS 아키텍처?이런 물건은 실제로 원료를 보내지 않았다면 검증하기 어려웠다.
그리고 구름을 사용하면 자신의 이 실례만 실수로 떨어졌나
또는 Azure 자체의 장애는 구분하여 고려할 필요가 있다.
그나저나 Azure 지원 프로그램 그럴 것 같아서 돈 낸다는 말도 있어요.
충실한 지원을 기대하면 가격이 많이 떨어지지 않는다.
자신이 사용하는 서비스와 AZ에만 한정하는 것이 좋습니까?이렇게 생각하다.
Reference
이 문제에 관하여(Azure Status의 RSS를 닫고 Hipchat에 투고한 Python 스크립트), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/noexpect/items/066fc2742436c53fa55b텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)