130 Commits

Author SHA1 Message Date
Łukasz Mierzwa
c666d633aa Allow unsilencing alerts from unsee UI 2017-07-10 09:43:53 -07:00
Łukasz Mierzwa
8e6b622d04 Add a helper to converting ajax() call errors into a string with description
There are many ways an ajax() call can fail but it's mostly the same pattern, capture it as a helper function and use for all calls
2017-07-10 09:30:03 -07:00
Łukasz Mierzwa
fdec73cc64 Fix silence payload preview
Alertmanager URI doesn't have /api/v1/silences path, only the domain, add it.
2017-07-10 08:58:25 -07:00
Łukasz Mierzwa
da063fbd83 Check for null values and set minimal refresh rate 2017-07-10 08:49:20 -07:00
Łukasz Mierzwa
60675fae19 Correctly update refresh interval if passed via query arg 2017-07-10 08:48:56 -07:00
Łukasz Mierzwa
a21be4db4d Move tab visibility code from grid.js to unsee.js
Instead of grid update run a full update, after keeping tab in the background for too long some alert groups are kept in the DOM where they should be purged. Chrome does some really complex background tab throttling, interwebz states that after >=10s in the background a tab can only use 1% of the cpu. Future code might need to use Web Workers API, assuming other vendors will use it too (https://arstechnica.com/information-technology/2017/03/chrome-57-background-tab-suspension-download/). For now let's just reload alerts when user switches to a previously background tab after more than a single refresh cycle, this will ensure that there's no dead alerts presents since that can be confusing
2017-07-07 19:49:02 -07:00
Łukasz Mierzwa
ad47afd47d Redraw alert list of user switches to unsee tab
This should limit UI artifacts when you keep unsee tab inactive (not fucused) for a long time and a browser stops refreshing content
2017-07-06 09:13:01 -07:00
Łukasz Mierzwa
538249beb0 Use share icon instead of link for alert group links 2017-07-02 12:33:03 -07:00
Łukasz Mierzwa
cb69029c4f Add @alertmanager filter 2017-07-01 14:02:03 -07:00
Łukasz Mierzwa
812eceed39 Drop label keys from state and receiver button, those are static and we don't need to show them all the time 2017-07-01 13:34:05 -07:00
Łukasz Mierzwa
4330972277 Color source buttons based on alert state in each 2017-07-01 12:53:51 -07:00
Łukasz Mierzwa
4036137984 Always render silences, if there are any
Alert can be silenced in one instance while active in another, always show silences so it's visible
2017-07-01 12:46:19 -07:00
Łukasz Mierzwa
8ef0f3881e Tweak error message for all Alertmanager instances being down 2017-07-01 12:42:43 -07:00
Łukasz Mierzwa
a8aa900830 Drop global SilencedBy & InhibitedBy from alert, only export per instance data 2017-07-01 10:05:28 -07:00
Łukasz Mierzwa
175078320e Tweak silence JSON preview to work better with multiple instances 2017-06-30 23:30:53 -07:00
Łukasz Mierzwa
514eacb81d Tweak instance errors boxes UI 2017-06-30 23:20:37 -07:00
Łukasz Mierzwa
db9c28eeba Hide silence button tooltip when the form is shown 2017-06-30 20:03:57 -07:00
Łukasz Mierzwa
7b21997c19 Split warning box rendering into dedicated template 2017-06-30 19:58:03 -07:00
Łukasz Mierzwa
afb419f4f3 Handle silence request result for multiple Alertmanager instances in the UI
Silence result UI will now show all selected upstreams and provide individual results for each
2017-06-30 19:52:42 -07:00
Łukasz Mierzwa
5e020b9e01 Store alert source link per Alertmanager instance 2017-06-29 21:18:30 -07:00
Łukasz Mierzwa
721b4f8be4 Update silence form to work with multiple Alertmanager instances 2017-06-28 22:36:26 -07:00
Łukasz Mierzwa
c5724bb751 Handle per Alertmanager instance errors in the API and the UI 2017-06-28 22:36:25 -07:00
Łukasz Mierzwa
a802582dd4 Put silences in wells 2017-06-28 22:36:25 -07:00
Łukasz Mierzwa
26d14d1bd2 Refactor Alertmanager API client code to use multiple upstream instances
Alerts are stored per instance and deduplicated on read.
2017-06-28 22:35:16 -07:00
Łukasz Mierzwa
a6bf82c92d Add a separator between multiple alert silences 2017-06-21 13:29:04 -07:00
Łukasz Mierzwa
f4629e72f3 Include receiver in the group link filter 2017-06-13 09:29:04 -07:00
Łukasz Mierzwa
0a2ba057c6 Fix indentation 2017-06-12 16:57:24 -07:00
Łukasz Mierzwa
4215a4b525 Fix indentation 2017-06-12 16:57:15 -07:00
Łukasz Mierzwa
5d19ada62b Fix indentation 2017-06-12 16:56:46 -07:00
Łukasz Mierzwa
d779448aa5 Remove useless replace 2017-06-12 16:56:02 -07:00
Łukasz Mierzwa
d6e1f9d2a6 Remove useless escape char 2017-06-12 16:54:01 -07:00
Łukasz Mierzwa
4b0a9fa9e2 Make alert separator line more visible 2017-06-07 20:21:50 -07:00
Łukasz Mierzwa
3815ec5852 Don't mark timestamp label as recent if it's in the past
Prevents silence endsAt labels from fading when they are for 0001-01-01Z
2017-06-06 22:15:02 -07:00
Łukasz Mierzwa
291256f48f Show group badge only if there are multiple alerts 2017-06-06 22:02:30 -07:00
Łukasz Mierzwa
dd8c6f13af List silence matchers in the UI 2017-06-06 21:47:09 -07:00
Łukasz Mierzwa
f14010b1ad Move silence button close to @state label 2017-06-06 21:34:58 -07:00
Łukasz Mierzwa
4bd43d0921 Show a bit more info for silences 2017-06-06 21:34:58 -07:00
Łukasz Mierzwa
5d35cf3529 Pull links up to labels level
Number of links usually doesn't justify giving it a dedicated row, so let's render it before labels
2017-06-06 21:34:58 -07:00
Łukasz Mierzwa
7ad5e1e18c Remove label from alert source link
And change the icon, this is static text so let's remove it to save space
2017-06-06 21:34:57 -07:00
Łukasz Mierzwa
1dfd20fbeb Add @receiver filter to the help page 2017-06-06 21:34:57 -07:00
Łukasz Mierzwa
1521311f1d Remove new lines 2017-06-06 21:34:57 -07:00
Łukasz Mierzwa
6d15a82e89 Support multiple receivers 2017-06-03 13:23:51 -07:00
Łukasz Mierzwa
aadcaeb9b5 Fix issues reported by eslint 2017-06-01 20:24:47 -07:00
Łukasz Mierzwa
8a77d620fd Rename @status to @state
Fixes #104

@status filter was added to the master branch to support new status key from Alertmanager >=0.6.1
status ended up being nested in Alertmanager (it was added to solve AM issue 609 and that was a long PR with lots of changes), current unsee implementation ended being slightly off with how Alertmanager is naming this, it should actually be @state rather than @status.
2017-05-23 21:52:08 +01:00
Filippo Giunchedi
33557a7d6f assets: use .WebPrefix for help link too 2017-05-22 10:40:05 +02:00
Łukasz Mierzwa
46880fafd9 Split silence form code to a dedicated file
It's a lot of code, split it to a dedicated file so it's all in one place
2017-05-10 22:04:37 +01:00
Łukasz Mierzwa
fcb6c5200d Update frontend assets 2017-05-10 15:26:26 +01:00
Łukasz Mierzwa
15b5afb1a8 Update masonry 2017-05-10 15:14:04 +01:00
Łukasz Mierzwa
0497e82128 Move assets target to a dedicated Makefile 2017-05-10 15:10:29 +01:00
Łukasz Mierzwa
12521e25bc Use gray color for alert groups with only unprocessed alerts
Expose counts of all alert statuses in each group (active, suppressed, unprocessed) instead of only active, and if a group contains only unprocessed alerts then color it as gray
2017-05-10 10:58:19 +01:00