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

求Python获取Grafana已配置告警列表的示例代码

获取Grafana已配置告警列表的Python示例代码

你可以通过Grafana官方API获取已配置的告警规则列表,以下是适配Grafana 8.x及以上版本的Python示例(该版本启用了统一告警系统,API端点较旧版本有调整):

首先确保安装requests库:

pip install requests

示例代码:

import requests

# 配置你的Grafana实例信息
GRAFANA_URL = "http://your-grafana-address:3000"
API_KEY = "your-grafana-api-key"  # 需要具备读取告警规则的权限

# 构建请求头
headers = {
    "Authorization": f"Bearer {API_KEY}",
    "Content-Type": "application/json"
}

# Grafana 8+ 版本的告警规则API端点
api_endpoint = f"{GRAFANA_URL}/api/v1/provisioning/alert-rules"

try:
    # 发送GET请求获取告警列表
    response = requests.get(api_endpoint, headers=headers)
    response.raise_for_status()  # 自动捕获HTTP请求错误

    # 解析响应数据
    alert_rules = response.json()

    # 输出告警核心信息(可按需调整输出字段)
    print("已配置的告警规则列表:")
    for rule in alert_rules:
        print(f"告警ID: {rule['id']}, 名称: {rule['title']}, 当前状态: {rule['state']}")

except requests.exceptions.RequestException as e:
    print(f"请求失败: {e}")

关键说明:

  • API权限:你的API密钥需要拥有alerting:rules:read权限,否则会返回权限不足的错误
  • 版本兼容:若使用Grafana 7.x及更早版本,需改用旧告警系统的API端点/api/alerts,但旧系统已被官方弃用,建议升级至新版本
  • 扩展字段:返回的告警规则包含更多细节(如所属文件夹、告警表达式、关联通知策略等),可从rule字典中提取所需字段

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 05:31:35