Commit Graph

119 Commits

Author SHA1 Message Date
Łukasz Mierzwa
1ce7f1b2d0 fix(backend): workaround viper map key parsing
This is a workaround until this issue is fixed upstream.

Fixes #507
2019-03-13 10:30:22 +00:00
Łukasz Mierzwa
6ebc88b0ba feat(api): deduplicate silences
Detect if all alerts are silenced with the same silence ID and expose this information in the API response.
2019-03-08 16:59:47 +00:00
Łukasz Mierzwa
7a0a587ddb feat(api): expose alert.inhibitedBy in the API 2019-03-05 11:00:54 +00:00
Łukasz Mierzwa
058d10f4ba chore(config): move value mapping options to grid:sorting section
Those options are only valid for sorting, so move it to the new config section where all sort options live
2019-02-21 18:15:11 +00:00
Łukasz Mierzwa
aa657ea216 feat(backend): allow configuring default grid sort options
This will allow UI to get the defaults for grid sorting via the API
2019-02-20 21:58:59 +00:00
Łukasz Mierzwa
397bbe5783 feat(config): allow configuring label value mapping for sorting
This feature solves the problem of sorting by label when values have special meaning and alphabetic sort doesn't make sense for it.
2019-02-18 23:17:47 +00:00
Łukasz Mierzwa
22f719adc6 fix(api): apply colors to the @alertmanager label
It's a fake label so it needs special code to inject the color information to the API response.

