Fabian Reinartz
11fae2a719
Simplify and fix notification grouping.
...
This commit changes the notification grouping behavior
to simply send all alerts of a group as soon as a single
one of them needs updating.
This fixes a critical bug which caused erroneous resolved
notifications to be sent.
2016-01-08 15:17:54 +01:00
Fabian Reinartz
9b4479cb6b
Move send_resolved parameter to notifier configuration
2015-12-17 13:43:56 +01:00
Fabian Reinartz
4ada2398f2
Set previous inhibition/silence state
2015-12-04 10:58:56 +01:00
Fabian Reinartz
9fbc76a52f
Improve PagerDuty templating
2015-11-27 14:02:34 +01:00
Fabian Reinartz
38b6ed118d
Iterate over templating
2015-11-26 12:56:09 +01:00
beorn7
93ffa534a5
PR with changes after code review
...
Now to be reverse-reveiewed.
2015-11-23 18:24:57 +01:00
Fabian Reinartz
0d8ee0b3ec
Fix golint issues in notify/
2015-11-12 13:18:36 +01:00
Fabian Reinartz
e4e594d826
Unify receiver naming
2015-11-10 13:47:04 +01:00
Fabian Reinartz
8d2bbc348b
Simplify and rename notification info struct.
...
The delivered field was previously unused and is removed by this commit.
Only successful notifications are stored. The type was renamed to NotifyInfo.
2015-11-06 10:09:39 +01:00
Fabian Reinartz
5ce39632f8
Fix go vet warnings
2015-11-05 10:25:25 +01:00
Fabian Reinartz
6f0d441e39
Fix unlocked write and unnecessary condition
2015-11-04 17:17:37 +01:00
Fabian Reinartz
c045a6285b
Implement deterministic incident keys, complete PD integration
2015-10-21 13:08:53 +02:00
Fabian Reinartz
4b49350122
Fix potential grouping collisions, pass down group labels
2015-10-16 16:55:56 +02:00
Fabian Reinartz
5dc2f6e9b1
Add license headers
2015-10-11 17:24:49 +02:00
Fabian Reinartz
9c5468786d
Simplify notifier constructors
2015-10-11 16:54:31 +02:00
Fabian Reinartz
6bcc8c9928
Add concurrent, named fanout notifier
2015-10-11 15:37:21 +02:00
Fabian Reinartz
41821faf92
Use multi-error for notify-fanout
2015-10-11 12:40:43 +02:00
Fabian Reinartz
6e47e75ac5
Enhance email notifier templating
2015-10-11 12:34:05 +02:00
Fabian Reinartz
c84a287be6
Notify pipeline restructuring
...
Notifcation configs may have multiple notification destinations.
This commit changes the pipeline so that each one has its own
retry and deduplication logic.
2015-10-10 15:11:37 +02:00
Fabian Reinartz
f62dc65ff4
Implement initial email notifications
2015-10-09 12:03:15 +02:00
Fabian Reinartz
e209c8b4fc
Outlined slack notification support
2015-10-09 10:48:25 +02:00
Fabian Reinartz
9cd90d3482
Implement retrying notifier
...
Retrying notifier is added to the end of the pipeline where it retries
sending out the final notifications until the context times out.
Exponential backoff is used.
2015-10-09 09:37:32 +02:00
Fabian Reinartz
9bf18ec4a5
Always assume success on reload of valid config
2015-10-09 09:05:21 +02:00
Fabian Reinartz
42e1963715
Ensure minimum notification context timeout
2015-10-09 08:58:44 +02:00
Fabian Reinartz
0a5a7691fe
Encapsulate context values in package.
...
Setting and getting of context values are done via helper
methods in the notifier package. The used keys are unexported. Thus,
we ensure that external code cannot overwrite the values and the type
is always correct.
2015-10-09 08:43:39 +02:00
Fabian Reinartz
638b3f9f40
Use a fixed now time through notify pipeline
2015-10-09 08:26:41 +02:00
Fabian Reinartz
d1379a3f71
Move repeat_interval and send_resolved to route configuration
2015-10-08 10:50:37 +02:00
Fabian Reinartz
77cce75c05
Simplify notify provider interface
2015-10-06 20:40:52 +02:00
Fabian Reinartz
0e742ecf33
Handle resolved new alerts properly
2015-10-02 15:58:37 +02:00
Fabian Reinartz
03272174f2
Pass aggregation group identifier through context
2015-10-01 15:18:19 +02:00
Fabian Reinartz
3e145caef9
Implement unifying of batches on repeated sends
2015-09-30 19:03:04 +02:00
Fabian Reinartz
f5cfe0b4e8
Add an exit point in case all alerts are filtered
2015-09-30 18:44:33 +02:00
Fabian Reinartz
a377004d90
Wrap all notifiers with logging
2015-09-30 14:54:13 +02:00
Fabian Reinartz
c3b36790eb
Move notifiers into their own package
2015-09-29 15:36:36 +02:00
Fabian Reinartz
8799d647b3
Use proper build function to create new notifiers
2015-09-29 15:02:30 +02:00
Fabian Reinartz
b5cee8828a
Add webhook notifier mechanism
2015-09-29 14:45:38 +02:00