Commit graph

1409 commits

Author SHA1 Message Date
Bjoern Rabenstein 0851945054 Add a heuristics to checkpoint early if there are many "dirty" series.. 2015-01-08 20:15:58 +01:00
juliusv 325788f2ef Merge pull request #440 from prometheus/report-rule-failures
Report rule eval failures, remove extraction.Result type
2015-01-08 17:55:55 +01:00
Julius Volz bb1e49383e Log rule evalation errors. 2015-01-08 17:50:55 +01:00
Julius Volz d6b9e97655 Remove extraction.Result type, simplify code. 2015-01-08 16:34:01 +01:00
Julius Volz 9a4ca68a61 Add metrics for rule evaluation failures.
Fixes https://github.com/prometheus/prometheus/issues/417
2015-01-08 16:33:35 +01:00
Bjoern Rabenstein 622e8350cd Fix a bug handling freshly unarchived series.
Usually, if you unarchive a series, it is to add something to it,
which will create a new head chunk. However, if a series in
unarchived, and before anything is added to it, it is handled by the
maintenance loop, it will be archived again. In that case, we have to
load the chunkDescs to know the lastTime of the series to be
archived. Usually, this case will happen only rarely (as a race, has
never happened so far, possibly because the locking around unarchiving
and the subsequent sample append is smart enough). However, during
crash recovery, we sometimes treat series as "freshly unarchived"
without directly appending a sample. We might add more cases of that
type later, so better deal with archiving properly and load chunkDescs
if required.
2015-01-08 16:25:50 +01:00
Björn Rabenstein 7aae5dd873 Merge pull request #439 from prometheus/beorn7/remove-deadlock
Remove a deadlock during shutdown.
2015-01-07 19:18:40 +01:00
Bjoern Rabenstein eb932d1524 Remove a deadlock during shutdown. 2015-01-07 19:02:38 +01:00
juliusv 917acb6baf Merge pull request #429 from brian-brazil/scrape-time
Have scrape time as a pseudovariable, not a prometheus variable.
2015-01-02 13:22:04 +01:00
juliusv ba0bc6adce Merge pull request #431 from brian-brazil/contrib
Update contributing guide to remove gerrit.
2015-01-02 13:18:56 +01:00
Brian Brazil a7eb9f6fb0 Update contributing guide to remove gerrit.
The contributors list is outdated, update. Looks like we're sorting by first name.
2015-01-02 10:14:05 +00:00
juliusv 6cd29eec48 Merge pull request #434 from brian-brazil/graphlink
Fix regression from 5e8d57bec1
2014-12-29 01:53:38 +01:00
Brian Brazil e56786b221 Have scrape time as a pseudovariable, not a prometheus variable.
This ensures it has the right timestamp, and is easier to work with.

Switch sd variable away from 'outcome', using total/failed instead.
2014-12-27 00:39:33 +00:00
Brian Brazil ffa2e73803 Fix regression from 5e8d57bec1
0 is a false value, so shortcutting no longer works.
Update other places in the code that assumed graph was the default.
2014-12-27 00:28:36 +00:00
juliusv 48d6ba2505 Merge pull request #433 from brian-brazil/upgrade-rickshaw
Upgrade rickshaw to v1.5.1
2014-12-27 01:21:56 +01:00
juliusv 0b10977d71 Merge pull request #430 from brian-brazil/sort-status
Sort targets on the status page.
2014-12-27 01:05:53 +01:00
Brian Brazil fd43daf82e Upgrade rickshaw to v1.5.1
This includes better handling for missing data points in stacked graphs.
2014-12-26 14:44:06 +00:00
Brian Brazil 89c43dd0d7 Sort targets on the status page.
Change-Id: I6b59c97ab50093c50b608e29be2304475bc5d9f6
2014-12-26 13:14:19 +00:00
Julius Volz cc27fb8aab Rename remaining all-caps constants in AST layer.
Change-Id: Ibe97e30981969056ffcdb89e63c1468ea1ffa140
2014-12-25 01:30:47 +01:00
Julius Volz 895523ad14 Include necessary Makefile.INCLUDE from rules/Makefile.
Change-Id: I077d018dbe4093cd40ddf38d66a996df222bf5e4
2014-12-25 01:13:59 +01:00
Julius Volz 2ade9d40cf Clarify why we need int constants for expression types.
Change-Id: I053fc5d32c118dbdb204dc8193337f981aff796e
2014-12-25 00:45:30 +01:00
juliusv 47551b8eee Use latest architecture diagram in README.md 2014-12-23 14:26:21 +01:00
Julius Volz 62b69b005d Update architecture diagram and include source file.
Change-Id: I2a793a5d1941dc0e945a9cfe25df5f5a79d2b10a
2014-12-23 14:04:58 +01:00
juliusv 401decc847 Merge pull request #428 from brian-brazil/sample-consoles
Console templating library, including graphs.
2014-12-18 17:59:54 +01:00
Brian Brazil 43b105d32d Console templating library, including graphs.
This provides the basic js, css and console template
templates required to build dashboards.
Included as an example are consoles for the node_exporter.

