【AWS】订阅AWS论坛的RSS消息获取最新公告

背景:AWS在遇到系统升级、系统故障等问题的时候,会在其官方论坛发布通知,并同步到RSS数据库

前言:咱们在项目中遇到几回AWS的RDS出现故障致使系统受影响,当系统故障时,咱们的监控系统会发送一堆告警出来,提示数据库异常。运维

    正常来说,AWS的RDS不多出现问题,因此咱们排查问题的重心就在咱们本身的系统中,结果也没有找到问题,最后在AWS中开启技术支持才知道是RDS的问题。jsp

    其实,当RDS出现技术性故障的时候,AWS会在论坛发布通知。做为运维,咱们不但愿天天都去刷论坛查看是否有新的公告,若是有一种方式,当论坛发布通知时,自动提醒咱们就行了。为此,咱们研究了一种办法,即订阅AWS论坛的RSS,当论坛有新的通知时,RSS订阅会更新,咱们的程序定时去获取RSS最新信息便可。spa

    有了这套程序,当数据库异常时,咱们就能够判断时AWS的RDS异常致使的,仍是咱们本身的程序致使的。code

    实现代码以下:blog

    注意:RSS中的时间为UTC时间,故脚本中获取当前时间使用的是datetime.datetime.utcnow()事件

#auther by zls
#_*_coding:utf-8_*_
import feedparser
import datetime
#获取RDS论坛的通知
d = feedparser.parse('https://forums.aws.amazon.com/rss/rssannounce.jspa?forumID=60')
#解析通知
for item in d.entries:
    #获取论坛通知的发布事件
    rss_day = item.jf_date
    #获取本地事件
    local_day = datetime.datetime.utcnow().strftime('%b %d, %Y')
    #判断该通知是否为今天发布的
    if rss_day == local_day:
        #若是是今天发布的,能够定义您本身的通知方式,这里只是打印出来
        print "公告标题:%s" %(item.title)
        print "公告连接:%s" %(item.link)
        print "公告简介:%s" %(item.description)
        print "公告时间:%s" %(item.jf_date)
相关文章
相关标签/搜索