Commit Graph

506 Commits

Author SHA1 Message Date
kay delaney
477d5643b6
Explore: Prometheus query errors now show (#17470)
* Explore: Prometheus query errors now show
Fixes: #17435

* Explore: Adds test to ensure prometheus query errors are reported

* Explore: removes implicit anys introduced previously
2019-06-18 11:07:09 +01:00
Hugo Häggmark
3424b64299
Typescript: Removes implicit anys (#17625)
* Chore: Remove implicit anys from ResultProcessor and tests

* Chore: Removes implicit anys for /loki/**/*.ts

* Chore: Removes implicit anys for prometheus/**/*
2019-06-18 11:01:12 +02:00
kay delaney
e11edf3fc2
Explore: Includes context parameter when invoking getExploreState() from Prometheus datasource (#17569)
Closes #17457
2019-06-13 14:14:09 +01:00
Patrick Hahn
606825703f Prometheus: Use overridden panel range as $_range instead of dashboard range (#17352)
The range variables get filled with the range from the query options,
not with the range in the timeSrv object. This means that panels that
use a relative time override get the correct values from the __range
variables.

Fixes #17102
2019-06-06 10:03:14 +02:00
Hugo Häggmark
10a4a89902
Fix: Adds context to list of keys that are not part of query (#17423)
Fixes: #17408
2019-06-04 14:07:25 +02:00
Charlie Briggs
8ef961bba5 Prometheus: Correctly escape '|' literals in interpolated PromQL variables (#16932)
This escape is currently not happening which breaks multi-value queries with
'|' characters in the variable value.

Added tests for 'interpolateQueryExpr' which should possibly be private, but is difficult to
test due to TemplateSrv calling it.

Closes #16840
2019-06-04 13:07:39 +02:00
Ryan McKinley
1e76f1a728
DataSourceApi: remove ExploreDataSourceApi (#17424) 2019-06-04 10:30:07 +02:00
Ryan McKinley
96ba32d0c8
Add a @grafana/runtime package with backendSrv interface (#16533)
grafana-runtime/tsconfig.json imports query to avoid a build error  ¯\_(ツ)_/¯
2019-06-03 17:55:59 +02:00
Hugo Häggmark
fb39831df2
Explore: Queries the datasource once per run query and uses DataStreamObserver (#17263)
* Refactor: Removes replaceUrl from actions

* Refactor: Moves saveState thunk to epic

* Refactor: Moves thunks to epics

* Wip: removes resulttype and queries once

* Refactor: LiveTailing uses observer in query

* Refactor: Creates epics folder for epics and move back actioncreators

* Tests: Adds tests for epics and reducer

* Fix: Checks for undefined as well

* Refactor: Cleans up previous live tailing implementation

* Chore: merge with master

* Fix: Fixes url issuses and prom graph in Panels

* Refactor: Removes supportsStreaming and adds sockets to DataSourcePluginMeta instead

* Refactor: Changes the way we create TimeSeries

* Refactor: Renames sockets to streaming

* Refactor: Changes the way Explore does incremental updates

* Refactor: Removes unused method

* Refactor: Adds back Loading indication
2019-06-03 14:54:32 +02:00
Marcus Efraimsson
1497f3d79a
Chore: Remove unused properties in explore (#17359)
This removes unused properties in explore and datasource 
meta data (tables and explore properties in plugin.json).
2019-05-31 09:45:53 +02:00
David
bf5b60f74a
fix(explore): Prevent double querying for Prometheus and Loki (#17004)
* fix(explore): Prevent double querying for Prometheus and Loki

- queries were triggered twice because two Enter handlers existed
- removed runner plugin from Loki and Prom query fields (runner plugin
is still being used in azure)

Part of #16995

* Set loki's mtrics capability to false

Loki is not a metrics store. Explore was using the `metrics` field in
the plugin definition to issue a second query run. But Loki shows only
one result viewer.

Fixes #16995
2019-05-13 09:55:20 +02:00
Torkel Ödegaard
e0b760e08e
Chore: No implict any fixes (#17020) 2019-05-13 09:38:19 +02:00
Hugo Häggmark
6dbaa704bc
Explore: Align Explore with Dashboards and Panels (#16823)
* Wip: Removes queryTransactions from state

* Refactor: Adds back query failures

* Refactor: Moves error parsing to datasources

* Refactor: Adds back hinting for Prometheus

* Refactor: removed commented out code

* Refactor: Adds back QueryStatus

* Refactor: Adds scanning back to Explore

* Fix: Fixes prettier error

* Fix: Makes sure there is an error

* Merge: Merges with master

* Fix: Adds safeStringifyValue to error parsing

* Fix: Fixes table result calculations

* Refactor: Adds ErrorContainer and generic error handling in Explore

* Fix: Fixes so refIds remain consistent

* Refactor: Makes it possible to return result even when there are errors

* Fix: Fixes digest issue with Angular editors

* Refactor: Adds tests for explore utils

* Refactor: Breakes current behaviour of always returning a result even if Query fails

* Fix: Fixes Prettier error

* Fix: Adds back console.log for erroneous querys

* Refactor: Changes console.log to console.error
2019-05-10 14:00:39 +02:00
Ryan McKinley
1d7bb2a763 DataSourceApi: convert interface to abstract class (#16979)
* DataSourceApi as class

* add diff signature

* Prometheus: moved directUrl to jsonData
2019-05-10 11:37:43 +02:00
tolwi
f0109be2bc fix(prometheus): issue with click label to filter for recording rules in Explore 2019-05-09 13:54:48 +02:00
Ryan McKinley
7b92c56055 DataSourcePlugins: more generics improvements (#16965)
* more types for query editor

* generic datasources

* update

* change ComponentClass to ComponentType

* more types

* remove input
2019-05-09 11:48:13 +02:00
Torkel Ödegaard
e1d408a66f
AddDataSource: Updated page design & categories (#16971)
* minor refactoring

* Added category

* Minor progress

* Progres

* Updated descriptions

* Added custom sort

* NewDataSource: progress

* Updated design

* NewDataSource: Updated design

* Updated link

* Feedback changes
2019-05-09 11:45:39 +02:00
Hugo Häggmark
ceb9f0855b
Chore: Replaces moment with Grafanas DateTime (#16919)
* Wip: Initial commit

* Refactor: Replaces moment.utc(

* Refactor: replaces the last isMoment statements

* Refactor: Removes almost all moment imports

* Refactor: Moves moment_wrapper to grafana/ui

* Refactor: Renames momentWrapper

* Refactor: Removes one more moment import

* Refactor: Removes unitOfTime import

* Fix: Fixes Prettier error

* Refactor: Renames DateTimeType to DateTime

* Refactor: Renames isDateTimeType to isDateTime

* Refactor: Renames dateTime to dateTime

* Feature: Bans moment imports and types
2019-05-08 13:51:44 +02:00
Ryan McKinley
d881976c9d Refactor: move datemath to grafana/ui (#16890)
* move datemath to grafana/ui

* don't reference @grafana/ui from its own component
2019-05-06 12:36:42 +02:00
Andrej Ocenas
2596ce5076 Add pattern validation in configs (#16837)
Datasources: Add pattern validation for time input on datasource config pages
2019-05-02 11:02:00 +02:00
Marcus Efraimsson
9d01b216f9
prometheus: fix regression after adding support for tracing headers (#16829)
This fixes a regression introduced by #16724 when datasource is configured
to use HTTP method POST and testing the datasource which results in an
'options.headers is undefined'. Same error probably happens if datasource
is configured to use basic auth and testing datasource.
2019-05-01 17:23:47 +02:00
Stanislav Putrya
76ab0aa059 Add tracing headers for prometheus datasource (#16724)
Prometheus: Adds tracing headers for Prometheus datasource
2019-04-30 13:28:35 +02:00
Hugo Häggmark
ddefcb2694
Fix: Fetch histogram series from other api route (#16768)
Closes: #15992
2019-04-29 15:42:58 +02:00
Ryan McKinley
4e54509dde
Refactor: improvements to PanelQueryRunner (#16678)
merged DataQueryOptions + DataRequestInfo info: DataQueryRequest
2019-04-18 21:56:27 -07:00
Hugo Häggmark
7eabc282e9
Chore: Adds typings to lodash (#16590) 2019-04-15 12:11:52 +02:00
Ryan McKinley
5bc936d2da
DataSourceApi: add getCollapsedText(query) to DataSourceApi (#16482)
Add getQueryDisplayText() to DataSourceApi
2019-04-10 09:31:32 -07:00
Scott Leggett
06dfbb382b Docs: fix grammar in query hint, tests, and documentation (#16444)
* Fix use of "monotonically" in explore documentation

* Fix use of "monotonically" in query hints and tests
2019-04-10 10:12:57 +02:00
Mitsuhiro Tanda
d2968c73e6 add PromQL keyword for adhoc filter (#16426) 2019-04-09 09:51:15 +02:00
Torkel Ödegaard
47e51cb6b3
Refactor: Plugin exports & data source / panel types (#16364)
* wip: began work off removing meta and pluginExports from DataSourceApi interface

* WIP: changing how plugins are exports and loaded

* Down the refactoring rabit hole that keeps expanding

* TestData now returns DataSourcePlugin

* Refactoring: fixed app config page loading, type renamings and more typings

* Refactor: Correct casing on DatasourceStatus => DataSourceStatus
2019-04-04 18:30:15 +02:00
Johannes Schill
8370a182f7 Tech: Bump typescript and jest (#16354)
* chore: Bump Typescript to 3.4.1

* chore: Bump babel-jest, jest, ts-jest

* fix: Fix tests after typescript upgrade by disabling some typings

* chore: noImplicitAny

* chore: Bump typescript in @grafana/ui
2019-04-03 11:41:08 +02:00
Hugo Häggmark
988b7c4dc3
Feat: Adds reconnect for failing datasource in Explore (#16226)
* Style: made outlined buttons and used it in Alert component

* Refactor: clean up state on load data source failure

* Refactor: test data source thunk created

* Refactor: move logic to changeDatasource and call that from intialize

* Refactor: move load explore datasources to own thunk

* Refactor: move logic to updateDatasourceInstanceAction

* Tests: reducer tests

* Test(Explore): Added tests and made thunkTester async

* Fix(Explore): Fixed so that we do not render StartPage if there is no StartPage

* Fix(Explore): Missed type in merge

* Refactor: Thunktester did not fail tests on async failures and prevented queires from running on datasource failures

* Feat: Fadein error alert to prevent flickering

* Feat: Refresh labels after reconnect

* Refactor: Move useLokiForceLabels into useLokiLabels from PR comments

* Feat: adds refresh metrics to Prometheus languageprovider

* Style: removes padding for connected datasources

* Chore: remove implicit anys
2019-04-01 07:38:00 +02:00
Daniel Lee
8a8a1b8e11
Fix: Prometheus regex ad-hoc filters w/ wildcards (#16234)
Fixes #14615.

Removes extra escaping for regex filter values when using ad hoc
filters for Prometheus. The extra escaping causes queries with
regex characters to be invalid.
2019-03-27 11:43:17 +01:00
Ryan McKinley
77b3da3e8b refactor(data models): Renamed TableData to SeriesData (#16185) 2019-03-25 14:46:16 +01:00
Torkel Ödegaard
d5a56b0bed Minor refactoring of #16127 2019-03-22 12:51:12 +01:00
Torkel Ödegaard
c7c0ba5a5a Merge branch 'prometheus_annotation_deduplication' of https://github.com/mtanda/grafana into mtanda-prometheus_annotation_deduplication 2019-03-22 12:45:46 +01:00
David
9008fcc790
fix(prometheus): Change aligment of range queries (#16110)
- future alignment cause issues with rate charts and the display of last
values
- this change modifies the alignment to use the last available aligned
end date and no longer possibly requests data from the future
2019-03-21 10:25:20 +01:00
Mitsuhiro Tanda
38457fabc1 fix, assign by event.time 2019-03-21 16:39:37 +09:00
Mitsuhiro Tanda
e868475c5b simplify 2019-03-21 15:48:22 +09:00
Mitsuhiro Tanda
e1a2b258af deduplicate same value annotation 2019-03-21 10:26:46 +09:00
ryan
a9cc8a8992 update table data model 2019-03-20 09:45:19 -07:00
Johannes Schill
d6a74a5c90 fix: describe() should not be async 2019-03-14 08:26:01 +01:00
Alexander Zobnin
4e22918010
heatmap: fix prometheus buckets sorting, closes #15637 2019-03-12 10:26:20 +03:00
Johannes Schill
e7297fef06 fix: Add class for input fields with help icon to avoid icon hiding the text #15771 2019-03-06 14:45:13 +01:00
ryan
909d425008 cleanup plugin versions 2019-03-05 23:40:03 -08:00
Daniel Lee
fe1c204d4a
Merge pull request #15290 from mtanda/prometheus_label_names_query
(prometheus) support /api/v1/labels
2019-03-05 15:45:14 +01:00
David Kaltschmidt
539333bb01 Explore: Enable click on name label
- click on the name label in a prometheus table was disabled
- it was disabled because every query used to have a metric which is no
longer true
- this change enables it
2019-02-26 14:21:46 -08:00
Johannes Schill
5054e841ba
Merge pull request #15551 from grafana/15281-dashboard2explore
fix: Filter out values not supported by Explore yet #15281
2019-02-21 16:38:32 +01:00
Johannes Schill
6f9edf4a22 fix: Filter out values not supported by Explore yet #15281 2019-02-19 16:43:39 +01:00
Dominik Prokop
88a46e6dd4 Bump Prettier version (#15532)
* Fix prettier version to 1.16.4
2019-02-19 15:41:35 +01:00
Torkel Ödegaard
cfea8bdcae Prettier had not been running as a precommit hook for some time so had to run in on all files again 2019-02-13 11:14:53 +01:00
Mitsuhiro Tanda
d46bf75293 support /api/v1/labels 2019-02-07 13:59:42 +09:00
Torkel Ödegaard
44cef757e5 Merge branch 'hugoh/explore-refactor-initial-modified-queries' 2019-02-05 09:33:28 +01:00
Hugo Häggmark
2c255fd85a Renamed initialQueries to queries 2019-02-05 06:19:40 +01:00
Johannes Schill
9ab5eeb7f3 fix: Explore: Query wrapping on long queries #15222 2019-02-04 17:26:20 +01:00
Hugo Häggmark
5e2b9e40a2 Added more typings 2019-02-04 11:25:07 +01:00
Hugo Häggmark
2d0fd96621 More types and some refactoring 2019-02-04 07:50:17 +01:00
Hugo Häggmark
acea1d7f00 Alignment of interfaces and components 2019-02-04 07:50:17 +01:00
Torkel Ödegaard
0ac0588583
Merge pull request #15107 from grafana/explore-query-styles
Updated Explore query styles to align them to other query editors
2019-01-29 15:38:06 +01:00
Torkel Ödegaard
8b70a8dd50 Fixed explore query editor styling issues 2019-01-29 14:36:09 +01:00
Dominik Prokop
27948b1308 Make language provider cancelable in Loki and Prometheus QueryField, to avoid setting state on unmounted component 2019-01-29 12:11:48 +01:00
Torkel Ödegaard
6dad4cce07 Updated Explore query styles to align them to other query editor to make them fit in better 2019-01-29 08:14:07 +01:00
Torkel Ödegaard
40b73a1fcd Removed unused props & state in PromQueryField 2019-01-22 09:57:27 +01:00
Torkel Ödegaard
98fabfae3e wip: typings 2019-01-18 17:23:00 +01:00
Torkel Ödegaard
205e2acdd8 Added data source type to explore state 2019-01-17 19:17:29 +01:00
Torkel Ödegaard
febb9e7168 Moved data source and data query types 2019-01-17 17:59:47 +01:00
Daniel Lee
3bdd4a5c33 changelog: adds note for #14795 2019-01-15 17:14:58 +01:00
David Kaltschmidt
ce3117507a Prometheus: Fix annotation step calculation
- since e731c248d7 step calculation for
annotation queries was broken
- this change puts the interval in the correct parameter so it gets
considered in `createQuery`
- added tests
2019-01-14 17:40:47 +01:00
Torkel Ödegaard
705cbb4095 Minor cleanup now that angular panel edit is no longer 2018-12-17 21:29:25 +01:00
Torkel Ödegaard
8497c854f6 Adding mixed query 2018-12-12 08:54:12 +01:00
Torkel Ödegaard
eb6d0e9f51 Merge branch 'master' into develop 2018-12-07 14:59:38 +01:00
David Kaltschmidt
c0c06e4dd8 Prometheus: Make result transformer more robust for empty responses
- some prometheus-compatible backends may return `null` instead of empty lists
- test for lists before iterating
- added tests for empty responses
2018-12-07 11:22:55 +01:00
Torkel Ödegaard
180ca021b5 Merge branch 'master' into develop 2018-12-05 10:17:22 +01:00
Torkel Ödegaard
401b470ebb added max-widths to explore start pages boxes 2018-12-04 15:06:30 +01:00
Torkel Ödegaard
1fddb6144d fixed promql and loggging syntax so all punctuation chars are treated the same, remove hover move 2018-12-04 14:57:01 +01:00
Torkel Ödegaard
47523f80dd fixed logging start page 2018-12-04 12:59:24 +01:00
Torkel Ödegaard
1283a3292d fixed grabage in markup 2018-12-04 10:16:51 +01:00
Torkel Ödegaard
44414c4346 Misc styling fixes to explore: start page, slate code editor colors, text highlight in auto completeter suggestion 2018-12-03 17:20:02 +01:00
Erik Sundell
d9236c1081 add table support flag for prometheus 2018-11-29 10:39:24 +01:00
David Kaltschmidt
c3b67f3a13 Explore: Logging label filtering
- adds a custom label renderer to Logs viewer in Explore
- labels are no longer treated as strings, they are passed as parsed objects to the log row
- label renderer supports onClick handler for an action
- renamed Explore's `onClickTableCell` to `onClickLabel` and wired up log label renderers
- reuse Prometheus `addLabelToSelector` to modify Logging queries via click on label
- added tests to `addLabelToSelector`, changed to include the surrounding `{}`
- use label render also for common labels in the controls panel
- logging meta data section has now a custom renderer that can render numbers, strings, and labels
- style adjustments
2018-11-28 14:20:10 +01:00
David Kaltschmidt
91ea8dccf5 Explore: Fix JS error when switching between 2 prometheus datasources
- since the DataQuery rewrite, Explore starts by submitting its queries (Explore cant know if the queries are emtpty)
- The datasource intercepts an empty query and returns an empty list of time series, and also no table for the table query.
- The query hinter then received no series to analyse and was not guarding against this.
- This PR adds this guard.
2018-11-26 13:43:22 +01:00
Torkel Ödegaard
efcbb92b3f
Merge pull request #14170 from grafana/davkal/explore-prometheus-range-sort
Sort Prometheus range suggestions by length
2018-11-23 19:22:24 +01:00
David Kaltschmidt
575d888472 Fix tests to account for sortText 2018-11-23 16:53:46 +01:00
David Kaltschmidt
f831836fa7 Explore: make query field suggestions more robust
- drop invalid history items
- make highlighter more robust by defaulting to empty string on text to highlight
2018-11-23 12:25:43 +01:00
David Kaltschmidt
ecaee88efe Sort Prometheus range suggestions by length
- add sortText property to range completion items
2018-11-23 11:43:21 +01:00
David Kaltschmidt
bbaa5b63c8 Fix history rendering for DataQuery 2018-11-22 11:02:53 +01:00
David Kaltschmidt
331d419d4f Combine query functions 2018-11-21 17:21:13 +01:00
David Kaltschmidt
22987ee75f Renamed targets to queries 2018-11-21 16:28:30 +01:00
David Kaltschmidt
b3161bea5a Explore: Introduce DataQuery interface for query handling
- Queries in Explore have been string based
- This PR introduces the use of the DataQuery type to denote all queries handled in Explore
- Within Explore all handling of DataQueries is transparent
- Modifying DataQueries is left to the datasource
- Using `target` as variable names for DataQueries to be consistent with the rest of Grafana
2018-11-21 14:45:57 +01:00
David
c20c787b62
Merge pull request #14104 from grafana/davkal/prometheus-rule-expansion
Prometheus: fix rules expansion
2018-11-19 15:11:09 +00:00
David
634d71a657
Merge pull request #14052 from grafana/davkal/explore-query-importer
Explore: POC for datasource query importers
2018-11-16 14:55:19 +00:00
David Kaltschmidt
e3e8be16b3 Prometheus: fix rules expansion
Rules expansion (available via query hints in explore) was broken for expressions that contained selectors.

- fix replacing regexp to recognize `{` and `[` as the end of a rule name
- moved logic to language utils
- added tests
2018-11-16 14:38:20 +00:00
David Kaltschmidt
411719bc70 Explore: POC for datasource query importers
Explore is about keeping context between datasources if possible. When
changing from metrics to logging, some of the filtering can be kept to
narrow down logging streams relevant to the metrics.

- adds `importQueries` function in language providers
- query import dependent on origin datasource
- implemented  prometheus-to-logging import: keeping label selectors
  that are common to both datasources
- added types
2018-11-16 13:52:58 +00:00
David Kaltschmidt
ce59acd141 Extracted language provider variables for readibility 2018-11-15 11:20:27 +00:00
David Kaltschmidt
ff0ed06441 Explore: Don't suggest term items when text follows
Tab completion gets in the way when constructing a query from the inside
out:

```
up| => |up => sum(|up)
```

At that point the language provider will not suggest anything.
2018-11-12 17:40:05 +00:00
Michael Huynh
22b8b04dbe
Preserve suffix text when applying function suggestion
Updates all PromQL function-like suggestions to omit parentheses
when inserted. Such insertions also preserve any suffix text.

Related: #13885
2018-11-09 20:43:20 +08:00
David
0df14f3fa8
Merge pull request #13927 from grafana/davkal/explore-start-task
Explore: fix metric selector for additional rows
2018-11-05 12:30:02 +01:00
Michael Huynh
f79b790ef6
Add tests covering alternate syntax for aggregation contexts
Related: #13690
2018-11-03 08:07:08 +08:00
Michael Huynh
5e748243af
Handle suggestions for alternate syntax aggregation contexts
In aggregation contexts using the alternate syntax form, labels will
precede metrics. A cursor at the label position cannot provide
meaningful suggestions unless a metric is specified. In the latter case,
no suggestions are presented at all.

Related: #13690
2018-11-03 07:56:13 +08:00
David Kaltschmidt
edd575b552 Explore: fix metric selector for additional rows
- race condition in language provider leads to only one row getting
  selector options
- fixed by always returning the start task promise
2018-11-01 09:46:05 +01:00
David Kaltschmidt
4f959648a7 Explore: async starts of language provider
- changed `start()` to return promise on main language feature task
- promise resolves to list of secondary tasks
- speeds up time to interaction of metric selector
- lazy loading of certain metric selector and log label selector items
- loading indication of metric and log label selectors
2018-10-31 17:53:28 +01:00
David Kaltschmidt
c92f5462fe Explore: repair logging after code restructuring
this is a fix-up PR that cleans up Explore Logging after the recent
restructuring.

- log results need to be merged since query transactions have been
  introduced
- logging DS has its own language provider, query field, and start page
  (some of them based on prometheus components)
- added loader animation to log viewer
- removed logging logic from prometheus components
2018-10-30 16:35:49 +01:00
David
758ec4bc70
Merge pull request #13844 from grafana/davkal/explore-empty-page
Explore: Pluggable components from datasource plugins
2018-10-30 14:54:34 +01:00
David Kaltschmidt
cf19ecc8f5 Make Explore plugin exports explicit 2018-10-30 14:38:34 +01:00
David Kaltschmidt
d0776937b5 Pluggable components from datasource plugins
- when instantiating a datasource, the datasource service checks if the
  plugin module exports Explore components, and if so, attaches them to
  the datasource
- Explore component makes all major internal pluggable from a datasource
  `exploreComponents` property
- Moved Prometheus query field to promehteus datasource and registered
  it as an exported Explore component
- Added new Start page for Explore, also exported from the datasource
2018-10-29 15:14:36 +01:00
Sebastian
85aed0276e
Update grafana_stats.json
The grafana_stats.json used the following prometheus query: "increase(grafana_alerting_result_total[1m])" But a metric called "grafana_alerting_result_total" is currently not there anymore. So i changed the query to "increase(grafana_alerting_active_alerts[1m])" and updated the title as well (Before: "Grafana alert results", Now: "Grafana active alerts").
2018-10-29 12:05:24 +01:00
David
121ac93d08
Merge pull request #13847 from miqh/fix/multi-line-aggregation
Fix label suggestions inside multi-line aggregation contexts
2018-10-28 18:05:31 +01:00
David Kaltschmidt
9245dad53e Fix query hint tests after refactor 2018-10-28 17:48:17 +01:00
Michael Huynh
d1d5e9f7d3
Add tests to cover PlaceholdersBuffer and sum hint
Related: #13615
2018-10-28 21:07:40 +08:00
Michael Huynh
c255b5da11
Add sum aggregation query suggestion
Implements rudimentary support for placeholder values inside a string
with the `PlaceholdersBuffer` class. The latter helps the newly added
sum aggregation query suggestion to automatically focus on the label
so users can easily choose from the available typeahead options.

Related: #13615
2018-10-28 21:03:39 +08:00
Michael Huynh
61843b58db
Add tests to cover aggregation context cases
This should cover use cases involving multi-line queries and range
vector syntax inside aggregation contexts.

Related: #12890
2018-10-27 17:02:03 +08:00
Michael Huynh
2a4a19388f
Fix label suggestions for multi-line aggregation queries
No label suggestions were being returned for multi-line aggregation
contexts because the parsed selector string does not see the full
context before a `by` or `without` clause.

This solution stitches together all text nodes that comprise the query
editor to ensure the selector has sufficient context to generate
suggestions.

Also, an additional workaround has been included to ensure range vector
syntax does not disrupt label suggestions in aggregation contexts.

Related: #12890
2018-10-27 16:54:12 +08:00
David Kaltschmidt
6f2315d5c5 Moved prom language features to datasource language provider 2018-10-25 12:24:24 +02:00
David Kaltschmidt
54a3e2d1d1 Added types to query rows 2018-10-24 14:55:56 +02:00
David Kaltschmidt
f19ffee5b4 Fix rebase, fix empty field still issuing query problem 2018-10-23 17:21:33 +02:00
David Kaltschmidt
fbed57ab43 Get query hints per query transaction 2018-10-23 16:10:52 +02:00
olshansky
91e201ffa8 fix: label values regex for single letter labels
Closes: #13641
2018-10-12 23:13:11 +03:00
praveensastry
61bbe280ed Remove duplicate labels in the datasource query 2018-10-09 15:34:58 +11:00
David Kaltschmidt
107bef2d6d Fix rate function hint for series with nulls 2018-10-04 16:32:32 +02:00
David
b0172427b1 Extract query hints 2018-10-04 16:27:18 +02:00
David Kaltschmidt
54c9beb146 Explore: jump to explore from panels with mixed datasources
- extends handlers for panel menu and keypress 'x'
- in a mixed-datasource panel finds first datasource that supports
  explore and collects its targets
- passes those targets to the found datasource to be serialized for
  explore state
- removed `supportMetrics` and `supportsExplore`
- use datasource metadata instead (set in plugin.json)
- Use angular timeout to wrap url change for explore jump
- Extract getExploreUrl into core/utils/explore
2018-10-01 12:03:57 +02:00
David Kaltschmidt
377bc44062 Explore: dont rate-hint on rate queries 2018-09-20 16:59:06 +02:00
David Kaltschmidt
6aac8610eb Explore: Fix click to filter for recording rule expressions
- recording rule names contain ':'
- include this in the pattern for metric names
2018-09-19 11:45:55 +02:00
Mitsuhiro Tanda
dc08093f6c minor fix 2018-09-13 20:15:33 +09:00
Mitsuhiro Tanda
3031c2e6fc fix test 2018-09-13 20:07:43 +09:00
Mitsuhiro Tanda
2926725bab add annotation option to treat series value as timestamp 2018-09-13 20:05:30 +09:00
David
e4496080ff
Merge pull request #12251 from mtanda/prometheus_use_matchers_for_completion
(prometheus) get label name/value from series API
2018-09-13 11:48:13 +02:00
David
a5bcd4b8e4 Adhoc-filtering for prometheus dashboards (#13212)
* Basic adhoc-filtering support for prometheus
2018-09-12 18:10:57 +02:00
David
d8a702cba3 Fix prometheus label filtering for comparison queries (#13213)
- Now supports click filtering for queries like `metric > 0.1`
2018-09-11 16:57:43 +02:00
Patrick O'Carroll
2b74b1c4d6 added radix rule and changed files to follow rule (#13153) 2018-09-05 16:51:31 +02:00
Torkel Ödegaard
c9ae585d2a Merge branch '12918-no-conditional-assignment' 2018-09-05 12:09:32 +02:00
Torkel Ödegaard
432e203df1 Merge branch '12918-only-arrow-functions3' 2018-09-05 11:26:30 +02:00
Patrick O'Carroll
777010b20b added no-conditional-assignment rule and changed files to follow new rule 2018-09-05 10:53:58 +02:00
Patrick O'Carroll
0f326f18dc changed functions to arrowfunctions for only-arrow-functions rule (#13127) 2018-09-04 15:55:41 +02:00
Patrick O'Carroll
19b7ad61dd Changed functions to arrow functions for only-arrow-functions rule. 2018-09-04 14:27:03 +02:00
Patrick O'Carroll
b8d82df97e added no-angle-bracket-type-assertion rule and updatet files to follow rule (#13115) 2018-09-03 11:30:44 +02:00
Patrick O'Carroll
7837ee4466 Updated rules for variable name (#13106)
* updated rules for variable name and fixed files that didn't follow new rules

* fixed test so it uses new rule

* made exceptions to rule in interval_variable
2018-09-03 11:00:46 +02:00
Patrick O'Carroll
552a61b6ae changed var to let in 50 files (#13075) 2018-08-30 09:03:11 +02:00
Torkel Ödegaard
272c09513f tslint: added a new tslint rule 2018-08-30 07:34:17 +02:00
Patrick O'Carroll
a702603e7b changed var to const 2 (#13068)
* changed var to const

* fixed typo created in last commit

* added or empty object to options in prometheus/datasource
2018-08-29 14:27:29 +02:00
Mitsuhiro Tanda
bf8840255c Review feedback. 2018-08-28 01:12:50 +09:00
Mitsuhiro Tanda
e62c083cf0 use series matchers to get label name/value 2018-08-28 01:12:50 +09:00
Torkel Ödegaard
314b645857
tslint: changing vars -> const (#13034) 2018-08-26 18:43:07 +02:00
Torkel Ödegaard
9b978b7203
tslint: autofix of let -> const (#13033) 2018-08-26 17:14:40 +02:00
Marcus Efraimsson
6ace01fbed
Merge pull request #12893 from grafana/davkal/12889-explore-fix-rate-filter
Explore: Fix label filtering for rate queries
2018-08-21 10:37:38 +02:00
Marcus Efraimsson
dd796bfbe3
Merge remote-tracking branch 'origin/master' into davkal/12889-explore-fix-rate-filter 2018-08-21 09:51:17 +02:00
Marcus Efraimsson
75db4d8eee
Merge remote-tracking branch 'origin/master' into davkal/explore-rate-hinting 2018-08-21 09:48:07 +02:00
Tobias Skarhed
a65589a5fb Rename test files 2018-08-14 10:52:41 +02:00
David Kaltschmidt
978e89657e Explore: Fix label filtering for rate queries
- exclude `]` from match expression for selector injection to ignore
  range vectors like `[10m]`
2018-08-13 12:53:12 +02:00
Julien Pivotto
48364f0111 Add support for $__range_s (#12883)
Fixes #12882

Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2018-08-13 07:53:41 +02:00
David Kaltschmidt
0f5945c557 Explore: still show rate hint if query is complex
- action hint currently only works for very simple queries
- show a hint w/o action otherwise
2018-08-10 15:29:21 +02:00