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、图表

相关推荐
Insist7532 天前
prometheus安装部署与alertmanager邮箱告警
linux·运维·grafana·prometheus
爱敲代码的TOM3 天前
Grafana+Loki+Alloy构建企业级日志平台
grafana
linux修理工4 天前
n1 ARMbian部署Grafana
arm开发·架构·grafana
_何同学7 天前
Spring Boot 监控实战:集成 Prometheus 与 Grafana,打造全方位监控体系
spring boot·grafana·prometheus
苦逼IT运维9 天前
Jenkins 监控方案:Prometheus + Grafana 实践
jenkins·grafana·prometheus
川石课堂软件测试12 天前
Oracle 数据库:视图与索引
数据库·网络协议·nginx·http·oracle·grafana·prometheus
川石课堂软件测试12 天前
Oracle 数据库如何查询列
linux·数据库·sql·功能测试·oracle·grafana·prometheus
MasterNeverDown16 天前
.NET 微服务日志系统:Serilog + Loki + Grafana 实践指南
微服务·.net·grafana
❀͜͡傀儡师17 天前
docker安装Prometheus和Grafana 监控界面
docker·grafana·prometheus
好运连连99917 天前
ubuntu promethus+grafana监控多台服务器
linux·ubuntu·grafana