navidrome/log/formatters.go

25 lines
469 B
Go

package log
import (
"strings"
"time"
)
func ShortDur(d time.Duration) string {
var s string
switch {
case d > time.Hour:
s = d.Round(time.Minute).String()
case d > time.Minute:
s = d.Round(time.Second).String()
case d > time.Second:
s = d.Round(10 * time.Millisecond).String()
case d > time.Millisecond:
s = d.Round(100 * time.Microsecond).String()
default:
s = d.String()
}
s = strings.TrimSuffix(s, "0s")
return strings.TrimSuffix(s, "0m")
}