PrometheusAlert 简介

PrometheusAlert是开源的运维告警中心消息转发系统,支持主流的监控系统Prometheus,日志系统Graylog和数据可视化系统Grafana发出的预警消息,支持将收到的这些消息发送到钉钉,短信和语音电话提醒等


PrometheusAlert具备如下特性

  • 支持多种消息来源,目前主要有prometheus,graylog,grafana
  • 支持多种类型的发送目标,支持钉钉,短信,语音
  • 针对Prometheus增加了告警级别,并且支持按照不同级别发送消息到不同目标对象
  • 简化Prometheus分组配置,支持按照具体消息发送到单个或多个接收方
  • 增加手机号码配置项,和号码自动轮询配置,可固定发送给单一个人告警信息,也可以通过自动轮询的方式发送到多个人员且支持按照不同日期发送到不同人员

部署方式

PrometheusAlert可以部署在本地和云平台上,支持windows、linux、公有云、私有云、混合云、容器和kubernetes。你可以根据实际场景或需求,选择相应的方式来部署PrometheusAlert:

  • 使用容器部署
docker run -d -p 8080:8080 --name prometheusalert-center feiyu563/prometheus-alert:latest
  • 在linux系统中部署
git clone https://github.com/feiyu563/PrometheusAlert.git
cd PrometheusAlert/example/linux/
./PrometheusAlert #后台运行请执行nohup ./PrometheusAlert &
  • 在windows系统中运行
git clone https://github.com/feiyu563/PrometheusAlert.git
cd PrometheusAlert/example/windows/
双击运行 PrometheusAlert.exe即可
  • 在kubernetes中运行
kubectl app -f https://raw.githubusercontent.com/feiyu563/PrometheusAlert/master/example/kubernetes/PrometheusAlert-Deployment.yaml

配置说明


PrometheusAlert 暂提供以下三个接口,分别对应各自接入端

  • prometheus接口 /prometheus/alert
  • grafana接口 /grafana/alert
  • graylog接口 /graylog/alert

1. Prometheus 接入配置

在 Prometheus Alertmanager 中启用 Webhook,可参考如下模板:

global:resolve_timeout: 5m
route:group_by: ['instance']group_wait: 10mgroup_interval: 10srepeat_interval: 10mreceiver: 'web.hook.prometheusalert'
receivers:
- name: 'web.hook.prometheusalert'webhook_configs:- url: 'http://[prometheusalert_url]:8080/prometheus/alert'

Prometheus Server 的告警rules配置,可参考如下模板:

groups:1. name: node_alertrules:2. alert: 主机CPU告警expr: node_load1 > 3labels:severity: warningannotations:description: "{{ $labels.instance }} CPU load占用过高"  #告警信息summary: "{{ $labels.instance }} CPU load占用过高已经恢复"  #告警恢复信息level: 3   #告警级别,告警级别定义 0 信息,1 警告,2 一般严重,3 严重,4 灾难mobile: 15888888881,15888888882,15888888883  #告警发送目标手机号(需要设置电话和短信告警级别)ddurl: "https://oapi.dingtalk.com/robot/send?access_token=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx,https://oapi.dingtalk.com/robot/send?access_token=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" #支持添加多个钉钉告警,用,号分割即可,如果留空或者未填写,则默认发送到配置文件中填写的钉钉地址

最终告警效果:


2. Grafana 接入配置

打开grafana管理页面,登录后进入notification channels配置


注意这里的url地址填写上自己部署所在的url

配置完成后保存即可.继续进行告警消息配置,选择任意一个折线图,点击编辑,进入aler配置,配置参考下图:

Notifications配置格式参考,支持配置多个钉钉机器人url:

告警消息内容&&ddurl[钉钉机器人url,钉钉机器人url....]

最终告警效果:


3. Graylog 接入配置
打开Graylog管理页面,登录后进入Alerts配置


点击Add new notification创建新的告警通道,选择如下图配置:

在弹出的窗口中填入名称和对应的PrometheusAlert的地址即可,配置参考下图:

配置完成后,点击Test测试下是否能够正常接收告警消息即可

最终告警效果:


4. 配置文件解析

短信告警和语音告警均使用的是腾讯云的短信和语音提醒接口,具体参数获取可去腾讯云开通相关服务即可

appname = PrometheusAlert
#监听端口
httpport = 8080
runmode = dev
#开启JSON请求
copyrequestbody = true
#钉钉机器人地址
ddurl=https://oapi.dingtalk.com/robot/send?access_token=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
#告警消息标题
title=NB云平台
#点击告警消息后链接到告警平台地址
alerturl=http://prometheus.haima.me
#告警消息中显示的logo图标地址
logourl=https://raw.githubusercontent.com/feiyu563/PrometheusAlert/master/doc/haima.png
#腾讯短信接口key
appkey=e710521xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
#腾讯短信模版ID
tpl_id=14386
#腾讯短信sdk app id
sdkappid=14000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
#短信告警级别(等于3就进行短信告警) 告警级别定义 0 信息,1 警告,2 一般严重,3 严重,4 灾难
messagelevel=3
#腾讯电话接口key
phonecallappkey=c24xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
#腾讯电话模版ID
phonecalltpl_id=29xxxxx
#腾讯电话sdk app id
phonecallsdkappid=1400xxxxxx
#电话告警级别(等于4就进行语音告警) 告警级别定义 0 信息,1 警告,2 一般严重,3 严重,4 灾难
phonecalllevel=4
#默认拨打号码,默认不配置,如果配置了此项,那么按照user.csv文件轮询的方式将自动失效
#defaultphone=

