3774 Commits

Author SHA1 Message Date
Brian Brazil
a728f193de Merge pull request #2063 from dominikschulz/gce_instance_status
Add GCE Instance Status
2016-10-08 08:32:47 +01:00
Brian Brazil
008dd20d7a Merge pull request #2064 from dominikschulz/gce_copy
Fix small copy and paste error
2016-10-08 08:30:41 +01:00
Dominik Schulz
72cbf8af6f Fix small copy and paste error 2016-10-08 08:49:00 +02:00
Dominik Schulz
c73aa82589 Add GCE Instance Status 2016-10-08 08:40:12 +02:00
Björn Rabenstein
0cf8586136 Merge pull request #2059 from prometheus/release-1.2
Cut v1.2.0
2016-10-07 14:42:31 +02:00
beorn7
522c933614 Merge branch 'master' into release-1.2 v1.2.0 2016-10-07 14:41:50 +02:00
bekbulatov
01b53c1180 Add tls support 2016-10-07 13:40:22 +01:00
beorn7
d8cbac1225 Abbreviate CHANGELOG.md entry for 1.2.0
It now follows the policy of only documenting user-relevant changes.
2016-10-07 13:39:46 +02:00
Björn Rabenstein
05d3d6d9f7 Merge pull request #2060 from prometheus/cleanup-comments
Clean up some doc comments
2016-10-06 23:16:05 +02:00
Julius Volz
cb02f017ee Clean up some doc comments 2016-10-06 21:53:40 +02:00
beorn7
836c61e1da Cut v1.2.0 2016-10-06 21:28:51 +02:00
Julius Volz
2844a8c7b5 Merge pull request #2055 from prometheus/utilization
Add Chunk.Utilization() methods
2016-10-06 16:36:25 +02:00
Julius Volz
c212ef0326 Add Chunk.Utilization() methods
When using the chunking code in other projects (both Weave Prism and
ChronixDB ingester), you sometimes want to know how well you are
utilizing your chunks when closing/storing them.
2016-10-06 16:31:59 +02:00
Julius Volz
0dbcf55bd2 Merge pull request #2054 from prometheus/remove-grpc-leftovers
Remove gRPC leftovers in protobuf definitions
2016-10-05 17:56:25 +02:00
Julius Volz
ee8e8d1d31 Merge pull request #2053 from prometheus/fix-remote-write-example
Simplify and fix remote write example
2016-10-05 17:53:45 +02:00
Julius Volz
b5163351bf Simplify and fix remote write example
After removing gRPC, this can be simplified again. Also, the
configuration for the remote storage moved from flags to the config
file.
2016-10-05 17:53:01 +02:00
Julius Volz
c7932aa009 Remove gRPC leftovers in protobuf definitions 2016-10-05 17:31:04 +02:00
Björn Rabenstein
1e2f03f668 Merge pull request #2005 from redbaron/microoptimise-matching
Microoptimise matching
2016-10-05 17:26:56 +02:00
Maxim Ivanov
e6db9f8159 New fpsForLabelMatchers and seriesForLabelMatchers methods
These more specific methods have replaced `metricForLabelMatchers`
in cases where its  `map[fingerprint]metric` result type was
not necessary or was used as an intermediate step

