|
@@ -30,54 +30,54 @@ func (g *GuptaReport) GetCPULoad() string {
|
|
|
|
|
|
// collect all CPU stat from /proc/cpustat
|
|
|
type CPUStat struct {
|
|
|
- user int64
|
|
|
- nice int64
|
|
|
- system int64
|
|
|
- idle int64
|
|
|
- iowait int64
|
|
|
- irq int64
|
|
|
- softirq int64
|
|
|
- steal int64
|
|
|
- guest int64
|
|
|
- guest_nice int64
|
|
|
+ user uint64
|
|
|
+ nice uint64
|
|
|
+ system uint64
|
|
|
+ idle uint64
|
|
|
+ iowait uint64
|
|
|
+ irq uint64
|
|
|
+ softirq uint64
|
|
|
+ steal uint64
|
|
|
+ guest uint64
|
|
|
+ guest_nice uint64
|
|
|
}
|
|
|
|
|
|
// parse the first line of /proc/cpustat
|
|
|
func (c *CPUStat) ReadInfo(rawInfo []string) {
|
|
|
- if s, err := strconv.ParseInt(rawInfo[0], 10, 64); err == nil {
|
|
|
+ if s, err := strconv.ParseUint(rawInfo[0], 10, 64); err == nil {
|
|
|
c.user = s
|
|
|
}
|
|
|
- if s, err := strconv.ParseInt(rawInfo[1], 10, 64); err == nil {
|
|
|
+ if s, err := strconv.ParseUint(rawInfo[1], 10, 64); err == nil {
|
|
|
c.nice = s
|
|
|
}
|
|
|
- if s, err := strconv.ParseInt(rawInfo[2], 10, 64); err == nil {
|
|
|
+ if s, err := strconv.ParseUint(rawInfo[2], 10, 64); err == nil {
|
|
|
c.system = s
|
|
|
}
|
|
|
- if s, err := strconv.ParseInt(rawInfo[3], 10, 64); err == nil {
|
|
|
+ if s, err := strconv.ParseUint(rawInfo[3], 10, 64); err == nil {
|
|
|
c.idle = s
|
|
|
}
|
|
|
- if s, err := strconv.ParseInt(rawInfo[4], 10, 64); err == nil {
|
|
|
+ if s, err := strconv.ParseUint(rawInfo[4], 10, 64); err == nil {
|
|
|
c.idle = s
|
|
|
}
|
|
|
- if s, err := strconv.ParseInt(rawInfo[5], 10, 64); err == nil {
|
|
|
+ if s, err := strconv.ParseUint(rawInfo[5], 10, 64); err == nil {
|
|
|
c.iowait = s
|
|
|
}
|
|
|
- if s, err := strconv.ParseInt(rawInfo[6], 10, 64); err == nil {
|
|
|
+ if s, err := strconv.ParseUint(rawInfo[6], 10, 64); err == nil {
|
|
|
c.irq = s
|
|
|
}
|
|
|
- if s, err := strconv.ParseInt(rawInfo[7], 10, 64); err == nil {
|
|
|
+ if s, err := strconv.ParseUint(rawInfo[7], 10, 64); err == nil {
|
|
|
c.softirq = s
|
|
|
}
|
|
|
- if s, err := strconv.ParseInt(rawInfo[8], 10, 64); err == nil {
|
|
|
+ if s, err := strconv.ParseUint(rawInfo[8], 10, 64); err == nil {
|
|
|
c.softirq = s
|
|
|
}
|
|
|
- if s, err := strconv.ParseInt(rawInfo[9], 10, 64); err == nil {
|
|
|
+ if s, err := strconv.ParseUint(rawInfo[9], 10, 64); err == nil {
|
|
|
c.steal = s
|
|
|
}
|
|
|
- if s, err := strconv.ParseInt(rawInfo[10], 10, 64); err == nil {
|
|
|
+ if s, err := strconv.ParseUint(rawInfo[10], 10, 64); err == nil {
|
|
|
c.guest = s
|
|
|
}
|
|
|
- if s, err := strconv.ParseInt(rawInfo[11], 10, 64); err == nil {
|
|
|
+ if s, err := strconv.ParseUint(rawInfo[11], 10, 64); err == nil {
|
|
|
c.guest_nice = s
|
|
|
}
|
|
|
}
|