使用 Grafana 请求API接口

本文介绍了如何利用Grafana的JSONAPI插件,结合Docker环境,从指定的API接口获取基金数据并进行可视化展示。通过配置数据源、选择Table类型的面板,对数据进行JSONata表达式处理(如乘以10),展示基金的总净值。此外,还提到可通过Transform模块解析整个JSON数据的详细字段。

2025-02-12 更新: 使用grafana v11 建立k线(蜡烛图)仪表板-优快云博客

目的: 使用Grafana  配合JSON API 插件 请求API接口,完成可视化,实现一些简单的请求功能

 假设我们想将如下的API接口返回的json数据可视化

这里借用一下 小熊同学的 金融数据接口

用请求如下接口举例

https://api.doctorxiong.club/v1/fund/detail?code=000001&startDate=2023-01-19

返回的数据如下:

{
    "code": 200,
    "message": "操作成功",
    "data":
    {
        "code": "000001",
        "name": "华夏成长混合",
        "type": "混合型-灵活",
        "netWorth": 1.0160,
        "expectWorth": 1.0156,
        "totalWorth": 3.5790,
        "expectGrowth": "-0.03",
        "dayGrowth": "0.0",
        "lastWeekGrowth": "2.8340",
        "lastMonthGrowth": "3.97",
        "lastThreeMonthsGrowth": "-4.96",
        "lastSixMonthsGrowth": "-4.88",
        "lastYearGrowth": "-7.55",
        "buyMin": "10",
        "buySourceRate": "1.50",
        "buyRate": "0.15",
        "manager": "王泽实",
        "fundScale": "31.48亿",
        "netWorthDate": "2023-01-20",
        "expectWorthDate": "2023-01-20 15:00:00",
        "netWorthData":
        [
            [
                "2023-01-19",
                "1.016",
                "1.3",
                ""
            ],
            [
                "2023-01-20",
                "1.016",
                "0.0",
                ""
            ]
        ],
        "totalNetWorthData":
        [
            [
                "2023-01-19",
                "3.579"
            ],
            [
                "2023-01-20",
                "3.579"
            ]
        ]
    }
}

环境如下:

docker 19.03之后的版本应该都可以

docker --version
Docker version 20.10.17, build 100c701

Grafana 镜像 9.30 版本,理论上 Grafana>=7.3 就可以

docker pull grafana/grafana:9.3.0-ubuntu

1. 安装 JSON API 这个插件

2. 配置数据源

添加一个 JSON API 数据源.

在 URL中输入:  

https://api.doctorxiong.club/v1

点击 Save & test,不用理会以下的内容

3. 添加panel 开始可视化

可视化类型选择 Table

假设我们想显示其中的 data.totalWorth,且想将 data.totalWorth的值乘以10,则按照以下操作进行

Field 这里设置显示的字段

data.totalWorth*10 JSONata Auto bbb

data.totalWorth JSONata Auto

这里第一行代表使用 JSONata 类型的数据来处理.然后将 data.totalWorth的值乘以(必须为数值类型才可以做算术运算) 10,将列设置别名为 bbb

Path 方法选择 GET, path填写 /fund/detail

Parmas 填写:

code: 000001

startDate: 2023-01-19

 然后就会有以下的可视化效果.

补充说明.如果要显示整个Json的data部分,即

Field 里面填写 data

 那么你会看到Table 里面是一个 对象

我们可以用 Transform 变形模块里面的 Extract fields 解压全部字段,(Grafana 高版本比如9.3 才有 Transform)

 这就可以看到全部字段的数据了.

 完结撒花

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值