Commit Graph

42 Commits

Author SHA1 Message Date
David Kaltschmidt
749571ebe9 Review feedback
* Fix node-details-test for search
* Label spacing and matched text truncation
* Delete pinned search on backspace, add hint for metrics, escape % in URL
* Fix text-bg on node highlight
* Added tests for search-utils
* Fix matching of other topologies, added comment re quick clear
* s/cx/classnames/
* Ignore MoC keys when search in focus, blur on Esc
* Fixes search term highlighting on-hover
* Fix SVG exports
* Fine-tuned search item rendering
* Fixed search highlighting in the details panel
* Dont throb node on hover
* Hotkey for search: '/'
* Keep focus on search when tabbing away from the browser
* bring hovered node to top
* background for search results on hover
* fixed height for foreign object to prevent layout glitches
* Dont blur focused nodes on search
* More robust metric matchers
* More meaningful search hints
2016-05-11 18:08:59 +02:00
David Kaltschmidt
5a325e46fa Search on canvas
* adds a search field next to the topologies
* highlight results on canvas as you type
* non-matching nodes are grayed out
* "prefix:" limits search to field label
2016-05-11 18:08:59 +02:00
David Kaltschmidt
96aae9bc99 Migrate from Flux to Redux
* better state visibility
* pure state changes
* state debug panel (show: crtl-h, move: ctrl-w)
2016-04-27 17:21:46 +02:00
Paul Bellamy
1539e668e7 Merge pull request #1290 from weaveworks/remove-container-control
Add control for removing stopped docker containers.
2016-04-22 14:13:40 +01:00
David Kaltschmidt
eda2a208c6 Sort controls by rank in the UI 2016-04-21 19:36:13 +02:00
Tom Wilkie
0a51064713 Use reverse-resolved DNS info in the connections table. 2016-04-20 17:18:32 +01:00
Tom Wilkie
9eda27822c Show k8s labels and container env vars in the details panel. (#1342)
* Show k8s labels and container env vars in the details panel.

* Add show more bar to the env vars and labels

* React key was in the wrong place; empty tables render section labels.
2016-04-20 08:18:03 +01:00
Simon Howe
9acffe52b1 Remove the metricFeeder for the overflow items too for now. 2016-04-18 15:46:37 +02:00
Simon Howe
a32bd7a54b Removes the metrics-feeder to keep things in sync.
Another temp fix.
2016-04-18 15:46:37 +02:00
Paul Bellamy
7632e0b3c5 Adding support for plugins, with basic example of iowait, and ebpf
Squash of:
* Include plugins in the report
* show plugin list in the UI
* moving metric and metadata templates into the probe reports
* update js for prime -> priority
* added retry to plugin handshake
* added iowait plugin
* review feedback
* plugin documentation
2016-04-12 17:22:14 +01:00
David Kaltschmidt
e497c3ce39 Fixed column widths for node tables with few columns
* Gives the node label column more space
* let the remaining columns fight over the rest

Fixes #1076
2016-04-12 17:06:01 +02:00
Tom Wilkie
d237f52a90 Ensure connection rows have unique IDs. (#1245)
* Ensure connection rows have unique IDs.

This adds new types for connections tables.

* UI support for new connection table rows

* Parameterized node Id key for connections table

* also s/node_id/nodeId, and s/topology_id/topologyId in connections
* table

* Added comment about nodeIdKey

* Review feedback:
2016-04-11 14:40:50 +01:00
David
b7c2db6cc2 Merge pull request #1230 from weaveworks/1224-format-sparkline
Apply format to tooltips in sparkline hovers
2016-04-07 09:14:17 +02:00
David Kaltschmidt
d803e00b00 Apply format to tooltips in sparkline hovers
Fixes #1224
2016-04-06 12:05:43 +02:00
David Kaltschmidt
d520cffec7 Performance tweaks
Add debug.html to show toolbar

Perfjankie test runner

Playing w/ the pure mixin for perf. improvements

* Works well! Smoother zooming/panning when things have settled.
* Extract node movement to node-container, make nodes pure

Extracted node chart elements into own components

Keep control objects immutable while in components

Keep layout state objects alive

Made other components pure, removed mixin from stateless components

Remove font size adjustment from scaling

Fix zoomscale

Move node transform to node

* makes more sense there because the coords are rounded in the container

dynamic coords precision based on topology size

Make edge points immutable

Remove nodes maximum for layout engine

Dont send all canvas state down to next component

moving layout handling back to nodes-chart.js

Omit some props for edges/nodes, dont animate edges on low precision

Moved AppStore access out of lower components
2016-04-05 15:45:13 +02:00
David Kaltschmidt
e4270f69b7 Upgraded dev deps and linted JS according to latest airbnb rules 2016-03-15 18:09:45 +01:00
David Kaltschmidt
658a38f40a Upgrade npm app dependencies 2016-03-15 13:45:57 +01:00
David Kaltschmidt
a40b5a31a8 Default sorter specified by table columns 2016-03-03 15:53:15 +00:00
David Kaltschmidt
7b77210108 Render connection table as nodes table
Also:
- Make metadata fields sortable as numbers
- Sort by selected metadata column
2016-03-03 15:53:15 +00:00
David Kaltschmidt
f3351cf440 Fix columns for pods in service details panel 2016-02-26 16:34:59 +01:00
David Kaltschmidt
f411b9c437 Review feedback 2016-02-25 14:02:32 +01:00
David Kaltschmidt
cdf2c21057 Replace Show More buttons with carets w/ counts 2016-02-24 18:58:26 +01:00
David Kaltschmidt
bfc1e29fb6 Review feedback 2016-02-15 18:03:41 +00:00
David Kaltschmidt
7dfb126e31 Docker Labels Component
* moved to bottom of details panel in its own section
* show all labels (no expand/collapse)
* label vs value width 1:1
2016-02-15 17:09:40 +00:00
Paul Bellamy
05d4ce05a3 Merge pull request #946 from weaveworks/929-show-more-metadata
Only show key metadata by default. Hide rest in a drawer.
2016-02-11 11:08:39 +00:00
Paul Bellamy
89d7ebe977 show nice column labels when no children have metrics 2016-02-10 11:42:03 +00:00
David Kaltschmidt
a80d04afe5 Refactored Show-expand, added styles 2016-02-09 12:12:52 -08:00
Paul Bellamy
dfb0f8036c Only show key metadata by default. Hide rest in a drawer.
To make the interface cleaner, we can hide some non-key metadata by
default.

This needs styling, js testing, and probably a js refactor.
2016-02-08 17:14:16 +00:00
David
188eea8f33 Merge pull request #795 from weaveworks/638-animate-sparklines
Animate sparklines
2016-02-05 14:48:55 +01:00
David Kaltschmidt
7d73590ced Enable metric feeder also for health overflow items
* tried activating it for child tables too, but that became quite CPU
  intensive, and feed intervals became out of sync (host CPU < container
  CPU, which is hard to believe)
2016-02-04 17:17:11 +01:00
David Kaltschmidt
d46f1a9d3c dont format metadata 2016-02-03 16:35:03 +01:00
David Kaltschmidt
64f08dcf96 Metric feeder as higher order component to feed sparklines data 2016-02-03 16:25:54 +01:00
Paul Bellamy
28de56f43f just show the untruncated label in the tooltip on children 2016-02-03 12:34:52 +00:00
Paul Bellamy
0a292f530c move docker labels into their own table of the details panel 2016-02-03 10:29:28 +00:00
David Kaltschmidt
0a0179aeb1 Integrated animated sparklines into new details panel
also added sortBy date after merge in value buffer
2016-02-02 18:06:33 +01:00
David Kaltschmidt
9c4b4e2745 Details panel table header looks up label in all rows
Also fixes sorting of rows that have a missing metrics (0 vs null)

Fixes #891
2016-02-01 16:47:06 +01:00
Simon Howe
f63c50475c Corrects the node control error placement 2016-01-19 18:23:21 +01:00
David Kaltschmidt
d39fd847b7 Details Panel UI Redesign
Refactored nodedetails to support multiple data sets, probably broke some tests
  Allow api requests to out-of-view topologies
  Fix ESC behavior with details panel
  Stack details panel like cards
  Details pain side-by-side
  Details panel piles
  Fix node details table header styles
  Render load and not-found captions like relatives
  Fix topology click action
  Make node detail tables sortable
  Grouped metrics for details health
  Group metrics in same style
  Link node details children
  Fix scroll issues on double-details
  Fix DESC sort order for node details table
  Save selected node labels in state - allows rendering of node labels from other topologies before details are loaded
  Change detail card UX, newest one at top, pile at bottom
  Details panel one pile w/ animation
  Sort details table nodes by metadata too
  Animate sidepanel from children too
  Fix radial layout
  Dont set origin if a node was already selected, suppresses animation
  stack effect: shift top cards to the left, shrink lower cards vertically
  Clear details card stack if sibling is selected
  Check if node is still selected on API response
  Make detail table sorters robust against non-uniform metadata
  Dont show scrollbar all the time, fix sort icon issue
  Button to show topology for relative
  Overflow metrics for details panel health
  Fix JS error when no metrics are available for container image details
  Column-based rendering of node details table
  Fix JS tests
  Review feedback (UI)
2016-01-19 16:47:05 +01:00
Simon Howe
5b390994b8 Fix node controls so they behave independently across nodes
If one node was busy performing an action, any other nodes controls
would also be in a 'blocked and waiting' state.
2016-01-05 19:17:10 +01:00
David Kaltschmidt
6b445466ef Move JS to ES2015
Refactored mixins into utils

ES2015 module exports

ES2015-style imports

WIP Fixing tests

Fixes tests after es2015 code migrations.

We we're require()ing an ES2015 module[1]. Have to make sure you account
for the .default in this case.

[1] We had to use ES5 `require` in Jest:
(https://github.com/babel/babel-jest/issues/16)
2015-12-01 14:35:22 +01:00
David Kaltschmidt
5508c0aa67 Moved node control button to node-details 2015-11-16 15:52:17 +01:00
David Kaltschmidt
027c7aead3 Cleaned up node-details-table jsx mess 2015-11-16 15:49:04 +01:00