diff --git a/go.mod b/go.mod index 966123a6a..213f77715 100644 --- a/go.mod +++ b/go.mod @@ -4,7 +4,7 @@ require ( cloud.google.com/go v0.49.0 // indirect cloud.google.com/go/storage v1.4.0 github.com/VictoriaMetrics/fastcache v1.5.2 - github.com/VictoriaMetrics/metrics v1.8.0 + github.com/VictoriaMetrics/metrics v1.8.1 github.com/aws/aws-sdk-go v1.25.37 github.com/cespare/xxhash/v2 v2.1.1 github.com/golang/groupcache v0.0.0-20191027212112-611e8accdfc9 // indirect diff --git a/go.sum b/go.sum index a25f2e07f..7868622db 100644 --- a/go.sum +++ b/go.sum @@ -24,8 +24,8 @@ github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAE github.com/OneOfOne/xxhash v1.2.5/go.mod h1:eZbhyaAYD41SGSSsnmcpxVoRiQ/MPUTjUdIIOT9Um7Q= github.com/VictoriaMetrics/fastcache v1.5.2 h1:Erd8iIuBAL9kke8JzM4+WxkKuFkHh3ktwLanJvDgR44= github.com/VictoriaMetrics/fastcache v1.5.2/go.mod h1:+jv9Ckb+za/P1ZRg/sulP5Ni1v49daAVERr0H3CuscE= -github.com/VictoriaMetrics/metrics v1.8.0 h1:UnkixfF43kt0v8GRgkgFC6Ti+G0yvT9H1o5vNgaOv9k= -github.com/VictoriaMetrics/metrics v1.8.0/go.mod h1:LU2j9qq7xqZYXz8tF3/RQnB2z2MbZms5TDiIg9/NHiQ= +github.com/VictoriaMetrics/metrics v1.8.1 h1:miHseb2n+HNDPWx6uEKBqGubeC/By5vIRmU/gpYA9FQ= +github.com/VictoriaMetrics/metrics v1.8.1/go.mod h1:LU2j9qq7xqZYXz8tF3/RQnB2z2MbZms5TDiIg9/NHiQ= github.com/allegro/bigcache v1.2.1-0.20190218064605-e24eb225f156 h1:eMwmnE/GDgah4HI848JfFxHt+iPb26b4zyfspmqY0/8= github.com/allegro/bigcache v1.2.1-0.20190218064605-e24eb225f156/go.mod h1:Cb/ax3seSYIx7SuZdm2G2xzfwmv3TPSk2ucNfQESPXM= github.com/aws/aws-sdk-go v1.25.37 h1:gBtB/F3dophWpsUQKN/Kni+JzYEH2mGHF4hWNtfED1w= diff --git a/vendor/github.com/VictoriaMetrics/metrics/histogram.go b/vendor/github.com/VictoriaMetrics/metrics/histogram.go index 48056ec2d..16e6989d7 100644 --- a/vendor/github.com/VictoriaMetrics/metrics/histogram.go +++ b/vendor/github.com/VictoriaMetrics/metrics/histogram.go @@ -132,12 +132,12 @@ func (h *Histogram) marshalBucket(prefix string, w io.Writer, idx int) { if v == 0 { return } - start := float64(0) + start := "0" if idx > 0 { start = getRangeEndFromBucketIdx(uint(idx - 1)) } end := getRangeEndFromBucketIdx(uint(idx)) - tag := fmt.Sprintf(`vmrange="%g...%g"`, start, end) + tag := fmt.Sprintf(`vmrange="%s...%s"`, start, end) prefix = addTag(prefix, tag) name, filters := splitMetricName(prefix) fmt.Fprintf(w, "%s_vmbucket%s %d\n", name, filters, v) @@ -180,20 +180,27 @@ func getBucketIdx(v float64) uint { return 1 + m + uint(e10-e10Min)*9 } -func getRangeEndFromBucketIdx(idx uint) float64 { +func getRangeEndFromBucketIdx(idx uint) string { if idx == 0 { - return 0 + return "0" } if idx == 1 { - return math.Pow10(e10Min) + return fmt.Sprintf("1e%d", e10Min) } if idx >= bucketsCount-1 { - return math.Inf(1) + return "+Inf" } idx -= 2 e10 := e10Min + int(idx/9) m := 2 + (idx % 9) - return math.Pow10(e10) * float64(m) + if m == 10 { + e10++ + m = 1 + } + if e10 == 0 { + return fmt.Sprintf("%d", m) + } + return fmt.Sprintf("%de%d", m, e10) } // Each range (10^n..10^(n+1)] for e10Min<=n<=e10Max is split into 9 equal sub-ranges, plus 3 additional buckets: diff --git a/vendor/modules.txt b/vendor/modules.txt index ad18308d1..d64e2848e 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -12,7 +12,7 @@ cloud.google.com/go/storage github.com/BurntSushi/toml # github.com/VictoriaMetrics/fastcache v1.5.2 github.com/VictoriaMetrics/fastcache -# github.com/VictoriaMetrics/metrics v1.8.0 +# github.com/VictoriaMetrics/metrics v1.8.1 github.com/VictoriaMetrics/metrics # github.com/aws/aws-sdk-go v1.25.37 github.com/aws/aws-sdk-go/aws