Skip to content

Releases: prometheus/client_golang

v1.20.2

23 Aug 19:10
67121dc
Compare
Choose a tag to compare
  • [BUGFIX] promhttp: Unset Content-Encoding header when data is uncompressed. #1596

v1.20.1

20 Aug 11:47
2254d6c
Compare
Choose a tag to compare

This release contains the critical fix for the issue. Thanks to @geberl, @CubicrootXYZ, @zetaab and @timofurrer for helping us with the investigation!

  • [BUGFIX] process-collector: Fixed unregistered descriptor error when using process collector with PedanticRegistry on Linux machines. #1587

v1.20.0

14 Aug 14:16
73b811c
Compare
Choose a tag to compare

Thanks everyone for contributions!

⚠️ In this release we remove one (broken anyway, given Go runtime changes) metric and add three new (representing GOGC, GOMEMLIMIT and GOMAXPROCS flags) to the default collectors.NewGoCollector() collector. Given its popular usage, expect your binary to expose two additional metric.

Changes

  • [CHANGE] ⚠️ go-collector: Remove go_memstat_lookups_total metric which was always 0; Go runtime stopped sharing pointer lookup statistics. #1577
  • [FEATURE] ⚠️ go-collector: Add 3 default metrics: go_gc_gogc_percent, go_gc_gomemlimit_bytes and go_sched_gomaxprocs_threads as those are recommended by the Go team. #1559
  • [FEATURE] go-collector: Add more information to all metrics' HELP e.g. the exact runtime/metrics sourcing each metric (if relevant). #1568 #1578
  • [FEATURE] testutil: Add CollectAndFormat method. #1503
  • [FEATURE] histograms: Add support for exemplars in native histograms. #1471
  • [FEATURE] promhttp: Add experimental support for zstd on scrape, controlled by the request Accept-Encoding header. #1496
  • [FEATURE] api/v1: Add WithLimit parameter to all API methods that supports it. #1544
  • [FEATURE] prometheus: Add support for created timestamps in constant histograms and constant summaries. #1537
  • [FEATURE] process-collectors: Add network usage metrics: process_network_receive_bytes_total and process_network_transmit_bytes_total. #1555
  • [FEATURE] promlint: Add duplicated metric lint rule. #1472
  • [BUGFIX] promlint: Relax metric type in name linter rule. #1455
  • [BUGFIX] promhttp: Make sure server
    instrumentation wrapping supports new and future extra responseWriter methods. #1480
  • [BUGFIX] testutil: Functions using compareMetricFamilies are now failing if filtered metricNames are not in the input. #1424
