mirror of
https://github.com/prometheus/prometheus.git
synced 2026-02-11 10:51:03 +01:00
* `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 <julien.duchesne@grafana.com> * Address PR comments Signed-off-by: Julien Duchesne <julien.duchesne@grafana.com> * Apply suggestions from code review Co-authored-by: gotjosh <josue.abreu@gmail.com> Signed-off-by: Julien Duchesne <julienduchesne@live.com> --------- Signed-off-by: Julien Duchesne <julien.duchesne@grafana.com> Signed-off-by: Julien Duchesne <julienduchesne@live.com> Co-authored-by: gotjosh <josue.abreu@gmail.com>
23 lines
974 B
YAML
23 lines
974 B
YAML
groups:
|
|
- name: chain
|
|
rules:
|
|
# Evaluated concurrently, no dependencies
|
|
- record: job:http_requests:rate1m
|
|
expr: sum by (job)(rate(http_requests_total[1m]))
|
|
- record: job:http_requests:rate5m
|
|
expr: sum by (job)(rate(http_requests_total[1m]))
|
|
|
|
# Evaluated sequentially, dependents and dependencies
|
|
- record: job1:http_requests:rate1m
|
|
expr: job:http_requests:rate1m{job="job1"}
|
|
- record: job1_cluster1:http_requests:rate1m
|
|
expr: job1:http_requests:rate1m{cluster="cluster1"}
|
|
|
|
# Evaluated concurrently, no dependents
|
|
- record: job1_cluster2:http_requests:rate1m
|
|
expr: job1:http_requests:rate1m{cluster="cluster2"}
|
|
- record: job1_cluster1_namespace1:http_requests:rate1m
|
|
expr: job1_cluster1:http_requests:rate1m{namespace="namespace1"}
|
|
- record: job1_cluster1_namespace2:http_requests:rate1m
|
|
expr: job1_cluster1:http_requests:rate1m{namespace="namespace2"}
|