Commit graph

2145 commits

Author SHA1 Message Date
Fabian Reinartz 32b7595c47 Create promql package with lexer/parser.
This commit creates a (so far unused) package. It contains the a custom
lexer/parser for the query language.

ast.go: New AST that interacts well with the parser.
lex.go: Custom lexer (new).
lex_test.go: Lexer tests (new).
parse.go: Custom parser (new).
parse_test.go: Parser tests (new).
functions.go: Changed function type, dummies for parser testing (barely changed/dummies).
printer.go: Adapted from rules/ and adjusted to new AST (mostly unchanged, few additions).
2015-04-23 16:04:50 +02:00
Julius Volz 16920f4666 Merge pull request #648 from cesanta/cesanta
Make prepare{Instant,Range}Query public
2015-04-23 14:24:11 +02:00
rojer a0c8b9abbe Make Prepare{Instant,Range}Query public
Useful for embedding the query engine.
2015-04-23 11:52:08 +01:00
Fabian Reinartz 9042b4f081 Merge pull request #644 from fabxc/fabxc/sdprep 2015-04-20 01:59:29 +02:00
Fabian Reinartz 4f8673aa88 Simplify update sync for targets, format config fixtures. 2015-04-19 10:36:26 +02:00
Julius Volz fa42ed0e7e Merge pull request #642 from brian-brazil/sort-nan
Sort NaN as the lowest value.
2015-04-17 17:11:15 +02:00
Brian Brazil 6c1689f0c6 Sort NaN as the lowest value.
Currently it ends up in a random position.
2015-04-17 15:54:06 +01:00
Julius Volz e681a57d73 Merge pull request #641 from prometheus/stddev
Add stddev and stdvar aggregation functions.
2015-04-17 01:36:44 +02:00
Brian Brazil c3a2b63fe9 Add stddev and stdvar aggregation functions.
This adds the population standard deviation and
variance as aggregation functions, useful for
spotting how many standard deviations some samples
are from the mean.
2015-04-17 00:30:03 +01:00
Julius Volz f35e5b54cc Merge pull request #640 from prometheus/pow
Add square root function
2015-04-17 00:23:33 +02:00
Brian Brazil 74aed55e55 Add square root function 2015-04-16 23:19:04 +01:00
Julius Volz 54f5c524e5 Merge pull request #637 from fabxc/fix/scrape_timeout
Fix scrape timeout in config.
2015-04-15 14:14:04 +02:00
Fabian Reinartz 0280d74167 Fix scrape timeout in config.
The scrape timeout helper was wrapping the scrape interval.
2015-04-15 13:46:27 +02:00
Björn Rabenstein ad7ef406d3 Merge pull request #635 from prometheus/beorn7/persistence
Improve chunk and chunkDesc loading.
2015-04-14 16:11:24 +02:00
Johannes 'fish' Ziemke defcafb33c Merge pull request #636 from sdurrheimer/master
Dockerfile improvements
2015-04-14 13:42:49 +02:00
beorn7 a052d32609 Comment improvement. 2015-04-14 10:49:43 +02:00
beorn7 66fc61f9b7 Make bufPool a member of the persistence struct. 2015-04-14 10:43:09 +02:00
Steve Durrheimer 77ddbad97f Duplicated packages already present in inherited images (mercurial => buildpack-deps:jessie-scm, gcc => golang:1.4)
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2015-04-14 10:01:28 +02:00
Steve Durrheimer 5a284257f0 Better package cache cleanup
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2015-04-14 09:36:34 +02:00
beorn7 b02d900e61 Improve chunk and chunkDesc loading.
Also, clean up some things in the code (especially introduction of the
chunkLenWithHeader constant to avoid the same expression all over the place).

Benchmark results:

BEFORE
BenchmarkLoadChunksSequentially     5000            283580 ns/op          152143 B/op        312 allocs/op
BenchmarkLoadChunksRandomly        20000             82936 ns/op           39310 B/op         99 allocs/op
BenchmarkLoadChunkDescs            10000            110833 ns/op           15092 B/op        345 allocs/op

AFTER
BenchmarkLoadChunksSequentially    10000            146785 ns/op          152285 B/op        315 allocs/op
BenchmarkLoadChunksRandomly        20000             67598 ns/op           39438 B/op        103 allocs/op
BenchmarkLoadChunkDescs            20000             99631 ns/op           12636 B/op        192 allocs/op

