12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- package datacenter_client
- import (
- "encoding/json"
- "errors"
- "fmt"
- "log"
- "metawant.greentech.com.cn/gaoyagang/gt-common/httplib"
- )
- type ItemHistoryReq struct {
- ServerIp string
- ProjectId string
- ItemName string
- Stime string
- Etime string
- }
- type ItemHistoryResp struct {
- ProjectId int `json:"project_id"`
- ItemName string `json:"item_name"`
- Val float64 `json:"val"`
- HTime string `json:"h_time"`
- }
- type ItemHistoryRespList struct {
- List []ItemHistoryResp
- }
- type ItemHistoryBody struct {
- Code int `json:"code"`
- Msg string `json:"msg"`
- Data ItemHistoryRespList `json:"data"`
- }
- func GetItemHistory (req ItemHistoryReq) (resp []ItemHistoryResp, err error) {
- url := fmt.Sprintf("http://%s/api/dtgateway/v1/item-history/info", req.ServerIp)
- h := httplib.Get(url)
- h.Header("X-Forwarded-For", "127.0.0.1")
- h.Param("project_id", req.ProjectId)
- h.Param("item_name", req.ItemName)
- h.Param("stime", req.Stime)
- h.Param("etime", req.Etime)
- body, err := h.Bytes()
- if err != nil {
- log.Println("GetItemHistory Error:", err)
- return
- }
- result := &ItemHistoryBody{}
- err = json.Unmarshal(body, &result)
- if err != nil {
- log.Println("GetItemHistory Error:", err)
- return
- }
- if result.Code != 200 {
- err = errors.New(result.Msg)
- return
- }
- resp = result.Data.List
- return
- }
|