diff --git a/CHANGELOG.md b/CHANGELOG.md index ac974ce16..d515e692f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,8 @@ ## Unreleased * [CHANGE] Minimum required Go version is now 1.16. +* [CHANGE] Added `collectors.WithGoCollections` that allows to choose what collection of Go runtime metrics user wants: Equivalent of [`MemStats` structure](https://pkg.go.dev/runtime#MemStats) configured using `GoRuntimeMemStatsCollection`, new based on dedicated [runtime/metrics](https://pkg.go.dev/runtime/metrics) metrics represented by `GoRuntimeMetricsCollection` option, or both by specifying `GoRuntimeMemStatsCollection | GoRuntimeMetricsCollection` flag. +* [CHANGE] :warning: Change in `collectors.NewGoCollector` metrics: Reverting addition of new ~80 runtime metrics by default. You can enable this back with `GoRuntimeMetricsCollection` option or `GoRuntimeMemStatsCollection | GoRuntimeMetricsCollection` for smooth transition. ## 1.12.1 / 2022-01-29 diff --git a/prometheus/collectors/go_collector_latest.go b/prometheus/collectors/go_collector_latest.go index a4657a4f7..58b0a5b6e 100644 --- a/prometheus/collectors/go_collector_latest.go +++ b/prometheus/collectors/go_collector_latest.go @@ -70,8 +70,8 @@ const ( // WithGoCollections(GoRuntimeMemStatsCollection | GoRuntimeMetricsCollection) means both GoRuntimeMemStatsCollection // metrics and GoRuntimeMetricsCollection will be exposed. // -// Use WithGoCollections(GoRuntimeMemStatsCollection) to have Go collector working in -// the compatibility mode with client_golang pre v1.12 (move to runtime/metrics). +// The current default is GoRuntimeMemStatsCollection, so the compatibility mode with +// client_golang pre v1.12 (move to runtime/metrics). func WithGoCollections(flags uint32) goOption { return func(o *goOptions) { o.EnabledCollections = flags diff --git a/prometheus/go_collector_latest.go b/prometheus/go_collector_latest.go index 944794f1f..8528ea705 100644 --- a/prometheus/go_collector_latest.go +++ b/prometheus/go_collector_latest.go @@ -132,7 +132,7 @@ func (c GoCollectorOptions) isEnabled(flag uint32) bool { return c.EnabledCollections&flag != 0 } -const defaultGoCollections = goRuntimeMemStatsCollection | goRuntimeMetricsCollection +const defaultGoCollections = goRuntimeMemStatsCollection // NewGoCollector is the obsolete version of collectors.NewGoCollector. // See there for documentation. diff --git a/prometheus/go_collector_latest_test.go b/prometheus/go_collector_latest_test.go index a7fcaddbd..88158df5b 100644 --- a/prometheus/go_collector_latest_test.go +++ b/prometheus/go_collector_latest_test.go @@ -117,7 +117,7 @@ func TestGoCollector(t *testing.T) { var sink interface{} func TestBatchHistogram(t *testing.T) { - goMetrics := collectGoMetrics(t, defaultGoCollections) + goMetrics := collectGoMetrics(t, goRuntimeMetricsCollection) var mhist Metric for _, m := range goMetrics {