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

相关推荐
运维栈记5 天前
使用Grafana监控K8S中的异常Pod
docker·kubernetes·grafana
韩宏伟5 天前
使用 Loki + Promtail + Grafana 实现 Docker 容器日志采集与可视化
docker·容器·grafana
恋上钢琴的虫6 天前
使用 Loki + Promtail + Grafana搭建日志系统
运维·grafana
心一信息6 天前
grafana及zabbix在linux上的部署
linux·zabbix·grafana
Jabes.yang8 天前
Java求职面试: 互联网医疗场景中的缓存技术与监控运维应用
java·redis·spring security·grafana·prometheus·oauth2·互联网医疗
K_i1348 天前
负载均衡:运维高可用的核心技术
负载均衡·grafana·prometheus
电话交换机IPPBX-3CX9 天前
Grafana图表与电话交换机的结合
数据库·mysql·grafana·ip pbx·电话交换机
神秘人X7079 天前
Docker监控:cAdvisor+Prometheus+Grafana实战指南
docker·grafana·prometheus
维尔切10 天前
Docker 监控平台部署
运维·docker·容器·grafana·prometheus
散一世繁华,颠半世琉璃21 天前
Prometheus+Grafana轻松实现SpringBoot应用监控
spring boot·grafana·prometheus