文章目录
- 1.概述
- 2.prometheus配置报警规则
- 3.alertmanager配置及部署
-
- 3.1.alertmanager配置
- 3.2.alertmanager部署
- 4.prometheus关联alertmanager
- 5.配置报警通知方式
-
- 5.1.alertmanager邮箱报警demo
- 5.2.alertmanager使用webhook(java)报警demo
- 6.总结
1.概述
上一篇文章prometheus+grafana+mtail+node_exporter实现机器负载及业务监控介绍了使用mtail和node_exporter实现的prometheus无埋点监控机器负载和业务的监控系统,本文是在其基础上实现自定义报警功能。
Prometheus+Alertmanager 的警报分为两个部分:
- 。
- 。
Alertmanager 发送通知有多种方式,其内部集成了邮箱、Slack、企业微信等三种方式,也提供了webhook的方式来扩展报警通知方式,网上也有大量例子实现对第三方软件的集成,如钉钉等。本文介绍邮件报警方式和通过使用java来搭建webhook自定义通知报警的方式。
本文内容主要分为四块:
- prometheus报警规则配置
- alertmanager配置及部署
- 关联prometheus和alertmanager
- 配置报警通知方式
2.prometheus配置报警规则
prometheus.yml属性配置
属性 | 描述 |
---|---|
scrape_interval | 样本采集周期,默认为1分钟采集一次 |
evaluation_interval | 告警规则计算周期,默认为1分钟计算一次 |
rule_files | 指定告警规则的文件 |
scrape_configs | job的配置项,里面可配多组job任务 |
job_name | 任务名称,需要唯一性 |
static_configs | 的配置选项,一般使用file_sd_configs 热加载配置 |
file_sd_configs | 的动态配置选项,使用此配置可以实现配置文件的 |
files: | 配置的服务发现的文件路径列表,支持.json,.yml或.yaml,路径最后一层支持通配符* |
refresh_interval | 中的重新加载的周期,默认5分钟 |
此处我们使用属性来设置告警文件
设置报警规则,rules/host_rules.yml
采集任务job配置config_exporter.json配置如下(其他job配置文件类似):
配置完报警规则重启prometheus,访问http://ip:9090/,点击alerts就能看到配置的报警信息了,如下:
3.2.alertmanager部署
建议下载最新版本,最新版下载地址请戳此处(可能需要翻墙),我使用的版本为alertmanager-0.20.0.linux-amd64.tar.gz,我的版本csdn下载地址请戳。
将其解压到/usr/local后,进入目录/usr/local/alertmanager-0.20.0.linux-amd64,会有个默认配置文件:alertmanager.yml,内容如下:
使用默认配置在后台启动:
查看是否启动成功:
启动后访问http://ip:9093/查看是否启动成功,点击status查看alertmanager及其配置,访问如下(我的配置有改动,请以自己页面展示为准):
来源:昵称2021
声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!
声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!