背景
-
Grafana 目前对国内主流的消息通知渠道兼容性一般,因此可以考虑结合使用国产的 PrometheusAlert
-
PrometheusAlert是开源的运维告警中心消息转发系统,支持主流的监控系统Prometheus、Zabbix,日志系统Graylog2,Graylog3、数据可视化系统Grafana、SonarQube。阿里云-云监控,以及所有支持WebHook接口的系统发出的预警消息,支持将收到的这些消息发送到钉钉,微信,email,飞书,腾讯短信,腾讯电话,阿里云短信,阿里云电话,华为短信,百度云短信,容联云电话,七陌短信,七陌语音,TeleGram,百度Hi(如流)等。
-
https://github.com/feiyu563/PrometheusAlert
-
采用go开发,beego 框架运行,底层默认采用本地 sqllite3 存储数据
安装步骤
- 官方参考文档: https://feiyu563.gitbook.io/prometheusalert
-
安装
cd /home/work/software wget https://github.com/feiyu563/PrometheusAlert/releases/download/v4.9.1/linux.zip && unzip linux.zip mv linux prometheusAlert #运行PrometheusAlert # ./PrometheusAlert (#后台运行请执行 nohup ./PrometheusAlert &) #启动后可使用浏览器打开以下地址查看:http://127.0.0.1:8080 #默认登录帐号和密码在app.conf中有配置 #默认端口号也可以在app.conf中有配置
- 注册成一个服务
vim /etc/systemd/system/prometheus-alert.service # 内容如下 [Unit] Description=Prometheus Alert After=network.target [Service] Type=simple User=work WorkingDirectory=/home/work/software/prometheusAlert/ ExecStart=/home/work/software/prometheusAlert/PrometheusAlert Restart=on-failure [Install] WantedBy=multi-user.target
-
Tips: 主动设置 WorkingDirectory 是为了解决某些 beego 程序默认到工作目录寻找文件,因此必须指定工作目录,或者使用 ./PrometheusAlert 来启动。
-
管理
sudo systemctl daemon-reload sudo systemctl start prometheus-alert
-
配置 - 以配置 Grafana 告警通知到飞书渠道为例
- 登录 PrometheusAlert 控制台后,在模板管理页面找到 grafana-fs ,此时的 url 就是 PrometheusAlert 自身提供的 webhook。
- 登录 Grafana 控制台,添加告警联络点,类型选择 webhook ,URL 填写在 PrometheusAlert 控制台 grafana-fs 的 url 地址即可。