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

如何便捷导出Grafana配置(如告警)以用于后续配置交付?

Grafana v8.2+ Web UI 配置批量导出方案

针对你需要导出UI中创建的配置、存入Git做自动化交付的需求,有以下几种可直接落地的操作方式:

方法1:通过Grafana HTTP API批量导出

所有UI中可配置的资源都有对应的HTTP接口可以拉取结构化数据,不需要手动拼接YAML:

  • 导出数据源:调用GET /api/datasources接口获取所有数据源配置,可通过简单脚本将返回的JSON转换为符合provisioning规范的YAML文件,直接放入数据源配置目录即可
  • 导出面板:先调用GET /api/search?query=&type=dash-db获取全量面板的UID,再逐个调用GET /api/dashboards/uid/{uid}拉取面板JSON,按面板提供程序要求的目录结构存放即可,注意保留uid字段保证后续配置更新时可匹配对应面板
  • 导出统一告警配置:v8.2+版本支持调用GET /api/v1/provisioning/alert-rules导出告警规则,通知策略、联系人点、静默规则等资源也可通过/api/v1/provisioning/下的对应接口拉取

方法2:通过官方grafana-cli工具直接导出

Grafana内置的CLI工具提供了开箱即用的导出能力,不需要额外对接API:

  • 执行命令grafana cli admin export即可批量导出所有配置,支持通过参数指定仅导出数据源、面板、告警等特定类型的资源,导出的内容默认符合provisioning的YAML格式规范,仅需少量调整即可直接使用
  • 若你使用容器部署Grafana,可直接进入容器内部执行该命令,将导出目录挂载到宿主机后即可存入Git仓库

配置交付优化建议

导出的配置可按以下固定目录结构组织,直接存入Git即可实现版本管理和自动化交付:

grafana-provisioning/
├── datasources/          # 数据源配置目录
│   └── all-datasources.yaml
├── dashboards/           # 面板配置目录
│   ├── provider.yaml     # 面板提供程序声明文件
│   └── panels/           # 所有面板JSON存放目录
│       ├── biz-monitor.json
│       └── infra-monitor.json
└── alerting/             # 告警配置目录
    └── all-alert-config.yaml

部署时将整个grafana-provisioning目录挂载到Grafana实例的/etc/grafana/provisioning路径,Grafana启动时会自动加载所有配置,无需再操作Web UI手动配置。

注意事项:

  • 导出的配置中若包含数据源密码、告警通知webhook token等敏感信息,不要直接明文存入Git,可替换为${ENV_VAR_NAME}格式的环境变量引用,Grafana provisioning原生支持自动读取对应环境变量填充
  • 单个手动导出面板时,记得勾选Export for sharing externally选项,避免出现依赖本地临时数据源UID的问题
  • 告警配置导出后需检查关联的数据源UID、通知渠道UID是否和provisioning目录下的对应资源UID保持一致,避免启动加载失败

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 05:45:02