另外 PrometheusAlert 同时支持按照日期发送告警到不同号码,只需新建user.csv文件,并将文件放到程序运行目录下即可自动加载,csv文件格式如下:

2019年4月10日,15888888881,a
2019年4月11日,15888888882,b
2019年4月12日,15888888883,c
2019年4月13日,15888888884,d
2019年4月14日,15888888885,e
2019年4月15日,15888888886,f
2019年4月16日,15888888887,g
2019年4月17日,15888888888,h
2019年4月18日,15888888889,i
2019年4月19日,15888888810,g
2019年4月20日,15888888811,k
2019年4月21日,15888888812,l
2019年4月22日,15888888813,zhangsan
2019年4月23日,15888888814,lilei

项目源码

  • PrometheusAlert

FOR HELP


Email: 244217140@qq.com

prometheus grafana graylog 钉钉告警 短信告警 电话告警系统 PrometheusAlert相关推荐

  1. Prometheus和Grafana告警服务创建与对接腾讯云短信告警平台(prometheus_alert)

    前言 在一个监控系统中,如果说数据链路是她的骨架,那么告警通知服务就是他的灵魂!所有的监控服务都是为了能够及时通知出来,减少人工查询状态,及时发现问题,避免不必要的大规模故障,为企业政府省钱,和保证安 ...

  2. prometheus 阿里云短信告警

    prometheus + alertmanager + PrometheusAlert 要达到的效果 , 短信告警 + 解除告警 (可以自定义内容) 一.阿里云短信签名及模板设置 有4个信息 Acce ...

  3. Prometheus如何集成免费电话和短信告警

    Prometheus是一个运维小伙伴都经常使用的开源系统监控和告警工具包,目前主要用于大规模的云端环境和容器化微服务(k8s)的监控.因具其有强大的多维度数据模型.可设置任意的多维标签.易于管理.多种 ...

  4. zabbix3调用接口发送短信告警

    一.需求 之前使用的邮件告警,由于经常会忽略邮件,所以有时候告警查看的并不及时,所以增加短信告警的,以便及时处理. 二.zabbix-server端的配置 # 需要在zabbix-server端打开A ...

  5. Zabbix如何配置告警短信?(预警短信通知设置流程)

    zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案.zabbix能监视各种网络参数,保证服务器系统的安全运营:并提供灵活的通知机制以让系统管理员快速定位/解决存 ...

  6. Zabbix如何配置告警短信?

    zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案.zabbix能监视各种网络参数,保证服务器系统的安全运营:并提供灵活的通知机制以让系统管理员快速定位/解决存 ...

  7. centos7 zabbix短信告警(阿里短信平台)

    zabbix使用短信告警高效.快捷,本次做个记录 一.zabbix服务器安装 https://blog.csdn.net/oToyix/article/details/106853849 二.zabb ...

  8. zabbix3.0 安装方法,一键实现短信、电话、微信、APP 告警

    引言 免费开源监控工具 Zabbix 因其强大的监控功能得到各大互联网公司的广泛认可,具体功能不再详细介绍,在之前发布的 Zabbix 2.4.1 安装及微信短信提醒已经做了详细介绍,本篇主要对 Za ...

  9. linux发送短信的脚本,编写脚本实现服务器登录短信告警

    编写脚本实现服务器登录短信告警 2017-9-27 杰克 运维 在服务器运维中,很多时候我们不可能24小时盯着屏幕上的各种参数及警告值.于是配置各种告警方式成了我们及时掌握服务器各种状况的有力工具.在 ...

最新文章

  1. linux 处理 BOM头 ^M 方法
  2. yunyang tensorflow-yolov3 NMS:non maximum suppression 非极大值抑制方法
  3. webstorm卡顿问题
  4. 怎样快速更新已安装的软件?
  5. mysql lock not wait_【MySQL】关于MySQL出现lock wait timeout exceeded 的解决方案
  6. 计算机视觉入门和进阶学习
  7. fork()和多线程
  8. 10本经典励志书籍推荐
  9. 程序化广告(2):程序化广告的参与者
  10. FreeRTOS中多种信号量
  11. c语言ifmn除2余1,C语言编程题及答案 2
  12. 使用Visio 2013 画跨职能流程图
  13. 海思芯片中VI的DEV和chan的概念
  14. 传感器的使用,高仿微信摇一摇,动画加声音
  15. ppython3 关于agg函数的用法(一般与groupby函数连用)
  16. C++ Socket连续传输Json Base64 imencode编码的图片
  17. 华为面试题错题集总结,你的Java基础过关了吗?
  18. 关于C++的动态内存分配
  19. 向量相似度java_计算一组向量相似度
  20. 易优CMS瓜果蔬菜农业种植基地网站模板源码+带WAP

热门文章

  1. java工厂模式三种详解(部分转载)
  2. LifeKeeper 操作规程及注意事项
  3. 关于使用多普达windows mobile 手机使用联通卡不能上网的问题
  4. HTML超链接标签——a标签、锚点、base标签、假链接标签
  5. 企鲸客SCRM免费赠送企业微信考勤机
  6. 吕鑫MFC学习系列九
  7. java小说目录提取_完整Java爬取起点小说网小说目录以及对应链接
  8. #今日论文推荐#掰开揉碎一篇Molecular Cancer文章来看circRNA的RBP机制研究是如何展开的
  9. 舆情监测技术手段有哪些,网络舆情监测监测技术应用到哪些方面?
  10. 常用的舆情监测技术分享