Commit Graph

247 Commits

Author SHA1 Message Date
Łukasz Mierzwa
487d7bcde8 Use alert status, inhibitedBy & silencedBy fields instead of silenced & inhibited 2017-05-01 22:20:12 +01:00
Łukasz Mierzwa
5df44def81 Add new attrs for tracking alert status and linking silences / inhibiting alerts
Those will replace Inhibited and Silenced
2017-05-01 18:43:03 +01:00
Łukasz Mierzwa
a001c6ed65 Merge pull request #85 from cloudflare/support-0.6.1
Add basic support for Alertmanager 0.6.1
2017-04-28 13:19:43 -07:00
Łukasz Mierzwa
3a1f6905e0 Add basic support for Alertmanager 0.6.1
This makes unsee work with 0.6.1, but the new status means that we should refactor unsee data model and pull inhibited and silenced into it, with a single filter
2017-04-28 12:40:04 -07:00
Łukasz Mierzwa
a6d2c287dd Merge pull request #84 from cloudflare/jshint-config
Jshint config
2017-04-27 22:54:31 -07:00
Łukasz Mierzwa
12832e2c29 Fix quotation mark inconsistencies
jshint tests passing again
2017-04-27 22:52:05 -07:00
Łukasz Mierzwa
ad897596b2 Enable quotation mark checks in jshint
Require double quote marks
2017-04-27 22:51:55 -07:00
Łukasz Mierzwa
4e97f4f0aa Fix unused and undefined variables warnings 2017-04-27 22:51:53 -07:00
Łukasz Mierzwa
d977c2ff44 Enable development mode
This prevents errors from console, alert and other browser functions
2017-04-27 21:26:34 -07:00
Łukasz Mierzwa
bec2255a59 Add config file for jshint
This will enable more checks, first for undefined or unused variables
2017-04-27 20:53:01 -07:00
Łukasz Mierzwa
410d17e1c2 Merge pull request #83 from cloudflare/fix-regex-silence
Correctly anchor regex silences
2017-04-27 09:29:34 -07:00
Łukasz Mierzwa
dd6c3b1057 Correctly anchor regex silences
Silence regex rules are not anchored, be explicit
2017-04-26 20:00:45 -07:00
Łukasz Mierzwa
106175b756 Merge pull request #82 from cloudflare/event-listener-leak
Don't leak event listeners in the silence form
2017-04-26 18:54:04 -07:00
Łukasz Mierzwa
7f3c414189 Don't leak event listeners in the silence form
Event listeners are setup on the modal div, but that div is not removed when the modal is hidden, only its children. This means that event listeners are stacked every time you show and hide a form. To reproduce this issue:
1. open silence form, click up button above hours, it will increment from 1 to 2
2. hide the form
3. re-open silence form, click up button above hours, it will increment from 1 to 3
4. repeat and every time increment will get a new listener that will cause higher value bump

