我正在试验Prometheus Go 客户端库。ExponentialBuckets API是否接受start小于 1.0 的参数(例如 0.001)?
1 回答
![?](http://img1.sycdn.imooc.com/545868190001d52602200220-100-100.jpg)
Qyouu
TA贡献1786条经验 获得超11个赞
如下:
import "github.com/prometheus/client_golang/prometheus"func 指数桶
func ExponentialBuckets(start, factor float64, count int) []float64ExponentialBuckets 创建“count”个桶,其中最低桶的上限为“start”,每个后续桶的上限是前一个桶上限的“factor”倍。最后的 +Inf 桶不计算在内,也不包含在返回的切片中。返回的切片用于 HistogramOpts 的 Buckets 字段。
如果 '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
- 1 回答
- 0 关注
- 124 浏览
添加回答
举报
0/150
提交
取消