пакет prometheus
import "github.com/prometheus/client_golang/prometheus"
func ExponentialBuckets
func ExponentialBuckets(start, factor float64, count int) []float64
ExponentialBuckets создает «подсчет» сегментов, где самые низкиеbucket имеет верхнюю границу «start», и верхняя граница каждого следующего bucket равна «factor», умноженной на верхнюю границу предыдущего bucket.Финал + Inf не учитывается и не включается в возвращаемый фрагмент.Возвращенный фрагмент предназначен для использования в поле Buckets в HistogramOpts.
Функция паникует, если значение count равно 0 или отрицательно, если start равно 0 или отрицательно, или factor меньшеили равно 1.
Попробуйте start
, равное минимальному нормальному положительному float64
.
package main
import (
"fmt"
"math"
)
func main() {
// Minimum normal positive float64
// 0 00000000001 0000000000000000000000000000000000000000000000000000
// 2.2250738585072014e−308
start := math.Float64frombits(uint64(1 << (63 - 11)))
fmt.Println(start)
}
Выход:
2.2250738585072014e-308