Commit Graph

34 Commits

Author SHA1 Message Date
sam boyer
6aba592741
Schema: get all devenv dashboards passing validation (#37857)
* Strip nulls (again)

* Add stripnulls script

* Add transformations field

* Close FieldConfig struct; proper plugin validating

* s/graph/viz/ field in histogram dashboard

* Use ui.GraphFieldConfig in histogram model

* Add models for stat, gauge, barguage panel plugins

Also toss necessary shared types into cue/ui/gen.cue, with TODOs to move
them appropriately later.

* Add required license headers

* Heap of updates to cue UI components

* Fix barchart types and one old devenv input

* Use the GraphFieldConfig directly for timeseries

* Add models.cue for a few panel plugins

Barchart, state-timeline, and status-history

* Enable the test validating all devenv dashboards!!

* Fix effects of not checking after making comments

* Update packages/grafana-ui/src/options/models.gen.ts

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>

* Realign and unalign cue with ts types

* Update devenv test to sniff for null errors

Best option we have right now for helping people to know they need to
strip nulls from devenv dashboards.

* Add speculative default for barchart stacking

* Fixup some dated devenv dashboards

timeline-modes needed to be regenerated with the appropriate tooltip
values included, per typing requirements, and timeline-demo needed to
have the `mode` field removed, as it is not intended to be persisted.

* Add necessary missing options for various panels

* Regenerate devenv dashboards

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-08-17 07:11:57 -04:00
Leon Sorokin
6a77cd43ae
GraphNG: refactor by-value color schemes (#37670)
* GraphNG: account for top canvas padding in gradient gen for color scheme/thresholds-by-value

* Updated test dashboard

* Added fix for issue when scaleMin was same as threshold

* fixed firefox issue

* revert docs changes

* update gdev dash for easier comparisons & regression spotting

* refactor

* optimize gradient re-gen/re-use and color more tinycolor.setAlpha() -> alpha(). update uPlot to dev build.

* fix percentage steps

* implement % threshold region rendering

* crisp threshold line rendering

* simplify

* WIP: hoverpoint dynamic color interpolation

* fix hover point color interp

* re-use gradient gen to draw threshold areas

* re-implement by-value color scales

* tweak comment

* mimic tinycolor behavior in colorManipulator.alpha() for empty colors

* explicitly disable hover points for BarChart and Histogram

* reduce test failures and required changes to tests

* fix barchart tests

* uPlot 1.6.15

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-08-13 09:38:04 -05:00
ying-jeanne
d18bd03a82
Scuemeta: Fix cue schemas for panels (#37788)
* complete the data model of graph panel

* fix histogram graph

* fix timeseries panel type

* Update cue/ui/gen.cue

Co-authored-by: sam boyer <sam.boyer@grafana.com>

* fix graph/viz and gradientMode enum

* add the changes into cue component and remove fields for graph panel

Co-authored-by: sam boyer <sam.boyer@grafana.com>
2021-08-12 09:52:03 -04:00
sam boyer
e1637f70bd
Strip nulls from all latest devenv dashboards (#37602)
Everything schemaVersion >= 30
2021-08-10 00:42:41 +08:00
Torkel Ödegaard
a241f03167
TimeSeries: Support coloring series and line by thresholds or gradient color scales (#35910)
* TimeSeries: Adds support for color scheme series and line colors

* Updates

* fixed device issue

* Evaluate series color in legend

* two fixes

* It works with points

* Added test dashboard

* Minor fix

* Reset color mode to palette when switching to panel that supports by series mode

* Add support for relative thresholds

* Updated snapshots
2021-07-07 12:40:40 +02:00
Leon Sorokin
503c3b8f66
Time series: always show single points if surrounded by nulls (#35845) 2021-06-17 15:44:26 -05:00
Dominik Prokop
deeef321d3
Unify tooltip options across visualizations (#33892)
* Unify tooltip options across visualizations

* Update tests

* use addTooltipOptions in piechart

Co-authored-by: Oscar Kilhed <oscar.kilhed@grafana.com>
2021-05-11 15:46:12 +02:00
Dominik Prokop
9f8fa4212f
GraphNG - shared cursor (#33433)
* Initial work

* WIP add cursor in debug panel

* shared cursor.sync filter

* explicit uplot events

* explicit uplot events

* uplot events

* uplot events

* depend on master uplot

* sync sync sync

* Fix merge

* Get rid of PlotSyncContext and sync tooltip positions

* make sync optional

* Improve shared tooltip positioning

* Plugins: add level and signature badges to plugin details page (#33553)

* feat(grafana-ui): badge can accept react node for text, add shield-exclamation to icons

* feat(plugins): add PluginSignatureType type

* feat(pluginpage): introduce PluginSignatureDetailsBadge. Fix sidebar icon margin

* feat(pluginlistpage): update filterinput placeholder, introduce filter by plugin type

* Variables: Removes the never refresh option (#33533)

* Variables: Removes the never refresh option

* Tests: fixes DashboardModel repeat tests

* Tests: fixs snapshots

* Tests: fixes processVariable test

* Tests: fixes DashboardModel tests

* PageLayout: Fixes max-width breakpoint so that it triggers only when there is room for margin+ (#33558)

* Alerting: Remove datasource (name) from migration (#33544)

no longer needed as of https://github.com/grafana/grafana/pull/33416
for https://github.com/grafana/alerting-squad/issues/126

* Library panels: Adds description to library panels tab (#33428)

* CodeOwners: Set owners of unified alerting migration (#33571)

* ButtonSelect: updates component with the new theme model (#33565)

* EmptySearchResult: updates component with the new theme model (#33573)

* DashboardSettings: Slight design tweak to fix page toolbar padding and align design (#33575)

* DashboardSettings: Slight design tweak to fix page toolbar padding and align design

* Fixed font weight

* Removed comment

* Update

* gitignore: Ignore files for accesscontrol provisioning (#33577)

* Alerting/metrics (#33547)

* moves alerting metrics to their own pkg

* adds grafana_alerting_alerts (by state) metric

* alerts_received_{total,invalid}

* embed alertmanager alerting struct in ng metrics & remove duplicated notification metrics (already embed alertmanager notifier metrics)

* use silence metrics from alertmanager lib

* fix - manager has metrics

* updates ngalert tests

* comment lint
Signed-off-by: Owen Diehl <ow.diehl@gmail.com>

* cleaner prom registry code

* removes ngalert global metrics

* new registry use in all tests

* ngalert metrics impl service, hack testinfra code to prevent duplicate metric registrations

* nilmetrics unexported

* Add note to Snapshot API doc to specify that user has to provide the entire dashboard model  (#33572)

* Added note as suggested by Macus E.

* Update docs/sources/http_api/snapshot.md

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

* Alerting: backend "ng" code cleanup (#33578)

* AlertMigration: remove alert_rule UID db check (#33568)

do not believe this is needed due to uniqueness promised by shortid lib
since there is no provisioning yet. https://github.com/teris-io/shortid

* Live: persisting last message in cache for broadcast scope (#32938)

* Alerting: Load annotations from rule into State cache (#33542)

for https://github.com/grafana/alerting-squad/issues/127

* add template for dashboard url parameters  (#33549)

* Update dashboard-links.md

parameters with plain text like `var-something=value` can make confusion. 
template it to clarify .

* describe way for template link.

* AlertingMigration: Create alert_rule_version entry (#33585)

Create the alert rule version entry during the migration so it is consistent with rules created via api.
for https://github.com/grafana/alerting-squad/issues/123

* Build: Fix with cleanup call maybe? (#33590)

* add selector for code editor (#33554)

* broadcast over eventBus

* broadcasting to eventbus (but not useing it yet)

* merge master

* moved to context

* fix yarn.lock

* update snapshot

* Fix direct state mutation

* Persist location state on partial updates

* GraphNG- use getStream rather than subscribe

* Sync LegacyGraphHoverEvent with GraphNG

* Chenge plotRef signature

* use subscription

* subscription

* one fewer file

* Update types

* Remove unnecessary filtering

* Disable cursor sync when in edit mode

* GraphNG - bring back logging

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
Co-authored-by: Kyle Brandt <kyle@grafana.com>
Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
Co-authored-by: Uchechukwu Obasi <obasiuche62@gmail.com>
Co-authored-by: gamab <gamab@users.noreply.github.com>
Co-authored-by: Owen Diehl <ow.diehl@gmail.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
Co-authored-by: Alexander Emelin <frvzmb@gmail.com>
Co-authored-by: Nagle Zhang <nagle.zhang@sap.com>
Co-authored-by: Erik Sundell <erik.sundell@grafana.com>
2021-05-10 14:24:23 +02:00
Torkel Ödegaard
b62e87f753
TimeSeries: Render thresholds as lines and areas (#33357)
* TimeSeries: First take on uplot thresholds rendering

* Updating theme for color picker and fixing issues

* Updating theme for color picker and fixing issues

* Minor progress

* Added test dashboard

* Adding transparent and text colors to color picker and making them visible

* Good progress on migrations

* Fixed selected issue in color picker

* Fixes

* migration fix

* Fixed test

* Fixing line rendering and refactoring

* Minor ordering fix

* fixed test

* Draw thresholds before axes & series and other tweaks

* Update packages/grafana-ui/src/components/uPlot/config/UPlotThresholds.ts

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2021-05-04 13:03:35 +02:00
Dominik Prokop
0cc620aea7
GraphNG: stacking (#30749)
* First iteration

* Dev dash

* Re-use StackingMode type

* Fix ts and api issues

* Stacking work resurected

* Fix overrides

* Correct values in tooltip and updated test dashboard

* Update dev dashboard

* Apply correct bands for stacking

* Merge fix

* Update snapshot

* Revert go.sum

* Handle null values correctyl and make filleBelowTo and stacking mutual exclusive

* Snapshots update

* Graph->Time series stacking migration

* Review comments

* Indicate overrides in StandardEditorContext

* Change stacking UI editor, migrate stacking to object option

* Small refactor, fix for hiding series and dev dashboard
2021-04-15 13:00:01 +02:00
Leon Sorokin
066c9c8ff4
GraphNG: accept number for spanNulls to indicate max threshold below which nulls are connected (#32146) 2021-03-22 23:00:34 -07:00
Torkel Ödegaard
ce63df425d
TimeSeriesPanel: Fixes overlapping time axis ticks (#31332)
* GraphNG: Fixes overlapping time axis ticks

* Review tweaks
2021-02-19 12:10:48 +01:00
Torkel Ödegaard
93a59561ba
GraphNG: Color series from by value scheme & change to fillGradient to gradientMode (#29893) 2021-01-18 19:48:45 +01:00
Leon Sorokin
803fe70c3e
GraphNG: implement softMin/softMax for auto-scaling stabilization. close #979. (#30326) 2021-01-16 08:24:13 -06:00
Ryan McKinley
8aba480a21
GraphNG: support fill below to (bands) (#30268) 2021-01-15 11:03:41 -08:00
Torkel Ödegaard
dac7add457
TimeSeriesPanel: The new graph panel now supports y-axis value mapping #30272 2021-01-14 09:58:54 +01:00
Leon Sorokin
6ce5740e64
GraphNG: uPlot 1.6, hide "Show points" in Points mode, enable "dot" lineStyle (#30263) 2021-01-13 18:33:18 -06:00
Torkel Ödegaard
28704d5274
GraphNG: Update to test dashboards (#30153) 2021-01-11 13:21:55 +01:00
Ryan McKinley
e7c53ddd59
GraphNG: rename "graph3" to "timeseries" panel (#30123) 2021-01-08 11:06:52 -08:00
Leon Sorokin
aa2acd0ca6
GraphNG: "Interpolation: Step after" test (#30127) 2021-01-07 20:42:15 -06:00
Ryan McKinley
71e93e521b
GraphNG: support dashes (#30070) 2021-01-07 09:59:21 -08:00
Torkel Ödegaard
a6aa0024a2
GraphNG: Overhaul of main test dashboard and update to null & gaps dashboard (#30101)
* GraphNG: Overhaul of main test dashboard and update to null & gaps dashboard

* Minor fix
2021-01-07 15:44:34 +01:00
Ryan McKinley
8250b59dfe
GraphNG: support fill gradient (#29765) 2020-12-16 11:17:56 -08:00
Torkel Ödegaard
5c9728a1c2
GraphNG: Add test dashboard for null & and gaps rendering (#29769) 2020-12-11 14:32:52 +01:00
Torkel Ödegaard
a8c417f09d
GraphNG: Adding ticks test dashboard and improves tick spacing (#29044)
* GraphNG: Adding ticks test dashboard and improves tick spacing

* Added comments

* Trying to trigger CI

* Update
2020-11-12 17:23:05 +01:00
Torkel Ödegaard
71fffcb17c
GraphNG: Using new VizLayout, moving Legend into GraphNG and some other refactorings (#28913)
* Graph refactorings

* Move legend to GraphNG and use new VizLayout

* Things are working

* remove unused things

* Update

* Fixed ng test dashboard

* Update

* More refactoring

* Removed plugin

* Upgrade uplot

* Auto size axis

* Axis scaling

* Fixed tests

* updated

* minor simplification

* Fixed selection color

* Fixed story

* Minor story fix

* Improve x-axis formatting

* Tweaks

* Update

* Updated

* Updates to handle timezone

* Updated

* Fixing types

* Update

* Fixed type

* Updated
2020-11-09 15:31:03 +01:00
Dominik Prokop
aa6c98f7ff
Graph NG: annotations display (#27972)
* Annotations support POC

* Fix markers memoization

* dev dashboard update

* Update public/app/plugins/panel/graph3/plugins/AnnotationsPlugin.tsx
2020-10-06 11:39:06 +02:00
Dominik Prokop
b995381816
Proposal: Declarative API for axes, scales and series configuration in Graph NG (#27862)
* Fix gdev dashboard

* API for declarative Axis, Series and Scales configuration

* Bring back time zone change support

* Update tests and fix type errors

* Review comments and fixes
2020-09-29 13:25:10 +02:00
Dominik Prokop
844dd9e8f0
Graph NG WIP (#27572)
* Squash merge Ryans uPlot work

* uPlot - wrap into composable API

* Remove MicroPlot.tsx

* Add missing uPlot stylesheet import

* Use field config for axes config

* Min selection distance for Zoom

* WIP Tooltip behaviour

* Some progress on rendering plot

* gdev dashboard for graph ng tests

* Update custom field config interface for graph options

* Add support for paths in default field config setup (+2 squashed commits)
Squashed commits:
[93fc3afbfc] Typecheck fix
[a07ef86a8b] Add support for paths in default field config setup

* Include IANA timezone canonical name in TimeZoneInfo

* Use correct time zone on time axis

* Default axis width

* Use system date time formats for time axis ticks

* Graph panel layout

* Respect config paths when rendering default value of field config property

* Fix mismatch in field config editor types

* Color field option editor

* Refactor plot context to a single one

* First version of new graph legend plugin

* Fix mutable data frame

* Multiple ui fixes, layout is still slightly problematic

* Remove unused

* Fix tooltip test

* Some perf optimisations

* Update dev dashboard

* Typecheck fix

* Do not use color value editor as standard property editor, add custom field config to graph panel to control series color

* Update dev dashboard with correct tags

* Fix undefined issues

* Update devenv/dev-dashboards/panel-graph/graph-ng.json
2020-09-24 16:44:35 +02:00
Josh Soref
ed92b41d47
Chore: spelling - misc (#24438)
* Chore: spelling - misc

* fix master merge
2020-06-04 06:51:30 +02:00
Torkel Ödegaard
0ea3444d1b
Graph: Updated y-axis ticks test dashboard (#18677) 2019-08-22 10:23:21 +02:00
Torkel Ödegaard
9a1975714d
Graph: Improved graph tick decimals logic arround significant digits (#18370) 2019-08-05 10:40:42 +02:00
Torkel Ödegaard
2c5c333858
Graph: Added new fill gradient option (#17528)
* Graph: Added new fill gradient option

* Graph: changed gradient area fill option, added test dashboard
2019-06-13 20:06:04 +02:00
Torkel Ödegaard
844ec82eb0 More development dashboards (#16550)
* Dev: more dev dashboards and structure

* Moving gdev dashboards around into folders and aligning tags
2019-04-15 10:51:17 +02:00