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

相关推荐
_何同学3 天前
Spring Boot 监控实战:集成 Prometheus 与 Grafana,打造全方位监控体系
spring boot·grafana·prometheus
苦逼IT运维5 天前
Jenkins 监控方案:Prometheus + Grafana 实践
jenkins·grafana·prometheus
川石课堂软件测试8 天前
Oracle 数据库:视图与索引
数据库·网络协议·nginx·http·oracle·grafana·prometheus
川石课堂软件测试8 天前
Oracle 数据库如何查询列
linux·数据库·sql·功能测试·oracle·grafana·prometheus
MasterNeverDown12 天前
.NET 微服务日志系统:Serilog + Loki + Grafana 实践指南
微服务·.net·grafana
❀͜͡傀儡师13 天前
docker安装Prometheus和Grafana 监控界面
docker·grafana·prometheus
好运连连99913 天前
ubuntu promethus+grafana监控多台服务器
linux·ubuntu·grafana
夏目&贵志14 天前
prometheus+grafana监控系统
docker·grafana·prometheus
强_子15 天前
基于 Prometheus+Alertmanager+Grafana 打造监控报警后台(四)-Grafana告警配置
服务器·grafana·prometheus
TTBIGDATA15 天前
【Ambari-Metrics监控】Grafana+Infinity快速构建DEMO-插件安装
hadoop·ambari·hdp·grafana·cdh·bigtop·ambari-metrics