Fixes #421
2019-02-06 17:11:25 +00:00
Łukasz Mierzwa
9e4abbd42b feat(backend): allow setting custom colors for labels
This allows to have a user defined color (rgb or hex) for label values configured in the config file
2019-02-04 13:18:47 +00:00
Łukasz Mierzwa
b52c3f7af4 feat(backend): allow disabling TLS certificate validation
Fixes #409
2019-02-01 20:57:34 +01:00
Łukasz Mierzwa
af9e55032e feat(api): use metrics to detect Alertmanager version
We need to know upstream version to decide which API endpoints we can use, metrics don't change between versions so they allow us to do that without any prior knowlage or assumptions
2019-01-30 17:57:02 +00:00
Richard Maynard
ec14be0288 feat(backend): add support for custom headers (#368)
This will allow the AlertManager upstreams to be sent user defined HTTP headers.
2019-01-17 08:53:33 +00:00
Łukasz Mierzwa
e1f9686e3f feat(backend): allow stripping annotations
This allows same filtering we already have with labels. Fixes #312
2019-01-15 22:12:23 +00:00
Łukasz Mierzwa
a3ef1dd40e chore(api): drop counters from API response
Not used by any UI code, remove it.
2019-01-05 11:52:45 +00:00
Łukasz Mierzwa
0d68ea4c3c feat(api): store silences per cluster in the API response 2018-12-01 09:53:47 +00:00
Łukasz Mierzwa
93617b3b18 fix(api): ensure that cluster members are always sorted 2018-11-30 23:59:58 +00:00
Łukasz Mierzwa
8b5862d44b chore(api): store cluster as a dict
This will allow silences to be grouped by cluster rather than by alertmanager instance
2018-11-30 23:59:58 +00:00
Łukasz Mierzwa
764f89e1d8 feat(api): expose all known Alertmanager clusters 2018-11-30 18:57:52 +00:00
Łukasz Mierzwa
76dd51bb92 feat(api): expose Alertmanager instance version and cluster members
Store and expose via API the version of each Alertmanager instance and the list of instances in the same cluster
2018-11-30 18:35:34 +00:00
Łukasz Mierzwa
13dfae617c fix(config): default to 'karma.yaml' config file
If config.file is not set try loading 'karma.yaml' from current directory. This is the documented behaviour and it used to work before, got broken when config.file was modified to accept a full path instead of just the file name

Fixes #261
2018-11-22 22:46:26 +00:00
Łukasz Mierzwa
c4bcc04abf fix(tests): relax ac count test
This needs a better and more explicit test, relax it for now
2018-11-10 13:08:44 +00:00
Łukasz Mierzwa
ccc9afe3fc fix: fix 2018-11-10 13:08:04 +00:00
Łukasz Mierzwa
826ea0559c chore(tests): add mock responses from alertmanager 0.15.3 2018-11-10 12:23:16 +00:00
Łukasz Mierzwa
8d0b8037c6 feat(project): add support for loading extra css/js files 2018-10-30 20:56:44 +00:00
Łukasz Mierzwa
d7182b778e fix(tests): add annotations sort test 2018-10-27 11:19:40 +01:00
Łukasz Mierzwa
ade996a6ec refactor(api): move autocomplete code to filters 2018-10-08 23:15:28 +01:00
Łukasz Mierzwa
f03887b56c feat(api): add @silence_id filter
This allows to filter alerts by silence ID, only matches silenced alerts
2018-10-08 23:02:38 +01:00
Łukasz Mierzwa
090d73350c refactor(colors): move font color selection to the fronted
Right now backend sends both background and font color information, refactor to send background color and background brightness level (needed to pick font color) and let UI apply font color. Needed to implement #18
2018-09-30 13:50:21 +01:00
Łukasz Mierzwa
a7d695cec1 fix(config): use correct variable name for --config.file
Fixes issue introduced in #28
2018-09-16 00:17:24 +01:00
Łukasz Mierzwa
6932f25a37 chore(config): simplify configuration flags
Drop config.dir and use config.file to pass full path to the config file. Passing two options is just an unnecessary complexity
Fixes #22.
2018-09-15 14:15:08 +01:00
Łukasz Mierzwa
84cda643f3 fix(config): command line flags are parsed twice, drop automatic parsing 2018-09-12 21:50:21 +01:00
Łukasz Mierzwa
b16686b832 feat(demo): add a live demo setup for heroku 2018-09-12 19:30:41 +01:00
Łukasz Mierzwa
80e7caf627 fix(ui): expose Alertmanager instance public URI in upstreams list 2018-09-11 21:03:54 +01:00
Łukasz Mierzwa
fd645041b3 fix(api): remove alertmanager URI from per alert data 2018-09-11 20:49:07 +01:00
Łukasz Mierzwa
f9cf770429 feat(tests): add a live alert generator 2018-09-09 22:55:21 +01:00
Łukasz Mierzwa
9c16ffa447 chore(project): rename from unsee to karma
Fixes prymitive/unsee#23
2018-09-09 14:12:26 +01:00
Łukasz Mierzwa
589ce75ae6 feat(tests): more backend tests 2018-09-07 23:26:04 +01:00
Łukasz Mierzwa
cd0ef2421c feat(tests): more backend tests 2018-09-07 22:03:33 +01:00
Łukasz Mierzwa
53f873b688 fix(backend): fix invalid error formatting 2018-08-27 23:44:56 +01:00
Łukasz Mierzwa
ebb115348f chore(backend): add tests for Alertmanager 0.15.2 2018-08-14 18:38:27 +01:00
Łukasz Mierzwa
c6dc362186 fix(style): error strings should not be capitalized or end with punctuation or a newline 2018-08-11 23:03:02 +01:00
Łukasz Mierzwa
78bddce664 fix(style): check for bind errors in config 2018-08-11 22:59:10 +01:00
Łukasz Mierzwa
def3236645 fix(style): check of WriteString error return 2018-08-11 22:54:45 +01:00
Łukasz Mierzwa
b2a0f61d4e fix(style): simplify append code 2018-08-11 22:46:34 +01:00
Łukasz Mierzwa
2ec3df93d7 fix(style): check for alertmanager.RegisterAlertmanager error return 2018-08-11 22:43:22 +01:00
Łukasz Mierzwa
305916a3f2 fix(style): remove dead code 2018-08-11 08:39:07 +01:00
Łukasz Mierzwa
64f072b7d2 fix(style): simplify assignments 2018-08-11 08:31:18 +01:00
Łukasz Mierzwa
fb17ed7e31 fix(style): simplify group appends 2018-08-11 08:29:03 +01:00
Łukasz Mierzwa
7a6538e8ff fix(style): should omit comparison to bool constant 2018-08-11 08:25:57 +01:00
Łukasz Mierzwa
0310d9d4bc fix(style): should merge variable declaration with assignment 2018-08-11 08:24:58 +01:00
Łukasz Mierzwa
b3709927f7 feat(api): add an enpoint that returns all known label values for given label name
This will be used in the silence form, to provide a list of suggestions
2018-08-10 17:36:00 +01:00