Fabian Reinartz
33aab4169c
Anchor regexes in vector matching
...
This commit makes the regex behavior of vector matching consistent with
configuration and label_replace() by anchoring it.
Fixes #1200
2015-11-05 11:23:43 +01:00
Julius Volz
0088aa4d45
Merge pull request #1132 from prometheus/fix-quoting-and-escaping
...
Support escape sequences in strings and add raw strings
2015-10-08 20:51:18 +02:00
Julius Volz
46c5260761
Support escape sequences in strings and add raw strings.
...
This adapts some functionality from the Go standard library for string
literal lexing and unquoting/unescaping.
The following string types are now supported:
Double- or single-quoted strings:
These support all escape sequences that Go supports in double-quoted
string literals. The difference is that Prometheus also has
single-quoted strings (instead of single-quoted runes in Go). Raw
newlines are not allowed.
Backtick-quoted raw strings:
Strings quoted in backticks are treated as raw strings just like in Go
and may contain raw newlines and other special characters directly.
Fixes https://github.com/prometheus/prometheus/issues/1122
Fixes https://github.com/prometheus/prometheus/issues/1121
2015-10-08 19:17:21 +02:00
Fabian Reinartz
e3b6ec9784
Switch to common/log
2015-10-03 10:21:43 +02:00
Fabian Reinartz
398bbf906b
Switch to common/route package
2015-09-24 17:08:47 +02:00
Fabian Reinartz
171f50706a
Fix unkeyed field errors.
2015-09-18 17:00:08 +02:00
Fabian Reinartz
f8a25f6af7
Apply HTTP handler compression everywhere
2015-09-17 14:49:50 +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
Fabian Reinartz
d6b8da8d43
Switch promql types to common/model
2015-08-25 13:49:14 +02: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
Fabian Reinartz
62b4e89b39
Restore legacy API scalar format
2015-07-16 20:19:18 +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
8f904d6a54
api/v1: fix response format tests
2015-07-02 14:12:26 +02:00
Fabian Reinartz
b36fa7ad61
api/v1: fix Content-Type in response
2015-07-01 22:47:25 +02:00
Julius Volz
bc1c789bab
Disallow cross-origin DELETE and POST requests.
2015-06-24 17:26:49 +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
85d7c7640a
web: remove flags, refactor handlers
2015-06-15 19:01:06 +02:00
Fabian Reinartz
7bb7e565a4
web/api: add GET and DELETE /series endpoints
2015-06-11 12:24:57 +02:00
Fabian Reinartz
7be94ce962
web/api: improve errors, add tests
2015-06-10 18:36:02 +02:00
Fabian Reinartz
75b0b7420e
web/api: replace /metrics/names with /label/:name/values endpoint.
2015-06-08 23:10:52 +02:00
Fabian Reinartz
5b713911e3
web/api: enable running API legacy and v1 in parallel
2015-06-08 19:11:48 +02:00
Fabian Reinartz
ab9c98acac
web/api: add initial API v1 implementation.
2015-06-06 21:47:36 +02:00
Fabian Reinartz
e88e5f680b
web: simplify prefix handling using util/route package.
2015-06-03 15:53:04 +02:00
Fabian Reinartz
78047326b4
web: cleanup initialization of web service.
2015-06-03 08:45:43 +02:00
Fabian Reinartz
0de6edbdfc
Move pkg/ to util/
2015-06-01 21:12:32 +02:00
Fabian Reinartz
dfaf31a1da
Move web/httputils to pkg/httputil and add DeadlineClient to it
2015-06-01 21:12:31 +02:00
Julius Volz
d7c015c149
Convert pathPrefix to not have trailing slash.
2015-06-01 12:43:17 +02:00
Björn Rabenstein
c44e7cd105
Merge pull request #706 from prometheus/beorn7/persistence2
...
Improve iterator performance.
2015-05-21 13:48:52 +02:00
beorn7
3b9c421a69
Weed out all the [Gg]et* method names.
...
The only exception is getNumChunksToPersist to avoid naming the struct
member numChunksToPersist in a weird way.
2015-05-20 19:13:06 +02:00
Julius Volz
267fd34156
Switch Prometheus to use github.com/prometheus/log.
...
This change is conceptually very simple, although the diff is large. It
switches logging from "github.com/golang/glog" to
"github.com/prometheus/log", while not actually changing any log
messages. V(1)-style logging has been changed to be log.Debug*().
2015-05-20 18:19:32 +02:00
Fabian Reinartz
279831cdf1
Fix and improve parsing error output.
2015-04-30 12:19:39 +02:00
Fabian Reinartz
25cdff3527
Remove name
arg from Parse*
functions, enhance parsing errors.
2015-04-29 16:38:41 +02:00
Fabian Reinartz
3ca11bcaf5
Switch Prometheus to promql package.
...
This commit removes all functionality from rules/ that is now handled in
promql/.
All parts of Prometheus are changed to use the promql/ package.
2015-04-28 16:19:23 +02:00
Ceesjan Luiten
0e18784c64
Make all paths absolute to support proxies
2015-04-02 20:36:47 +02:00
Julius Volz
33702da8a8
Use simple Now() func in API instead of utility.Time.
2015-03-27 23:43:47 +01:00
Julius Volz
a5a553f1da
Add initial HTTP API tests.
...
This covers the /query (instant query) endpoint for now. Others to
follow.
2015-03-27 21:37:55 +01:00
Julius Volz
3f2686d0b3
Remove unused fields from MetricsService.
2015-03-27 18:51:13 +01:00
Julius Volz
c9b76def4c
Report all query API HTTP errors in JSON format.
2015-03-27 16:48:03 +01:00
Julius Volz
df314ead84
Remove unnecessary "else" branch in query API.
2015-03-21 17:54:30 +01:00
Julius Volz
a68b880c27
Add tests for new timestamp/duration functions.
...
...and fix the first bugs in them where they truncate precision below a
second.
2015-03-21 17:50:45 +01:00
Julius Volz
cb816ea14a
Improve timestamp/duration parsing in query API.
...
Don't handle `0` as a special timestamp value for "now" anymore, except
in the `QueryRange()` case, where existing API consumers still expect
`0` to mean "now".
Also, properly return errors now for malformed timestamp/duration
float values.
2015-03-21 16:58:45 +01:00
Julius Volz
8a4acefd66
Allow custom timestamps in instant query API.
2015-03-20 23:10:58 +01:00
Julius Volz
c78436d707
Remove unused API time dependency injection.
2015-03-20 23:10:26 +01:00
beorn7
fa1935a644
Remove /api/targets call and do not show job and instance labels on status.
...
/api/targets was undocumented and never used and also broken.
Showing instance and job labels on the status page (next to targets)
does not make sense as those labels are set in an obvious way.
Also add a doc comment to TargetStateToClass.
2015-03-18 18:53:43 +01:00
Fabian Reinartz
fa1e90003b
Query timeout added.
...
This is related to #454 . Queries now timeout after a duration set by
the -query.timeout flag. The TotalEvalTimer is now started/stopped
inside any of the ast.Eval* functions.
2015-02-03 08:04:27 +01:00