Commit Graph

2834 Commits

Author SHA1 Message Date
Ryan McKinley
7d32caeac2 Transformers: configure result transformations after query(alpha) (#18740) 2019-09-09 08:58:57 +02:00
kay delaney
a838d2b30a Explore: Adds ability to save a panel's query from Explore (#17982)
* Explore: Adds ability to return to origin dashboard
2019-09-05 13:44:37 +01:00
Ryan McKinley
991f77cee1 Loki: support loki with streaming in dashboards (#18709)
Move some of the buffering with live streaming inside of the datasource, sending full frames instead of deltas and allow Loki in dashboards.
2019-09-05 14:04:01 +02:00
Torkel Ödegaard
aafae4c523 Explore: Use DataFrame to derive graph/table/logs (#18859)
* WIP: Use data frames in explore

* Explore: everything seems to be working again

* Reworked ResultProcessor tests

* Fixed unit test

* Add some typings and comments
2019-09-03 17:24:22 +02:00
kay delaney
7985aa1e57 Performance/Webpack: Introduces more aggressive code-splitting and other perf improvements (#18544)
* Performance/Webpack: Introduces more aggressive code-splitting and other perf improvements
- Introduces dynamic imports for built-in plugins
- Uses dynamic imports for various packages (rst2html, brace)
- Introduces route-based dynamic imports
- Splits angular and moment into separate bundles
2019-09-03 09:29:02 +01:00
Hugo Häggmark
409874b35d Explore: Introduces PanelData to ExploreItemState (#18804)
* WIP: inital POC

* Wip: Moving forward

* Wip

* Refactor: Makes loading indicator work for Prometheus

* Refactor: Reverts prom observable queries because they did not work for multiple targets

* Refactor: Transforms all epics into thunks

* Fix: Fixes scanning

* Fix: Fixes so that Instant and TimeSeries Prom query loads in parallel

* Fix: Fixes negation logic error

* Wip: Introduces PanelData as a carries for query responses

* Refactor: Makes errors work again

* Refactor: Simplifies code somewhat and removes comments

* Tests: Fixes broken tests

* Fix query latency

* Remove unused code
2019-09-03 09:55:20 +02:00
Torkel Ödegaard
fe658d7ac2 Prometheus: Fixed Prometheus query editor error (plus new ErrorBoundaryAlert component) (#18838)
* ErrorHandling: Fixed Prometheus query editor error and added error boundary

* Update public/app/core/components/ErrorBoundary/ErrorBoundary.tsx

Co-Authored-By: kay delaney <45561153+kaydelaney@users.noreply.github.com>

* Fixed ts error
2019-09-02 20:45:18 +02:00
Ryan McKinley
c777301535 DataFrame: split DataFrameHelper into MutableDataFrame and FieldCache (#18795)
* add appending utility

* add appending utility

* update comment

* rename to mutable

* move mutable functions out of DataFrameHelper

* move mutable functions out of DataFrameHelper

* move mutable functions out of DataFrameHelper

* turn DataFrameHelper into FieldCache

* guess time from name

* graph the numbers

* return the timeField, not just the index

* just warn on duplicate field names

* only use a parser if the input is a string

* append init all fields to the same length

* typo

* only parse string if value is a string

* DataFrame: test fixes

* Switch to null for missing values

* Fixed tests
2019-09-01 14:44:22 +02:00
Ryan McKinley
13f55bc5e8 MixedDatasource: don't filter hidden queries before sending to datasources (#18814) 2019-08-30 11:59:23 -07:00
Torkel Ödegaard
8e9cb5c81a Explore: Fixes query hint issues (#18803)
* Explore: clear results when you change datasource

* Explore: Clear results on data source change, and fix query hints issue

* Clear results on clear all

* Prometheus: Update logic of when to re-check query hints
2019-08-30 15:22:36 +02:00
Dominik Prokop
90508cdbf2 Datasource: Support min time interval input in ms (#18719)
* Support min time interval input in ms in SQL datasource settings

* Enable ms in elastic min time interval setup
2019-08-29 09:36:10 +02:00
Hugo Häggmark
5ca643f2ba Explore: Use PanelQueryState to handle querying (#18694)
* WIP: inital POC

* Wip: Moving forward

* Wip

* Refactor: Makes loading indicator work for Prometheus

* Refactor: Reverts prom observable queries because they did not work for multiple targets

* Refactor: Transforms all epics into thunks

* Fix: Fixes scanning

* Fix: Fixes so that Instant and TimeSeries Prom query loads in parallel

* Fix: Fixes negation logic error

* Propagate errors in stream events, and close streams
2019-08-28 18:24:52 +02:00
Ryan McKinley
e1924608a2 DashboardDatasource: reuse query results within a dashboard (#16660)
* move queryRunner to panelModel

* remove isEditing from PanelChrome

* move listener to QueriesTab

* add shared query datasource

* expose getDashboardSrv to react

* no changes to panel chrome

* issue queries when in fullscreen

* moved to regular QueryEditor interface

* moved to regular QueryEditor interface

* lower limit

* add dashboard query

* no changes to editor row

* fix sort order

* fix sort order

* make it an alpha panel

* make panelId a getter

* fix angular constructor

* rename SeriesData to DataFrame

* merge with master

* use series

* add simple tests

* check unsubscribe

* Minor code cleanup, creating Subjects look cheap and does not need to be lazy, simplifies code

* minor refactor

* Minor refacforing, renames

* added test dashboard
2019-08-27 11:06:49 +02:00
Ryan McKinley
73d9f262bd @grafana/data: improve the CircularVector api (#18716) 2019-08-26 12:42:27 -07:00
Ryan McKinley
e6fbf358c8 TestData: attach labels to series results (#18653) 2019-08-21 07:50:13 -07:00
Dominik Prokop
faabb839e6 Chore: Revert React 16.9.0 bump (#18634)
Since React and other dependencies bump caused some troubles with building packages that @kaydelaney and me tried to debug without any success, we decided to revert React 16.9.0 bump.
2019-08-20 11:14:53 +02:00
Shavonn Brown
f22aaa5518 Azure Monitor and Log Analytics converted and separated into components (#18259)
* Azure Monitor and Log Analytics converted and separated into components

* Insights creds converted

* remove angular config

* fix workspaces and missing sameas key

* fix workspace save

* set subscriptionId key

* editor fields, load workspaces btn

* workspace load req fields updated

* added tooltip to switch, disable buttons instead of hide

* master merge and tests
2019-08-19 23:35:44 +02:00
Hugo Häggmark
d7ccf98b1b Prometheus: Prevents panel editor crash when switching to Prometheus datasource (#18616)
* Fix: Fixes panel editor crash when switching to Promehteus
Fixes: #18600

* Refactor: Adds tests
2019-08-19 14:04:16 +02:00
Tobias Skarhed
90df8c4bb0 Chore: Rename Popper to Popover (#18543)
* Rename PopperContent to TooltipContent

* Move exports from PopperController

* Change ToolipContent to PopoverContent and PopoverController

* Rename Popper to Popover

* Add forgotten files

* Update snapshot

* Remove generic
2019-08-19 11:40:47 +02:00
ElstJonas
325fd29ea0 Prometheus: Return labels in query results (#18535)
* Added prometheus metric labels to data returned for normal time series queries

* Fixed result transformer tests for new return layout with prometheus labels

* Fixed prettier formatting
2019-08-16 11:48:04 +02:00
Ryan McKinley
5a41e8b119 Refactor: move KeyValue and deprecation warning to @grafana/data (#18582)
* move KeyValue and deprecation warning

* move KeyValue and deprecation warning

* rename displayProcessor file
2019-08-16 11:10:32 +02:00
Ryan McKinley
e59bae55d9 DataFrame: convert from row based to a columnar value format (#18391) 2019-08-15 09:18:51 -07:00
fxmiii
4cf804c8b6 Prometheus: Fix regression of rerunning query on legend/interval change (#18147)
* Rerun query on input changes

Added "this.onRunQuery" for update of the input fields so that the panel updates when changed

* typo in comment

changed "fullu" to "fully"

* modified to onBlur for legend, interval

legend and interval (min step) now call for query re-run when they go 'onBlur' instead of 'onChange'

* PromQueryEditor: Updated snapshot
2019-08-14 15:15:42 +02:00
Dominik Prokop
993e5636d6 Annotations: Fix failing annotation query when time series query is cancelled (#18532) 2019-08-13 13:03:14 +02:00
Ryan McKinley
3ccc10f82c React: Rename deprecated UNSAFE_componentWillReceiveProps (#18526) 2019-08-13 10:08:33 +02:00
Tobias Skarhed
1db9fff056 strictNullChecks: First batch (#18390)
* First batch of strictNullChecks

* Remove undefined

* Check an alternative solution

* Fix strict nullChecks

* Low hanging strictNullChecks

* Fixing strict nulls issues and more

* Minor change

* fixed unit test

* Fix feedback

* Update public/vendor/ansicolor/ansicolor.ts

Co-Authored-By: Dominik Prokop <dominik.prokop@grafana.com>

* Update public/vendor/ansicolor/ansicolor.ts

Co-Authored-By: Dominik Prokop <dominik.prokop@grafana.com>

* Update public/vendor/ansicolor/ansicolor.ts

Co-Authored-By: Dominik Prokop <dominik.prokop@grafana.com>

* Fix build errors
2019-08-12 16:11:06 +02:00
Dominik Prokop
0b828cfa44 Chore: bump React to 16.9.0 (#18502)
* Chore: bump react to 16.9.0

* Bump hooks testing lib
2019-08-12 14:26:11 +02:00
gotjosh
b424e12a5a Fix: Avoid glob of single-value array variables (#18420)
* Fix: Avoid glob of single-value array variables

Based on our current implementation of templates, when multi-select
variables are part of a dashboard query the default/fallback formatting option is `glob`.

Some data sources do not support glob (e.g. metrics.{a}.* instead of
metrics.a.*) for single variable queries. This behaviour breaks dashboards.

This commit introduces an alternative formatting option where globing is avoided if it's there is only one value as part of the query variable.

This means, queries previously formatted as `query=metrics.{a}.*.*`, are
now formatted as `query=metrics.a.*.*`. However, queries formatted as
`query=metrics.{a,b}.*.*` continue to be as is.
2019-08-07 14:50:06 +01:00
Torkel Ödegaard
832b67db38 TestData: Query variable support (nested + glob queries) (#18413)
* TestData: added support for nested data source variable queries, and test dashboard

* Added drilldown dashboards

* Fixed typescript issue
2019-08-06 18:17:12 +02:00
Alexander Berger
4e1e220962 CloudWatch: Fix alerting for queries with Id (using GetMetricData) (#17899)
This commit addresses half of #13749 by making sure GetMetricData 
works for alerting. Math Expressions (compound metrics) will still not 
work for alerting, this would require a bigger refactoring of Grafana's 
alerting service. However, with this commit at least alerting for basic 
metrics with non empty query Id will work.

Fixes half of #13749
2019-08-05 17:28:09 +02:00
David
e8790c32ca Loki: Apply start parameter to speed up test query (#18266) 2019-08-03 16:58:08 +02:00
Ryan McKinley
5f4b5dfecd Refactor: use data rather than series in stream callback(#18126) 2019-08-01 23:16:29 -07:00
Tobias Skarhed
7891233812 Chore: noImplicitAny Sub 500 errors (#18287) 2019-07-30 15:49:32 +02:00
David
459769af70 Loki: Remove prefetching of default label values (#18213) 2019-07-24 14:58:32 +02:00
Raphael Couto
bc0da1bbfc Plugin: AzureMonitor - Reapply MetricNamespace support (#17282)
* Reapply MetricNamespace support

* Fixing tests

* refactor: move metricnamespace param to backend

* refactor: remove unused function

* azuremonitor: migration for new metric namespace field

* azuremonitor: add template query for metric namespace with a sub

* docs: template queries for azure monitor

Adds new lines for the metricnamespace template function and fixes
some messed up lines
2019-07-20 01:43:52 +02:00
Kyle Brandt
7cac393ddc datasource: testdata - add predicatable csv wave scenario (#18183) 2019-07-18 13:36:22 -04:00
Kyle Brandt
ed099d5ca0 datasource: testdata - add predictable pulse scenario (#18142)
Adds pulse waveform. Is predictable in the sense that the start of the waveform is aligned to epoch time (instead of the start of the query time). This makes a useful signal for manual testing of alerting in the devenv.
2019-07-17 15:48:08 -04:00
Ryan McKinley
c194ae1ba5 Registry: add a reusable function registry (#17047) 2019-07-16 11:40:23 -07:00
Tobias Skarhed
0ef4060b98 Chore: Fix about 200 noImplicitAny errors (#18067)
* Fix 200 ish errors

* Add interface
2019-07-16 11:35:42 +02:00
kvc-code
acc678c309 InfluxDB: Enable interpolation within ad-hoc filter values for InfluxDB data source (#18077) 2019-07-12 17:05:55 +02:00
Tobias Skarhed
e1cec1069c noImplicitAny: 1670 errors (#18035)
* Sub 2000 errors

* Down to 1670 errors

* Minor fixes
2019-07-11 17:05:45 +02:00
Damien Lespiau
ebff883016 Loki: Don't use _ numerical separator (#18016)
It breaks the build on a fresh checkout and install.

Fixes: #18015
2019-07-10 11:03:06 +02:00
Ryan McKinley
ccc3d88cee Refactor: move dom utils to @grafana/ui (#17976) 2019-07-08 10:02:16 -07:00
Martin Chodur
c284a11a95 Prometheus: added time range filter to series labels query (#16851)
* fix datasource/prometheus: added time range filter to prom series labels

* fix datasource/prometheus: added missing method to test mock
2019-07-08 17:48:09 +02:00
kay delaney
246358344c Explore: Adds support for new loki 'start' and 'end' params for labels endpoint (#17512)
* Explore: Adds support for new loki 'start' and 'end' params for labels endpoint
Also initializes absoluteRange when explore is initialized
Closes #16788

* Explore: Dispatches updateTimeRangeAction instead of passing absoluteRange when initializing
Also removes dependency on sinon from loki language provider test

* Loki: Refactors transformation of absolute time range to URL params into small utility function

* Makes use of rangeToParams() util function in loki language provider test
Also updates LanguageProvider.request() interface so that url should be type string, and adds optional params argument
2019-07-08 16:14:48 +01:00
Ryan McKinley
8f5df80161 Chore: Removes custom debounce utility in favor of lodash/debounce (#17977) 2019-07-08 15:20:29 +01:00
Ryan McKinley
fcdc29746f @grafana/data: export dateMath and rangeUtil (#17971) 2019-07-05 23:43:12 -07:00
Ryan McKinley
3f15170914 Refactor: move some files to @grafana/data (#17952)
* moving to data WIP

* more refactoring

* add missing test

* mock full path

* remove sinon from grafana-ui
2019-07-06 08:05:53 +02:00
Tobias Skarhed
baed5d7bd9 noImplicitAny: Azure Monitor (#17966) 2019-07-06 07:01:22 +02:00
Tobias Skarhed
88a2c6fce7 Graphite: Refactor lexer and parser (#17958) 2019-07-05 16:47:21 +02:00