Peter Štibraný
44904a663c
Rename "execution time" to "evaluation time". ( #401 )
...
Signed-off-by: Peter Štibraný <pstibrany@gmail.com>
2023-01-19 15:11:44 +00:00
Peter Štibraný
806e71e828
Option to align rule group's evaluation time to interval ( #400 )
...
* Allow rule groups evaluation timestamp to be aligned on the evaluation interval.
Signed-off-by: Peter Štibraný <pstibrany@gmail.com>
2023-01-19 14:51:26 +01:00
fayzal-g
7aef6e28fe
Merge remote-tracking branch 'upstream/main' into merge-jan-16-upstream
2023-01-16 15:24:00 +00:00
Ganesh Vernekar
d82ea2eb1c
Merge pull request #11838 from codesome/histo-rec
...
rules: Support native histograms
2023-01-12 12:35:15 +05:30
Ganesh Vernekar
53a5071a72
rules: Support native histograms
...
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2023-01-10 19:07:24 +05:30
György Krajcsovits
103c4fd289
Merge remote-tracking branch 'upstream/main' into main
...
# Conflicts:
# .github/workflows/ci.yml
# tsdb/block.go
# tsdb/compact.go
# tsdb/compact_test.go
# tsdb/head_read.go
# tsdb/index/index.go
# tsdb/ooo_head_read.go
# tsdb/querier_test.go
2023-01-08 14:55:44 +01:00
Ganesh Vernekar
f1a332c496
rules: Consider ErrTooOldSample in expected errors
...
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2023-01-05 14:49:30 +05:30
Bryan Boreham
3c7de69059
storage: allow re-use of iterators
...
Patterned after `Chunk.Iterator()`: pass the old iterator in so it
can be re-used to avoid allocating a new object.
(This commit does not do any re-use; it is just changing all the method
signatures so re-use is possible in later commits.)
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
2022-12-15 18:32:45 +00:00
Julius Volz
1a2c645dfa
Correctly handle error unwrapping in rules and remote write receiver
...
errors.Unwrap() actually dangerously returns nil if the error does not have an
Unwrap() method, which is the case in at least one of these places where I
noticed that no error was being logged at all when it should have.
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2022-12-15 12:50:55 +01:00
Jeanette Tan
51cf003517
Merge remote-tracking branch 'upstream/main'
...
Signed-off-by: Jeanette Tan <jeanette.tan@grafana.com>
2022-11-23 01:39:23 +08:00
Ganesh Vernekar
648be89822
Merge remote-tracking branch 'upstream/main' into fix-conflict
...
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2022-10-12 14:20:02 +05:30
Ganesh Vernekar
c77b24bcb2
Merge pull request #337 from grafana/sync-prom
...
Sync with upstream
2022-10-11 11:31:52 +05:30
Ganesh Vernekar
b522fb0b76
Merge remote-tracking branch 'upstream/main' into sync-prom
2022-10-10 18:07:39 +05:30
Ganesh Vernekar
46b26c4f09
Fix notifier relabel changing the labels of active alerts ( #11427 )
...
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2022-10-07 20:28:17 +05:30
Dimitar Dimitrov
0fc0832427
Add tests
2022-09-09 22:35:10 +02:00
Dimitar Dimitrov
6b33c90efe
Add option to always restore the state of rules when loading
2022-09-09 22:01:11 +02:00
Peter Štibraný
ae49ab5ea8
Merge remote-tracking branch 'upstream/main' into update-upstream-prometheus
2022-07-13 10:18:09 +02:00
beorn7
28f028e938
Merge branch 'main' into sparsehistogram
2022-07-12 19:07:13 +02:00
Matthieu MOREL
ddfa9a7cc5
refactor (rules): move from github.com/pkg/errors to 'errors' and 'fmt' ( #10855 )
...
* refactor (rules): move from github.com/pkg/errors to 'errors' and 'fmt'
Signed-off-by: Matthieu MOREL <mmorel-35@users.noreply.github.com>
2022-06-17 09:54:25 +02:00
beorn7
40ad5e284a
Merge branch 'main' into beorn7/sparsehistogram
2022-06-09 20:50:30 +02:00
Peter Štibraný
9d51bf50db
Merge upstream Prometheus
2022-06-09 11:29:19 +02:00
Julien Pivotto
3a56817a30
Rules: set otel status to ERROR when a rule fails ( #10745 )
...
Signed-off-by: Julien Pivotto <roidelapluie@o11y.eu>
2022-05-25 10:06:17 +02:00
Julien Pivotto
0d94cdf107
rules: remove classic UI code ( #10730 )
...
Signed-off-by: Julien Pivotto <roidelapluie@o11y.eu>
2022-05-23 16:21:50 +02:00
Łukasz Mierzwa
d3c9c4f574
Stop rule manager before TSDB is stopped ( #10680 )
...
During shutdown TSDB is stopped before rule manager is stopped. Since TSDB shutdown can take a long time (minutes or 10s of minutes) it keeps rule manager running while parts of Prometheus are already stopped (most notebly scrape manager). This can cause false positive alerts to fire, mostly those that rely on absent() calls since new sample appends will stop while alert queries are still evaluated.
Stop rules before stopping TSDB and scrape manager to avoid this problem.
Signed-off-by: Łukasz Mierzwa <l.mierzwa@gmail.com>
2022-05-20 23:26:06 +02:00
Jesus Vazquez
48aa5cd096
Merge remote-tracking branch 'upstream/main' into jvp/merge-prometheus-main
2022-04-12 16:40:00 +02:00
beorn7
7ee1836ef5
Merge branch 'main' into sparsehistogram
2022-04-05 18:31:19 +02:00
Wilbert Guo
83a2e52bc2
Add SyncForState Implementation for Ruler HA ( #10070 )
...
* continuously syncing activeAt for alerts
Signed-off-by: Yijie Qin <qinyijie@amazon.com>
Signed-off-by: Wilbert Guo <wilbeguo@amazon.com>
* add import
Signed-off-by: Yijie Qin <qinyijie@amazon.com>
Signed-off-by: Wilbert Guo <wilbeguo@amazon.com>
* Refactor SyncForState and add unit tests
Signed-off-by: Wilbert Guo <wilbeguo@amazon.com>
* Format code
Signed-off-by: Wilbert Guo <wilbeguo@amazon.com>
* Add hook for syncForState
Signed-off-by: Wilbert Guo <wilbeguo@amazon.com>
Fix go lint
Signed-off-by: Wilbert Guo <wilbeguo@amazon.com>
Refactor syncForState override implementation
Signed-off-by: Wilbert Guo <wilbeguo@amazon.com>
Add syncForState override func as argument to Update()
Signed-off-by: Wilbert Guo <wilbeguo@amazon.com>
Fix go formatting
Signed-off-by: Wilbert Guo <wilbeguo@amazon.com>
Fix circleci test errors
Signed-off-by: Wilbert Guo <wilbeguo@amazon.com>
Remove overrideFunc as argument to run()
Signed-off-by: Wilbert Guo <wilbeguo@amazon.com>
* remove the syncForState
Signed-off-by: Yijie Qin <qinyijie@amazon.com>
* use the override function to decide if need to replace the activeAt or not
Signed-off-by: Yijie Qin <qinyijie@amazon.com>
* fix test case
Signed-off-by: Yijie Qin <qinyijie@amazon.com>
* fix format
Signed-off-by: Yijie Qin <qinyijie@amazon.com>
* Trigger build
Signed-off-by: Yijie Qin <qinyijie@amazon.com>
* fixing comments
Signed-off-by: Yijie Qin <qinyijie@amazon.com>
* return the result of map of alerts instead of single one
Signed-off-by: Yijie Qin <qinyijie@amazon.com>
* upper case the QueryforStateSeries
Signed-off-by: Yijie Qin <qinyijie@amazon.com>
* use a more generic rule group post process function type
Signed-off-by: Yijie Qin <qinyijie@amazon.com>
* fix indentation
Signed-off-by: Yijie Qin <qinyijie@amazon.com>
* fix gofmt
Signed-off-by: Yijie Qin <qinyijie@amazon.com>
* fix lint
Signed-off-by: Yijie Qin <qinyijie@amazon.com>
* fixing naming
Signed-off-by: Yijie Qin <qinyijie@amazon.com>
* fix comments
Signed-off-by: Yijie Qin <qinyijie@amazon.com>
* add the lastEvalTimestamp as parameter
Signed-off-by: Yijie Qin <qinyijie@amazon.com>
* fmt
Signed-off-by: Yijie Qin <qinyijie@amazon.com>
* change funcType to func
Signed-off-by: Yijie Qin <qinyijie@amazon.com>
Co-authored-by: Yijie Qin <qinyijie@amazon.com>
Co-authored-by: Yijie Qin <63399121+qinxx108@users.noreply.github.com>
2022-03-29 02:16:46 +02:00
beorn7
4210aac74a
Merge branch 'main' into sparsehistogram
2022-03-22 14:47:42 +01:00
Alan Protasio
606ef33d91
Track and report Samples Queried per query
...
We always track total samples queried and add those to the standard set
of stats queries can report.
We also allow optionally tracking per-step samples queried. This must be
enabled both at the engine and query level to be tracked and rendered.
The engine flag is exposed via a Prometheus feature flag, while the
query flag is set when stats=all.
Co-authored-by: Alan Protasio <approtas@amazon.com>
Co-authored-by: Andrew Bloomgarden <blmgrdn@amazon.com>
Co-authored-by: Harkishen Singh <harkishensingh@hotmail.com>
Signed-off-by: Andrew Bloomgarden <blmgrdn@amazon.com>
2022-03-21 23:49:17 +01:00
Alvin Lin
cd739214dd
Log rule name when evaluating rule groups' Eval function logs anything ( #10454 )
...
* Add benchingmark test for rule group eval
Signed-off-by: Alvin Lin <alvinlin@amazon.com>
2022-03-21 19:52:20 +01:00
Ganesh Vernekar
23ce9ad9f0
Introduce evaluation delay for rule groups ( #155 )
...
* Allow having evaluation delay for rule groups
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
* Fix lint
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
* Move the option to ManagerOptions
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
* Include evaluation_delay in the group config
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
* Fix comments
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2022-03-14 13:20:07 +00:00
Matej Gera
2c61d29b2a
Tracing: Migrate to OpenTelemetry library ( #9724 )
...
Signed-off-by: Matej Gera <matejgera@gmail.com>
2022-01-25 11:08:04 +01:00
Dimitar Dimitrov
16faee8b78
Account for repeating tenants when comparing rules
2022-01-21 14:21:50 +01:00
Björn Rabenstein
7e42acd3b1
tsdb: Rework iterators ( #9877 )
...
- Pick At... method via return value of Next/Seek.
- Do not clobber returned buckets.
- Add partial FloatHistogram suppert.
Note that the promql package is now _only_ dealing with
FloatHistograms, following the idea that PromQL only knows float
values.
As a byproduct, I have removed the histogramSeries metric. In my
understanding, series can have both float and histogram samples, so
that metric doesn't make sense anymore.
As another byproduct, I have converged the sampleBuf and the
histogramSampleBuf in memSeries into one. The sample type stored in
the sampleBuf has been extended to also contain histograms even before
this commit.
Signed-off-by: beorn7 <beorn@grafana.com>
2021-11-29 13:24:23 +05:30
Dimitar Dimitrov
f17d3a71aa
Improve godoc of Group.SourceTenants()
2021-11-26 14:08:21 +01:00
Dimitar Dimitrov
a97576fc00
Ignore order when comparing the source tenants of two rule groups
2021-11-26 14:07:20 +01:00
Dimitar Dimitrov
75d3c11278
Repurpose FederatedContextFunc into GroupEvaluationContextFunc
2021-11-26 14:07:19 +01:00
Dimitar Dimitrov
42a7f1e210
Add some godocs to ManagerOptions
2021-11-25 13:47:32 +01:00
Dimitar Dimitrov
6ffb81244f
Add source_tenants fields to RuleGroup
2021-11-25 13:44:29 +01:00
beorn7
5d4db805ac
Merge branch 'main' into sparsehistogram
2021-11-17 19:57:31 +01:00
Björn Rabenstein
4c56a193c5
Merge pull request #9478 from prometheus/beorn7/pkg-deprecation
...
Move packages out of deprecated pkg directory
2021-11-09 11:09:16 +01:00
beorn7
c954cd9d1d
Move packages out of deprecated pkg directory
...
This creates a new `model` directory and moves all data-model related
packages over there:
exemplar labels relabel rulefmt textparse timestamp value
All the others are more or less utilities and have been moved to `util`:
gate logging modetimevfs pool runtime
Signed-off-by: beorn7 <beorn@grafana.com>
2021-11-09 08:03:10 +01:00
Bryan Boreham
26d8ae0e41
Rules: simplify map key for stale series detection
...
The rules manager keeps a note of which series were generated by the
last run, so it can write a stale marker to those that disappeared.
Since the keys are not for human eyes, we can use a simpler format
and save the effort of quoting label values.
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
2021-11-08 22:18:48 +01:00
Ganesh Vernekar
c8b267efd6
Get histograms from TSDB to the rate() function implementation
...
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-11-03 19:04:18 +05:30
Mateusz Gozdek
1a6c2283a3
Format Go source files using 'gofumpt -w -s -extra'
...
Part of #9557
Signed-off-by: Mateusz Gozdek <mgozdekof@gmail.com>
2021-11-02 19:52:34 +01:00
Levi Harrison
dc2f1993d8
Limit number of alerts or series produced by a rule ( #9260 )
...
* Add limit to rules
Signed-off-by: Levi Harrison <git@leviharrison.dev>
2021-09-15 09:48:26 +02:00
Levi Harrison
8c29046ab2
Remove unneeded state modifications
...
Signed-off-by: Levi Harrison <git@leviharrison.dev>
2021-08-20 16:42:31 -04:00
Levi Harrison
b5f6f8fb36
Switched to go-kit/log
...
Signed-off-by: Levi Harrison <git@leviharrison.dev>
2021-06-11 12:28:36 -04:00
Levi Harrison
17ea8d006a
Added external URL access
...
Signed-off-by: Levi Harrison <git@leviharrison.dev>
2021-05-30 23:35:26 -04:00
Owen Diehl
23999df27c
expose rule metrics fields
...
Signed-off-by: Owen Diehl <ow.diehl@gmail.com>
2021-04-30 13:36:44 -04:00