Commit Graph

89 Commits

Author SHA1 Message Date
devnev
f2ba86e9d2 Add proper JSON marshaling of config regexps. (#602) 2017-01-17 11:50:54 +01:00
Fabian Reinartz
d7843ad6a6 Export parsed configuration as JSON and drop js-yaml dependency. (#563)
* Export parsed configuration as JSON in /api/v1/status.
* Avoid exporting the XXX fields.
* Drop js-yaml library and use already parsed configuration.
* Go fmt + go-bindata
2016-11-22 15:05:14 +01:00
Fabian Reinartz
b6851a5421 silences: fix concurrent cache writes (#561)
This fixes #559 by removing concurrent map writes to the matcher cache.
The cache was guarded by the Silence's main lock, which only used a
read-lock on queries.
The cache's get methods lazily loads data into the cache and thus
causing concurrent writes.

We just change the main lock to always write-lock, as we don't expect
high lock contention at this point and would have it in a dedicated
cache lock anyway.
2016-11-21 11:09:49 +01:00
sgissi
96a428a55e config/notify: Add SMTP Require TLS global option (#512) 2016-09-27 11:00:21 +02:00
Fabian Reinartz
c01c1989a7 config: check overflow in global section 2016-09-05 11:30:07 +02:00
Fabian Reinartz
b822fe58b6 Merge branch 'slack_enhance' of https://github.com/dmclain/alertmanager into dmclain-slack_enhance 2016-08-09 14:46:39 +02:00
Fabian Reinartz
f8de58b6b6 config: make Slack channel optional 2016-08-03 08:24:42 +02:00
Djordje Atlialp
8e0f405e67 Add VictorOps Notifier
Add default VictorOpsAPIURL

Add VictorOps default config

Add VictorOpsConfig struct in notifiers

Add new template tags for victorops

Add notifications logic for victorops

Compiled template tags with make assets

Remove common labels from entity_id template

Set messageType default value to CRITICAL

Recovery messageType is not configurable anymore. Firing state only allows specific keys

Make assets

Using log.Debugf

EntityID should not be configureable

Remove entity_id from template

Use GroupKey(ctx) as entity_id

Improve debug logging

Fix type of entity_id
2016-07-27 00:49:05 +02:00
Tristan Colgate
de2252911e OpsGenie Notifier, fixes and additions:
- OpsGenie notifier confused the description and message fields
- Also added the notes field.
2016-07-12 16:20:23 +01:00
Diogo Monteiro
fe12aaa6eb Updated webhook notifier config name in UnmarshalYAML. 2016-06-28 18:19:09 -04: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
Dave McLain
c5d1c48610 Add support for overriding the icon_url slack parameter 2016-05-12 13:57:15 -05:00
Max Chadwick
4cb3874ab8 Move SMTP auth to the config file 2016-04-16 16:41:55 -04:00
Fabian Reinartz
f33c1bedb4 Hide PushOver auth information 2016-04-12 10:14:22 +02:00
Michael Stapelberg
5158926bc3 Re-do #163: smtp: STARTTLS before querying auth mechanisms
This was not ported over with the rewrite.
2016-04-01 16:50:12 +02:00
Seb Dijols
7d512eba56 Add support for Teams and Tags to OpsGenie notifier
Add Teams and Tags templated strings to OpsGenieConfig. Output must be comma-separated values.
2016-03-16 09:54:21 +00:00
Fabian Reinartz
1748a0e304 Merge pull request #258 from stapelberg/pushover
Re-implement pushover notifications
2016-03-04 10:02:53 +01:00
Brian Brazil
dff7953baa Make the first letter title case, not all of them. 2016-03-03 14:06:11 +00:00
Michael Stapelberg
4c0aa00bcf Re-implement pushover notifications
This feature was dropped during the rewrite, but I use and like
Pushover.

fixes #107
2016-03-03 09:07:33 +01:00
Alexis Savin
b364ca535e Adding support for slack icon_emoji in slack config.
```
slack_configs:
  - send_resolved: true
    username: 'Prometheus'
    channel: '#monitoring'
    icon_emoji: ':prometheus:'
    api_url: 'https://hooks.slack.com/services/<token>'
```
2016-02-16 11:54:30 +01:00
Johannes 'fish' Ziemke
e5925db736 Fix indent 2016-01-28 13:44:21 +01:00
Fabian Reinartz
11fa642998 Add routing validation
The root route in the configuration must not exclude any alerts,
i.e. not have any matchers.
All receivers referenced in the routing tree are validated to exist.
2016-01-27 14:27:19 +01:00
louis
960acdba65 remove checking auth token in config/notifiers.go 2016-01-06 16:25:34 +01:00
Fabian Reinartz
d7791329e7 Merge pull request #208 from 0x46616c6b/hipchat-integration
Readd Hipchat Integration
2016-01-06 11:29:41 +01:00
louis
23db37dc98 add hipchat room notifier 2016-01-05 20:52:08 +01:00
Brian Brazil
9a175d7b4f Don't send resolved to Slack by default
Slack is a general chat system, it has no notion
of resolved messages. Default it to false to avoid
spamming people as we do with all other such systems.
2016-01-05 18:01:21 +00:00
Fabian Reinartz
d21d29ee58 Correctly parse send_resolved config field
Fixes #198
2015-12-23 08:31:50 +01:00
Fabian Reinartz
9b4479cb6b Move send_resolved parameter to notifier configuration 2015-12-17 13:43:56 +01:00
Fabian Reinartz
2a879f649f Fix email From configuration 2015-12-08 11:55:28 +01:00
Fabian Reinartz
7581d974ff Hide secret configuration data 2015-12-03 12:46:28 +01:00
Brian Brazil
24b2da9482 Fix typo in filename 2015-11-30 18:37:47 +00:00
Fabian Reinartz
18e9e728f8 Improve Slack integration 2015-11-30 13:52:41 +01:00
Fabian Reinartz
42b73a6291 Add missing template data argument 2015-11-30 11:21:08 +01:00
Fabian Reinartz
00b8a2ad03 Make resolve timeout configurable 2015-11-27 15:41:22 +01:00
Fabian Reinartz
9fbc76a52f Improve PagerDuty templating 2015-11-27 14:02:34 +01:00
Jimmi Dyson
7c9700e76c Correct error message for missing OpsGenie API key 2015-11-25 10:38:29 +00:00
Jimmi Dyson
3e7d614eb2 Add opsgenie notifier 2015-11-24 22:29:25 +00:00
beorn7
93ffa534a5 PR with changes after code review
Now to be reverse-reveiewed.
2015-11-23 18:24:57 +01:00
Fabian Reinartz
3386cea9df Anchor config regexes 2015-11-19 08:53:29 +01:00
Brian Brazil
faa88831f4 First-pass at improving template system.
- Cut back to bare minimum to make the rest simpler
- Consistency in config naming
- Have one data strucutre that's the same for all templates
- Pass in common labels to templates
- Support templates almost everywhere
- Support multiple SMTP recipients
- Support non-ASCII SMTP headers
- Handle colour logic via templates
- Make $subjects have consistent output, go maps aren't sorted.
- Make tests pass when v6 is disabled
2015-11-18 14:59:05 +00:00
Fabian Reinartz
d6611651c4 Fix unused import 2015-11-12 15:02:33 +01:00
Fabian Reinartz
3e685642c7 Fix golint issues in config/ 2015-11-12 12:57:20 +01:00
Fabian Reinartz
dc656a44ea Adjust config fields to 'receiver' 2015-11-10 14:08:20 +01:00
Fabian Reinartz
e4e594d826 Unify receiver naming 2015-11-10 13:47:04 +01:00
Fabian Reinartz
5ce39632f8 Fix go vet warnings 2015-11-05 10:25:25 +01:00
Fabian Reinartz
cb0ecd9416 Alter config to have a root route 2015-10-19 16:52:54 +02:00
Fabian Reinartz
ef0ee97781 Implement global routing options 2015-10-19 16:17:15 +02:00
Fabian Reinartz
aead14a99f Implement initial PagerDuty notifications 2015-10-19 13:36:17 +02:00
Fabian Reinartz
6ff0cd94c5 Finalize PagerDuty config 2015-10-19 11:44:46 +02:00
Fabian Reinartz
0b818bac38 Implement global setting of notification parameters 2015-10-17 10:02:32 +02:00