grafana用lark发告警python3接口

1.先在lark群聊里面创建机器人,并获取机器人链接。

2.后台运行下面python3脚本。

3.在grafana添加告警通道,设置告警。

python 复制代码
# !/usr/bin/env python
# _*_ coding: utf-8 _*_

from flask import Flask, request,jsonify
#import smtplib
#from email.mime.text import MIMEText
from datetime import datetime
import requests
import json

def send_lark(title,content):
    url = "你的lark机器人webhook地址"
    headers = {
            'Content-Type': 'application/json' 
            }
    payload_message = {
            "msg_type": "post",
            "content": {"post": {
                "zh_cn":{
                    "title":title,
                    "content":[[{
                        "tag":"text",
                        "text": content
                        }]]
                    }
                }}
            }
    response = requests.request("POST", url, headers=headers, data=json.dumps(payload_message))
    print(response)

app = Flask(__name__)

@app.route("/send_lark", methods=["POST"])
def send_mail():
    info = request.json
    print("#########:",info, type(info))
    cusname = "随便定义"
    alter_time = datetime.now().strftime("%Y-%m-%d %H:%M:%S")
    state = info['state']
    ruleName = info['ruleName']
    title=info['title']
    #message=info['message']
    metric=[]
    value=[]
    for i in range(0, len(info['evalMatches'])):
        metric.append(info['evalMatches'][i]['metric'])
        value.append(info['evalMatches'][i]['value'])
    content = """
    商户: %s
    主机: %s
    级别: %s
    规则: %s
    报警值: %s
    时间: %s
    """ % (cusname,metric,state,ruleName,value,alter_time)
    print(content)
    return jsonify(send_lark(title,content))
    #return "成功"

if __name__ == "__main__":
    app.run("0.0.0.0", "5050")
相关推荐
奔跑中的小象1 小时前
基于 nvitop+Prometheus+Grafana 的物理资源与 VLLM 引擎服务监控方案
grafana·prometheus·vllm·nvitop
全栈派森3 小时前
云存储最佳实践
后端·python·程序人生·flask
☞无能盖世♛逞何英雄☜5 小时前
Flask框架搭建
后端·python·flask
Q_Q19632884755 小时前
python的家教课程管理系统
开发语言·spring boot·python·django·flask·node.js·php
wxin_VXbishe20 小时前
springboot旅游小程序-计算机毕业设计源码76696
java·spring boot·python·spring·django·sqlite·flask
艾文伯特1 天前
Prometheus+Grafana+AlertManager完整安装过程
grafana·prometheus
发条宇1 天前
1267, “Illegal mix of collations (latin1_swedish_ci,IMPLICIT
django·flask
魔尔助理顾问2 天前
Flask如何读取配置信息
python·flask·bootstrap
hwj运维之路3 天前
k8s监控方案实践(三):部署与配置Grafana可视化平台
云原生·kubernetes·grafana
子燕若水3 天前
Flask 调试的时候进入main函数两次
后端·python·flask