Merge pull request #1344 from prometheus/consistent-error-message

Rename matrix to range selector in external error messages
This commit is contained in:
Tobias Schmidt 2016-01-25 13:40:08 -05:00
commit 4dc8c4f94c
2 changed files with 9 additions and 4 deletions

View file

@ -609,19 +609,20 @@ func (p *parser) unaryExpr() Expr {
case *MatrixSelector: case *MatrixSelector:
s.Offset = offset s.Offset = offset
default: default:
p.errorf("offset modifier must be preceded by a metric or range selector, but follows a %T instead", e) p.errorf("offset modifier must be preceded by an instant or range selector, but follows a %T instead", e)
} }
} }
return e return e
} }
// rangeSelector parses a matrix selector based on a given vector selector. // rangeSelector parses a matrix (a.k.a. range) selector based on a given
// vector selector.
// //
// <vector_selector> '[' <duration> ']' // <vector_selector> '[' <duration> ']'
// //
func (p *parser) rangeSelector(vs *VectorSelector) *MatrixSelector { func (p *parser) rangeSelector(vs *VectorSelector) *MatrixSelector {
const ctx = "matrix selector" const ctx = "range selector"
p.next() p.next()
var erange time.Duration var erange time.Duration
@ -948,7 +949,7 @@ func (p *parser) offset() time.Duration {
return offset return offset
} }
// vectorSelector parses a new vector selector. // vectorSelector parses a new (instant) vector selector.
// //
// <metric_identifier> [<label_matchers>] // <metric_identifier> [<label_matchers>]
// [<metric_identifier>] <label_matchers> // [<metric_identifier>] <label_matchers>

View file

@ -228,6 +228,10 @@ var testExpr = []struct {
input: `*test`, input: `*test`,
fail: true, fail: true,
errMsg: "no valid expression found", errMsg: "no valid expression found",
}, {
input: "1 offset 1d",
fail: true,
errMsg: "offset modifier must be preceded by an instant or range selector",
}, },
// Vector binary operations. // Vector binary operations.
{ {