All commits
  • feat(prometheus/testutil/promlint/validations): refine lintMetricType… by @foehammer127 in #1455
  • Bump github.com/prometheus/client_golang from 1.18.0 to 1.19.0 in /examples/middleware by @dependabot in #1457
  • Bump github.com/prometheus/client_model from 0.5.0 to 0.6.0 by @dependabot in #1458
  • Bump golang.org/x/sys from 0.16.0 to 0.17.0 by @dependabot in #1459
  • Bump github.com/prometheus/client_golang from 1.18.0 to 1.19.0 in /tutorial/whatsup by @dependabot in #1461
  • Merge Release 1.19 back to main by @ArthurSens in #1462
  • Bump the github-actions group with 2 updates by @dependabot in #1456
  • Bump google.golang.org/protobuf from 1.32.0 to 1.33.0 by @dependabot in #1466
  • Bump google.golang.org/protobuf from 1.32.0 to 1.33.0 in /examples/middleware by @dependabot in #1467
  • Bump google.golang.org/protobuf from 1.32.0 to 1.33.0 in /tutorial/whatsup by @dependabot in #1469
  • Add LintDuplicateMetric to promlint by @bboreham in #1472
  • Auto-update Go Collector Metrics for new Go versions by @SachinSahu431 in #1476
  • Implement Unwrap() for responseWriterDelegator by @igor-drozdov in #1480
  • Bump golang.org/x/sys from 0.17.0 to 0.18.0 by @dependabot in #1485
  • Bump github.com/prometheus/procfs from 0.12.0 to 0.13.0 by @dependabot in #1486
  • ci: Remove hardcoded supported Go versions from go.yml by @SachinSahu431 in #1489
  • feat: metrics generation workflow by @SachinSahu431 in #1481
  • fix: remove redundant go module in middleware example by @majolo in #1492
  • chore: Refactor how base metrics are added to Sched metrics by @ArthurSens in #1483
  • gocollector: Add regex option to allow collection of debug runtime metrics by @ArthurSens in #1389
  • Bump github.com/prometheus/common from 0.48.0 to 0.52.3 by @dependabot in #1498
  • chore: fix function name in comment by @oftenoccur in #1497
  • build(deps): bump golang.org/x/net from 0.20.0 to 0.23.0 in /tutorial/whatsup by @dependabot in #1501
  • build(deps): bump golang.org/x/net from 0.22.0 to 0.23.0 by @dependabot in #1502
  • feat(dependency): replace go-spew package by @dongjiang1989 in #1499
  • build(deps): bump github.com/prometheus/common from 0.52.3 to 0.53.0 by @dependabot in #1504
  • build(deps): bump github.com/cespare/xxhash/v2 from 2.2.0 to 2.3.0 by @dependabot in #1505
  • build(deps): bump google.golang.org/protobuf from 1.33.0 to 1.34.0 by @dependabot in #1506
  • build(deps): bump golang.org/x/sys from 0.18.0 to 0.19.0 by @dependabot in #1507
  • build(deps): bump github.com/prometheus/client_model from 0.6.0 to 0.6.1 by @dependabot in #1508
  • build(deps): bump github.com/prometheus/common from 0.48.0 to 0.53.0 in /tutorial/whatsup by @dependabot in #1509
  • improved code more clean by @lilijreey in #1511
  • build(deps): bump the github-actions group with 3 updates by @dependabot in #1510
  • [CI]: Add Concurrency Grouping to GitHub Workflows by @Ishani217 in #1444
  • Add CollectAndFormat to testutil, allowing caller to assert as they want to on the exported metric by @jcass8695 in #1503
  • testutil compareMetricFamilies: make less error-prone by @leonnicolas in #1424
  • improved code more clean use time.IsZero() replace t = time.Time{} by @lilijreey in #1515
  • add native histogram exemplar support by @fatsheep9146 in #1471
  • Synchronize common files from prometheus/prometheus by @prombot in #1514
  • build(deps): bump golang.org/x/sys from 0.19.0 to 0.20.0 by @dependabot in #1523
  • build(deps): bump google.golang.org/protobuf from 1.34.0 to 1.34.1 by @dependabot in #1522
  • Synchronize common files from prometheus/prometheus by @prombot in #1524
  • Add PR template for changelog automation by @SachinSahu431 in #1517
  • Auto label PRs by @SachinSahu431 in #1518
  • Fix: Auto label PRs #1518 by @SachinSahu431 in #1525
  • build(deps): bump github.com/prometheus/procfs from 0.13.0 to 0.15.1 by @dependabot in #1527
  • ci: Group all changelog-related CI jobs into single one by @ArthurSens in #1526
  • Synchronize common files from prometheus/prometheus by @prombot in #1530
  • Remove synchronize trigger from changelog workflow by @SachinSahu431 in #1532
  • feat: Support zstd compression by @mrueg in #1496
  • Fix golangci-lint config by @SuperQ in #1536
  • build(deps): bump github.com/prometheus/client_golang from 1.19.0 to 1.19.1 in /tutorial/whatsup by @dependabot in #1529
  • Synchronize common files from prometheus/prometheus by @prombot in #1531
  • Cleanup NOTICE file by @SuperQ in #1541
  • Remove inlined upstream code by @SuperQ in #1539
  • Synchronize common files from prometheus/prometheus by @prombot in #1545
  • client: Add Option to provide limit query param for APIs that support it by @abbyssoul in #1544
  • Allow creating constant histogram and summary metrics with a created timestamp by @swar8080 in #1537
  • Update README.md by @bwplotka in #1556
  • Temporarily remove required CI job for changelog. by @bwplotka in #1560
  • build(deps): bump github.com/prometheus/common from 0.53.0 to 0.55.0 in /tutorial/whatsup by @dependabot in #1549
  • build(deps): bump golang.org/x/sys from 0.20.0 to 0.21.0 by @dependabot in #1552
  • build(deps): bump github.com/kl...
