Commit Graph

216 Commits

Author SHA1 Message Date
Ł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
Łukasz Mierzwa
2c3a24afb7 Add a note about security 2017-04-23 09:05:58 -07:00
Łukasz Mierzwa
639e9bbee5 Use icons for action box 2017-04-23 09:02:29 -07:00
Łukasz Mierzwa
e9af43402e Sort labels 2017-04-23 09:02:29 -07:00
Łukasz Mierzwa
d323fdd322 Turn text into labels 2017-04-23 09:02:29 -07:00
Łukasz Mierzwa
907949b9a3 Custom formatting for countSelectedText 2017-04-23 09:02:28 -07:00
Łukasz Mierzwa
f83660c43d Don't show action box when there's only one value 2017-04-23 09:02:28 -07:00
Łukasz Mierzwa
1e05406a02 Make submit button green 2017-04-23 09:02:28 -07:00
Łukasz Mierzwa
e740d5ea0c Generate more descriptive text when no value is matched 2017-04-23 09:02:28 -07:00
Łukasz Mierzwa
020b1a2728 Show loading placeholder
Form loads after ajax call, so it can take some time on big responses and slow connection
2017-04-23 09:02:27 -07:00
Łukasz Mierzwa
575dc245b1 Enable live search for labels with >10 values 2017-04-23 09:02:27 -07:00
Łukasz Mierzwa
087458b767 Allow selecting multiple label values when creating silence.
This commit turns label checkboxes into multiselect dropdowns that are populated from all labels of all instances of current alert (matched by alertname label). There is also a cocollapsible preview box that allows user to inspect raw silence JSON object we will send to the Alertmanager API. Fixes #69
2017-04-23 09:02:27 -07:00
Łukasz Mierzwa
9a5419efb1 Merge pull request #71 from cloudflare/metrics-docs
Obey WEB_PREFIX for metrics endpoint
2017-04-23 08:58:12 -07:00
Łukasz Mierzwa
acea192a3d Obey WEB_PREFIX for metrics endpoint 2017-04-23 08:56:53 -07:00
Łukasz Mierzwa
b02a88e737 Add a note about metrics 2017-04-23 08:56:53 -07:00
Łukasz Mierzwa
d08996b4ee Merge pull request #72 from cloudflare/run-docker-mock
Fix mock data usage with 'make run-docker'
2017-04-23 08:55:22 -07:00
Łukasz Mierzwa
0e7b40c995 Reformat run-docker target 2017-04-23 08:53:48 -07:00
Łukasz Mierzwa
bfbba7ecb6 Fix mock data usage with 'make run-docker'
docker target doesn't work with file:// based ALERTMANAGER_URI since it doesn't have same paths inside the image, fix it by mapping a volume
2017-04-22 22:33:12 -07:00
Łukasz Mierzwa
79cee7474c Merge pull request #68 from cloudflare/silence-form-tweaks
Silence form tweaks
2017-04-20 22:01:42 -07:00
Łukasz Mierzwa
0ff3861afe Move input element icons to the left and add icons for all inputs
This will provide more consistent look.
2017-04-20 21:54:06 -07:00
Łukasz Mierzwa
0ca17211af Escape silenceID output just in case 2017-04-20 21:32:10 -07:00
Łukasz Mierzwa
b407204aff Add an icon to error messages 2017-04-20 21:30:52 -07:00
Łukasz Mierzwa
6558735751 Drop bogus checkbox classes from outer div
This is breaking checkbox and label alignment.
2017-04-20 21:24:16 -07:00
Łukasz Mierzwa
0417be1cca Drop duplicated classes
Both are already provided by attrs.class
2017-04-20 21:17:57 -07:00
Łukasz Mierzwa
952eb3467c Drop labels above comment and email inputs
They both have placeholder text, so label is redundant
2017-04-20 21:15:05 -07:00
Łukasz Mierzwa
42f2f33084 Add labels above duration datetime picker fileds
Make it more obvious which fields is used for what
2017-04-20 21:14:22 -07:00
Łukasz Mierzwa
385efc5173 Merge pull request #66 from cloudflare/silence-form
Add support for creating silences directly from unsee UI
2017-04-20 17:12:58 -07:00
Łukasz Mierzwa
d5916c81cf Add support for creating silences directly from unsee UI
It adds a button next to the @silenced filter that shows a modal window with a silence form. API request is send via AJAX call from user browser.
2017-04-20 17:01:52 -07:00
Łukasz Mierzwa
ed03c0f234 Merge pull request #65 from cloudflare/strict-filters
Strict filters
2017-04-20 17:01:17 -07:00
Łukasz Mierzwa
61aba84eba Fix marking invalid filters in the UI
Label classes are incorrectly set on the filter text span, rather than the label under which that span is placed.
2017-04-20 13:37:47 -07:00
Łukasz Mierzwa
82fb5ce0d6 Add more test to cover more filter expressions 2017-04-20 13:36:37 -07:00
Łukasz Mierzwa
44deae4f11 More strict filter syntax checking
Current filter factory rules are very relaxed, anything that doesn't match filter syntax perfectly is passed down to the fuzzy filter, that happily accepts every input and doesn't complain. This change makes syntax checks more strict, we explicitly look for roughly <anything><any of the chars used as operators><anything> (in reality we match the first <anything> used filter specific regex, but that can still be any regex) and only if evaluated filter expression doesn't match this regex we pass it to the fuzzy filter. Once we have a match we check if operator is supported by the filter and we're more strict there, in case of a===b we currently accept = as the operator and ==b as the value, now operator will be === (as we match for any of the operator chars in use) and fail once that doesn't match.
2017-04-20 13:36:18 -07:00