Commit Graph

69 Commits

Author SHA1 Message Date
Fabian Reinartz
ee6ca25db0 Add initial web UI routing 2015-10-12 07:10:25 +02:00
Fabian Reinartz
98fe623d60 Rename NewAPI to RegisterAPI 2015-10-11 17:28:09 +02:00
Fabian Reinartz
ce74f8363b Simplify initialization
No longer update components based on a new configuration. Generally,
destroying and recreating has no performance impact and is less
error-prone.
This also removes the Reloadable interface and simplifies the entire
startup contraption.
2015-10-11 16:54:39 +02:00
Fabian Reinartz
3a2db95a8e Create and use custom template package 2015-10-11 13:32:24 +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
7ef293d9bc Make loadable templates configurable 2015-10-09 11:06:04 +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
c60ae1f752 Change notifier pipeline order.
With repeat_interval and send_resolved being defined per
aggregation group, we no longer need to chain the deduping
after the routing.
2015-10-08 11:02:49 +02:00
Fabian Reinartz
d1379a3f71 Move repeat_interval and send_resolved to route configuration 2015-10-08 10:50:37 +02:00
Fabian Reinartz
f067c96525 Use full SQL persistence, init DB in main 2015-10-06 21:10:24 +02:00
Fabian Reinartz
ff29710178 Fix silence encoding/decoding in SQL provider 2015-10-06 13:56:02 +02:00
Fabian Reinartz
de18b1b70c Make data directory configurable 2015-10-06 12:36:33 +02:00
Fabian Reinartz
826a51cafb Complete and use the SQL backed silence provider 2015-10-06 12:23:48 +02:00
Fabian Reinartz
7b0820a205 Add silencing test 2015-10-01 21:28:18 +02:00
Fabian Reinartz
957d108e67 Add flag to change listen address 2015-09-30 17:24:06 +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
331ad31401 Implement configuration reloading 2015-09-29 12:22:13 +02:00
Fabian Reinartz
7224f33c5b Add debug logging for incoming alerts 2015-09-29 12:00:30 +02:00
Fabian Reinartz
2b410cb749 Parse flags 2015-09-29 11:50:59 +02:00
Fabian Reinartz
3d9e7286de Implement graceful shutdown 2015-09-29 11:42:29 +02:00
Fabian Reinartz
c40c31772f Rename Silencer to Muter 2015-09-28 14:13:01 +02:00
Fabian Reinartz
67f5e89816 Switch to common/log package 2015-09-28 12:12:27 +02:00
Fabian Reinartz
2bc66b14ee Simplify deduping wrapping 2015-09-27 21:41:30 +02:00
Fabian Reinartz
dbd015ef29 Implement usage of deduping notifier 2015-09-27 20:17:09 +02:00
Fabian Reinartz
95b57b3622 Add deduping notifier 2015-09-27 19:50:41 +02:00
Fabian Reinartz
8c15e18571 Extract notifier construction from routedNotifier 2015-09-27 14:37:34 +02:00
Fabian Reinartz
95b12f8c30 Add silence API endpoints 2015-09-27 14:07:04 +02:00
Fabian Reinartz
0597c1757b Implement in-memory silences provider 2015-09-27 13:18:13 +02:00
Fabian Reinartz
e10ae037d0 Extract notifiers from dispatcher to routed notifier 2015-09-27 13:09:02 +02:00
Fabian Reinartz
3b7f880f60 Enable alert API endpoints 2015-09-26 11:14:18 +02:00
Fabian Reinartz
89e8d82a1b Fix compile issues 2015-09-26 11:14:18 +02:00
Fabian Reinartz
1f9886e5ca Migrate to types package 2015-09-25 14:38:57 +02:00
Fabian Reinartz
99269433f5 implement support for persistence via LevelDB 2015-07-10 18:27:17 +02:00
Fabian Reinartz
d5ff099d05 cleanup dispatcher notifications, fix default route opts 2015-07-04 14:41:10 +02:00
Fabian Reinartz
2bb6233dd8 add initial dispatcher and config storage 2015-07-02 18:38:05 +02:00
Fabian Reinartz
bbe679b432 initial alert routing tree 2015-07-01 17:56:53 +02:00
Fabian Reinartz
d4c90e9e28 Add silence API and memory storage 2015-07-01 13:17:08 +02:00
Fabian Reinartz
e730242749 initial commit with basic files and types 2015-06-30 14:29:30 +02:00
Fabian Reinartz
4c58dc90e6 wipe everything 2015-06-30 12:34:45 +02:00
Fabian Reinartz
2e1a01b2fa switch to YAML config. 2015-06-29 18:53:47 +02:00
Julius Volz
35b3741756 Add runbook and alertmanager URLs to PD+email notifications.
I don't have a way to test all the other notification mechanisms, which
is something we should fix in general. For now, only PagerDuty and email
have the new runbook and alertmanager URL information.

Not very happy with the overall cleanliness of this, and the codebase
overall, of course, but since we need this urgently tomorrow, I hope
this is fine for now.
2015-06-25 18:18:08 +02:00
Brian Brazil
89b13e1c73 Add a generic webhook notifier.
This allows for use cases such as kicking off shell scripts,
logging notifications, or anything else the alertmanager doesn't
directly support.
2015-05-27 23:57:18 +01:00
Julius Volz
b4648a9e33 Migrate logging to use prometheus/log. 2015-05-23 23:21:44 +02:00
Ceesjan Luiten
180f7dcf31 Path prefix to support reverse proxies 2015-04-29 22:10:21 +02:00
Julius Volz
0db99c2c5e Make flag names consistent across projects. 2015-02-09 12:22:44 +01:00