Michael Lange
f4ae9e19a3
Always return valid dates for timestamps
2018-09-19 16:33:18 -07:00
Michael Lange
28d8f797e6
Handle the empty data cases
2018-09-19 16:32:53 -07:00
Michael Lange
01195a810c
Unit tests for the stats trackers service
2018-09-19 15:33:29 -07:00
Michael Lange
0ede4c512e
Integration tests for the primary-metric component
2018-09-19 14:15:32 -07:00
Michael Lange
8de545c1b7
Add cancelation support to stats trackers
2018-09-17 16:59:09 -07:00
Michael Lange
cf57ddc89e
Gap support for line charts
2018-09-17 16:58:56 -07:00
Michael Lange
f0208c0a24
Add request throttling to the abstract stats tracker
...
This is the best of three options
1. Users of stats trackers control polling (old method)
2. Stat tracker is stateful and has start/stop methods (like logging)
3. Stat trackers blindly throttle requests
This is the best option because it means N number of concurrent users of
a stats tracker can request polling without inundating the tracker with
redundant frames (or the network with redundant requests), but they also
don't have to coordinate amongst themselves to determine what state a
tracker should be in.
2018-09-17 15:58:28 -07:00
Michael Lange
670b246f4c
Use the new stats tracker service to get stats trackers in primary metric
2018-09-17 15:57:58 -07:00
Michael Lange
81788cf411
Clean up old controller code
2018-09-17 15:57:23 -07:00
Michael Lange
1a6682d23d
New LRUMap dep
2018-09-17 15:55:48 -07:00
Michael Lange
cf9490ce04
New service to manage stats trackers
...
This solves two problems:
1. redundant trackers making redundant requests
2. trackers being obliterated as soon as the primary metric component
is destroyed
It introduces a new problem where visiting more and more node and
allocation pages adds to an ever-growing list of trackers that can
assume lots of memory, but it solves the problem by using a
least-recently-used cache to limit the number of trackers tracked.
2018-09-17 15:53:59 -07:00
Michael Lange
7c24847749
Add resource utilization graphs to the task index page
2018-09-14 10:21:48 -07:00
Michael Lange
509f42ca0c
Add resource utilization graphs to the allocation index page
2018-09-14 10:21:28 -07:00
Michael Lange
f84b145401
Use the appropriate methods and types in the stat trackers
2018-09-14 10:21:01 -07:00
Michael Lange
58349199c6
Style the primary-metric pattern
2018-09-14 10:20:33 -07:00
Michael Lange
79c8667072
Handle the length = 0 and length = 1 cases for activeDatum
2018-09-14 10:19:35 -07:00
Michael Lange
adc05976c2
Use the prototype instead of "private" property backups
2018-09-14 09:38:17 -07:00
Michael Lange
9a102b73b9
Make rollingArray work with mutable array extension methods
2018-09-14 08:57:26 -07:00
Michael Lange
1572e8d820
Remove old stat tracking code from the client page
...
In favor of the new primary-metric components
2018-09-13 17:01:24 -07:00
Michael Lange
76f9c13cb2
Use the new primary-metric component on the client detail page
2018-09-13 17:01:24 -07:00
Michael Lange
48910d8334
New primary-metric component
...
It encapsulates all the tracker, polling, and markup for this style
of metric.
2018-09-13 17:01:24 -07:00
Michael Lange
44b16b2b7c
Full markup for time series metrics
2018-09-13 17:01:24 -07:00
Michael Lange
b80016d5a0
Add stat charts to the client page
2018-09-13 17:01:24 -07:00
Michael Lange
48d0220561
Use percent for the y-axis binding
2018-09-13 17:01:24 -07:00
Michael Lange
4cd9164d4e
Use addObject to get kvo behaviors
2018-09-13 17:01:24 -07:00
Michael Lange
5e2edf88f7
Merge pull request #4661 from hashicorp/f-ui-line-chart
...
UI: line chart
2018-09-13 16:59:20 -07:00
Michael Lange
efb1301638
Unit test coverage for the stats-time-series chart
2018-09-13 16:45:56 -07:00
Michael Lange
40861aaae3
Unit test coverage for the line chart component
2018-09-13 16:45:56 -07:00
Michael Lange
fd80df66a5
Split the line-chart and stats-time-series freestyle entries
2018-09-13 16:45:56 -07:00
Michael Lange
a3e858e27e
Updates to the styleguide
2018-09-13 16:45:56 -07:00
Michael Lange
4b67b7668c
Use "global" gradients via a clipping mask and a rect w/100% height
2018-09-13 16:45:54 -07:00
Michael Lange
b84d75597d
Avoid race conditions around showing and hiding the line chart tooltip
2018-09-13 16:45:13 -07:00
Michael Lange
0d7c22ff08
Stats time series
...
A use-case specific line-chart for showing utilization metrics by
percent
2018-09-13 16:45:13 -07:00
Michael Lange
db6ad98eb4
Make the tooltip animation snappier for line charts
...
When data is coming in live, the tooltip can get bogged down by updates
causing the tooltip to never make it under the mouse, which looks like
either lag or a bug.
2018-09-13 16:45:13 -07:00
Michael Lange
bb40cb029b
Don't round numbers when the domain is between 0 and 1
2018-09-13 16:45:13 -07:00
Michael Lange
5e09491bab
Styleguide entry for the line chart component
2018-09-13 16:45:13 -07:00
Michael Lange
48df4d2d29
New line chart component
2018-09-13 16:45:08 -07:00
Michael Lange
f8c8c3cec4
Test coverage for NodeStatsTracker
2018-09-11 16:27:06 -07:00
Michael Lange
dc63be2a8f
Add support for non-list tooltips in charts
2018-09-07 09:57:54 -07:00
Michael Lange
5b927d3654
Add chart color swatches based on css colors
2018-09-07 09:57:33 -07:00
Michael Lange
e8c860b330
Bring in new d3 dependencies
2018-09-07 09:55:39 -07:00
Michael Lange
3c0977702e
Example usage of the NodeStatsTracker
2018-08-31 14:39:23 -07:00
Michael Lange
c455a399dd
A StatsTracker for client-level statistics
2018-08-31 14:39:23 -07:00
Michael Lange
405cf822d8
Unit Tests for AllocationStatsTracker
2018-08-31 14:39:22 -07:00
Michael Lange
d25c0d60b9
Unit tests for RollingArray
2018-08-31 14:39:22 -07:00
Michael Lange
008227204f
Example of usage of the AllocationsStatsTracker
2018-08-31 14:39:22 -07:00
Michael Lange
1df44a6d08
An implementation of StatsTracker for allocations
...
It accumulates CPU and Memory usage for the allocation as a whole as well
as by task.
2018-08-31 14:39:22 -07:00
Michael Lange
5c5e44df61
An abstract class for capturing nomad stats
...
It follows the form of poll -> json parse -> append,
Where append is defined in subclasses to add data from the new frame
to long-lived rolling arrays of data.
2018-08-31 14:39:22 -07:00
Michael Lange
a8480fab30
An array subclass that enforces a maxLength
...
The maxLength is enforced by removing elements from the head of the
list.
2018-08-31 14:39:22 -07:00
Michael Lange
130e951a37
Merge pull request #4600 from hashicorp/f-ui-job-writes
...
UI: Job Writes
2018-08-30 10:41:14 -07:00