package monitor import ( "fmt" "strconv" "github.com/shirou/gopsutil/v3/load" ) // LoadInfo 系统负载信息(1/5/15 分钟均值) type LoadInfo struct { Load1 float64 `json:"load1"` Load5 float64 `json:"load5"` Load15 float64 `json:"load15"` } // getLoadInfo 采集系统负载 func getLoadInfo() (LoadInfo, error) { info := LoadInfo{} v, err := load.Avg() if err != nil { return info, err } info.Load1, _ = strconv.ParseFloat(fmt.Sprintf("%.2f", v.Load1), 64) info.Load5, _ = strconv.ParseFloat(fmt.Sprintf("%.2f", v.Load5), 64) info.Load15, _ = strconv.ParseFloat(fmt.Sprintf("%.2f", v.Load15), 64) //fmt.Printf("%v\n", info) return info, nil }