// Package handler provides HTTP handlers for various endpoints. package handler import ( "net/http" "strconv" "modelRT/alert" "modelRT/constant" "modelRT/logger" "modelRT/network" "github.com/gin-gonic/gin" ) // QueryRealTimeDataHandler define query real time data process API func QueryRealTimeDataHandler(c *gin.Context) { var targetLevel constant.AlertLevel alertManger := alert.GetAlertMangerInstance() levelStr := c.Query("level") level, err := strconv.Atoi(levelStr) if err != nil { logger.Error(c, "convert alert level string to int failed", "error", err) resp := network.FailureResponse{ Code: http.StatusBadRequest, Msg: err.Error(), } c.JSON(http.StatusOK, resp) } targetLevel = constant.AlertLevel(level) events := alertManger.GetRangeEventsByLevel(targetLevel) resp := network.SuccessResponse{ Code: http.StatusOK, Msg: "success", PayLoad: map[string]interface{}{ "events": events, }, } c.JSON(http.StatusOK, resp) }