Change-Id: I4cfeea5e9691a9413f74ae98ca32a908df8e4a59
2014-12-18 16:54:31 +00:00
juliusv fd4a7b885b Merge pull request #427 from prometheus/retrieval-rename-address-url
Rename Address to URL
2014-12-18 13:27:42 +01:00
Johannes 'fish' Ziemke ff95a52b0f Rename Address to URL
The "Address" is actually a URL which may contain username and
password. Calling this Address is misleading so we rename it.

Change-Id: I441c7ab9dfa2ceedc67cde7a47e6843a65f60511
2014-12-18 12:18:16 +01:00
Björn "Beorn" Rabenstein 3560ece5fb Merge pull request #426 from prometheus/u-c-l/bump-version
It's time for 0.9.0rc2.
2014-12-17 19:25:38 +01:00
Bjoern Rabenstein bf757edbc4 It's time for 0.9.0rc2. 2014-12-17 18:43:42 +01:00
Björn Rabenstein c4bcfeccc5 Merge pull request #425 from prometheus/fix/series-file-name
Fix embarrassing bug in crash recovery.
2014-12-17 18:37:00 +01:00
Bjoern Rabenstein ff24070a03 Fix embarrassing bug in crash recovery.
(And yes, we always knew we need tests for that. I have added a TODO now.)

Change-Id: I9cf52bbf98e263e0b79404bda4c442beba9696a8
2014-12-17 17:18:04 +01:00
Björn Rabenstein d72d49f1b3 Merge pull request #420 from prometheus/metric-cow
Introduce copy-on-write for metrics in AST.
2014-12-16 16:24:27 +01:00
Björn Rabenstein e2fddd62e9 Merge pull request #424 from tsenart/go1.4
Upgrade to Go 1.4
2014-12-15 14:30:12 +01:00
Tomás Senart 09c58ce481 Upgrade to Go 1.4
This change set upgrades Prometheus to use Go 1.4
The other modifications were intended to compare benchmarks between the
old and new versions using `golang.org/x/tools/cmd/benchcmp`.

```
benchmark                                old ns/op      new ns/op     delta
BenchmarkTargetManager-8                 38866          19355         -50.20%
BenchmarkTargetPool-8                    114763         58989         -48.60%
BenchmarkFingerprintLockerParallel-8     747            752           +0.67%
BenchmarkFingerprintLockerSerial-8       39.0           39.1          +0.26%
BenchmarkAppend-8                        2020           2553          +26.39%
BenchmarkFuzz-8                          1185584705     506752314     -57.26%
BenchmarkLabelPairs-8                    753            903           +19.92%

benchmark                                old allocs     new allocs     delta
BenchmarkTargetManager-8                 41             46             +12.20%
BenchmarkTargetPool-8                    682            460            -32.55%
BenchmarkFingerprintLockerParallel-8     0              0              +0.00%
BenchmarkFingerprintLockerSerial-8       0              0              +0.00%
BenchmarkAppend-8                        11             15             +36.36%
BenchmarkFuzz-8                          2269055        1061400        -53.22%
BenchmarkLabelPairs-8                    12             12             +0.00%

benchmark                                old bytes      new bytes     delta
BenchmarkTargetManager-8                 8755           7160          -18.22%
BenchmarkTargetPool-8                    82621          41342         -49.96%
BenchmarkFingerprintLockerParallel-8     0              0             +0.00%
BenchmarkFingerprintLockerSerial-8       0              0             +0.00%
BenchmarkAppend-8                        289            293           +1.38%
BenchmarkFuzz-8                          2307248006     586094916     -74.60%
BenchmarkLabelPairs-8                    316            304           -3.80%
```
2014-12-15 14:05:43 +01:00
Julius Volz 00a2a93a05 Add regression tests for metrics mutations in AST.
It turned out in the end, that only drop_common_metrics() produced any
erroneous output in the old system. The second expression in the test
("sum(testmetric) keeping_extra") already worked in the old code, but
why not keep it in...

