From b2780870ba72507b8a7073e9db7eec583ba754bc Mon Sep 17 00:00:00 2001 From: Wangjunqi123 Date: Tue, 13 Jun 2023 15:14:29 +0800 Subject: [PATCH] add httphandler.CPUusagerate in gala-ops plugin --- gala-ops/server/httphandler/metricdata.go | 27 ++++++++++++++++++----- gala-ops/server/router/router.go | 1 + 2 files changed, 23 insertions(+), 5 deletions(-) diff --git a/gala-ops/server/httphandler/metricdata.go b/gala-ops/server/httphandler/metricdata.go index bd5a4276..769209f0 100644 --- a/gala-ops/server/httphandler/metricdata.go +++ b/gala-ops/server/httphandler/metricdata.go @@ -2,6 +2,7 @@ package httphandler import ( "encoding/json" + "fmt" "net/http" "gitee.com/openeuler/PilotGo-plugins/sdk/logger" @@ -11,7 +12,9 @@ import ( func TargetsList(ctx *gin.Context) { // 查询prometheus监控对象列表 - bs, err := utils.Request("GET", Galaops.PromePlugin["url"].(string)+"/api/v1/query?query=up") + promurl := Galaops.PromePlugin["url"].(string) + promsq := "/api/v1/query?query=up" + bs, err := utils.Request("GET", promurl+promsq) if err != nil { logger.Error("faild to get prometheus targets: ", err) } @@ -25,8 +28,22 @@ func TargetsList(ctx *gin.Context) { ctx.JSON(http.StatusOK, data) } +func CPUusagerate(ctx *gin.Context) { + promurl := Galaops.PromePlugin["url"].(string) + start, end := Galaops.UnixTimeStartandEnd(-5) + param := map[string]string{ + //"query": `avg%20by(job)%20(gala_gopher_cpu_total_used_per%7Bjob%3D~%22192.168.75.132%22%7D)`, + "query": `avg by(job) (gala_gopher_cpu_total_used_per{job=~"192.168.75.132"})`, + "start": fmt.Sprint(start), + "end": fmt.Sprint(end), + "step": "15s", + } - - - - + urlparam := fmt.Sprintf("?query=%v&start=%v&end=%v&step=%v", param["query"], param["start"], param["end"], param["step"]) + logger.Debug(urlparam) + data, err := Galaops.QueryMetric(promurl, "query_range", urlparam) + if err != nil { + logger.Error("faild to querymetric from prometheus: ", err) + } + ctx.JSON(http.StatusOK, data) +} diff --git a/gala-ops/server/router/router.go b/gala-ops/server/router/router.go index 21eeefb6..f3ef24b0 100644 --- a/gala-ops/server/router/router.go +++ b/gala-ops/server/router/router.go @@ -20,5 +20,6 @@ func InitRouter(router *gin.Engine) { metrics := router.Group("plugin/gala-ops/api/metrics") { metrics.GET("/targets_list", httphandler.TargetsList) + metrics.GET("/cpu_usage_rate", httphandler.CPUusagerate) } } -- Gitee