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

如何在Grafana中配置alerting状态触发的邮件通知

Grafana告警状态邮件通知配置全流程及排障指南

一、先搞定SMTP基础配置

这是邮件能发送成功的核心前提,两种配置方式任选其一:

方式1:通过配置文件(grafana.ini)修改

找到配置文件中的[smtp]区块,替换为符合你邮箱服务商要求的参数(示例以QQ邮箱SMTP为例):

[smtp]
enabled = true
host = smtp.qq.com:587
user = your-qq-email@qq.com
password = your-authorization-code  # 注意:此处填邮箱SMTP授权码,不是账号登录密码
from_address = your-qq-email@qq.com
from_name = Grafana监控告警

修改完成后重启Grafana服务生效。

方式2:通过UI面板配置(Grafana 8.0+支持)

  1. 点击左侧菜单栏「服务器管理」→「配置」→「SMTP」
  2. 填写对应SMTP参数,勾选「启用SMTP」
  3. 点击页面底部「发送测试邮件」,输入测试邮箱,确认收到邮件后再保存配置。

二、配置告警通知策略

确保alerting状态的告警能被正确路由到邮件渠道:

  1. 进入左侧菜单栏「告警」→「通知策略」
  2. 全局邮件通知(给所有告警发邮件):
    • 点击默认策略右侧的「编辑」
    • 在「通知渠道」下拉框中选择你刚配置的邮件渠道,保存即可
  3. 特定告警邮件通知(仅给带指定标签的告警发邮件):
    • 点击「添加策略」,设置匹配条件(比如label=team:dev,匹配带有team=dev标签的告警)
    • 选择邮件通知渠道,保存策略

三、确认告警触发逻辑合规

很多时候告警显示alerting但没发邮件,是触发条件未满足:

  • 检查告警规则的「For」时长:比如设置for: 5m意味着告警需持续处于alerting状态5分钟才会触发通知,测试时可临时改为0m跳过等待
  • 确认告警状态:确保告警规则的状态是「Alerting」而非「Pending」,Pending是刚触发但未满足For时长的状态,默认不发通知
  • 查看告警历史:进入「告警」→「告警历史」,确认告警是否进入了触发通知的阶段

四、保障邮件可靠发送的技巧

  • 开启调试日志:将Grafana的log_level设为debug,查看logs/grafana.log中的SMTP相关日志,能直接定位邮件发送失败的具体原因(如认证失败、端口不通)
  • 配置重试机制:在邮件通知渠道配置页面开启「重试」,设置重试间隔(如30s)和次数(如3次),避免网络波动导致的发送失败
  • 监控通知状态:在「告警」→「通知历史」中查看每条通知的发送状态,失败条目会显示具体错误原因

五、常见坑及规避方法

  • 坑1:SMTP端口选错/被封禁
    规避:优先使用587端口(STARTTLS),25端口大多被云服务商封禁,465为SSL端口,需根据邮箱服务商要求选择
  • 坑2:用登录密码代替SMTP授权码
    规避:主流邮箱(QQ、163、Gmail)均需使用SMTP授权码而非账号登录密码,需去邮箱设置中开启SMTP服务并生成授权码
  • 坑3:通知策略未覆盖目标告警
    规避:检查通知策略的匹配条件,若告警带有特定标签,策略匹配条件需对应;或直接使用默认策略覆盖所有告警
  • 坑4:邮件被判定为垃圾邮件
    规避:设置合理的发件人名称(如「Grafana监控告警」),避免使用敏感名称;给发件域名配置SPF和DKIM记录,提升邮件可信度
  • 坑5:新旧告警系统混用
    规避:Grafana 8.0+建议使用统一告警(Unified Alerting),不要同时开启旧版Alerting,两者配置不兼容易导致异常

内容的提问来源于stack exchange,提问作者FALGUNI BHAVSAR

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.29 08:40:55