mirror of https://github.com/prometheus/prometheus
27 lines
650 B
Go
27 lines
650 B
Go
package units
|
|
|
|
// SI units.
|
|
type SI int64
|
|
|
|
// SI unit multiples.
|
|
const (
|
|
Kilo SI = 1000
|
|
Mega = Kilo * 1000
|
|
Giga = Mega * 1000
|
|
Tera = Giga * 1000
|
|
Peta = Tera * 1000
|
|
Exa = Peta * 1000
|
|
)
|
|
|
|
func MakeUnitMap(suffix, shortSuffix string, scale int64) map[string]float64 {
|
|
return map[string]float64{
|
|
shortSuffix: 1,
|
|
"K" + suffix: float64(scale),
|
|
"M" + suffix: float64(scale * scale),
|
|
"G" + suffix: float64(scale * scale * scale),
|
|
"T" + suffix: float64(scale * scale * scale * scale),
|
|
"P" + suffix: float64(scale * scale * scale * scale * scale),
|
|
"E" + suffix: float64(scale * scale * scale * scale * scale * scale),
|
|
}
|
|
}
|