Chronograf includes a number of canned dashboards, whose cells are predefined
and immutable. A cell in a canned dashboard is called a layout cell, and it has
a slightly different schema than a cell in a user-defined dashboard (called
a dashboard cell).
For legacy reasons, Chronograf is able to render a layout cell or dashboard
cell using the same components via a mix of duck-typing and defensive
programming. [#4488][0] attempted to unify the differences between the two
possible cell schemas by converting a layout cell to a dashboard cell upon
read. This schema conversion was error prone and incomplete.
One difference between a layout cell and dashboard cell that was not handled by
the schema conversion involved the `groupbys` and `wheres` fields in a layout
cell. In a dashboard cell, these data are stored in the `queryConfig` object
instead. The schema conversion omitted these data altogether in the converted
cell, which caused the behavior described in [#4789][1]
This commit changes to schema conversion to include all data from the original
layout cell in the converted cell, so that the `groupbys` and `wheres` fields
are present. Downstream, the `Layout` component will check for these fields
when determining how to build a query for a cell.
This is a messy solution that builds upon previous messy solutions. [#4488][0]
discusses some alternatives, which were deemed not worth the effort to
implement.
[0]: https://github.com/influxdata/chronograf/pull/4488
[1]: https://github.com/influxdata/chronograf/issues/4789
* Use category tree to build schema explorer
* Remove expander from tag value list item
* Prevent clicking tag value item from closing tag values
* Remove input from under TAGS item in schema explorer
* Search for fields in measurements
* Add loading state and use search term in fetching tag values
* Add load more tag values button and debounce tag values search
* Add error handling to flux schema explorer
fix(logs/table): add hostname column
* Guarantee hostname column exists on logviewer config
* Add hostname field to ui utils
* Update integrations server test
* Update changelog 1.7.0
Co-authored-by: Michael Desa <mjdesa@gmail.com>
fix(logs/scroll): fix the horizontal scroll bar
* Update grid to have minWidth
* Fix logs scrollbar position
* Clean up unnecessary handlers
* Update 1.7.0 changelog
Co-authored-by: Alex P <thealexpaxton@gmail.com>
Having the button in the lower right created a frustrating UX when the
message was expanded and the user was attempting to copy.
Co-authored-by: Alex Paxton <thealexpaxton@gmail.com>
* Update logs table loading time and timestamp
* Make time bounds in searching state have gradient text
* Add loading animation
* Add graphic for logs No Results state
* Update CHANGELOG 1.7 UI IMPROVEMENTS
* Update default logs message
Co-authored-by: Alex Paxton <thealexpaxton@gmail.com>
This commit improves the loading performance of static assets on devices
with low CPU, such as Pies or other embedded devices.
One characteristic of these devices is that they don't often have the
intrinsics available used in gzip compression.
This commit does two things:
(1) Adds an option to explicitly disable gzip compression of requested
assets.
(2) Avoids the very expensive URL prefix Handler wrapper if no base
path has been set.
* fix: add back meta queries dropdown to DECEO via ActionDropdown
* feat: add ActionDropdown to reusable_ui
* refactor: clean up metaqueries template options
* change button text to 'Metaquery Template'
* update changelog
* Polish
* Extend Dropdown to allow for 2 different modes
* Guard against undefined selectedChild in dropdown
* Make id strings more unique
* WIP Replace ActionDropdown with Regular Dropdown in "ActionList" mode
* remove ActionDropdown since obsolete basedon 5902026
* Create workers for flux fetch and response decoding
Co-authored-by: Brandon Farmer <bthesorceror@gmail.com>
* Add flux data to linegraph
* Fix error when queryConfigs are undefined
* Add service as prop instead of treating source as either service or source
* Fix raw data view after changing components
* Remove commented code
* Update Changelog
* Fix tests
* Remove unnecessary comment
* Rename timeSeries and data for clarity
* Add try catch around worker jobs
* Add type annotations
* Remove unncessary check
* Update to use descriptive variables
* fix: render invalid Alerts Table row data as mdash
create new AlertsTableRow component
refactor Alerts Table rows to use new AlertsTableRow component
* test AlertsTableRow for valid data
render spans for all alerts table row cell values
* update changelog
Convert HostsPage and HostsTable to typescript
Display page-spinner if hostpage in loading state
Add error state to HostsPage
Fix tests for HostsPage
Update Changelog
Add missing type definitions to HostsTable