diff --git a/render.go b/render.go index e96eca1..4ac38bd 100644 --- a/render.go +++ b/render.go @@ -188,12 +188,19 @@ func statusCell(v uint64) string { return paint(s, cRed) } +// Per-interval rates jitter by a couple of percent at line rate, so green has +// to cover that. Yellow means a real shortfall, red means badly off. +const ( + rateGreenFrac = 0.95 + rateYellowFrac = 0.80 +) + func rateCell(gb float64, target float64) string { s := fmt.Sprintf("%.2f", gb) switch { - case gb >= target*0.995: + case gb >= target*rateGreenFrac: return paint(s, cGreen) - case gb >= target*0.90: + case gb >= target*rateYellowFrac: return paint(s, cYellow) default: return paint(s, cRed)