The way to test ranged evaluations is a bit clumsy so far, so I want to
build a nicer test framework in the end, where all the test cases can be
specified as text files which specify desired inputs, outputs, query
step widths, etc.

Change-Id: I821859789e69b8232bededf670a1b76e9e8c8ca4
2014-12-12 20:34:55 +01:00
Julius Volz c9618d11e8 Introduce copy-on-write for metrics in AST.
This depends on changes in:

https://github.com/prometheus/client_golang/tree/cow-metrics.

Change-Id: I80b94833a60ddf954c7cd92fd2cfbebd8dd46142
2014-12-12 20:34:55 +01:00
juliusv f2052c9c0d Merge pull request #423 from prometheus/u-c-l/adjust-to-new-goleveldb
Adjust to the new version of goleveldb.
2014-12-12 20:34:28 +01:00
Bjoern Rabenstein afd864e7f4 Adjust to the new version of goleveldb.
(And yes, we do want vendoring for that... This is just the quick fix.)

Change-Id: I9d347a64d96de6b3390a0e35c8d466f14bb83e4e
2014-12-10 18:04:29 +01:00
Björn Rabenstein cf781eff37 Merge pull request #421 from prometheus/u-c-l/code-cleanup
Apply a giant code cleanup.
2014-12-10 17:48:05 +01:00
Bjoern Rabenstein 39efe6358b Fix typos and import order.
This doesn't make the import order consistend everywhere, just where
it was touched by the previous commit.

Change-Id: I82fc75f8691da9901c7ceb808e6f6fe8e5d62c0e
2014-12-10 17:46:56 +01:00
Bjoern Rabenstein b1e4956142 Apply a giant code cleanup.
Essentially:

- Remove unused code.

- Make it 'go vet' clean. The only remaining warnings are in generated code.

- Make it 'golint' clean. The only remaining warnings are in gerenated code.

- Smoothed out same minor things.

Change-Id: I3fe5c1fbead27b0e7a9c247fee2f5a45bc2d42c6
2014-12-10 16:16:49 +01:00
Björn Rabenstein b903507371 Merge pull request #418 from prometheus/u-c-l/fix-language
Use less offensive language WRT Travis.
2014-12-09 14:46:32 +01:00
Bjoern Rabenstein 901610835b Use less offensive language WRT Travise.
Change-Id: I6cfc8a1663940283f047cfb36241ac33433ffbd4
2014-12-09 14:25:37 +01:00
Björn Rabenstein 08d4dcf223 Merge pull request #416 from prometheus/bjoern/deal-with-complicated-todos
Remove the remaining races, new and old.
2014-12-08 17:44:46 +01:00
Bjoern Rabenstein 41dbff7058 Merge branch 'master' into bjoern/deal-with-complicated-todos
Conflicts:
	README.md

Change-Id: Ia9cf8c3498ec6238669f52b4114f3db54dd0bd07
2014-12-08 17:44:18 +01:00
juliusv 8e0d7dbfd8 Update architecture diagram link in README.md. 2014-12-07 02:06:53 +01:00
Julius Volz 9c43ed7b6d Update architecture diagram.
Include links to components and include the pushgateway.

Change-Id: I8edb246fac3ba6b2f97ef0d810e0d3bf163be5f7
2014-12-07 01:58:20 +01:00
juliusv 0939e21c93 Add quotes around ARGUMENTS in README.md. 2014-12-07 01:36:12 +01:00
juliusv d769e39ea3 Fix protoc link display. 2014-12-07 01:34:56 +01:00
juliusv 05616dfa86 Use sentence-style casing in headline 2014-12-07 01:29:56 +01:00