控制板 JSON 模型 - Amazon Managed Grafana

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

控制板 JSON 模型

本文档主题专为支持 Grafana 版本 10.x 的 Grafana 工作空间而设计。

有关支持 Grafana 9.x 版本的 Grafana 工作空间,请参阅。在 Grafana 版本 9 中工作

有关支持 Grafana 8.x 版本的 Grafana 工作空间,请参阅。在 Grafana 版本 8 中工作

Grafana 中的仪表板由 JSON 对象表示,该对象存储其仪表板的元数据。仪表板元数据包括仪表板属性、面板中的元数据、模板变量和面板查询。

查看仪表板的 JSON
  1. 导航到仪表板。

  2. 在顶部导航菜单中,选择仪表板设置(齿轮)图标。

  3. 选择 JSON 模型

json 字段

当用户创建新的仪表板时,将使用以下字段初始化新的仪表板 JSON 对象。

注意

在以下 JSON 中,id 显示为空,这是在保存仪表板之前分配给它的默认值。保存仪表板后,会为该id字段分配一个整数值。

{ "id": null, "uid": "cLV5GDCkz", "title": "New dashboard", "tags": [], "timezone": "browser", "editable": true, "graphTooltip": 1, "panels": [], "time": { "from": "now-6h", "to": "now" }, "timepicker": { "time_options": [], "refresh_intervals": [] }, "templating": { "list": [] }, "annotations": { "list": [] }, "refresh": "5s", "schemaVersion": 17, "version": 0, "links": [] }

以下内容描述了仪表板 JSON 中的每个字段。

名称 使用量

id

仪表板的唯一数字标识符(由数据库生成)

uid

任何人都可以生成的唯一仪表板标识符。string (8-40)

title

仪表板的当前标题

tags

与仪表板关联的标签,字符串数组

style

仪表板的主题,例如darklight

timezone

仪表板的时区,例如或 utc browser

editable

仪表板是否可编辑

graphTooltip

0 表示没有共享十字准线或工具提示(默认),1 表示共享十字准线,2 表示共享十字准线和共享工具提示

time

仪表板的时间范围,例如last 6 hourslast 7 days

timepicker

timepicker 元数据,详情请参阅 timepic ker 部分

templating

模板化元数据,详情参见模板部分

annotations

注释元数据,请参阅注释了解如何添加它们

refresh

自动刷新间隔

schemaVersion

JSON 架构的版本(整数),每当 Grafana 更新对该架构进行更改时都会递增

version

仪表板的版本(整数),每次更新仪表板时都会递增

panels

面板阵列(详情请参阅下一节)

面板

面板是仪表板的基石。它由数据源查询、图表类型、别名等组成。面板 JSON 由一组 JSON 对象组成,每个对象代表不同的面板。大多数字段对于所有面板都是通用的,但有些字段取决于面板类型。以下是文本面板的面板 JSON 示例。

"panels": [ { "type": "text", "title": "Panel Title", "gridPos": { "x": 0, "y": 0, "w": 12, "h": 9 }, "id": 4, "mode": "markdown", "content": "# title" }

面板尺寸和位置

GridPos 属性以网格坐标描述面板的大小和位置。

  • w— 1 到 24(仪表板的宽度分为 24 列)

  • h— 以网格高度为单位,每个单位表示 30 像素。

  • x— x 位置,单位与相同w

  • y— y 位置,单位与相同h

网格具有负重力,如果面板上方有空白空间,则会向上移动面板。

Timepicker

"timepicker": { "collapse": false, "enable": true, "notice": false, "now": true, "refresh_intervals": [ "5s", "10s", "30s", "1m", "5m", "15m", "30m", "1h", "2h", "1d" ], "status": "Stable", "type": "timepicker" }

模板化

templating字段包含一组模板变量及其保存的值以及一些其他元数据。

"templating": { "enable": true, "list": [ { "allFormat": "wildcard", "current": { "tags": [], "text": "prod", "value": "prod" }, "datasource": null, "includeAll": true, "name": "env", "options": [ { "selected": false, "text": "All", "value": "*" }, { "selected": false, "text": "stage", "value": "stage" }, { "selected": false, "text": "test", "value": "test" } ], "query": "tag_values(cpu.utilization.average,env)", "refresh": false, "type": "query" }, { "allFormat": "wildcard", "current": { "text": "apache", "value": "apache" }, "datasource": null, "includeAll": false, "multi": false, "multiFormat": "glob", "name": "app", "options": [ { "selected": true, "text": "tomcat", "value": "tomcat" }, { "selected": false, "text": "cassandra", "value": "cassandra" } ], "query": "tag_values(cpu.utilization.average,app)", "refresh": false, "regex": "", "type": "query" } ] }

下表描述了模板字段的用法。

名称 使用量

enable

模板是否已启用

list

一个由对象组成的数组,每个对象代表一个模板变量

allFormat

从数据源获取所有值时使用的格式,包括、wildcardglobregexpipe

current

在仪表板上显示当前选定的变量文本/值

datasource

显示变量的数据源

includeAll

“所有值” 选项是否可用

multi

是否可以从变量值列表中选择多个值

multiFormat

从数据源获取时间序列时使用的格式

name

变量的名称

options

可在仪表板上选择的可变文本/值对数组

query

用于获取变量值的数据源查询

refresh

配置何时刷新变量

regex

提取系列名称或指标节点段的一部分

type

变量的类型customquery、或 interval