Commit Graph

945 Commits

Author SHA1 Message Date
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
Michael Lange
334358ad24 Merge pull request #4615 from hashicorp/f-ui-restart-stopped-job
UI: Restart stopped job
2018-08-30 09:49:14 -07:00
Michael Lange
d824b70cee Merge pull request #4616 from hashicorp/f-ui-promote-canary
UI: Promote canary
2018-08-30 09:48:31 -07:00
Michael Lange
c96c99aa37 Test coverage for the promote canary feature 2018-08-30 09:38:29 -07:00
Michael Lange
f4ceb2264c Fix the flickering issue with start/stop job
When the server doesn't respond immediately, there is a visible window
of time between the action being submitted and the blocking query coming
back with the new job status.
2018-08-28 11:27:00 -07:00
Michael Lange
f79f037096 Add a confirmation loading state to the two-step-button component 2018-08-28 11:27:00 -07:00
Michael Lange
f09e9a41bc Switch stop/run job actions to EC tasks 2018-08-28 11:27:00 -07:00
Michael Lange
1b481a3b72 Test coverage for the Start Job behavior 2018-08-28 11:27:00 -07:00
Michael Lange
619376c3b8 Add Start Job action on the job overview page for when a job is dead 2018-08-28 11:27:00 -07:00