Avoids duplicated calls to `seriesForRange` from
`QueryRange` and `QueryInstant` methods.
2016-10-05 15:15:54 +01:00
Brian Brazil
6e8f87a37f Merge pull request #2047 from prometheus/write-relabel
Add support for remote write relabelling.
2016-10-05 07:47:49 +01:00
Brian Brazil
77605649a9 Add support for remote write relabelling.
Switch back to a single remote writer, as we were only ever meant to
have one and the relabel semantics are clearer that way.
2016-10-05 07:43:19 +01:00
Julius Volz
9172728125 Merge pull request #2050 from prometheus/unpublish-series-methods
Unpublish accidentally published series methods
2016-10-03 11:36:25 +02:00
Tobias Schmidt
f07e67650e Merge pull request #2049 from prometheus/ctxfn-error
Update common/route vendoring for contextFn errors
2016-10-03 12:06:46 +03:00
Julius Volz
c9d4526428 Unpublish accidentally published series methods
There were some more accidentally published methods of the memorySeries
type which I didn't notice when reviewing https://github.com/prometheus/prometheus/pull/2011
2016-10-03 00:04:56 +02:00
Julius Volz
4f79072fd1 Update common/route vendoring for contextFn errors 2016-10-02 23:04:03 +02:00
Julius Volz
c0889fd92e Merge pull request #2032 from prometheus/separate-chunk-package
storage: separate chunk package, publish more names
2016-10-02 20:48:08 +02:00
Maxim Ivanov
4978a65495 Extract initial FP candidate build logic into candidateFPsForLabelMatchers method
No functional changes otherwise
2016-10-02 17:35:02 +01:00
Maxim Ivanov
c048a0cde8 Add metrics to result after checking all matchers
Should be marginally faster and somewhat more GC friendly
2016-10-02 17:35:02 +01:00
Maxim Ivanov
bedc0eda1f Added BenchmarkQueryRange 2016-10-02 17:35:02 +01:00
Fabian Reinartz
32d29f8dbc Merge pull request #2044 from prometheus/changes-nan
promql: handle NaN in changes() correctly
2016-09-30 11:18:46 +02:00
Fabian Reinartz
ccbce0c51f promql: handle NaN in changes() correctly 2016-09-30 11:04:25 +02:00
Julius Volz
c25f0de5ae Remove local.ZeroSample{,Pair}, use model definitions 2016-09-28 23:42:45 +02:00
Julius Volz
50b5837a63 Update github.com/prometheus/common/model vendoring 2016-09-28 23:42:45 +02:00
Julius Volz
044ebce779 Review fixups. 2016-09-28 23:42:44 +02:00
Julius Volz
0c64ad1a3d Merge pull request #2012 from prometheus/context-consolidation
api: Consolidate web API contexts
2016-09-28 14:38:39 +02:00
Julius Volz
00f5e5470e Merge pull request #2035 from brancz/external-relabelling
notifier: attach external labels before relabelling
2016-09-27 14:43:41 +02:00
Frederic Branczyk
572423cbe5
notifier: attach external labels before relabelling
By attaching external labels before relabelling, they are available
during relabelling.
2016-09-27 14:34:56 +02:00
Fabian Reinartz
0baab6a88c Merge pull request #2034 from roman-vynar/consul-tolerance
Do not fail Consul discovery on Prometheus startup when Consul is down.
2016-09-27 11:09:12 +02:00
Roman Vynar
db63a4bd2a
Do not fail Consul discovery on Prometheus startup when Consul is down. 2016-09-26 22:20:56 +03:00
Julius Volz
d30a3c7c0f Fix accidental publishing of memorySeries.firstTime() 2016-09-26 13:25:27 +02:00
Julius Volz
ab80ced756 storage: separate chunk package, publish more names
This is a followup to https://github.com/prometheus/prometheus/pull/2011.

