Prometheus Go客户端库的ExponentialBuckets API的最低粒度是多少?

时间:2018-12-20 01:54:21

标签: go prometheus

我正在尝试Prometheus Go client libraryExponentialBuckets API是否接受小于1.0(例如0.001)的参数start

1 个答案:

答案 0 :(得分:0)

  

package prometheus

import "github.com/prometheus/client_golang/prometheus"
     

func ExponentialBuckets

func ExponentialBuckets(start, factor float64, count int) []float64
     

ExponentialBuckets创建“计数”存储桶,其中最低的存储桶   的上限为“开始”,其后每个存储分区的上限为   是“因子”乘以前一个存储桶的上限。最终+信息   存储区不计算在内,也不包含在返回的片中。的   返回的切片将用于的“桶”字段   直方图选项。

     

如果'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