Brian Brazil
fa793d917e
Merge pull request #1080 from prometheus/query-timeout-test
...
promql: Bump sleep in query timeout test
2015-09-14 13:00:47 +01:00
Brian Brazil
ce7f31e03c
promql: Bump sleep in query timeout test
...
This test is flaky, I'm presuming the time.AfterFunc
call is being delayed so the evaluation isn't getting
cancelled.
2015-09-14 11:49:18 +01:00
Julius Volz
347630431c
Merge pull request #1077 from prometheus/cleanups
...
Fix some dead code, missing error checks, shadowings.
2015-09-14 12:37:26 +02:00
Julius Volz
af513468eb
Fix some dead code, missing error checks, shadowings.
...
I applied
https://medium.com/@jgautheron/quality-pipeline-for-go-projects-497e34d6567
and was greeted with a deluge of warnings, most of which were not
applicable or really fixable realistically. These are some of the first
ones I decided to fix.
2015-09-14 12:21:34 +02:00
Brian Brazil
29de4ee2b0
Merge pull request #1078 from prometheus/whats-our-vector-victor
...
Remove optional vector() 2nd argument
2015-09-13 14:14:20 +01:00
Brian Brazil
9b382647b5
Remove optional vector() 2nd argument
2015-09-13 09:13:22 +01:00
Fabian Reinartz
a1617d90f4
Merge pull request #1073 from prometheus/whats-our-vector-victor
...
promql: Add vector function.
2015-09-12 08:36:13 +02:00
Brian Brazil
69f5fa0c1e
promql: Add vector function.
...
Currently the only way to convert a scalar to a vector is to
use absent(), which isn't very clean. This adds a vector()
function that's the inverse of scalar() and lets your optionally
set labels.
Example usage would be
vector(time() % 86400) < 3600
to filter to only the first hour of the day.
2015-09-11 12:09:34 +01:00
Julius Volz
6d3e054692
Fix bool modifier in recording rules and printing.
...
Fixes https://github.com/prometheus/prometheus/issues/1065
2015-09-10 01:37:05 +02:00
Brian Brazil
9ec11b1847
Merge pull request #1049 from prometheus/bool-nofilter
...
promql: Add 'bool' modifier to comparison functions
2015-09-03 15:08:38 +01:00
Brian Brazil
29e8dc2c49
promql: Add 'bool' modifier to comparison functions
...
When doing comparison operations on vectors, filtering
sometimes gets in the way and you have to go to a fair bit of
effort to workaround it in order to always return a result.
The 'bool' modifier instead of filtering returns 0/1 depending
on the result of the compairson.
This is also a prerequisite to removing plain scalar/scalar comparisons,
as it maintains the current behaviour under a new syntax.
2015-09-02 14:51:44 +01:00
Julius Volz
61c42c8da0
Change relabel_replace() to do full-string matches.
...
THIS IS A BREAKING CHANGE.
Fixes part of https://github.com/prometheus/prometheus/issues/996
2015-09-01 15:49:28 +02:00
Julius Volz
744d5d5a7a
Merge pull request #1029 from prometheus/vet-fixes
...
Fix "go vet" errors.
2015-08-26 12:50:18 +02:00
Julius Volz
995d3b831d
Fix most golint warnings.
...
This is with `golint -min_confidence=0.5`.
I left several lint warnings untouched because they were either
incorrect or I felt it was better not to change them at the moment.
2015-08-26 12:44:46 +02:00
Julius Volz
963ad82dcb
Fix "go vet" errors.
...
I ignored all errors of the type "composite literal uses unkeyed
fields". Most of them are wrong because of
https://github.com/golang/go/issues/9171 .
2015-08-26 02:05:04 +02:00
Julius Volz
077a753e6b
Merge pull request #1006 from prometheus/true-values
...
promql: Remove interpolation of vector values.
2015-08-25 16:11:07 +02:00
Fabian Reinartz
d6b8da8d43
Switch promql types to common/model
2015-08-25 13:49:14 +02:00
Brian Brazil
fb585e4591
promql: Remove interpolation of vector values.
...
The current behaviour produces values that are not
from rules or scrapes. So if for example I have
a boolean 0/1 it can be returned as 0.2344589. This
prevents a number of advanced use cases, introduces
race conditions and can produce misleading graphs.
2015-08-24 17:37:31 +01:00
Fabian Reinartz
1535ef1457
Replace metric.SamplePair with model.SamplePair
2015-08-22 14:52:35 +02:00
Fabian Reinartz
438e232c9b
Fix grouping of import blocks
2015-08-22 09:42:45 +02:00
Fabian Reinartz
306e8468a0
Switch from client_golang/model to common/model
2015-08-21 13:33:38 +02:00
Brian Brazil
296f551418
Merge pull request #1014 from prometheus/scalar-rules
...
rules: Allow recorded rules expressions to be scalars.
2015-08-19 22:10:49 +01:00
Brian Brazil
e6a67476c2
rules: Allow recorded rules expressions to be scalars.
...
This is useful if you want to build up a constant metric,
such as a set of alert thresholds that vary by label value.
2015-08-19 21:09:00 +01:00
Laurie Malau
cdf38ab93a
Log runtime errors during query evaluation instead of panicking.
2015-08-19 16:56:41 +02:00
Julius Volz
27ed874358
Implement label_replace()
...
Implements part of https://github.com/prometheus/prometheus/issues/959 .
2015-08-18 14:20:07 +02:00
Fabian Reinartz
690b5f1575
Remove multi-statement queries
...
This commit removes the possibility to have multi-statement queries
which had no full support anyway. This makes the caller responsible
for multi-statement semantics.
Multiple tests are no longer timing-dependent.
2015-08-10 14:26:20 +02:00
Julius Volz
e324910ff2
Merge pull request #936 from prometheus/predict
...
promql: Add support for predict(my_timeseries[1h], 2h)
2015-08-05 16:40:51 +02:00
Brian Brazil
d6a80c2b76
promql: Add support for predict_linear(my_timeseries[1h], 7200)
...
This will give a prediction for the value of my_timeseries in 2 hours,
based on the last hour of data.
2015-08-05 15:16:49 +01:00
Fabian Reinartz
579fdf65e2
Implement unary expression for vector types.
...
Closes #956
2015-08-04 15:46:36 +02:00
Fabian Reinartz
c322422412
Merge pull request #954 from prometheus/fabxc/fuzz-fix
...
Add missing check for nil expression
2015-08-03 16:48:20 +02:00
Fabian Reinartz
adf109795c
forbid unexpected (runtime) errors in parse tests
2015-08-03 12:53:31 +02:00
Fabian Reinartz
c20e25f718
Add missing check for nil expression
2015-08-03 12:28:40 +02:00
Brian Brazil
a0f0b82348
promql: Test errors aren't always ParseErr
2015-08-02 23:26:21 +01:00
Fabian Reinartz
5279d50d92
Handle parser runtime panics gracefully
2015-08-02 13:42:18 +02:00
Julius Volz
4e4b468fba
Fix lexer bug treating non-Latin Unicode digits as digits.
...
Fixes https://github.com/prometheus/prometheus/issues/939
2015-07-29 02:11:13 +02:00
Fabian Reinartz
3d67d75935
promql: implement JSON array format for scalar and string
2015-07-06 13:09:26 +02:00
Fabian Reinartz
77e8983221
promql: add MarshalJSON method for SamplePair
2015-07-06 10:29:59 +02:00
Fabian Reinartz
c1d37bc55b
Merge pull request #843 from prometheus/fabxc/runbook
...
promql: add runbook to alert statement.
2015-06-25 14:07:45 +02:00
Fabian Reinartz
70d7a987a7
promql: add json tags, fix query constructor.
2015-06-25 13:44:05 +02:00
Fabian Reinartz
749ae450c5
promql: add runbook to alert statement.
...
This commit adds the RUNBOOK keyword to alert statements. The field
is optional and expected to be a link.
2015-06-25 13:00:52 +02:00
Fabian Reinartz
7f85b9b215
promql: add MarshalJSON method for ExprType.
2015-06-25 12:01:26 +02:00
Fabian Reinartz
1eff186555
Merge pull request #810 from prometheus/fabxc/lmatch
...
Match empty labels.
2015-06-22 15:45:50 +02:00
Fabian Reinartz
5b91ea9b36
storage: improve label matching and allow unset matching.
...
Matching of empty labels now also matches metrics where the label
was not explicitly set to the empty string.
2015-06-22 15:33:44 +02:00
Fabian Reinartz
94cd321be1
promql: error if all label matchers are empty.
2015-06-22 15:33:44 +02:00
Fabian Reinartz
fe301d7946
promql: remove global flags
2015-06-15 19:01:06 +02:00
Julius Volz
5e2d1c1464
Deprecate keeping_extra
, rename it to keep_common
.
...
`keep_common` is more in line with the function name
`drop_common_labels()` terminology-wise, and also more in line with
`group_left`/`group_right` (no `...ing` verb suffix).
We could also go the full way and call it `keep_common_labels`. That
would have the benefit of being even more consistent with the function
`drop_common_labels()` and would be more explanatory, but it also seems
quite long.
2015-06-12 14:21:05 +02:00
Fabian Reinartz
e7659f908c
promql: remove DotGraph methods from nodes.
2015-06-12 09:48:14 +02:00
Fabian Reinartz
c716d8a47b
promql: fix aggregation expression String() method.
...
Fixes #794 .
2015-06-12 09:48:01 +02:00
Fabian Reinartz
c32ae22119
promql: fix missing metric in range results.
2015-06-11 23:50:53 +02:00
Fabian Reinartz
0acd44b0e3
promql: expose ParseMetric and ParseMetricSelector
2015-06-11 12:22:11 +02:00