Read more

v1.19.1

09 May 12:01
6e3f4b1
Compare
Choose a tag to compare

What's Changed

  • Security patches for golang.org/x/sys and google.golang.org/protobuf

New Contributors

Full Changelog: v1.19.0...v1.19.1

v1.19.0

27 Feb 18:44
77d4003
Compare
Choose a tag to compare

What's Changed

The module prometheus/common v0.48.0 introduced an incompatibility when used together with client_golang (See #1448 for more details). If your project uses client_golang and you want to use prometheus/common v0.48.0 or higher, please update client_golang to v1.19.0.

  • [CHANGE] Minimum required go version is now 1.20 (we also test client_golang against new 1.22 version). #1445 #1449
  • [FEATURE] collectors: Add version collector. #1422 #1427

New Contributors

Full Changelog: v1.18.0...v1.19.0

v1.18.0

27 Dec 23:13
Compare
Choose a tag to compare

What's Changed

  • [FEATURE] promlint: Allow creation of custom metric validations. #1311
  • [FEATURE] Go programs using client_golang can be built in wasip1 OS. #1350
  • [BUGFIX] histograms: Add timer to reset ASAP after bucket limiting has happened. #1367
  • [BUGFIX] testutil: Fix comparison of metrics with empty Help strings. #1378
  • [ENHANCEMENT] Improved performance of MetricVec.WithLabelValues(...). #1360

New Contributors

Full Changelog: v1.17.0...v1.18.0

v1.17.0

27 Sep 12:52
fa1408e
Compare
Choose a tag to compare

What's Changed

  • [CHANGE] Minimum required go version is now 1.19 (we also test client_golang against new 1.21 version). #1325
  • [FEATURE] Add support for Created Timestamps in Counters, Summaries and Historams. #1313
  • [ENHANCEMENT] Enable detection of a native histogram without observations. #1314
Commits
  • Merge v1.16.0 to main by @bwplotka in #1293
  • Synchronize common files from prometheus/prometheus by @prombot in #1297
  • ci: define minimal permissions to GitHub workflows by @diogoteles08 in #1295
  • Do not allocate memory when there's no constraints by @Okhoshi in #1296
  • Bump golang.org/x/sys from 0.8.0 to 0.9.0 by @dependabot in #1306
  • Bump google.golang.org/grpc from 1.45.0 to 1.53.0 in /tutorial/whatsup by @dependabot in #1307
  • histogram: Enable detection of a native histogram without observations by @beorn7 in #1314
  • Bump github.com/prometheus/procfs from 0.10.1 to 0.11.0 by @dependabot in #1305
  • Synchronize common files from prometheus/prometheus by @prombot in #1302
  • Fix data-race in metric without code and method but with WithLabelFromCtx by @tigrato in #1318
  • Add missing tick "`" in README by @ZiViZiViZ in #1321
  • Bump golang.org/x/sys from 0.9.0 to 0.10.0 by @dependabot in #1320
  • Bump github.com/prometheus/procfs from 0.11.0 to 0.11.1 by @dependabot in #1319
  • docs: trivial grammar fixes to improve readability in promauto Godoc by @sengi in #1322
  • Add Go 1.21 support by @kakkoyun in #1325
  • Bump client_model by @ArthurSens in #1323
  • histogram docs: Fixed minor nit. by @bwplotka in #1324
  • Update building by @SuperQ in #1326
  • Bump golang.org/x/sys from 0.10.0 to 0.11.0 by @dependabot in #1331
  • Bump github.com/prometheus/client_golang from 1.15.1-0.20230416215738-0963f595c689 to 1.16.0 in /tutorial/whatsup by @dependabot in #1329
  • Bump github.com/prometheus/client_golang from 1.13.1 to 1.16.0 in /examples/middleware by @dependabot in #1328
  • Bump github.com/prometheus/common from 0.42.0 to 0.44.0 by @dependabot in #1284
  • Bump github.com/prometheus/common from 0.42.0 to 0.44.0 in /tutorial/whatsup by @dependabot in #1330
  • Bump google.golang.org/protobuf from 1.30.0 to 1.31.0 by @dependabot in #1304
  • Synchronize common files from prometheus/prometheus by @prombot in #1332
  • Synchronize common files from prometheus/prometheus by @prombot in #1338
  • Cleanup golangci-lint errcheck by @SuperQ in #1339
  • Add go_godebug_non_default_behavior_tlsmaxrsasize_events_total by @alexandear in #1348
  • Extend Counters, Summaries and Histograms with creation timestamp by @ArthurSens in #1313
  • Fix typos in comments, tests, and errors by @alexandear in #1346
  • Deprecated comment should begin with "Deprecated:" by @alexandear in #1347
  • Add changelog entry for 1.17 by @ArthurSens in #1352

New Contributors

Full Changelog: v1.16.0...v1.17.0

v1.16.0

15 Jun 10:48
3583c1e
Compare
Choose a tag to compare

What's Changed

  • [BUGFIX] api: Switch to POST for LabelNames, Series, and QueryExemplars. #1252
  • [BUGFIX] api: Fix undefined execution order in return statements. #1260
  • [BUGFIX] native histograms: Fix bug in bucket key calculation. #1279
  • [ENHANCEMENT] Reduce constrainLabels allocations for all metrics. #1272
  • [ENHANCEMENT] promhttp: Add process start time header for scrape efficiency. #1278
  • [ENHANCEMENT] promlint: Improve metricUnits runtime. #1286
Commits

New Contributors

Full Changelog: v1.15.1...v1.16.0

v1.15.1

03 May 09:50
4bbb297
Compare
Choose a tag to compare

Changes

  • [BUGFIX] Fixed promhttp.Instrument* handlers wrongly trying to attach exemplar to unsupported metrics (e.g. summary),
    causing panics #1253

Full Changelog: v1.15.0...v1.15.1

v1.15.0

13 Apr 11:40
d7896d4
Compare
Choose a tag to compare

Changed

[BUGFIX] Fix issue with atomic variables on ppc64le #1171
[BUGFIX] Support for multiple samples within same metric #1181
[BUGFIX] Bump golang.org/x/text to v0.3.8 to mitigate CVE-2022-32149 #1187
[ENHANCEMENT] Add exemplars and middleware examples #1173
[ENHANCEMENT] Add more context to "duplicate label names" error to enable debugging #1177
[ENHANCEMENT] Add constrained labels and constrained variant for all MetricVecs #1151
[ENHANCEMENT] Moved away from deprecated github.com/golang/protobuf package #1183
[ENHANCEMENT] Add possibility to dynamically get label values for http instrumentation #1066
[ENHANCEMENT] Add ability to Pusher to add custom headers #1218
[ENHANCEMENT] api: Extend and improve efficiency of json-iterator usage #1225
[ENHANCEMENT] Added (official) support for go 1.20 #1234
[ENHANCEMENT] timer: Added support for exemplars #1233
[ENHANCEMENT] Filter expected metrics as well in CollectAndCompare #1143
[ENHANCEMENT] ⚠️ Only set start/end if time is not Zero. This breaks compatibility in experimental api package. If you strictly depend on empty time.Time as actual value, the behavior is now changed #1238

All commits

New Contributors

Full Changelog: v1.14.0...v1.15.0