Commit graph

11805 commits

Author SHA1 Message Date
dependabot[bot] adde7db85f
build(deps): bump bufbuild/buf-lint-action from 1.0.3 to 1.1.0
Bumps [bufbuild/buf-lint-action](https://github.com/bufbuild/buf-lint-action) from 1.0.3 to 1.1.0.
- [Release notes](https://github.com/bufbuild/buf-lint-action/releases)
- [Commits](bd48f53224...044d13acb1)

---
updated-dependencies:
- dependency-name: bufbuild/buf-lint-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-01 23:32:17 +00:00
Matthieu MOREL 7eaefcf379
ci(lint): enable errorlint on scrape (#12923)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
Signed-off-by: Jesus Vazquez <jesusvazquez@users.noreply.github.com>
Co-authored-by: Jesus Vazquez <jesusvazquez@users.noreply.github.com>
2023-11-01 20:06:46 +01:00
George Krajcsovits e399395b01
Native histograms vs labels (#13005)
* Document le and quantile label transition due to native histograms

Fixes: #12984

For full explanation see the related issue. The le and quantile labels
are formatted as float with trailing .0 for whole number values when
native histograms is enabled, e.g. 10.0. This changes the resulting series
in Prometheus if previously we scraped the whole number itself, e.g. 10
over the text format.

Signed-off-by: György Krajcsovits <gyorgy.krajcsovits@grafana.com>

---------

Signed-off-by: György Krajcsovits <gyorgy.krajcsovits@grafana.com>
Signed-off-by: George Krajcsovits <krajorama@users.noreply.github.com>
2023-11-01 18:30:34 +01:00
Björn Rabenstein a43669e611
Merge pull request #12928 from alexandear/ci-enable-godot
ci(lint): enable godot; append dot at the end of comments
2023-11-01 17:15:41 +01:00
Matthias Loibl 6518d6fdec
Merge pull request #13036 from prometheus/codeowners-mixins
Assign new code owners for prometheus-mixin
2023-11-01 11:47:58 +01:00
Julien Pivotto 79bbfe601f
Merge pull request #13060 from roidelapluie/trackTimestampsStaleness
scrape: Added trackTimestampsStaleness configuration option
2023-10-31 19:34:31 -04:00
Charles Korn 5184368db6
Fix issue where chainSampleIterator can obscure errors (#13006)
* Fix issue where `chainSampleIterator` can obscure errors

Signed-off-by: Charles Korn <charles.korn@grafana.com>

* Address PR feedback.

Signed-off-by: Charles Korn <charles.korn@grafana.com>

---------

Signed-off-by: Charles Korn <charles.korn@grafana.com>
2023-10-31 22:35:17 +00:00
Julien Pivotto 84aadfc45b scrape: Added trackTimestampsStaleness configuration option
Add the ability to track staleness when an explicit timestamp is set.
Useful for cAdvisor.

Signed-off-by: Julien Pivotto <roidelapluie@o11y.eu>
2023-10-31 16:58:42 -04:00
Julien Pivotto 12dd0cb53b
Merge pull request #13034 from charleskorn/rule-evaluation-logs
Include trace ID in log lines emitted during rule evaluation
2023-10-31 15:53:17 -04:00
Julien Pivotto f568221610
Merge pull request #13057 from prometheus/release-2.48
Merge release-2.48 back into main
2023-10-31 15:24:39 -04:00
Oleksandr Redko fa90ca46e5 ci(lint): enable godot; append dot at the end of comments
Signed-off-by: Oleksandr Redko <Oleksandr_Redko@epam.com>
2023-10-31 19:53:38 +02:00
Björn Rabenstein 96179fe06a
Merge pull request #13055 from prometheus/beorn7/storage
storage: Fix mixed samples handling in sampleRing
2023-10-31 17:10:24 +01:00
beorn7 4696b46dd5 storage: Fix mixed samples handling in sampleRing
Two issues are fixed here, that lead to the same problem:

1. If `newSampleRing` is called with an unknown ValueType including
   ValueNone, we have initialized the interface buffer (`iBuf`).
   However, we would still use a specialized buffer for the first
   sample, opportunistically assuming that we might still not
   encounter mixed samples and we should go down the more efficient
   road.

2. If the `sampleRing` is `reset`, we leave all buffers alone,
   including `iBuf`, which is generally fine, but not for `iBuf`, see
   below.

In both cases, `iBuf` already contains values, but we will fill one of
the specialized buffers first. Once we then actually encounter mixed
samples, the content of the specialized buffer is copied into `iBuf`
using `append`. That's by itself the right idea because `iBuf` might
be `nil`, and even if not, it might or might not have the right
capacity. However, this approach assumes that `iBuf` is empty, or more
precisely has a length of zero.

This commit makes sure that `iBuf` does not get needlessly initialized
in `newSampleRing` and that it is emptied upon `reset`.

A test case is added to demonstrate both issues above.

Signed-off-by: beorn7 <beorn@grafana.com>
2023-10-31 16:18:09 +01:00
dependabot[bot] 16c8d445fd
build(deps): bump github/codeql-action from 1.0.26 to 2.21.9 (#12915)
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 1.0.26 to 2.21.9.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/v1.0.26...ddccb873888234080b77e9bc2d4764d5ccaaccf9)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-31 12:49:04 +01:00
dependabot[bot] 99a9602a87
build(deps): bump actions/checkout from 3.0.0 to 4.1.0 (#12917)
Bumps [actions/checkout](https://github.com/actions/checkout) from 3.0.0 to 4.1.0.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v3...8ade135a41bc03ea155e62e844d188df1ea18608)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-31 12:48:17 +01:00
Matthieu MOREL 68e6b4dd34
ci(lint): enable errorlint on discovery (#12918)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2023-10-31 12:46:55 +01:00
Oleksandr Redko 8e5f0387a2
ci(lint): enable nolintlint and remove redundant comments (#12926)
Signed-off-by: Oleksandr Redko <Oleksandr_Redko@epam.com>
2023-10-31 12:35:13 +01:00
Matthieu MOREL 1ec6e407d0
ci(lint): enable errorlint on storage (#12935)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2023-10-31 12:15:30 +01:00
Matthias Loibl de836737ad
Assign new code owners for prometheus-mixin
Signed-off-by: Matthias Loibl <mail@matthiasloibl.com>
2023-10-31 12:05:31 +01:00
Charles Korn 9a8dbf06bc
Address PR feedback
Co-authored-by: Julien Pivotto <roidelapluie@o11y.eu>
Signed-off-by: Charles Korn <charleskorn@users.noreply.github.com>
2023-10-31 09:56:05 +11:00
Bryan Boreham 6722a5bb86
Merge pull request #13043 from bboreham/remove-h
PromQL: reduce garbage in range-query evaluation
2023-10-30 16:40:20 +00:00
Julien Pivotto 0c1e447d68
Exclude alerts: improve documentation (#13046)
Signed-off-by: Julien Pivotto <roidelapluie@o11y.eu>
2023-10-30 15:08:11 +00:00
Julien Pivotto 156a23d06d
Merge pull request #12999 from rajagopalanand/filter-alerts
Adding a query parameter to filter out active alerts
2023-10-30 13:10:24 +01:00
Bryan Boreham 49c5e7afe1 PromQL: reduce garbage in range-query evaluation
The temporary variable was allocated on the heap, and it is unnecessary.

Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
2023-10-29 19:45:06 +00:00
Björn Rabenstein e9b94515ca
Merge pull request #13039 from zenador/make-anno-err-visible
Make it possible to unwrap annotation error
2023-10-27 23:31:04 +02:00
Levi Harrison 8db8ad1bae
bump version (#13032)
Signed-off-by: Levi Harrison <git@leviharrison.dev>
2023-10-27 23:25:56 +02:00
Jeanette Tan 754e7df97e Make it possible to unwrap annotation errors
Signed-off-by: Jeanette Tan <jeanette.tan@grafana.com>
2023-10-28 01:11:49 +08:00
Charles Korn 667a1efb04
Add trace ID to log lines emitted during rule evaluation
Signed-off-by: Charles Korn <charles.korn@grafana.com>
2023-10-26 16:14:54 +11:00
Charles Korn fc132a4557
Use common logger instance to reduce duplication in Group.Eval()
Signed-off-by: Charles Korn <charles.korn@grafana.com>
2023-10-26 16:14:12 +11:00
Bryan Boreham 05356e76de
Build: remove -a from build to speed up rebuilds (#13026)
I think this is a hold-over from when Go was less careful about separating architectures.

Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
2023-10-25 16:06:17 +01:00
Levi Harrison 7bdabb01d2
Release 2.48.0-rc.1 (#13028)
Signed-off-by: Levi Harrison <git@leviharrison.dev>
2023-10-25 12:33:03 +01:00
Björn Rabenstein c8332a852e
Merge pull request #13031 from zenador/hide-pos-info-for-warnings
Hide position info for warnings when position is unknown
2023-10-25 13:08:35 +02:00
Jeanette Tan 72cc93d225 Hide position info for warnings when position is unknown (empty query string passed in)
Signed-off-by: Jeanette Tan <jeanette.tan@grafana.com>
2023-10-25 18:10:42 +08:00
zenador 80e977aae6
Remove NewPossibleNonCounterInfo and minimise creating empty annotations (#13012)
* Remove NewPossibleNonCounterInfo until it can be made more efficient, and avoid creating empty annotations as much as possible

Signed-off-by: Jeanette Tan <jeanette.tan@grafana.com>
2023-10-24 17:36:07 +01:00
Björn Rabenstein f2e02c52db
Merge pull request #12958 from ptodev/prefer-to-not-register-metrics-globally-scrape
Metrics in the "scrape" package can now be registered with a non-default registry
2023-10-24 13:40:04 +02:00
Márcio Carôso dff1c395f6
Expose --storage.tsdb.retention.time in metric prometheus_tsdb_retention_limit_seconds (#12986)
* Expose --storage.tsdb.retention.time in a metric

Signed-off-by: Marcio Caroso <msscaroso@gmail.com>

---------

Signed-off-by: Marcio Caroso <msscaroso@gmail.com>
2023-10-24 13:34:42 +02:00
Björn Rabenstein 059f7f0738
Merge pull request #12997 from prometheus/wal-samples-size
TSDB: Pre-size buffer to read samples from WAL
2023-10-24 13:26:06 +02:00
Julien Pivotto b8f5b314ae
Merge pull request #13014 from dannykopping/dannykopping/refactor
Refactor `rules/manager.go` into separate concerns
2023-10-24 01:32:41 +02:00
Gilles De Mey 4912c82ed0
ui: Pass unexpected boot errors to StartingContent component (#13016)
Signed-off-by: Gilles De Mey <gilles.de.mey@gmail.com>
2023-10-23 14:17:53 +02:00
Yannick te Kulve a807dd1616
Bump prometheus common to v0.45.0 (#13003)
* Bump prometheus common to v0.44.0

Signed-off-by: Yannick te Kulve <738464+YannickTeKulve@users.noreply.github.com>

* Fix golang_protobuf_extensions sum

Signed-off-by: Yannick te Kulve <738464+YannickTeKulve@users.noreply.github.com>

* Remove unused deps

Signed-off-by: Yannick te Kulve <738464+YannickTeKulve@users.noreply.github.com>

---------

Signed-off-by: Yannick te Kulve <738464+YannickTeKulve@users.noreply.github.com>
2023-10-22 16:42:01 -04:00
Danny Kopping 498b836654
Refactoring manager.go into separate concerns
Signed-off-by: Danny Kopping <danny.kopping@grafana.com>
2023-10-21 11:11:11 +02:00
Rens Groothuijsen 122f9506e9
Set test group interval default to evaluation interval (#13011)
Signed-off-by: Rens Groothuijsen <l.groothuijsen@alumni.maastrichtuniversity.nl>
2023-10-20 21:32:46 +11:00
Bartlomiej Plotka 6d083312e7
native-histograms: Fixed PrometheusProto scrape format preference. (#13010)
Broken by https://github.com/prometheus/prometheus/pull/12738. We have to update both global variables (as GlobalConfig is not a pointer here).
DefaultConfig is used when no global: section is provided, whereas DefaultGlobalConfig is used when it's provided and for individual scrape configs.

Reported on #prometheus-dev (thanks to @beorn7): https://cloud-native.slack.com/archives/C01AUBA4PFE/p1697733267205649

Tested manually, it would be nice to add test at some point (quick fix for now).

Signed-off-by: bwplotka <bwplotka@gmail.com>
2023-10-19 20:38:45 +01:00
Björn Rabenstein 8a3af74121
Merge pull request #13008 from prometheus/beorn7/protobuf
prompb: Clarify things around optional fields in proto3 and gogo-protobuf
2023-10-19 21:09:50 +02:00
beorn7 a5abd92541 prompb: Remove gogoproto.nullable) = true] from created_timestamp
In proto3, this doesn't change anything. However, since the
`CreatedTimestamp` field is generated as a pointer
(`*types.Timestamp`), we are still able to detect the unset state.
(This is in contrast to the `timestamp_ms` field, which is a plain
int64, for which we cannot enforce generation as a pointer, see
comment updated in the previous commit for future actions.)

Signed-off-by: beorn7 <beorn@grafana.com>
2023-10-19 17:59:07 +02:00
beorn7 b428416f06 textparse: Update comment about timestamp_ms protobuf parsing
By now, we know better what the plan is.

Signed-off-by: beorn7 <beorn@grafana.com>
2023-10-19 17:54:42 +02:00
Julien Pivotto 88de3d4491
Merge pull request #13007 from zenador/update-tsdb-ooo-head-read-overflow
Very minor refactor of the integer overflow fix
2023-10-19 10:15:39 +02:00
Jeanette Tan 71a36d2396 Very minor refactor of the integer overflow fix
Signed-off-by: Jeanette Tan <jeanette.tan@grafana.com>
2023-10-19 13:17:46 +08:00
Arthur Silva Sens ef8e6ae780
Parse created timestamps from Prometheus Protobuf (#12973)
Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>
2023-10-18 19:04:02 +01:00
Björn Rabenstein 4d50e5d122
Merge pull request #12609 from marctc/query_max_samples_float_histogram
promql(histograms): Change sample total calculation for histograms
2023-10-18 16:40:18 +02:00