Releases: prometheus/client_golang
Releases · prometheus/client_golang
1.13.0 / 2022-08-06
- [CHANGE] Minimum required Go version is now 1.17 (we also test client_golang against the new 1.19 version).
- [ENHANCEMENT] Added
prometheus.TransactionalGatherer
interface forpromhttp.Handler
use which allows using low allocation update techniques for custom collectors. #989 - [ENHANCEMENT] Added exemplar support to
prometheus.NewConstHistogram
. SeeExampleNewConstHistogram_WithExemplar
example on how to use it. #986 - [ENHANCEMENT] Query requests are now retried after network error. #1022
- [ENHANCEMENT]
prometheus/push.Pusher
now has context-aware methods that pass context to HTTP requests. #1028 - [ENHANCEMENT]
prometheus/push.Pusher
has nowError
method that retrieve last error. #1075 - [ENHANCEMENT]
testutil.GatherAndCompare
provides now readable diff on failed comparisons. #998 - [ENHANCEMENT] Query API now supports timeouts. #1014
- [ENHANCEMENT] New
MetricVec
methodDeletePartialMatch(labels Labels)
for deleting all metrics that match provided labels. #1013 - [ENHANCEMENT]
api.Config
now accepts passing custom*http.Client
. #1025 - [BUGFIX] Raise exemplar labels limit from 64 to 128 bytes as specified in OpenMetrics spec. #1091
- [BUGFIX] Allow adding exemplar to +Inf bucket to const histograms. #1094
- [ENHANCEMENT] Most
promhttp.Instrument*
middlewares now support adding exemplars to metrics. This allows hooking those to your tracing middleware that retrieves trace ID and puts it in exemplar if present. #1055 - [ENHANCEMENT] Added
testutil.ScrapeAndCompare
method. #1043 - [BUGFIX] Fixed
GopherJS
build support. #897 - [ENHANCEMENT]
⚠️ Added way to specify whatruntime/metrics
collectors.NewGoCollector
should use. SeeExampleGoCollector_WithAdvancedGoMetrics
. #1102
New Contributors ❤️
- @alissa-tung made their first contribution in #1000
- @wperron made their first contribution in #986
- @zhijian-pro made their first contribution in #1005
- @dohnto made their first contribution in #1021
- @tatsuhiro-t made their first contribution in #1028
- @sourikghosh made their first contribution in #998
- @josephwoodward made their first contribution in #1014
- @stone-z made their first contribution in #1013
- @yolossn made their first contribution in #1025
- @xrstf made their first contribution in #1039
- @dependabot made their first contribution in #1051
- @sazary made their first contribution in #1056
- @oiooj made their first contribution in #1075
- @fredr made their first contribution in #1095
- @inosato made their first contribution in #1096
- @arun-shopify made their first contribution in #1094
- @paralin made their first contribution in #897
Commits
- go.mod: Set minimal support version of go to 1.15 by @mrueg in #980
- Enable CodeQL Analysis by @kakkoyun in #982
- Added Transactional Gatherer allowed cached solutions by @bwplotka in #989
- Synchronize common files from prometheus/prometheus by @prombot in #992
- Synchronize common files from prometheus/prometheus by @prombot in #1003
- Fix deprecated
NewBuildInfoCollector
API by @alissa-tung in #1000 - Add exemplar support for const histogram by @wperron in #986
- Fixed lint warning. by @bwplotka in #1007
- .circleci: Add config to test against go1.18 by @kakkoyun in #1006
- When prefix is empty, no more dots should be written by @zhijian-pro in #1005
- Add statebot config by @kakkoyun in #1001
- Synchronize common files from prometheus/prometheus by @prombot in #1009
- Remove workaround for pre go1.15 by @johejo in #1010
- go.mod: Update dependencies by @mrueg in #1018
- Synchronize common files from prometheus/prometheus by @prombot in #1019
- Refactor apiClientImpl.DoGetFallback by @dohnto in #1021
- Added info about our slack channel. by @bwplotka in #1029
- push: Add PushContext and AddContext to Pusher by @tatsuhiro-t in #1028
- Make Query requests idempotent by @dohnto in #1022
- Bump minimum required Go version to 1.16 by @mrueg in https://github.com/prometheus/client_golang/pull/10327
- Update query API to support timeouts by @josephwoodward in #1014
- Implement deletion based on partially matching labels by @stone-z in #1013
- Document WithTimeout option for Query/QueryRange by @josephwoodward in #1037
- client: Allow configuration of http client by @yolossn in #1025
- update branch names in a few links by @xrstf in #1039
- Synchronize common files from prometheus/prometheus by @prombot in #1045
- Synchronize common files from prometheus/prometheus by @prombot in #1046
- prometheus: Fix convention violating names for generated collector metrics by @kakkoyun in #1048
- Remove -Inf buckets from go collector histograms by @kakkoyun in #1049
- Enable dependabot by @SuperQ in #1050
- Bump github.com/prometheus/common from 0.33.0 to 0.34.0 by @dependabot in #1051
- Cut v1.12.2 by @kakkoyun in #1052
- Update readme after v0.12.2 by @kakkoyun in #1053
- Synchronize common files from prometheus/prometheus by @prombot in #1061
- Update minimum supported Go version (1.17) by @SuperQ in #1062
- Add GitHub settings by @SuperQ in #1063
- Synchronize common files from prometheus/prometheus by @prombot in #1064
- Enable same linters as the Prometheus repo itself by @sazary in #1056
- Synchronize common files from prometheus/prometheus by @prombot in #1068
- Add Error API for pusher by @oiooj in #1075
- Bump github.com/prometheus/common from 0.34.0 to 0.35.0 by @dependabot in #1076
- Merge release-1.12 branch back into main by @beorn7 in #1079
- Fix version number in VERSION by @beorn7 in #1080
- Merging release branch back to main again by @beorn7 in #1081
- Raise exemplar labels limit from 64 to 128 by @bboreham in #1091
- Update documentation for exemplar label limit by @fredr in #1095
- Bump github.com/prometheus/common from 0.35.0 to 0.37.0 by @dependabot in #1098
- Bump google.golang.org/protobuf from 1.28.0 to 1.28.1 by @dependabot in #1099
- Remove ioutil by @inosato in #1096
- Bump github.com/prometheus/procfs from 0.7.3 to 0.8.0 by @dependabot in #1097
- explicitly add +inf bucket in withExemplarsMetric by @arun-shopify in #1094
- Ensure tests verify request params by @josephwoodward in #1047
- Fixed support for unordered input of exemplars. by @bwplotka in #1100
- Added exemplar support to http middleware. by @bwplotka in #1055
- fix assorted oddities found by golangci-lint by @xrstf in #1040
- Generate new Go runtime metri...
1.12.2 / 2022-05-13
- [CHANGE] Added
collectors.WithGoCollections
that allows to choose what collection of Go runtime metrics user wants: Equivalent ofMemStats
structure configured usingGoRuntimeMemStatsCollection
, new based on dedicated runtime/metrics metrics represented byGoRuntimeMetricsCollection
option, or both by specifyingGoRuntimeMemStatsCollection | GoRuntimeMetricsCollection
flag. - [CHANGE]
⚠️ Change incollectors.NewGoCollector
metrics: Reverting addition of new ~80 runtime metrics by default. You can enable this back withGoRuntimeMetricsCollection
option orGoRuntimeMemStatsCollection | GoRuntimeMetricsCollection
for smooth transition. - [BUGFIX] Fixed the bug that causes generated histogram metric names to end with
_total
.⚠️ This changes 3 metric names in the new Go collector that was reverted from default in this release.go_gc_heap_allocs_by_size_bytes_total
->go_gc_heap_allocs_by_size_bytes
,go_gc_heap_frees_by_size_bytes_total
->go_gc_heap_allocs_by_size_bytes
go_gc_pauses_seconds_total
->go_gc_pauses_seconds
.
- [CHANGE] Removed
-Inf
buckets from new Go Collector histograms.
Full Changelog: v1.12.1...v1.12.2
1.11.1 / 2022-02-15
- [SECURITY FIX] promhttp: Check validity of method and code label values #987 (Addressed
CVE-2022-21698
)
What's Changed
Full Changelog: v1.11.0...v1.11.1
1.12.1 / 2022-01-29
- [BUGFIX] Make the Go 1.17 collector concurrency-safe #969
- Use simpler locking in the Go 1.17 collector #975
- [BUGFIX] Reduce granularity of histogram buckets for Go 1.17 collector #974
- [ENHANCEMENT] API client: make HTTP reads more efficient #976
Full Changelog: v1.12.0...v1.12.1
1.12.0 / 2022-01-19
- [CHANGE] example/random: Move flags and metrics into main() #935
- [FEATURE] API client: Support wal replay status api #944
- [FEATURE] Use the runtime/metrics package for the Go collector for 1.17+ #955
- [ENHANCEMENT] API client: Update /api/v1/status/tsdb to include headStats #925
- [SECURITY FIX] promhttp: Check validity of method and code label values #962 (Addressed
CVE-2022-21698
)
What's Changed
- Address minor issues on the changelog by @kakkoyun in #879
- Synchronize common files from prometheus/prometheus by @prombot in #888
- Update status badgets by @SuperQ in #885
- Updating dependency versions + cleanup by @sivabalan in #881
- Synchronize common files from prometheus/prometheus by @prombot in #892
- add ExponentialBucketsRange function by @sbunce in #899
- Synchronize common files from prometheus/prometheus by @prombot in #909
- Update cespare/xxhash dependency by @dtrudg in #913
- example/random: Move flags and metrics into main() by @beorn7 in #935
- Fix typo by @gozeloglu in #939
- Add support for go 1.17 by @mrueg in #950
- Synchronize common files from prometheus/prometheus by @prombot in #928
- Synchronize common files from prometheus/prometheus by @prombot in #952
- API: support wal replay status api by @yeya24 in #944
- Update /api/v1/status/tsdb to include headStats by @prymitive in #925
- Use the runtime/metrics package for the Go collector for 1.17+ by @mknyszek in #955
- promhttp: Check validity of method and code label values by @kakkoyun in #962
- go.*: Update dependencies by @kakkoyun in #965
New Contributors
- @sivabalan made their first contribution in #881
- @sbunce made their first contribution in #899
- @dtrudg made their first contribution in #913
- @gozeloglu made their first contribution in #939
- @mrueg made their first contribution in #950
- @prymitive made their first contribution in #925
- @mknyszek made their first contribution in #955
Full Changelog: v1.11.0...v1.12.0
v1.11.0 / 2021-06-07
- [CHANGE] Add new collectors package. #862
- [CHANGE]
prometheus.NewExpvarCollector
is deprecated, usecollectors.NewExpvarCollector
instead. #862 - [CHANGE]
prometheus.NewGoCollector
is deprecated, usecollectors.NewGoCollector
instead. #862 - [CHANGE]
prometheus.NewBuildInfoCollector
is deprecated, usecollectors.NewBuildInfoCollector
instead. #862 - [FEATURE] Add new collector for database/sql#DBStats. #866
- [FEATURE] API client: Add exemplars API support. #861
- [ENHANCEMENT] API client: Add newer fields to Rules API. #855
- [ENHANCEMENT] API client: Add missing fields to Targets API. #856
What's Changed
- Synchronize common files from prometheus/prometheus by @prombot in #846
- Synchronize common files from prometheus/prometheus by @prombot in #849
- Synchronize common files from prometheus/prometheus by @prombot in #853
- Add newer fields to Rules API by @gouthamve in #855
- Add missing fields to targets API by @yeya24 in #856
- Synchronize common files from prometheus/prometheus by @prombot in #857
- Add exemplars API support by @yeya24 in #861
- Improve description of MaxAge in summary docs by @Dean-Coakley in #864
- Add new collectors package by @johejo in #862
- Add collector for database/sql#DBStats by @johejo in #866
- Make dbStatsCollector more DRY by @beorn7 in #867
- Change maintainers from @beorn7 to @bwplotka/@kakkoyun by @beorn7 in #873
- Document implications of negative observations by @beorn7 in #871
- Update Go modules by @SuperQ in #875
New Contributors
- @gouthamve made their first contribution in #855
Full Changelog: v1.10.0...v1.11.0
1.10.0 / 2021-03-18
- [CHANGE] Minimum required Go version is now 1.13.
- [CHANGE] API client: Add matchers to
LabelNames
andLabesValues
. #828 - [FEATURE] API client: Add buildinfo call. #841
- [BUGFIX] Fix build on riscv64. #833
What's Changed
- Add SECURITY.md by @roidelapluie in #831
- Bump prometheus/procfs to 0.3.0 to fix building on riscv64 by @zhsj in #833
- Fix typo in comments in #835
- Support matchers in labels API by @yeya24 in #828
- Add buildinfo method by @ntk148v in #841
- Update dependencies by @beorn7 in #843
- Synchronize common files from prometheus/prometheus by @prombot in #844
- Cut v1.10.0 by @beorn7 in #845
New Contributors
Full Changelog: v1.9.0...v1.10.0
1.9.0 / 2020-12-17
- [FEATURE]
NewPidFileFn
helper to create process collectors for processes whose PID is read from a file. #804 - [BUGFIX] promhttp: Prevent endless loop in
InstrumentHandler...
middlewares with invalid metric or label names. #823
What's Changed
- add the NewPidFileFn to helper by @sbookworm in #804
- Synchronize common files from prometheus/prometheus by @prombot in #809
- Synchronize common files from prometheus/prometheus by @prombot in #811
- Added example api code showing how to add auth tokens and user agents to prom client. by @bwplotka in #817
- Correct spelling: possibilites -> possibilities by @jubalh in #819
- Be more explicit about the multi-line properties of MultiError by @beorn7 in #821
- promhttp: Correctly detect invalid metric and label names by @beorn7 in #823
-  Cut release 1.9.0 by @beorn7 in #826
New Contributors
- @sbookworm made their first contribution in #804
- @jubalh made their first contribution in #819
Full Changelog: v1.8.0...v1.9.0
1.8.0 / 2020-10-15
- [CHANGE] API client: Use
time.Time
rather thanstring
for timestamps inRuntimeinfoResult
. #777 - [FEATURE] Export
MetricVec
to facilitate implementation of vectors of customMetric
types. #803 - [FEATURE API client: Support
/status/tsdb
endpoint. #773 - [ENHANCEMENT] API client: Enable GET fallback on status code 501. #802
- [ENHANCEMENT] Remove
Metric
references after reslicing to free up more memory. #784
What's Changed
- Add support for tsdb endpoint by @HimaVarsha94 in #773
- Use time.Time for timestamps in Runtimeinfo by @mxey in #777
- fix tests warning about string(int) type conversions by @johejo in #779
- Update collector comment about GC stop-the-world by @roidelapluie in #783
- Remove reference to Metric after reslicing by @hummerd in #784
- Support go 1.15 by @roidelapluie in #792
- Replace with the standard library constant. by @johncming in #793
- Synchronize common files from prometheus/prometheus by @prombot in #797
- Remove spurious commas from links to the docs site by @beorn7 in #800
- API client: Enable fallback on status code 501, too by @beorn7 in #802
- Export MetricVec (again) by @beorn7 in #803
- Cut v1.8.0 by @beorn7 in #806
New Contributors
- @HimaVarsha94 made their first contribution in #773
- @mxey made their first contribution in #777
- @hummerd made their first contribution in #784
- @johncming made their first contribution in #793
Full Changelog: v1.7.1...v1.8.0
1.7.1 / 2020-06-23
- [BUGFIX] API client: Actually propagate start/end parameters of
LabelNames
andLabelValues
. #771