2018-10-24 05:13:10 -07:00
|
|
|
module github.com/prometheus/prometheus
|
|
|
|
|
histograms: Add Compact method to the normal integer Histogram
And use the new method to call to compact Histograms during
parsing. This happens for both `Histogram` and `FloatHistogram`. In
this way, if targets decide to optimize the exposition size by merging
spans with empty buckets in between, we still get a normalized
results. It will also normalize away any valid but weird
representations like empty spans, spans with offset zero, and empty
buckets at the start or end of a span.
The implementation seemed easy at first as it just turns the
`compactBuckets` helper into a generic function (which now got its own
file). However, the integer Histograms have delta buckets instead of
absolute buckets, which had to be treated specially in the generic
`compactBuckets` function. To make sure it works, I have added plenty
of explicit tests for `Histogram` in addition to the `FloatHistogram`
tests.
I have also updated the doc comment for the `Compact` method.
Based on the insights now expressed in the doc comment, compacting
with a maxEmptyBuckets > 0 is rarely useful. Therefore, this commit
also sets the value to 0 in the two cases we were using 3 so far. We
might still want to reconsider, so I don't want to remove the
maxEmptyBuckets parameter right now.
Signed-off-by: beorn7 <beorn@grafana.com>
2022-09-27 04:04:16 -07:00
|
|
|
go 1.18
|
2019-08-14 02:00:39 -07:00
|
|
|
|
2018-10-24 05:13:10 -07:00
|
|
|
require (
|
2022-05-24 09:40:09 -07:00
|
|
|
github.com/Azure/azure-sdk-for-go v65.0.0+incompatible
|
2022-08-06 09:20:11 -07:00
|
|
|
github.com/Azure/go-autorest/autorest v0.11.28
|
2022-08-04 14:54:46 -07:00
|
|
|
github.com/Azure/go-autorest/autorest/adal v0.9.21
|
2022-01-06 07:22:33 -08:00
|
|
|
github.com/alecthomas/units v0.0.0-20211218093645-b94a6e3cc137
|
2022-08-02 07:42:00 -07:00
|
|
|
github.com/aws/aws-sdk-go v1.44.67
|
2021-09-07 07:47:21 -07:00
|
|
|
github.com/cespare/xxhash/v2 v2.1.2
|
2021-07-26 21:32:57 -07:00
|
|
|
github.com/dennwc/varint v1.0.0
|
2020-10-08 00:26:01 -07:00
|
|
|
github.com/dgryski/go-sip13 v0.0.0-20200911182023-62edffca9245
|
2022-08-05 05:03:47 -07:00
|
|
|
github.com/digitalocean/godo v1.82.0
|
2022-06-30 13:10:19 -07:00
|
|
|
github.com/docker/docker v20.10.17+incompatible
|
2021-12-21 02:21:51 -08:00
|
|
|
github.com/edsrzf/mmap-go v1.1.0
|
2022-06-30 13:10:19 -07:00
|
|
|
github.com/envoyproxy/go-control-plane v0.10.3
|
2022-04-04 01:47:38 -07:00
|
|
|
github.com/envoyproxy/protoc-gen-validate v0.6.7
|
2022-05-23 09:06:42 -07:00
|
|
|
github.com/fsnotify/fsnotify v1.5.4
|
2022-05-24 06:18:37 -07:00
|
|
|
github.com/go-kit/log v0.2.1
|
2021-09-07 07:47:21 -07:00
|
|
|
github.com/go-logfmt/logfmt v0.5.1
|
2022-08-06 09:21:21 -07:00
|
|
|
github.com/go-openapi/strfmt v0.21.3
|
2022-08-06 10:38:59 -07:00
|
|
|
github.com/go-zookeeper/zk v1.0.3
|
2021-02-05 02:01:06 -08:00
|
|
|
github.com/gogo/protobuf v1.3.2
|
2021-07-28 23:57:38 -07:00
|
|
|
github.com/golang/snappy v0.0.4
|
2022-06-30 13:10:19 -07:00
|
|
|
github.com/google/pprof v0.0.0-20220608213341-c488b8fa1db3
|
2022-06-08 06:54:38 -07:00
|
|
|
github.com/gophercloud/gophercloud v0.25.0
|
2022-03-04 03:45:45 -08:00
|
|
|
github.com/grafana/regexp v0.0.0-20220304095617-2e8d9baf4ac2
|
2020-11-19 06:02:19 -08:00
|
|
|
github.com/grpc-ecosystem/grpc-gateway v1.16.0
|
2022-08-02 07:08:20 -07:00
|
|
|
github.com/hashicorp/consul/api v1.13.1
|
2022-06-30 13:10:19 -07:00
|
|
|
github.com/hashicorp/nomad/api v0.0.0-20220629141207-c2428e1673ec
|
2022-08-06 10:52:14 -07:00
|
|
|
github.com/hetznercloud/hcloud-go v1.35.2
|
2022-08-06 09:20:55 -07:00
|
|
|
github.com/ionos-cloud/sdk-go/v6 v6.1.2
|
2021-10-21 12:51:44 -07:00
|
|
|
github.com/json-iterator/go v1.1.12
|
2021-10-18 16:00:44 -07:00
|
|
|
github.com/kolo/xmlrpc v0.0.0-20201022064351-38db28db192b
|
2022-06-30 13:10:19 -07:00
|
|
|
github.com/linode/linodego v1.8.0
|
|
|
|
github.com/miekg/dns v1.1.50
|
2019-08-14 02:00:39 -07:00
|
|
|
github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f
|
2020-02-17 13:13:33 -08:00
|
|
|
github.com/oklog/run v1.1.0
|
2019-08-13 01:34:14 -07:00
|
|
|
github.com/oklog/ulid v1.3.1
|
2020-02-17 13:13:33 -08:00
|
|
|
github.com/pkg/errors v0.9.1
|
2022-04-04 01:47:38 -07:00
|
|
|
github.com/prometheus/alertmanager v0.24.0
|
2022-08-10 01:14:52 -07:00
|
|
|
github.com/prometheus/client_golang v1.13.0
|
2020-02-17 13:13:33 -08:00
|
|
|
github.com/prometheus/client_model v0.2.0
|
2022-07-14 04:55:50 -07:00
|
|
|
github.com/prometheus/common v0.37.0
|
2022-06-18 05:26:06 -07:00
|
|
|
github.com/prometheus/common/assets v0.2.0
|
2021-08-26 06:37:19 -07:00
|
|
|
github.com/prometheus/common/sigv4 v0.1.0
|
2021-12-15 00:59:14 -08:00
|
|
|
github.com/prometheus/exporter-toolkit v0.7.1
|
2022-02-22 10:54:30 -08:00
|
|
|
github.com/scaleway/scaleway-sdk-go v1.0.0-beta.9
|
2019-08-14 02:00:39 -07:00
|
|
|
github.com/shurcooL/httpfs v0.0.0-20190707220628-8d4bc4ba7749
|
2022-06-30 13:10:19 -07:00
|
|
|
github.com/stretchr/testify v1.8.0
|
|
|
|
github.com/vultr/govultr/v2 v2.17.2
|
2022-08-03 05:41:44 -07:00
|
|
|
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.34.0
|
|
|
|
go.opentelemetry.io/otel v1.9.0
|
|
|
|
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.9.0
|
|
|
|
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.9.0
|
|
|
|
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.9.0
|
|
|
|
go.opentelemetry.io/otel/sdk v1.9.0
|
|
|
|
go.opentelemetry.io/otel/trace v1.9.0
|
2021-07-28 23:57:38 -07:00
|
|
|
go.uber.org/atomic v1.9.0
|
2022-04-13 06:41:28 -07:00
|
|
|
go.uber.org/automaxprocs v1.5.1
|
2021-10-21 12:51:44 -07:00
|
|
|
go.uber.org/goleak v1.1.12
|
2022-08-03 05:41:44 -07:00
|
|
|
golang.org/x/net v0.0.0-20220802222814-0bcc04d9c69b
|
|
|
|
golang.org/x/oauth2 v0.0.0-20220722155238-128564f6959c
|
2022-08-03 06:07:01 -07:00
|
|
|
golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4
|
2022-08-03 05:41:44 -07:00
|
|
|
golang.org/x/sys v0.0.0-20220731174439-a90be440212d
|
2022-06-30 13:10:19 -07:00
|
|
|
golang.org/x/time v0.0.0-20220609170525-579cf78fd858
|
histograms: Add Compact method to the normal integer Histogram
And use the new method to call to compact Histograms during
parsing. This happens for both `Histogram` and `FloatHistogram`. In
this way, if targets decide to optimize the exposition size by merging
spans with empty buckets in between, we still get a normalized
results. It will also normalize away any valid but weird
representations like empty spans, spans with offset zero, and empty
buckets at the start or end of a span.
The implementation seemed easy at first as it just turns the
`compactBuckets` helper into a generic function (which now got its own
file). However, the integer Histograms have delta buckets instead of
absolute buckets, which had to be treated specially in the generic
`compactBuckets` function. To make sure it works, I have added plenty
of explicit tests for `Histogram` in addition to the `FloatHistogram`
tests.
I have also updated the doc comment for the `Compact` method.
Based on the insights now expressed in the doc comment, compacting
with a maxEmptyBuckets > 0 is rarely useful. Therefore, this commit
also sets the value to 0 in the two cases we were using 3 so far. We
might still want to reconsider, so I don't want to remove the
maxEmptyBuckets parameter right now.
Signed-off-by: beorn7 <beorn@grafana.com>
2022-09-27 04:04:16 -07:00
|
|
|
golang.org/x/tools v0.1.13-0.20220908144252-ce397412b6a4
|
2022-08-06 10:38:02 -07:00
|
|
|
google.golang.org/api v0.91.0
|
2022-08-03 05:41:44 -07:00
|
|
|
google.golang.org/genproto v0.0.0-20220802133213-ce4fa296bf78
|
2022-08-02 07:08:39 -07:00
|
|
|
google.golang.org/grpc v1.48.0
|
2022-08-03 05:41:44 -07:00
|
|
|
google.golang.org/protobuf v1.28.1
|
2018-12-04 08:46:31 -08:00
|
|
|
gopkg.in/alecthomas/kingpin.v2 v2.2.6
|
2020-12-28 08:53:35 -08:00
|
|
|
gopkg.in/yaml.v2 v2.4.0
|
2022-06-01 17:16:44 -07:00
|
|
|
gopkg.in/yaml.v3 v3.0.1
|
2022-08-04 04:44:44 -07:00
|
|
|
k8s.io/api v0.24.3
|
2022-08-03 01:24:06 -07:00
|
|
|
k8s.io/apimachinery v0.24.3
|
2022-08-04 04:44:44 -07:00
|
|
|
k8s.io/client-go v0.24.3
|
2020-02-17 13:13:33 -08:00
|
|
|
k8s.io/klog v1.0.0
|
2022-06-30 13:10:19 -07:00
|
|
|
k8s.io/klog/v2 v2.70.0
|
2018-10-24 05:13:10 -07:00
|
|
|
)
|
2018-12-04 06:01:12 -08:00
|
|
|
|
2022-05-23 04:33:14 -07:00
|
|
|
require (
|
2022-06-30 13:10:19 -07:00
|
|
|
cloud.google.com/go/compute v1.7.0 // indirect
|
2022-05-23 04:33:14 -07:00
|
|
|
github.com/Azure/go-autorest v14.2.0+incompatible // indirect
|
|
|
|
github.com/Azure/go-autorest/autorest/date v0.3.0 // indirect
|
|
|
|
github.com/Azure/go-autorest/autorest/to v0.4.0 // indirect
|
|
|
|
github.com/Azure/go-autorest/autorest/validation v0.3.1 // indirect
|
|
|
|
github.com/Azure/go-autorest/logger v0.2.1 // indirect
|
|
|
|
github.com/Azure/go-autorest/tracing v0.6.0 // indirect
|
|
|
|
github.com/Microsoft/go-winio v0.5.1 // indirect
|
|
|
|
github.com/PuerkitoBio/purell v1.1.1 // indirect
|
|
|
|
github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578 // indirect
|
|
|
|
github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751 // indirect
|
|
|
|
github.com/armon/go-metrics v0.3.3 // indirect
|
|
|
|
github.com/asaskevich/govalidator v0.0.0-20210307081110-f21760c49a8d // indirect
|
|
|
|
github.com/beorn7/perks v1.0.1 // indirect
|
2022-05-24 05:17:11 -07:00
|
|
|
github.com/cenkalti/backoff/v4 v4.1.3 // indirect
|
2022-06-30 13:10:19 -07:00
|
|
|
github.com/cncf/xds/go v0.0.0-20220314180256-7f1daf1720fc // indirect
|
2022-05-23 04:33:14 -07:00
|
|
|
github.com/davecgh/go-spew v1.1.1 // indirect
|
|
|
|
github.com/docker/distribution v2.7.1+incompatible // indirect
|
|
|
|
github.com/docker/go-connections v0.4.0 // indirect
|
|
|
|
github.com/docker/go-units v0.4.0 // indirect
|
2022-07-27 09:40:16 -07:00
|
|
|
github.com/emicklei/go-restful v2.16.0+incompatible // indirect
|
2022-05-23 04:33:14 -07:00
|
|
|
github.com/evanphx/json-patch v4.12.0+incompatible // indirect
|
|
|
|
github.com/fatih/color v1.13.0 // indirect
|
2022-05-24 05:17:11 -07:00
|
|
|
github.com/felixge/httpsnoop v1.0.3 // indirect
|
2022-05-23 04:33:14 -07:00
|
|
|
github.com/ghodss/yaml v1.0.0 // indirect
|
|
|
|
github.com/go-kit/kit v0.10.0 // indirect
|
|
|
|
github.com/go-logr/logr v1.2.3 // indirect
|
|
|
|
github.com/go-logr/stdr v1.2.2 // indirect
|
|
|
|
github.com/go-openapi/analysis v0.21.2 // indirect
|
|
|
|
github.com/go-openapi/errors v0.20.2 // indirect
|
|
|
|
github.com/go-openapi/jsonpointer v0.19.5 // indirect
|
|
|
|
github.com/go-openapi/jsonreference v0.19.6 // indirect
|
|
|
|
github.com/go-openapi/loads v0.21.1 // indirect
|
|
|
|
github.com/go-openapi/spec v0.20.4 // indirect
|
|
|
|
github.com/go-openapi/swag v0.21.1 // indirect
|
|
|
|
github.com/go-openapi/validate v0.21.0 // indirect
|
|
|
|
github.com/go-resty/resty/v2 v2.1.1-0.20191201195748-d7b97669fe48 // indirect
|
|
|
|
github.com/golang-jwt/jwt/v4 v4.2.0 // indirect
|
|
|
|
github.com/golang/glog v1.0.0 // indirect
|
|
|
|
github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect
|
|
|
|
github.com/golang/protobuf v1.5.2 // indirect
|
2022-05-24 06:18:37 -07:00
|
|
|
github.com/google/gnostic v0.5.7-v3refs // indirect
|
2022-05-24 05:17:11 -07:00
|
|
|
github.com/google/go-cmp v0.5.8 // indirect
|
2022-05-24 06:18:37 -07:00
|
|
|
github.com/google/go-querystring v1.1.0 // indirect
|
2022-05-23 04:33:14 -07:00
|
|
|
github.com/google/gofuzz v1.2.0 // indirect
|
2022-06-30 13:10:19 -07:00
|
|
|
github.com/google/uuid v1.3.0 // indirect
|
|
|
|
github.com/googleapis/enterprise-certificate-proxy v0.1.0 // indirect
|
2022-06-08 01:54:05 -07:00
|
|
|
github.com/googleapis/gax-go/v2 v2.4.0 // indirect
|
2022-06-25 13:47:42 -07:00
|
|
|
github.com/gorilla/websocket v1.4.2 // indirect
|
2022-08-03 05:41:44 -07:00
|
|
|
github.com/grpc-ecosystem/grpc-gateway/v2 v2.11.1 // indirect
|
2022-06-25 13:47:42 -07:00
|
|
|
github.com/hashicorp/cronexpr v1.1.1 // indirect
|
2022-05-24 09:03:49 -07:00
|
|
|
github.com/hashicorp/go-cleanhttp v0.5.2 // indirect
|
2022-05-23 04:33:14 -07:00
|
|
|
github.com/hashicorp/go-hclog v0.12.2 // indirect
|
|
|
|
github.com/hashicorp/go-immutable-radix v1.2.0 // indirect
|
2022-05-24 06:18:37 -07:00
|
|
|
github.com/hashicorp/go-multierror v1.1.1 // indirect
|
2022-05-24 09:03:49 -07:00
|
|
|
github.com/hashicorp/go-retryablehttp v0.7.1 // indirect
|
2022-05-23 04:33:14 -07:00
|
|
|
github.com/hashicorp/go-rootcerts v1.0.2 // indirect
|
|
|
|
github.com/hashicorp/golang-lru v0.5.4 // indirect
|
|
|
|
github.com/hashicorp/serf v0.9.6 // indirect
|
|
|
|
github.com/imdario/mergo v0.3.12 // indirect
|
|
|
|
github.com/jmespath/go-jmespath v0.4.0 // indirect
|
|
|
|
github.com/josharian/intern v1.0.0 // indirect
|
|
|
|
github.com/jpillora/backoff v1.0.0 // indirect
|
|
|
|
github.com/julienschmidt/httprouter v1.3.0 // indirect
|
|
|
|
github.com/mailru/easyjson v0.7.7 // indirect
|
|
|
|
github.com/mattn/go-colorable v0.1.12 // indirect
|
|
|
|
github.com/mattn/go-isatty v0.0.14 // indirect
|
|
|
|
github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369 // indirect
|
|
|
|
github.com/mitchellh/go-homedir v1.1.0 // indirect
|
|
|
|
github.com/mitchellh/mapstructure v1.4.3 // indirect
|
|
|
|
github.com/moby/term v0.0.0-20210619224110-3f7ff695adc6 // indirect
|
|
|
|
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
|
|
|
|
github.com/modern-go/reflect2 v1.0.2 // indirect
|
2022-05-24 06:18:37 -07:00
|
|
|
github.com/morikuni/aec v1.0.0 // indirect
|
|
|
|
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
|
|
|
|
github.com/onsi/ginkgo v1.16.4 // indirect
|
|
|
|
github.com/onsi/gomega v1.15.0 // indirect
|
2022-05-23 04:33:14 -07:00
|
|
|
github.com/opencontainers/go-digest v1.0.0 // indirect
|
|
|
|
github.com/opencontainers/image-spec v1.0.2 // indirect
|
|
|
|
github.com/pmezard/go-difflib v1.0.0 // indirect
|
2022-08-10 01:14:52 -07:00
|
|
|
github.com/prometheus/procfs v0.8.0 // indirect
|
histograms: Add Compact method to the normal integer Histogram
And use the new method to call to compact Histograms during
parsing. This happens for both `Histogram` and `FloatHistogram`. In
this way, if targets decide to optimize the exposition size by merging
spans with empty buckets in between, we still get a normalized
results. It will also normalize away any valid but weird
representations like empty spans, spans with offset zero, and empty
buckets at the start or end of a span.
The implementation seemed easy at first as it just turns the
`compactBuckets` helper into a generic function (which now got its own
file). However, the integer Histograms have delta buckets instead of
absolute buckets, which had to be treated specially in the generic
`compactBuckets` function. To make sure it works, I have added plenty
of explicit tests for `Histogram` in addition to the `FloatHistogram`
tests.
I have also updated the doc comment for the `Compact` method.
Based on the insights now expressed in the doc comment, compacting
with a maxEmptyBuckets > 0 is rarely useful. Therefore, this commit
also sets the value to 0 in the two cases we were using 3 so far. We
might still want to reconsider, so I don't want to remove the
maxEmptyBuckets parameter right now.
Signed-off-by: beorn7 <beorn@grafana.com>
2022-09-27 04:04:16 -07:00
|
|
|
github.com/rogpeppe/go-internal v1.8.1 // indirect
|
2022-05-23 04:33:14 -07:00
|
|
|
github.com/sirupsen/logrus v1.8.1 // indirect
|
|
|
|
github.com/spf13/pflag v1.0.5 // indirect
|
2022-08-06 09:21:21 -07:00
|
|
|
go.mongodb.org/mongo-driver v1.10.0 // indirect
|
2022-05-23 04:33:14 -07:00
|
|
|
go.opencensus.io v0.23.0 // indirect
|
2022-08-03 05:41:44 -07:00
|
|
|
go.opentelemetry.io/otel/exporters/otlp/internal/retry v1.9.0 // indirect
|
|
|
|
go.opentelemetry.io/otel/metric v0.31.0 // indirect
|
|
|
|
go.opentelemetry.io/proto/otlp v0.18.0 // indirect
|
2022-08-04 14:54:46 -07:00
|
|
|
golang.org/x/crypto v0.0.0-20220722155217-630584e8d5aa // indirect
|
2022-06-30 13:10:19 -07:00
|
|
|
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4 // indirect
|
2022-05-23 04:33:14 -07:00
|
|
|
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211 // indirect
|
|
|
|
golang.org/x/text v0.3.7 // indirect
|
|
|
|
google.golang.org/appengine v1.6.7 // indirect
|
2022-05-24 06:18:37 -07:00
|
|
|
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c // indirect
|
2022-05-23 04:33:14 -07:00
|
|
|
gopkg.in/inf.v0 v0.9.1 // indirect
|
2022-06-30 13:10:19 -07:00
|
|
|
gopkg.in/ini.v1 v1.66.4 // indirect
|
2022-05-24 06:18:37 -07:00
|
|
|
gotest.tools/v3 v3.0.3 // indirect
|
|
|
|
k8s.io/kube-openapi v0.0.0-20220328201542-3ee0da9b0b42 // indirect
|
|
|
|
k8s.io/utils v0.0.0-20220210201930-3a6ce19ff2f9 // indirect
|
|
|
|
sigs.k8s.io/json v0.0.0-20211208200746-9f7c6b3444d2 // indirect
|
2022-05-23 04:33:14 -07:00
|
|
|
sigs.k8s.io/structured-merge-diff/v4 v4.2.1 // indirect
|
2022-05-24 05:17:11 -07:00
|
|
|
sigs.k8s.io/yaml v1.3.0 // indirect
|
2022-05-23 04:33:14 -07:00
|
|
|
)
|
|
|
|
|
2020-10-06 05:54:12 -07:00
|
|
|
replace (
|
|
|
|
k8s.io/klog => github.com/simonpasquier/klog-gokit v0.3.0
|
2021-07-27 04:49:29 -07:00
|
|
|
k8s.io/klog/v2 => github.com/simonpasquier/klog-gokit/v3 v3.0.0
|
2020-10-06 05:54:12 -07:00
|
|
|
)
|
2020-07-27 02:08:38 -07:00
|
|
|
|
2021-06-15 07:06:48 -07:00
|
|
|
// Exclude linodego v1.0.0 as it is no longer published on github.
|
|
|
|
exclude github.com/linode/linodego v1.0.0
|
|
|
|
|
|
|
|
// Exclude grpc v1.30.0 because of breaking changes. See #7621.
|
2020-07-27 02:08:38 -07:00
|
|
|
exclude (
|
2020-08-24 05:03:47 -07:00
|
|
|
github.com/grpc-ecosystem/grpc-gateway v1.14.7
|
|
|
|
google.golang.org/api v0.30.0
|
2021-06-15 07:06:48 -07:00
|
|
|
)
|