You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何配置Alertmanager告警:当按端点、方法统计的错误率超阈值时触发?

当然可以!这是监控API服务稳定性的典型需求,我们可以通过Prometheus告警规则+Alertmanager配置轻松实现,而且完全能在告警内容里带上具体的端点(endpoint)和请求方法(method)信息。下面是一步步的实现方案:

1. 在Prometheus中定义告警规则

首先你需要在Prometheus的告警规则文件(通常是alerting_rules.yml,或者在prometheus.yml里通过rule_files引用)中添加针对错误率的告警规则。这里直接复用你提供的查询语句,加上阈值判断和告警上下文信息:

groups:
- name: api_error_monitoring
  rules:
  - alert: HighApiErrorRate
    # 你的错误率查询,加上10%(0.1)的阈值判断
    expr: |
      sum by (endpoint, method) (
          http_requests_received_total{code=~"5.."} / 
          http_requests_received_total
      ) > 0.1
    # 持续1分钟超过阈值才触发告警,避免瞬时波动导致的误报
    for: 1m
    # 给告警打标签,方便后续Alertmanager路由或分类
    labels:
      severity: warning
      service: api-gateway
    # 告警详情,这里直接引用endpoint和method标签,还能格式化错误率为百分比
    annotations:
      summary: "高错误率告警: {{ $labels.method }} {{ $labels.endpoint }}"
      description: |
        {{ $labels.method }} 请求 {{ $labels.endpoint }} 的错误率已达 {{ $value | humanizePercentage }},
        超过了10%的阈值,且持续时间已超过1分钟。请及时排查问题!

关键细节说明:

  • sum by (endpoint, method) 已经帮我们按端点和方法分组,所以告警会自动按这两个维度拆分,不会把所有端点的错误率混在一起;
  • {{ $labels.endpoint }} 和 {{ $labels.method }} 是Prometheus模板变量,会自动替换成当前告警对应的标签值;
  • {{ $value | humanizePercentage }} 是Prometheus的格式化函数,能把0.12这样的小数转成12%的百分比格式,让告警内容更直观;
  • for: 1m 可以根据你的业务场景调整,如果是流量波动较大的服务,改成5m能进一步减少误报。
2. 确保Alertmanager正确展示告警内容

只要你的Prometheus已经正确配置了Alertmanager地址(在prometheus.yml的alerting段配置alertmanagers),告警触发后会自动推送到Alertmanager。此时:

  • 在Alertmanager的UI中,你能看到每个告警的summary和description,里面已经包含了具体的method和endpoint;
  • 如果配置了邮件、Slack、企业微信等通知渠道,这些变量也会被正确替换,通知内容会直接显示出出问题的具体接口信息。
额外注意事项
  • 先确认你的http_requests_received_total指标确实包含endpoint和method标签,如果没有的话,需要先调整指标埋点,补上这两个标签,否则分组和告警内容都会出问题;
  • 如果你想排除某些不需要监控的端点(比如健康检查接口/healthz),可以在查询里加上过滤条件:
    sum by (endpoint, method) (
        http_requests_received_total{code=~"5..", endpoint!="/healthz"} / 
        http_requests_received_total{endpoint!="/healthz"}
    ) > 0.1
    
  • 阈值0.1可以根据业务需求修改,比如改成0.05就是5%的错误率触发告警。

内容的提问来源于stack exchange,提问作者Lorentz Vedeler

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 16:45:29