Prometheus运维(接入PrometheusAlert 实现通讯工具告警)

前面的邮件告警虽然已经可用,但是现在大多数企业使用邮件的已经很少了,尤其这种告警类比较需要及时处理的工作,但是Prometheus在接入一些通讯工具的时候会有些问题,经常要单独部署一些接收发送的工具,这次找到了一个可以集成多个聊天工具的告警工具,就用这个工具来演示下如何进行钉钉告警,剩下的飞书机器人,企微机器人都是大同小异。

如果文章帮助到了您,请动动您发财的小手来个赞,转个发呗 嘿嘿!

1. PrometheusAlert部署

这里略过了,之前已经进行了部署,可以看前面文章或者到网上找下部署步骤,这里我就把我的docker-compose文件内容复制出来

javascript 复制代码
...
    prometheusalert-center:
        image: feiyu563/prometheus-alert:v4.9.1
        container_name: prometheus-alert-center
        hostname: prometheus-alert-center
        restart: always
        volumes:
            - /usr/local/prometheus_monitor/PrometheusAlert/app.conf:/app/conf/app.conf
            - /usr/local/prometheus_monitor/PrometheusAlert/logs:/app/logs
        ports:
            - "9223:8080"
        networks:
            - monitor_network
...

2.PrometheusAlert配置调整

ini 复制代码
root@ubuntu2204-98:~# cd /usr/local/prometheus_monitor/PrometheusAlert
root@ubuntu2204-98:/usr/local/prometheus_monitor/PrometheusAlert# vi app.conf
#---------------------↓全局配置(设置登录账号密码登)-----------------------
appname = PrometheusAlert
login_user=admin
login_password=123456
httpaddr = "0.0.0.0"
#---------------------↓告警消息全局配置,会适配到所有的告警-----------------------
#告警消息标题
title=PrometheusAlert
#钉钉告警 告警logo图标地址
logourl=https://raw.githubusercontent.com/feiyu563/PrometheusAlert/master/doc/alert-center.png
#钉钉告警 恢复logo图标地址
rlogourl=https://raw.githubusercontent.com/feiyu563/PrometheusAlert/master/doc/alert-center.png

3.接入钉钉告警

如何创建钉钉机器人请参考网上文章,有很多

ruby 复制代码
root@ubuntu2204-98:/usr/local/prometheus_monitor/PrometheusAlert# vi app.conf
#---------------------↓webhook-----------------------
#是否开启钉钉告警通道,可同时开始多个通道0为关闭,1为开启
open-dingding=1
#默认钉钉机器人地址
ddurl=https://oapi.dingtalk.com/robot/send?access_token=xxxxxxx
#是否开启 @所有人(0为关闭,1为开启)
dd_isatall=1
#是否开启钉钉机器人加签,0为关闭,1为开启
# 使用方法:https://oapi.dingtalk.com/robot/send?access_token=XXXXXX&secret=mysecret
open-dingding-secret=0

登录PrometheusAlert管理页面测试钉钉告警

null

image-20250826173536043

null

image-20250826173547116

4.配置Alertmanager使用webhook调用PrometheusAlert

ruby 复制代码
root@ubuntu2204-98:/usr/local/prometheus_monitor/alertmanager# cd
root@ubuntu2204-98:~# cd /usr/local/prometheus_monitor/alertmanager
root@ubuntu2204-98:/usr/local/prometheus_monitor/alertmanager# vi alertmanager.yml
....
  routes:
    - match:
        severity: warning
      receiver: 'web.hook.prometheusalert'  #这里改成新告警配置的名称
receivers:
  - name: 'mail'
  .......
  # 增加配置
  - name: 'web.hook.prometheusalert'
    webhook_configs:
      - url: 'http://192.168.1.98:9223/prometheusalert?type=dd&tpl=prometheus-dd&ddurl=https://oapi.dingtalk.com/robot/send?access_token=xxxx&at=手机号'

....

5.提高负载进行测试

typescript 复制代码
root@ubuntu2204-98:/usr/local/prometheus_monitor/alertmanager# for i in {1..4}; do (while true; do echo "scale=5000; 4*a(1)" | bc -l > /dev/null; done) & done
null

image-20250826180537268

null

image-20250826180639584

告警已经完成,这里告警模板我是用的默认的,大家可以进行自定义,图片呢是因为没有所以是个叹号。

到此Prometheus监控及告警基础使用就是这个意思了,剩下的就是大家自由发挥了,我也会不定期的更新一些监控方法和模板之类的。

另外对于主机状态监控这里,如果你是自建机房或者公司自己的私有环境使用Prometheus完全是可以的,但是如果你使用的是云主机我觉得更建议你使用云厂商提供的云监控,一般主机监控是免费的。但是你要多维度进行监控多种不同产品的话就需要购买云厂商产品了,这个看公司怎么决定,说白了有钱就行哈哈。

相关推荐
考虑考虑9 天前
nohup启动java程序
后端·自动化运维
东莞市云毅网络有限公司10 天前
PDF 表格抽取的三条技术路线对比:规则、库解析与版面识别
python·sqlite·自动化运维·geo·数据监测
东莞市云毅网络有限公司13 天前
用标准库做网页正文抽取:从 HTML 到结构化字段的轻量实现
python·sqlite·自动化运维·geo·数据监测
考虑考虑13 天前
docker compose V2版本新属性
运维·后端·自动化运维
东莞市云毅网络有限公司16 天前
用 SQLite FTS5 给企业知识库做问答检索原型:中文二元切分与 BM25 排序
python·sqlite·自动化运维·geo·数据监测
考虑考虑16 天前
cmd局部设置java变量
运维·后端·自动化运维
宋均浩18 天前
重跑率 31% → 6%,变更失败率 12% → 4%:CI/CD 流水线治理实战的 5 个配置
ci/cd·自动化运维·devops
考虑考虑18 天前
docker compose环境变量替换
运维·后端·自动化运维
本尊粥19 天前
网站一改版自动化脚本就废?聊聊自愈回放的完整设计
自动化运维
SkyWalking中文站20 天前
Horizon UI 1.0 正式发布:SkyWalking 新一代控制台接棒 Booster
运维·监控·自动化运维