Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sync upstream prometheus to latest HEAD #819

Merged
merged 19 commits into from
Jan 10, 2025

Conversation

janhorstmann and others added 19 commits December 13, 2024 16:32
Update and rewrite the mixin dashboards to use the grafonnet ([1])
library.
Grafana has deprecated angular plugins ([2]) as used by grafonnet-lib
([3]) with removal pending for grafana version 12.
Additionally grafonnet-lib is deprecated/unmaintained in favor of
grafonnet.
Therefore the mixin dashboards have been updated to use grafonnet.

Closes: prometheus/prometheus#14404

[1]
https://github.com/grafana/grafonnet

[2]
https://grafana.com/docs/grafana/latest/developers/angular_deprecation/

[3]
https://github.com/grafana/grafonnet-lib

Signed-off-by: Jan Horstmann <[email protected]>
* `RuleConcurrencyController`: Add `SplitGroupIntoBatches` method
The concurrency implementation can now return a slice of concurrent rule batches
This allows for additional concurrency as opposed to the current interface which is limited by the order in which the rules have been loaded

Also, I removed the `concurrencyController` attribute from the group. That information is duplicated in the opts.RuleConcurrencyController` attribute, leading to some confusing behavior, especially in tests.

Signed-off-by: Julien Duchesne <[email protected]>

* Address PR comments

Signed-off-by: Julien Duchesne <[email protected]>

* Apply suggestions from code review

Co-authored-by: gotjosh <[email protected]>
Signed-off-by: Julien Duchesne <[email protected]>

---------

Signed-off-by: Julien Duchesne <[email protected]>
Signed-off-by: Julien Duchesne <[email protected]>
Co-authored-by: gotjosh <[email protected]>
* Rules: Store dependencies instead of boolean
To improve prometheus/prometheus#15681 further, we'll need to store the dependencies and dependents of each

Right now, if a rule has both (at least 1) dependents and dependencies, it is not possible to determine the order to run the rules and they must all run sequentially

This PR only changes the dependents and dependencies attributes of rules, it does not implement a new topological sort algorithm

Signed-off-by: Julien Duchesne <[email protected]>

* Store a slice of Rule instead

Signed-off-by: Julien Duchesne <[email protected]>

* Add `BenchmarkRuleDependencyController_AnalyseRules` for future reference

Signed-off-by: Julien Duchesne <[email protected]>

---------

Signed-off-by: Julien Duchesne <[email protected]>
This commit introduced two field in `/status` endpoint:
- The node currently serving the request.
- The current server time for debugging time drift issues.

fixes #15394.

Signed-off-by: sujal shah <[email protected]>
api: Add two new fields Hostname and ServerTime.
Signed-off-by: beorn7 <[email protected]>
tsdb: expose remaining ListPostings Length

Signed-off-by: Ben Ye <[email protected]>

---------

Signed-off-by: Ben Ye <[email protected]>
Besides making eval_ordered ignore annotations, this does the following:

- Adds a test to verify that eval_ordered indeed ignores an info
  annotations now, while eval complains about it, eval_info recognizes
  it and, eval_warn flags the missing of the warn annotation.

- Refactors the annotation check into its own method.

- Moves closing of the query to the appropriate place where it wasn't
  so far.

Signed-off-by: beorn7 <[email protected]>
This also improves the documentation in the following ways:

- Clarifies that `eval` requires no annotations.

- Clarifies that `eval_ordered` ignores annotations.

- Clarifies that `eval_ordered` does not work with matrix returns
  (which could very well be created by instant queries).

- Clarifies that there are more `eval` commands than just `eval`.

- Improves wording for `eval_ordered`.

- Replaces `...` by the typographical correct `…`.

- Fixes a numerical error in an example.

Signed-off-by: beorn7 <[email protected]>
promqltest: let eval_ordered ignore annotations and improve documentation
This test was added in the Grafana fork a while ago: #714 and has been helpful to make sure we can safely terminate rule evaluations early
The new rule evaluation logic (done here: prometheus/prometheus#15681) does not have the bug, but the test was useful to verify that

Signed-off-by: Julien Duchesne <[email protected]>
* Add additional tests for operators over incompatible nhcb

Signed-off-by: Fiona Liao <[email protected]>
…5711)

fix aggr_over_time with histograms

Signed-off-by: Neeraj Gartia <[email protected]>

---------

Signed-off-by: Neeraj Gartia <[email protected]>
add limit param to query and rangeQuery

---------

Signed-off-by: Vandit Singh <[email protected]>
Signed-off-by: Vandit Singh <[email protected]>
Co-authored-by: Björn Rabenstein <[email protected]>
Fix issues raised by staticcheck

We are not enabling staticcheck explicitly, though, because it has too many false positives.

---------

Signed-off-by: Arve Knudsen <[email protected]>
@CLAassistant
Copy link

CLAassistant commented Jan 10, 2025

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.
3 out of 10 committers have signed the CLA.

✅ beorn7
✅ aknuds1
✅ fionaliao
❌ sujalshah-bit
❌ janhorstmann
❌ yeya24
❌ juliusv
❌ metalmatze
❌ NeerajGartia21
❌ Vandit1604
You have signed the CLA already but the status is still pending? Let us recheck it.

@julienduchesne julienduchesne marked this pull request as ready for review January 10, 2025 01:55
@julienduchesne julienduchesne merged commit a1e2bcf into main Jan 10, 2025
7 of 8 checks passed
@julienduchesne julienduchesne deleted the julienduchesne/latest-head branch January 10, 2025 02:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.