This PR moves all listeners to the silence form element, which is removed when modal is closed, so all even listeners are destroyed properly and this bug no longer gets triggered.
Same fix is applied to the quick filter modal, it's present there but the effect there isn't as visible
2017-04-26 17:37:13 -07:00
Łukasz Mierzwa
2fa9c5cffe Merge pull request #81 from cloudflare/really-fix-events
This should be the real fix for the even recursion
2017-04-26 17:07:32 -07:00
Łukasz Mierzwa
0e7fe10b46 This should be the real fix for the even recursion
There's a bogus duplicated mouse event for a.silence-duration-btn, which I added to fix css issues, get rid of it and replace with proper css selectors. And with that drop the event.stopPropagation call as it shouldn't be needed anymore
2017-04-26 16:56:54 -07:00
Łukasz Mierzwa
efa1c2025b Merge pull request #80 from cloudflare/fix-silence-json-padding
Add some space between submit button and the silence JSON preview
v0.4.0
2017-04-26 14:59:35 -07:00
Łukasz Mierzwa
aed3cf1f29 Add some space between submit button and the silence JSON preview 2017-04-26 14:17:33 -07:00
Łukasz Mierzwa
47b245efcf Merge pull request #79 from cloudflare/raven-init
Better sentry javascript handling
2017-04-26 07:50:36 -07:00
Łukasz Mierzwa
bd5b9688ac Handle load exceptions better
If js fails on startup (syntax error, can't load some files) then instead of showing blank page that doesn't work render a message with exception
2017-04-25 23:05:22 -07:00
Łukasz Mierzwa
45ba69cf76 Ensure raven-js is loaded first and works if enabled
This moves raven init into a dedicated file where it's configured on load, we no longer load it on /help, but there's only css there so there wasn't anything that could fail anyway. We will also now fail in the most visible way if the value passed to raven is invalid (as in invalid syntax)
2017-04-25 23:05:22 -07:00
Łukasz Mierzwa
1e9d1edc14 Merge pull request #78 from cloudflare/jshint-fixes
Jshint fixes
2017-04-25 20:24:25 -07:00
Łukasz Mierzwa
fcebd0dba7 Install nodejs & jshint on travis 2017-04-25 20:22:08 -07:00
Łukasz Mierzwa
5a53aa1ff7 Add jshint comments in modules that require ES6
This is to supress warnings about ES6 syntax usage, all modern browsers support 'class' so it's ok
2017-04-25 20:21:47 -07:00
Łukasz Mierzwa
acabd448ae Ignore lru.js when running jshint tests
This is third party module not present on cdnjs, requires es6 so jshint generates warnings
2017-04-25 20:15:28 -07:00
Łukasz Mierzwa
9f7a7dd899 Run optional jshint tests if it's installed 2017-04-25 20:15:27 -07:00
Łukasz Mierzwa
9152aeff04 Prevent a chain of click events
Click events in some weird cases cause this function to be called twice, ensure that we stop processing this event after first pass
2017-04-25 19:14:18 -07:00
Łukasz Mierzwa
0c37254a71 Fix jshint warnings 2017-04-25 18:51:10 -07:00
Łukasz Mierzwa
21c7318ed4 Merge pull request #77 from cloudflare/fix-silence-label
Polish silence form UI
2017-04-25 17:08:22 -07:00
Łukasz Mierzwa
46ea7ebc94 Remove dead element
This isn't used by anything
2017-04-25 16:42:52 -07:00
Łukasz Mierzwa
ca0b70f3a8 Better logic for updating minutes in the duration
This makes it more consistien when user resets the duration to the minimum of 1 minute
2017-04-25 16:19:21 -07:00
Łukasz Mierzwa
3460b3003a Add a delay to the top labels popover 2017-04-25 14:59:45 -07:00
Łukasz Mierzwa
c425952b62 Don't fail if startsAt wasn't yet initialized 2017-04-25 14:59:45 -07:00
Łukasz Mierzwa
e76531a165 Make decr button reset duration to minimun if needed
With this the user is able to reset duration to minimum by clickin on the day button when only 1 hour duration is set
2017-04-25 14:59:45 -07:00
Łukasz Mierzwa
e56ec68752 Correctly update min date of the silence end time
Move it to the right place, having it in silenceFormCalculateDuration means that we can trigger recursive updates
2017-04-25 14:59:45 -07:00
Łukasz Mierzwa
c07402d353 Fix warning from jshint
jshint needs to be added to 'make lint' target eventually, let's start with fixing some of the warnings it's generating
2017-04-25 14:59:44 -07:00
Łukasz Mierzwa
e26bb6e492 Cleanup silence form controls
Drop separators and replace submit button text with an icon
2017-04-25 14:59:44 -07:00
Łukasz Mierzwa
92efd51adc Merge pull request #76 from cloudflare/cache-flush
Always flush cache after timer run
2017-04-25 14:59:06 -07:00
Łukasz Mierzwa
f7dc5173d6 Always flush cache after timer run 2017-04-25 13:58:43 -07:00
Łukasz Mierzwa
b261e853a5 Merge pull request #75 from cloudflare/silence-ui-rework
Default to duration only UI controls
2017-04-25 09:34:19 -07:00
Łukasz Mierzwa
4ba54f5573 Default to duration only UI controls
Instead of showing start & end inputs show duration input element, explicit start & end are still present under tabs, where datatime picker is inlined (so it doesn't require any click to show controls). Tabs will also show desription of relative start and end, so it should be more readable what is the real duration of a silence
2017-04-24 23:02:32 -07:00
Łukasz Mierzwa
22f35f9f31 Merge pull request #74 from cloudflare/silence-counters
Silence counters
2017-04-24 22:56:28 -07:00
Łukasz Mierzwa
540530488b Fix select button padding
There's an extra 25px right padding that makes no sense and creates an ugly frame when user clicks on a select, fix it
2017-04-24 16:16:37 -07:00
Łukasz Mierzwa
14cb221b6a Make the badge clickable
Clicking the badge will toggle select / deselect all values, for easy flipping labels when an alert contains large number of labels
2017-04-24 14:55:15 -07:00
Łukasz Mierzwa
03e793dd74 Add badges to selects
This gives the user a hint when a label contains more than one value in the select
2017-04-24 14:55:05 -07:00
Łukasz Mierzwa
bfabf514ab Merge pull request #73 from cloudflare/silence-duration
Set default silence duration to 1h
2017-04-24 09:17:45 -07:00
Łukasz Mierzwa
2886421b7a Drop date class from datetime picker input group
Not needed with our setup and it makes the calendar icon clickable, which doesn't really do anything, so it's just confusing
2017-04-23 19:56:16 -07:00
Łukasz Mierzwa
9bbb81212b Default to 1 hour silence 2017-04-23 19:32:21 -07:00
Łukasz Mierzwa
4d3200d3fd Don't set text 'none', it can be a valid label value 2017-04-23 19:32:07 -07:00
Łukasz Mierzwa
a59ed26d57 Merge pull request #70 from cloudflare/silence-multiselect
Allow selecting multiple label values when creating silence.
2017-04-23 09:12:55 -07:00