grafana 通过自定义API获取数据

一、安装插件

安装infinity插件

二、配置数据源


三、配置图表

1、数据

这边提供一个go的demo

golang 复制代码
package main

import (
	"math/rand"
	"net/http"
	"time"

	"github.com/gin-gonic/gin"
)

func main() {
	router := gin.Default()

	rand.Seed(time.Now().Unix())
	router.GET("/api/data", func(ctx *gin.Context) {
		var data []Metric
		for i := 0; i < 10; i++ {
			data = append(data, Metric{Entity: "m1", Value: rand.Float64() * 10.0, Time: time.Now().Add(time.Duration(-i) * time.Minute).UnixMilli()})
			data = append(data, Metric{Entity: "m2", Value: rand.Float64() * 10.0, Time: time.Now().Add(time.Duration(-i) * time.Minute).UnixMilli()})
			data = append(data, Metric{Entity: "m3", Value: rand.Float64() * 10.0, Time: time.Now().Add(time.Duration(-i) * time.Minute).UnixMilli()})
		}

		ctx.JSON(http.StatusOK, data)
	})

	router.Run(":8080")
}

type Metric struct {
	Entity string      `json:"entity"`
	Value  interface{} `json:"value"`
	Time   int64       `json:"time"`
}

2、图表

相关推荐
qq_266348736 小时前
Grafana+Loki+Alloy日志采集系统-3
grafana·loki·alloy
秦渝兴14 小时前
MySQL容器部署Prometheus+Granfana全流程
grafana·prometheus
七夜zippoe15 小时前
OpenClaw 日志与调试技巧:从入门到精通
grafana·日志·调试技巧·log·openclaw
Yu_摆摆4 天前
windows部署prometheus+windows_exporter+grafana+alertmanager实现监控CPU、内存、磁盘并邮件告警
windows·grafana·prometheus
qq_266348736 天前
Grafana+Loki+Alloy日志采集系统-2
grafana·loki
qq_266348737 天前
Grafana+Loki+Alloy日志采集系统-1
grafana
Triv20257 天前
太阳能船远程信息处理:CAN数据记录 + Grafana仪表板实战案例
grafana·数据可视化·influxdb·嵌入式系统·can总线·数据采集与监控·智能船舶
cnskylee7 天前
【Grafana】Grafana大版本升级后的Visualizations迁移说明
grafana
**蓝桉**7 天前
Pushgateway的使⽤
grafana·prometheus
小李的便利店8 天前
k8s集群部署Prometheus和Grafana
kubernetes·grafana·prometheus·监控