metrics: fix the panic for reading empty cpu stats (#21864)

This commit is contained in:
gary rong 2020-11-19 04:50:11 +08:00 committed by GitHub
parent 23524f8900
commit b9ff57c59e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -31,6 +31,10 @@ func ReadCPUStats(stats *CPUStats) {
log.Error("Could not read cpu stats", "err", err) log.Error("Could not read cpu stats", "err", err)
return return
} }
if len(timeStats) == 0 {
log.Error("Empty cpu stats")
return
}
// requesting all cpu times will always return an array with only one time stats entry // requesting all cpu times will always return an array with only one time stats entry
timeStat := timeStats[0] timeStat := timeStats[0]
stats.GlobalTime = int64((timeStat.User + timeStat.Nice + timeStat.System) * cpu.ClocksPerSec) stats.GlobalTime = int64((timeStat.User + timeStat.Nice + timeStat.System) * cpu.ClocksPerSec)