Note that everything is obviously loaded from the page cache (as the
benchmark runs thousands of times with very small series files). In a
real-world scenario, I expect a larger impact, as the disk operations
will more often actually hit the disk. To load ~50 sequential chunks,
this reduces the iops from 100 seeks and 100 reads to 1 seek and 1
read.
2015-04-13 21:06:04 +02:00
beorn7 c563398c68 Remove obsolete debug message. 2015-04-13 16:59:52 +02:00
Björn Rabenstein c44c81ebb0 Merge pull request #634 from fabxc/fix/dns-error
Show correct error on wrong DNS response.
2015-04-12 01:34:50 +02:00
Fabian Reinartz 36184f3530 Show correct error on wrong DNS response. 2015-04-11 16:14:38 +02:00
Björn Rabenstein 15cd8b3134 Merge pull request #633 from prometheus/beorn7/doc
Add warning about tarballs.
2015-04-10 14:57:52 +02:00
beorn7 f81cbb00c6 Add warning about tarballs. 2015-04-10 13:53:32 +02:00
Björn Rabenstein 04a078f5d4 Merge pull request #631 from prometheus/beorn7/release
Cut 0.13.1.
2015-04-09 16:41:06 +02:00
beorn7 54fc50e58c Cut 0.13.1. 2015-04-09 16:36:04 +02:00
Björn Rabenstein dc8c9a37ce Merge pull request #630 from prometheus/beorn7/persistence
Fix the case where a series in memory has 0 chunks, but chunks on disk.
2015-04-09 16:31:15 +02:00
beorn7 c5fa0b90c3 Fix the case where a series in memory has 0 chunks, but chunks on disk.
This is actually completely normal for a freshly unarchived series.

Test added to expose.
2015-04-09 15:57:11 +02:00
Tobias Schmidt 49d67fc834 Merge pull request #629 from prometheus/improve-usage-formatting
Improve readability of usage text
2015-04-08 17:51:29 -04:00
Tobias Schmidt 7d71d354fd Remove special listing of config.file in usage
The -config.file parameter isn't required or any more special than the
other flags. In order to avoid confusion, this change removes the
special mention again. Instead, the error message if a config file
couldn't be loaded is changed to mention the flag name.
2015-04-08 17:36:15 -04:00
Tobias Schmidt 35a44509fb Improve readability of usage text
Separates flag and description by a newline to make it easier to read
the flags with long descriptions.
2015-04-08 17:33:25 -04:00
Björn Rabenstein 2d7d1a34b6 Merge pull request #628 from prometheus/beorn7/release
Update vendoring and release 0.13.0.
2015-04-08 18:51:43 +02:00
beorn7 cb1650b5a9 Cut v0.13.0. 2015-04-08 18:44:58 +02:00
beorn7 191c728152 Update vendoring. 2015-04-08 18:24:23 +02:00
Björn Rabenstein 7991b4be51 Merge pull request #627 from fabxc/flag_grouping
Make help output readable.
2015-04-08 13:50:27 +02:00
Fabian Reinartz c012ca6039 Make help output readable.
This commit increases the usability by grouping flags based on their
first dot-separated group. Long flag descriptions are broken into lines
printed with indentation.
2015-04-08 12:41:49 +02:00
Björn Rabenstein e1b5f18dee Merge pull request #626 from quinox/fix-625
#625 Fix incorrect consoles URL
2015-04-07 17:19:35 +02:00
Björn Rabenstein d8e515e9cb Merge pull request #617 from prometheus/influxdb-write-support
Add experimental InfluxDB write support.
2015-04-07 13:23:06 +02:00
Ceesjan Luiten 6f5f33bd4d #625 Fix incorrect consoles URL 2015-04-06 17:30:13 +02:00
Julius Volz 059ab9383f Merge pull request #614 from quinox/master
Make all URLs absolute to support proxies
2015-04-02 20:49:21 +02:00
Ceesjan Luiten 0e18784c64 Make all paths absolute to support proxies 2015-04-02 20:36:47 +02:00
Julius Volz 593e565688 Allow writing to InfluxDB/OpenTSDB at the same time. 2015-04-02 20:24:38 +02:00
Björn Rabenstein 440d5df6e2 Merge pull request #621 from prometheus/beorn7/release
Cut release 0.13.0rc2.
2015-04-02 14:30:06 +02:00
beorn7 4a452b4274 Cut release 0.13.0rc2. 2015-04-02 14:25:02 +02:00
Björn Rabenstein 621ac10060 Merge pull request #620 from prometheus/beorn7/persistence
Adaptively reduce the wait time for memory series maintenance.
2015-04-02 14:09:27 +02:00
beorn7 3035b8bfdd Adaptively reduce the wait time for memory series maintenance.
This will make in-memory series maintenance the faster the more chunks
are waiting for persistence.
2015-04-01 17:52:03 +02:00
Julius Volz 9f198cc7b5 Merge pull request #619 from fabxc/fabxc/rule_checker
Increase the usability of the rule_checker CLI.
2015-04-01 16:36:56 +02:00
Fabian Reinartz c4e762adbf Increase the usability of the rule_checker CLI.
This commit allows to invoke the rule_checker with a chain of
filepaths as arguments. If no paths are provided it reads from standard
input.
The -rule-file flag remains for backward-compatibility.
On processing errors the return code is now 1. For bad arguments
the return code is now 2.
2015-04-01 08:17:12 +02:00
Julius Volz 61fb688dd9 Add experimental InfluxDB write support. 2015-04-01 02:03:16 +02:00