Commit Graph

830 Commits

Author SHA1 Message Date
Fabian Reinartz
d6e64dccc5 provider/boltmem: make alerts purely in-memory.
Initial testing has shown BoltDB in plain usage to be a bottleneck
at a few thousand alerts or more (especially JSON decoding.
This commit actually makes them purely memory as a temporary solution.
2016-07-07 09:45:12 +02:00
Brian Brazil
ec708124be Merge pull request #418 from tbouvet/master
Add support for smtp AUTH LOGIN
2016-07-05 15:24:32 +01:00
Thierry BOUVET
936f7e6362 Add smtp AUTH LOGIN 2016-07-05 15:10:42 +02:00
Fabian Reinartz
dd3e9b62c4 Merge pull request #414 from diogogmt/master
Updated webhook notifier config name in UnmarshalYAML.
2016-06-29 00:23:49 +02:00
Diogo Monteiro
fe12aaa6eb Updated webhook notifier config name in UnmarshalYAML. 2016-06-28 18:19:09 -04:00
Fabian Reinartz
3f1c996f64 Merge pull request #405 from prometheus/fabxc-0.2.1
*: cut 0.2.1
2016-06-23 11:05:49 +02:00
Fabian Reinartz
3efd928e91 *: cut 0.2.1 2016-06-23 10:58:12 +02:00
Fabian Reinartz
8da61aa1b0 Merge pull request #402 from prometheus/master
Merge changes into release-0.2
2016-06-23 10:54:37 +02:00
Fabian Reinartz
8dc2f9740d Merge pull request #397 from prometheus/fabxc-sil-fix
Add silence cache in front of BoltDB
2016-06-22 17:45:44 +02:00
Fabian Reinartz
ee37ea6965 provider/boltmem: add in-memory silence cache 2016-06-22 14:29:23 +02:00
beorn7
d3c2ff7bba Fix VERSION 2016-06-21 22:39:47 +02:00
Björn Rabenstein
fc8f20186c Merge pull request #395 from sciffer/hipchat_fix
Fixing hipchat room number formating to string
2016-06-21 16:44:21 +02:00
Fabian Reinartz
1a93b01234 api: fix missing silence initialization 2016-06-21 16:38:35 +02:00
shalom
218c44d6ca Fixing hipchat room number formating to string 2016-06-21 10:33:40 -04:00
Fabian Reinartz
202235fb79 Merge pull request #368 from mattbostock/inherit_receivers
Allow route receiver to be inherited
2016-06-20 15:07:33 +02:00
Fabian Reinartz
3bbb296490 Merge pull request #386 from prometheus/fabxc-0.2.0
*: cut 0.2.0
2016-06-17 16:22:52 +02:00
Fabian Reinartz
6e6ab0c0b5 *: cut 0.2.0 2016-06-17 16:04:07 +02:00
Fabian Reinartz
064a581998 Merge pull request #385 from prometheus/beorn7/lint
Fix go vet warnings
2016-06-17 15:19:05 +02:00
beorn7
1d6b6d6ea8 Fix go vet warnings 2016-06-17 15:10:16 +02:00
Fabian Reinartz
e6892e1063 Merge pull request #379 from prometheus/fabxc-inhibit-fix
inhibit: reduce O(n^2) complexity problem
2016-06-14 22:46:21 +02:00
Fabian Reinartz
5002dde445 Merge pull request #381 from prometheus/fabxc-patch-1
readme: update config documentation link
2016-06-14 11:05:08 +02:00
Fabian Reinartz
11b9061ffb readme: update config documentation link 2016-06-14 11:03:49 +02:00
Fabian Reinartz
a5c6b238c8 inhibit: reduce O(n^2) complexity problem
This change adds a inhibition cache. New alerts are checked against all
inhibition rules' source matchers. At notification time, we only have to
check the target matchers against the notified alerts. If there are
alerts in the source cache, we only have to verify the equal labels
against these.
2016-06-13 18:27:43 +02:00
Fabian Reinartz
6db9089469 Merge pull request #376 from prometheus/move-api-endpoint
web: Move /api/-/reload endpoint to /-/reload.
2016-06-12 12:14:16 +02:00
Julius Volz
55eb9601fa web: Move /api/-/reload endpoint to /-/reload. 2016-06-12 11:27:21 +02:00
Fabian Reinartz
5843dcf673 Merge pull request #367 from mattbostock/use_localhost_for_tests
Use localhost for tests
2016-06-07 11:01:57 +02:00
Fabian Reinartz
6c1581fd00 Merge pull request #372 from ZhenyangZhao/master
Add api/-/reload endpoint #353
2016-06-06 16:57:08 +02:00
zhaozy
13fb17be37 Add api/-/reload endpoint #353 2016-06-06 21:42:16 +08:00
Brian Brazil
7b20b776ea Merge pull request #370 from mattbostock/fix_typo
Fix typo 'determins' in comment
2016-06-06 12:32:26 +01:00
Matt Bostock
0d057e2fac Fix typo 'determins' in comment 2016-06-06 12:18:55 +01:00
Matt Bostock
aec84c0288 Add route tests for receiver inheritance
Tests for:
- inheriting a receiver from the default route
- overriding the receiver when the parent route has not set one
- inheriting a receiver from a parent route that's not the default

Adds a route which matches on a `group_by` label which inherits the
default receiver and also has a child route, matching on an `env` label,
which overrides the receiver.

To be sure of edge case behaviour, we test inheriting the receiver from
a child route. Hopefully no one would actually implement this edge case
in reality as it's overly complex but we test anyway to be sure that it
doesn't trigger unexpected behaviour.
2016-06-04 10:21:28 +01:00
Matt Bostock
a29860d80e Allow route receiver to be inherited
This is useful when you're using a label to determine the receiver but
want to override other options such as `group_by`. Currently you'd have
to duplicate the matchers for the receivers to be able to do this.

`checkReceiver()` now returns no error if a receiver is empty and we add
a check to ensure that the root route has a receiver defined. I've added
a test for this.

This brings the `receiver` option into line with the other options
(`group_by`, `group_wait`, etc) in the sense that routes can now inherit
the receiver from the parent node.

From https://prometheus.io/docs/alerting/configuration/:

> A route block defines a node in a routing tree and its children. Its
> optional configuration parameters are inherited from its parent node
> if not set.
2016-06-04 10:19:43 +01:00
Matt Bostock
68a1e51ffb Use localhost for tests
Previously, the tests would listen on all available interfaces.

Instead, have the tests use localhost only; using all available
interfaces is unnecessary.

On Mac OS X with the builtin firewall enabled, it triggers annoying
prompts to allow the tests to listen on all interfaces.
2016-06-04 08:19:23 +01:00
Brian Brazil
de71cfe36e Merge pull request #352 from prometheus/sdurrheimer/more-platforms
Support more cross-build platforms
2016-05-15 14:20:24 +01:00
Steve Durrheimer
4b03d26cb9
Support more cross-build platforms 2016-05-15 12:56:47 +02:00
Fabian Reinartz
5b7287094e Merge pull request #351 from prometheus/sdurrheimer/common-version
Make version informations consistent between prometheus components
2016-05-15 12:15:17 +02:00
Steve Durrheimer
c740007c37
Make version informations consistent between prometheus components 2016-05-15 12:04:15 +02:00
Steve Durrheimer
e1ba2ae262
Missing external dependency in vendors 2016-05-15 11:30:00 +02:00
Steve Durrheimer
06ff653631 Merge pull request #342 from sdurrheimer/fix-circleci-flanky-go-get
Fix CircleCI problems during go get promu
2016-05-15 10:55:25 +02:00
Brian Brazil
084ebbcef5 Merge pull request #349 from sdurrheimer/update-shields
Update README image shields
2016-05-13 20:56:22 +01:00
Steve Durrheimer
a1ce2e3383
Update README image shields 2016-05-13 21:48:57 +02:00
Steve Durrheimer
1e61c977f8
Fix CircleCI problems during go get promu 2016-05-05 13:13:24 +02:00
Fabian Reinartz
22b4d74f7e ci: use go1.6.2 test image 2016-05-04 14:58:57 +02:00
Fabian Reinartz
38be95b0a7 Merge pull request #337 from prometheus/fabxc-prov-boltmem
Bolt intermediate storage
2016-05-03 18:36:41 +02:00
Fabian Reinartz
639a4e9dc4 provider/boltmem: add license headers 2016-05-03 18:36:25 +02:00
Fabian Reinartz
0cd725ef3a provider/boltmem: fix naming, add doc comments 2016-05-03 12:46:34 +02:00
Fabian Reinartz
3980a6904e provider/boltmem: properly compare timestamps
Depending on the environment the timestamp internal fields
are different to handle timezones.
Thus a reflect.DeepEqual comparison falsely evaluates to
false.
This commit manually compares timestamps via the time.Time.Equal
method to circumvent the issue.
2016-05-03 12:46:34 +02:00
Fabian Reinartz
d8efdde515 main: Use bolt based storage 2016-05-03 12:46:34 +02:00
Fabian Reinartz
cc5aab6cff provider/boltmem: add alert subscription.
This commit implements the Subscribe() and GetPending()
methods for the bolt based alert provider.
2016-05-03 12:46:34 +02:00
Fabian Reinartz
0e954e10cf provider/boltmem: Add Put/Get for BoltDB provider 2016-05-03 12:46:34 +02:00