Grafana
功能概述
本篇说明如何通过 Grafana 的 Infinity 数据源插件,对接 Dashboard Data API,将 HMI 标签历史数据以趋势图(Time Series)的形式呈现在 Grafana 面板中。
前置需求
- 已安装 Grafana,并具备新增 Data Source 与创建 Dashboard 的权限
- 已获取有效的 API 密钥(在左侧菜单〔Dashboard〕→〔仪表板 API 密钥〕创建),详见 Dashboard Data API
操作步骤
安装 Infinity 插件
在 Grafana 中安装 Infinity 数据源插件。
设置 Data Source
新增 Data Source
依次点击 Connections -> Data sources -> Add new data source。


选择 Infinity
在数据源类型列表中选择 Infinity。

设置 Authentication
- 类型选择:
API Key Value pair - Key 输入:
X-API-KEY - Value 输入 API 密钥

设置 Base URL
根据所使用的服务器区域输入对应的 URL:
- 全球服务区:
https://www.weincloud.net - 中国服务区:
https://www.weincloud.net.cn

设置 Security
需将前述 URL 加入允许访问的主机列表(Allowed hosts),根据所使用的服务器区域输入对应的 URL:
- 全球服务区:
https://www.weincloud.net - 中国服务区:
https://www.weincloud.net.cn

创建 Panel(Time Series)
选择 Visualization
Visualization 选择 Time series。

基础设置
Parser 选择 JQ,并带入获取标签历史数据的 API 路径:
/dashboard/api/v2/open_api/history

设置 Body
点开 Headers, Body, Request params:
- Body Type 选择:
Raw - Body Content Type 选择:
JSON

Body Content 请依据 API 文档输入对应的查询内容,示例如下:
json
{
"start": "${__from:date:iso}",
"end": "${__to:date:iso}",
"tags": [
{
"hw_key": "imhwkey",
"name": "16bit Unsigned"
}
]
}${__from:date:iso} 与 ${__to:date:iso} 分别对应 Grafana 上方的时间选择器,可通过 Grafana 直接操作查询的时间范围。


设置 Result Parsing
点击 Parsing options & Result fields:
Rows/Root输入.d.[].values,以获取每一条标签的 values 数据- Columns 需进行格式转换:
hmi_time转为Time(UNIX ms);value转为Number

复制多条 Query
单条 Query 仅能获取 1 个标签的数据,若需同时显示多个标签,需复制该条 Query 并修改其中的标签参数,以获取第 2 个标签的数据。

完成设置
在右上方点击 Save Dashboard 保存面板设置,也可先点击 Refresh 预览数据是否正确显示。