This publishes more of the methods and other names of the chunk code and
moves the chunk code to its own package. There's some unavoidable
ugliness: the chunk and chunkDesc metrics are used by both packages, so
I had to move them to the chunk package. That isn't great, but I don't
see how to do it better without a larger redesign of everything. Same
for the evict requests and some other types.
2016-09-26 13:25:11 +02:00
Julius Volz
42c05dd3a2 Merge pull request #2011 from mattkanwisher/chuck-public
Make Chunk and ChunkIterator public for reuse
2016-09-23 14:45:35 +02:00
Fabian Reinartz
57b358b82a vendor: update govalidator (#2023)
Fixes #2022
2016-09-23 01:06:51 +02:00
Fabian Reinartz
5e57fa85c0 Merge pull request #2016 from mattbostock/fix_race_between_reload_and_stop
rules/manager.go: Fix race between reload and stop
2016-09-22 19:30:56 +02:00
Fabian Reinartz
71b332278d Merge pull request #2021 from prometheus/beorn7/storage
Avoid `defer` in seriesMap.get
2016-09-22 18:12:21 +02:00
beorn7
ca98382943 Avoid defer in seriesMap.get
This is related to https://github.com/golang/go/issues/14939 .
It's probably the only occurrence where it matters.
2016-09-22 17:50:58 +02:00
Brian Brazil
2ee00b4461 Merge pull request #2019 from dominikschulz/ec2state
Expose ec2_instance_state
2016-09-22 14:57:19 +01:00
Dominik Schulz
f6fbcf9aa2 Expose ec2_instance_state 2016-09-22 15:01:23 +02:00
Fabian Reinartz
e5c633ed14 Merge pull request #2015 from mattbostock/fix_typo
cmd/prometheus/main.go: Fix typo in comment
2016-09-21 23:41:06 +02:00
Matt Bostock
926a5ab3dd rules/manager.go: Fix race between reload and stop
On one relatively large Prometheus instance (1.7M series), I noticed
that upgrades were frequently resulting in Prometheus undergoing crash
recovery on start-up.

On closer examination, I found that Prometheus was panicking on
shutdown.

It seems that our configuration management (or misconfiguration thereof)
is reloading Prometheus then immediately restarting it, which I suspect
is causing this race:

    Sep 21 15:12:42 host systemd[1]: Reloading prometheus monitoring system.
    Sep 21 15:12:42 host prometheus[18734]: time="2016-09-21T15:12:42Z" level=info msg="Loading configuration file /etc/prometheus/config.yaml" source="main.go:221"
    Sep 21 15:12:42 host systemd[1]: Reloaded prometheus monitoring system.
    Sep 21 15:12:44 host systemd[1]: Stopping prometheus monitoring system...
    Sep 21 15:12:44 host prometheus[18734]: time="2016-09-21T15:12:44Z" level=warning msg="Received SIGTERM, exiting gracefully..." source="main.go:203"
    Sep 21 15:12:44 host prometheus[18734]: time="2016-09-21T15:12:44Z" level=info msg="See you next time!" source="main.go:210"
    Sep 21 15:12:44 host prometheus[18734]: time="2016-09-21T15:12:44Z" level=info msg="Stopping target manager..." source="targetmanager.go:90"
    Sep 21 15:12:52 host prometheus[18734]: time="2016-09-21T15:12:52Z" level=info msg="Checkpointing in-memory metrics and chunks..." source="persistence.go:548"
    Sep 21 15:12:56 host prometheus[18734]: time="2016-09-21T15:12:56Z" level=warning msg="Error on ingesting out-of-order samples" numDropped=1 source="scrape.go:467"
    Sep 21 15:12:56 host prometheus[18734]: time="2016-09-21T15:12:56Z" level=error msg="Error adding file watch for \"/etc/prometheus/targets\": no such file or directory" source="file.go:84"
    Sep 21 15:12:56 host prometheus[18734]: time="2016-09-21T15:12:56Z" level=error msg="Error adding file watch for \"/etc/prometheus/targets\": no such file or directory" source="file.go:84"
    Sep 21 15:13:01 host prometheus[18734]: time="2016-09-21T15:13:01Z" level=info msg="Stopping rule manager..." source="manager.go:366"
    Sep 21 15:13:01 host prometheus[18734]: time="2016-09-21T15:13:01Z" level=info msg="Rule manager stopped." source="manager.go:372"
    Sep 21 15:13:01 host prometheus[18734]: time="2016-09-21T15:13:01Z" level=info msg="Stopping notification handler..." source="notifier.go:325"
    Sep 21 15:13:01 host prometheus[18734]: time="2016-09-21T15:13:01Z" level=info msg="Stopping local storage..." source="storage.go:381"
    Sep 21 15:13:01 host prometheus[18734]: time="2016-09-21T15:13:01Z" level=info msg="Stopping maintenance loop..." source="storage.go:383"
    Sep 21 15:13:01 host prometheus[18734]: panic: close of closed channel
    Sep 21 15:13:01 host prometheus[18734]: goroutine 7686074 [running]:
    Sep 21 15:13:01 host prometheus[18734]: panic(0xba57a0, 0xc60c42b500)
    Sep 21 15:13:01 host prometheus[18734]: /usr/local/go/src/runtime/panic.go:500 +0x1a1
    Sep 21 15:13:01 host prometheus[18734]: github.com/prometheus/prometheus/rules.(*Manager).ApplyConfig.func1(0xc6645a9901, 0xc420271ef0, 0xc420338ed0, 0xc60c42b4f0, 0xc6645a9900)
    Sep 21 15:13:01 host prometheus[18734]: /home/build/packages/prometheus/tmp/build/gopath/src/github.com/prometheus/prometheus/rules/manager.go:412 +0x3c
    Sep 21 15:13:01 host prometheus[18734]: created by github.com/prometheus/prometheus/rules.(*Manager).ApplyConfig
    Sep 21 15:13:01 host prometheus[18734]: /home/build/packages/prometheus/tmp/build/gopath/src/github.com/prometheus/prometheus/rules/manager.go:423 +0x56b
    Sep 21 15:13:03 host systemd[1]: prometheus.service: main process exited, code=exited, status=2/INVALIDARGUMENT
2016-09-21 22:03:02 +01:00