[发明专利]一种基于Prometheus的告警方法、装置和系统在审
申请号: | 202211451052.1 | 申请日: | 2022-11-18 |
公开(公告)号: | CN115733732A | 公开(公告)日: | 2023-03-03 |
发明(设计)人: | 贾永鹏 | 申请(专利权)人: | 新浪技术(中国)有限公司 |
主分类号: | H04L41/0631 | 分类号: | H04L41/0631;H04L41/0894;H04L43/08 |
代理公司: | 北京卓岚智财知识产权代理有限公司 11624 | 代理人: | 张旭东 |
地址: | 100193 北京市海淀区东北旺西路中关村软件园二*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 prometheus 告警 方法 装置 系统 | ||
本发明实施例提供基于Prometheus的告警方法,包括:从数据库中读取并加载所有告警规则;按预设时间间隔周期性地调用Prometheus应用程序接口API执行所述告警规则,根据所述告警规则的执行情况更新告警状态,并且针对告警状态为已告警的告警规则生成对应的告警信息;在分布式告警系统提供的分布式资源锁的约束下,向预设的告警信息接收方发送所有告警信息,并将所述告警信息写入数据库。
技术领域
本发明涉及分布式告警领域,尤其涉及一种基于Prometheus的告警方法、装置和系统。
背景技术
Prometheus是一个开源的系统监控和告警系统,现有的Prometheus系统中,Prometheus服务只能读取存放在Prometheus服务器本地的告警规则配置文件,如果部署多个Prometheus服务副本,每个副本都必须有自己的告警规则配置文件,而且每个副本都是独立的发出告警,可能出现同一个告警规则触发多个Prometheus副本发出告警。Prometheus系统无法进行分布式部署,无法容器化部署,告警规则配置文件依赖于部署的Prometheus服务器。
在实现本发明过程中,申请人发现现有技术中至少存在如下问题:
基于Prometheus的告警系统无法进行分布式部署,无法容器化部署,告警规则配置文件依赖于部署的Prometheus服务器。
发明内容
本发明实施例提供一种基于Prometheus的告警方法、装置和系统,解决了基于Prometheus的告警系统无法进行分布式部署,无法容器化部署,告警规则配置文件依赖于部署的Prometheus服务器的问题。
为达上述目的,一方面,本发明实施例提供一种基于Prometheus的告警方法,由基于Prometheus的告警装置执行,所述方法包括:
从数据库中读取并加载所有告警规则;
按预设时间间隔周期性地调用Prometheus应用程序接口API执行所述告警规则,根据所述告警规则的执行情况更新告警状态,并且针对告警状态为已告警的告警规则生成对应的告警信息;
在分布式告警系统提供的分布式资源锁的约束下,向预设的告警信息接收方发送所有告警信息,并将所述告警信息写入数据库;
其中,在所述分布式告警系统中分布式部署有至少一个所述基于Prometheus的告警装置;所述数据库由所述至少一个所述基于Prometheus的告警装置共享访问;所述分布式资源锁用于在同一时间仅允许一个所述基于Prometheus的告警装置发送所述告警信息。
进一步地,所述从数据库中读取并加载所有告警规则,包括:
从所述数据库中读取所有告警规则和各告警规则对应的告警规则标识;
根据各告警规则对应的所述告警规则标识将所有告警规则划分到至少一个告警规则组。
进一步地,所述根据各告警规则对应的所述告警规则标识将所有告警规则划分到至少一个告警规则组,包括:
针对每个告警规则标识,将所述告警规则标识输入给Hash散列算法得到所述告警规则标识对应的散列结果;
将散列结果相同的告警规则标识对应的告警规则设置为同一个告警规则组。
进一步地,所述方法还包括:
从预设的告警规则管理API接收到针对指定告警规则的管理操作的情况下,根据所述管理操作更新所述数据库中的所述指定告警规则,并将所述指定告警规则的告警规则标识和所述管理操作的类型写入消息队列;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于新浪技术(中国)有限公司,未经新浪技术(中国)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211451052.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:虚拟模型渲染方法、装置、计算机设备及存储介质
- 下一篇:一种升降桌快装桌架