95 Commits

Author SHA1 Message Date
Ł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
Łukasz Mierzwa
d934dbb053 feat(api): add /labelNames.json endpoint
This endpoint will be used for label name autocomplete in the silence form
2018-08-10 17:36:00 +01:00
Łukasz Mierzwa
77079a9629 feat(api): export annotation settings in the API 2018-07-19 23:38:11 +02:00
Łukasz Mierzwa
99a3671e9b feat(ui): read config from index.html and use it to setup Sentry & default filters 2018-07-19 23:38:11 +02:00
Łukasz Mierzwa
2ee239a74c refactor(api): move settings keys in the API response to a namespace 2018-07-19 23:38:11 +02:00
Łukasz Mierzwa
875a4f5217 feat(api): summarize alertmanager counts in group API 2018-07-19 23:38:11 +02:00
Łukasz Mierzwa
6c7ba5551c refactor(api): move silences into a dedicated key in API response
A single silence can supress multiple alerts so to reduce response size and the amount of data react UI needs to track move it out of alert instance (which will deduplicate it) and on each alert only store a reference. In the API return all silences as a global dict and each alert only contains the ID of silences suppressing it.
2018-07-19 23:38:11 +02:00
Łukasz Mierzwa
79ff668019 refactor(api): deduplicate lables & annotations in API responses
Each alert in a group holds only keys that are unique to that alert instance, everything shared by the entire group is moved to group.shared ns
2018-07-19 23:38:11 +02:00
Łukasz Mierzwa
e1530e01cd refactor(api): provide configured list of static labels in the API response
DOM data-* attributes are no longer used for this, feed react data store with this config so it can (re)render labels correctly
2018-07-19 23:38:11 +02:00
Łukasz Mierzwa
4fe19c3d73 feat(api): extra fields with parsed filter data in the API response 2018-07-19 23:38:11 +02:00
Łukasz Mierzwa
c0fdb71276 feat(api): expose total alerts counter in the api response 2018-07-19 23:38:11 +02:00
Łukasz Mierzwa
b7d274c93b refactor(api): return alert groups as a mapping id->group 2018-07-19 23:38:11 +02:00
Łukasz Mierzwa
c69f9875ec chore(mock): add mock files for 0.15.0 & 0.15.1 2018-07-19 23:09:10 +02:00
Łukasz Mierzwa
2ffc926cf8 chore(mock): show progress of mock steps, add most recent Alertmanager releases 2018-07-19 22:49:49 +02:00
Łukasz Mierzwa
06c2706e24 fix(mock): refactor livemock.py so it doesn't depend on requests 2018-07-19 22:49:08 +02:00
Łukasz Mierzwa
b71883f1ef Migrate to new repo
Forked unsee from cloudflare, so import paths needs to be updated
2018-06-07 15:30:57 +02:00
Łukasz Mierzwa
fd0eb46adf Sanitize Alertmanager URI before putting it in /alerts.json reponse
Alertmanager URI might contain basic auth username & password, we should replace password with 'xxx' in logs and and error messages.
Go will still print it in HTTP request errors, but that will be fixed in the next Go release - https://go-review.googlesource.com/c/go/+/102855
Fixes #259
2018-04-27 09:36:12 -07:00
Łukasz Mierzwa
9de77e342d Add mock files for Alertmanager 0.14.0 2018-02-16 09:35:07 +00:00
Łukasz Mierzwa
94ec8f084f Set proxy value when logging configuration on startup 2018-02-01 21:09:36 -08:00
Łukasz Mierzwa
f6efebb934 Drop legacy settings
Those were left for compatibility and marked as deprecated, remove it for the next release
2018-02-01 21:09:36 -08:00
Łukasz Mierzwa
782b633f8c Fix error checking in file read tests 2018-01-27 09:57:19 -08:00
Łukasz Mierzwa
b8cf0a83f4 Correctly handle all types of file:// values
For absolute paths we correctly return full decoded path, but for relative paths we can't simply strip file:// prefix as it might leave query args in place. Build absolute path by joining working dir + hostname part + path part.
Add an extra test case for coverage.
2018-01-27 09:54:19 -08:00
Łukasz Mierzwa
193c6cf372 Drop duplicated pflag.Parse call 2018-01-26 18:21:57 -08:00
Łukasz Mierzwa
ded69c11ff Drop the path from v0.4 query args
This results in requests to 'GET http://localhost:9093/api/v1/silences?api/v1/silences?limit=2147483647' instead of 'GET http://localhost:9093/api/v1/silences?limit=2147483647'. Too much copy&paste.
2018-01-25 19:34:35 -08:00
Łukasz Mierzwa
0f73b20bc6 Allow passing query args to HTTP requests send to the Alertmanager API
Alertmanager 0.4.x silences endpoint uses pagination, code for this was incorrectly dropped in #216, re-add it. Requires a way for mapper packages to signal the need for passing query args to HTTP requests
2018-01-24 19:09:02 -08:00