python统计mysql数据量变化并调用接口告警的示例代码


Posted in Python onSeptember 21, 2020

统计每天的数据量变化,数据量变动超过一定范围时,进行告警。告警通过把对应的参数传递至相应接口。

python程序如下

#!/usr/bin/python
# coding=utf-8
import pymysql as mdb
import os
import sys
import requests
import json


tar_conn = mdb.connect(host='192.168.56.128',port=3306,user='xxx',passwd='xxx123',db='bak_db')
tar_cur = tar_conn.cursor()

v_sql_dt =" SELECT DATE_FORMAT(CURRENT_DATE(),'%Y-%m-%d')t1 ,DATE_FORMAT(SUBDATE(CURRENT_DATE(),INTERVAL 1 DAY),'%Y-%m-%d')t2,DATE_FORMAT(SUBDATE(CURRENT_DATE(),INTERVAL 1 WEEK),'%Y-%m-%d')t3,DATE_FORMAT(SUBDATE(CURRENT_DATE(),INTERVAL 1 MONTH),'%Y-%m-%d %H:%i:00')t4"
v_extract_rows=tar_cur.execute(v_sql_dt)
v_res=tar_cur.fetchone()
v_dt1=v_res[0]
v_dt2=v_res[1]
v_dt3=v_res[2]
v_dt4=v_res[3]

print v_dt1,v_dt2,v_dt3,v_dt4
#v_start_time='2020-09-10'
#v_end_time='2020-09-11'
def get_cnt(v_dt):

 v_sql1="select tb_rows from bak_db.tb_size where dt='%s';"%(v_dt)

 v_extract_rows=tar_cur.execute(v_sql1)
 v_res=tar_cur.fetchone()
 v_cnt1=v_res[0]

 return(v_cnt1)

(v_cnt_now)=get_cnt(v_dt1)
(v_cnt_1d)=get_cnt(v_dt2)
(v_cnt_1w)=get_cnt(v_dt3)
(v_cnt_1m)=get_cnt(v_dt4)

def f_notify(v_cnt_now,v_cnt_before,v_message):
 v_rate1=abs(((v_cnt_before-v_cnt_now)*1.00/v_cnt_before*1.00)*100)

# print v_rate1,v_rate2
 if (v_rate1>100 ) and (v_cnt_now>500 or v_cnt_before>500) :
  v_level=1
  v_list=[v_message,',','当前量:',str(v_cnt_now),',','前期量:',str(v_cnt_before)]
  v_message1=''.join(v_list)
  print v_message1
  url = 'http://192.168.56.128:9000/api/v1/alarm'        # 接口地址
  body ={"level": v_level, "group": ["dba"], "msg": {"content": v_message1}} 
  headers = {'content-type': "application/json"}        # 如有认证信息,添加认证信息即可,例如'Authorization': 'APP appid = xxx,token = xxxxxxxxxxxxxxxx'
  response = requests.post(url, data = json.dumps(body), headers = headers) # body是json格式的,用 json.dumps(body)方式进行处理
  print response.text
  print response.status_code
   

f_notify(v_cnt_now,v_cnt_1d,'数据量与前一天相比波动超过100%')
f_notify(v_cnt_now,v_cnt_1w,'数据量与前一周相比波动超过100%')
f_notify(v_cnt_now,v_cnt_1m,'数据量与前一月相比波动超过100%')



tar_conn.close()

以上就是python统计mysql数据量变化并调用接口告警的示例代码的详细内容,更多关于python统计mysql数据量变化的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Python实现图片滑动式验证识别方法
Nov 09 Python
Python编程scoketServer实现多线程同步实例代码
Jan 29 Python
Python实现的简单排列组合算法示例
Jul 04 Python
Python Dataframe 指定多列去重、求差集的方法
Jul 10 Python
Pytorch.nn.conv2d 过程验证方式(单,多通道卷积过程)
Jan 03 Python
Django自关联实现多级联动查询实例
May 19 Python
如何在Python3中使用telnetlib模块连接网络设备
Sep 21 Python
python 匿名函数与三元运算学习笔记
Oct 23 Python
python+excel接口自动化获取token并作为请求参数进行传参操作
Nov 10 Python
基于Python的图像阈值化分割(迭代法)
Nov 20 Python
python爬虫筛选工作实例讲解
Nov 23 Python
Python的logging模块基本用法
Dec 24 Python
python3.8动态人脸识别的实现示例
Sep 21 #Python
如何在Anaconda中打开python自带idle
Sep 21 #Python
Python 实现国产SM3加密算法的示例代码
Sep 21 #Python
python如何实现DES加密
Sep 21 #Python
如何从csv文件构建Tensorflow的数据集
Sep 21 #Python
python打包多类型文件的操作方法
Sep 21 #Python
python 星号(*)的多种用途
Sep 21 #Python
You might like
浅析PHP水印技术
2007/02/14 PHP
PHP 文件编程综合案例-文件上传的实现
2013/07/03 PHP
国产PHP开发框架myqee新手快速入门教程
2014/07/14 PHP
PHP7扩展开发之基于函数方式使用lib库的方法详解
2018/01/15 PHP
js实现的仿新浪微博完美的时间组件升级版
2011/12/20 Javascript
Array.prototype.concat不是通用方法反驳[译]
2012/09/20 Javascript
jQuery防止click双击多次提交及传递动态函数或多参数
2014/04/02 Javascript
jQuery实现折线图的方法
2015/02/28 Javascript
基于ajax实现文件上传并显示进度条
2015/08/03 Javascript
javascript中for/in循环及使用技巧
2015/09/01 Javascript
jquery+ajax实现直接提交表单实例分析
2016/06/17 Javascript
微信小程序 欢迎页面的制作(源码下载)
2017/01/09 Javascript
Node.js制作简单聊天室
2017/01/12 Javascript
xmlplus组件设计系列之网格(DataGrid)(10)
2017/05/05 Javascript
JavaScript之浏览器对象_动力节点Java学院整理
2017/07/03 Javascript
使用D3.js制作图表详解
2017/08/13 Javascript
jQuery实现打开网页自动弹出遮罩层或点击弹出遮罩层功能示例
2017/10/19 jQuery
解析vue data不可以使用箭头函数问题
2018/07/03 Javascript
vue中的适配px2rem示例代码
2018/11/19 Javascript
JS html事件冒泡和事件捕获操作示例
2019/05/01 Javascript
es6中比较有用的7个技巧小结
2019/07/12 Javascript
python使用分治法实现求解最大值的方法
2015/05/12 Python
python中根据字符串调用函数的实现方法
2016/06/12 Python
深入解析Python中的__builtins__内建对象
2016/06/21 Python
python3使用requests模块爬取页面内容的实战演练
2017/09/25 Python
H5调用相机拍照并压缩图片的实例代码
2017/07/20 HTML / CSS
12岁生日感言
2014/01/21 职场文书
如何编写优秀的食品项目创业计划书
2014/01/23 职场文书
2014年社区植树节活动方案
2014/02/28 职场文书
纠风工作实施方案
2014/03/15 职场文书
售后客服工作职责
2014/06/16 职场文书
合作协议书格式
2014/08/19 职场文书
护士个人年终总结
2015/02/13 职场文书
2016年党员公开承诺书格式范文
2016/03/24 职场文书
2016年百日安全生产活动总结
2016/04/06 职场文书
gojs实现蚂蚁线动画效果
2022/02/18 Javascript