package v1 import ( "encoding/json" "git.inspur.com/sbg-jszt/cfn/cfn-schedule-agent/config/agent" "git.inspur.com/sbg-jszt/cfn/cfn-schedule-agent/internal/controller" "git.inspur.com/sbg-jszt/cfn/cfn-schedule-agent/internal/pkg/errors" "git.inspur.com/sbg-jszt/cfn/cfn-schedule-agent/internal/pkg/request" "git.inspur.com/sbg-jszt/cfn/cfn-schedule-agent/internal/service/component" "git.inspur.com/sbg-jszt/cfn/cfn-schedule-agent/internal/service/load_resource_info" "github.com/gin-gonic/gin" "io" ) func AssetInformationEntry(c *gin.Context) { body := request.GetBody(c) var rinfo = agent.AgentConfig{} err := json.Unmarshal(body, &rinfo) if err != nil { controller.FailCode(c, errors.ServerError, err, "更新资产信息失败!") return } agent.Agent = &rinfo load_resource_info.LoadAgentInfo(rinfo) controller.Success(c, "配置初始化完成") } func GetComponentInfo(c *gin.Context) { info, err := component.GetComInfo() if err != nil { controller.FailCode(c, errors.ServerError, err, "获取组件详情失败!") return } controller.Success(c, info) } func UpdateTelegrafConfig(c *gin.Context) { _, fileHeader, err := c.Request.FormFile("telegraf-config") if err != nil { controller.FailCode(c, errors.InvalidParameter, err, "请检查参数(body)是否符合要求!") return } src, err := fileHeader.Open() if err != nil { controller.FailCode(c, errors.InvalidParameter, err, "请检查参数(body)是否符合要求!") return } defer src.Close() var out []byte out, _ = io.ReadAll(src) component.UpdateTelegrafConfig(out) if err != nil { controller.FailCode(c, errors.ServerError, err, "请检查参数(body)是否符合要求!") return } controller.Success(c, "完成配置文件更新!") } func RecoverConfig(c *gin.Context) { component.RecoverConfig() controller.Success(c, "完成配置文件恢复!") }