最近接到项目上一个需求,需要监测系统每天和每周的数据量增长情况。将数据写入到excel,并发送到企业微信项目群。
要求:日报查询出系统中各个模块增量为0的账号,周报查询出各个模块增量小于等于5的账号。
问题分析:需要查询各个专题各个模块下的数据增长情况,涉及到的数据库有三个:mongoDB(存放专题规则数据) mySql(存放模块及模块下的账号数据) es(存放采集到的数据)
总体思路如下:
使用jmeter脚本(集成到jenkins,每日定时执行),执行接口,获取昨日的增量数据和上周的增量数据,写入excel文件,接着:
1.连接mongoDB获取专题数据
conn = MongoClient('xxxxx服务器地址', xxx端口) db = conn.xxxxxx数据库 db.authenticate('xxx用户名','xxx密码') myset = db.xxxxxxx表名
通过mongoDB查询出每个专题的规则
data = myset.find({"xxxx字段名": xxxxx}) a = [] for data in data: a.append(data['ruleName']) ruleName = list(set(a)) return ruleName #返回专题的规则列表
2.连接mySql获取模块及模块下的账号数据
db = pymysql.connect( host="xxxxx服务器地址", port=端口, user="xxx