Format cpu names based on cpu count
This commit is contained in:
parent
357050207e
commit
1b8c3ed918
|
@ -15,16 +15,22 @@ type CPU struct {
|
||||||
Average bool // show average load
|
Average bool // show average load
|
||||||
PerCPU bool // show per-core load
|
PerCPU bool // show per-core load
|
||||||
interval time.Duration
|
interval time.Duration
|
||||||
|
formatString string
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewCPU(interval time.Duration, zoom int, average bool, percpu bool) *CPU {
|
func NewCPU(interval time.Duration, zoom int, average bool, percpu bool) *CPU {
|
||||||
count, _ := psCPU.Counts(false)
|
count, _ := psCPU.Counts(false)
|
||||||
|
formatString := "CPU%1d"
|
||||||
|
if count > 10 {
|
||||||
|
formatString = "CPU%02d"
|
||||||
|
}
|
||||||
self := &CPU{
|
self := &CPU{
|
||||||
LineGraph: ui.NewLineGraph(),
|
LineGraph: ui.NewLineGraph(),
|
||||||
Count: count,
|
Count: count,
|
||||||
interval: interval,
|
interval: interval,
|
||||||
Average: average,
|
Average: average,
|
||||||
PerCPU: percpu,
|
PerCPU: percpu,
|
||||||
|
formatString: formatString,
|
||||||
}
|
}
|
||||||
self.Label = "CPU Usage"
|
self.Label = "CPU Usage"
|
||||||
self.Zoom = zoom
|
self.Zoom = zoom
|
||||||
|
@ -43,7 +49,7 @@ func NewCPU(interval time.Duration, zoom int, average bool, percpu bool) *CPU {
|
||||||
|
|
||||||
if self.PerCPU {
|
if self.PerCPU {
|
||||||
for i := 0; i < self.Count; i++ {
|
for i := 0; i < self.Count; i++ {
|
||||||
k := fmt.Sprintf("CPU%02d", i)
|
k := fmt.Sprintf(formatString, i)
|
||||||
self.Data[k] = []float64{0}
|
self.Data[k] = []float64{0}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -85,7 +91,7 @@ func (self *CPU) update() {
|
||||||
))
|
))
|
||||||
}
|
}
|
||||||
for i := 0; i < self.Count; i++ {
|
for i := 0; i < self.Count; i++ {
|
||||||
k := fmt.Sprintf("CPU%02d", i)
|
k := fmt.Sprintf(self.formatString, i)
|
||||||
self.Data[k] = append(self.Data[k], percents[i])
|
self.Data[k] = append(self.Data[k], percents[i])
|
||||||
self.Labels[k] = fmt.Sprintf("%3.0f%%", percents[i])
|
self.Labels[k] = fmt.Sprintf("%3.0f%%", percents[i])
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user