Commit Graph

242 Commits

Author SHA1 Message Date
David Kaltschmidt
1f74b298c4 Remove string casting for template variables in prometheus 2018-07-16 13:02:36 +02:00
David Kaltschmidt
1efe34e6cf Make prometheus value formatting more robust
- prometheus datasources passes its own interpolator function to the
  template server
- that function relies on incoming values being strings
- some template variables may be non-strings, e.g., `__interval_ms`,
  which throws an error

This PR makes this more robust.
2018-07-16 12:40:55 +02:00
David Kaltschmidt
390090da05 Set datasource in deep links to Explore 2018-07-13 09:45:56 +02:00
David Kaltschmidt
d06b26de26 Explore Datasource selector
Adds a datasource selector to the Explore UI. Only datasource plugins
that have `explore: true` in their `plugin.json` can be selected.

- adds datasource selector (based on react-select) to explore UI
- adds getExploreSources to datasource service
- new `explore` flag in datasource plugins model
- Prometheus plugin enabled explore
2018-07-13 09:09:36 +02:00
Mitsuhiro Tanda
18a8290c65 (prometheus) prevent error to use $__interval_ms in query (#12533)
* prevent error to use $__interval_ms in query

* add test

* prevent error to use $__interval_ms in query
2018-07-11 11:13:47 -07:00
Alexander Zobnin
36f08994cc prometheus heatmap: fix unhandled error when some points are missing 2018-07-05 16:33:52 +03:00
David
0d1f7c8782 Fix bar width issue in aligned prometheus queries (#12483)
* Fix bar width issue in aligned prometheus queries

This was broken because null values were filled in with unaligned times.

* use aligned times for result transformation
* add tests

An earlier version of this fix aligned the times again in the transformer, but
I think it's safe to only deal with aligned times in the response.

* Fixed prometheus heatmap tranformer test

The interval needs to be 1 to prevent step alignment.
2018-07-02 11:04:36 -07:00
David
7a3c1e162c Merge pull request #11942 from grafana/davkal/design-integration
Explore: Time selector, split view, design integration
2018-05-30 12:27:24 +02:00
David Kaltschmidt
750ea9bbdd Changed Prometheus interval-alignment to cover whole panel range
* the existing query date alignment shifts the range forward to match
a multiple epoch of the interval, but keeps the range length the same,
the result is that the start date is shifted forward as well, leaving a
gap in the graph (or a zero-line when null-as-zero was set, issue #12024)
* this pr extends the aligned range to cover the original start date as
well
2018-05-25 16:46:38 +02:00
David Kaltschmidt
eadaff6191 Explore: Design integration
* style header like other grafana components
* use panel container for graph and same styles for query field
* fix typeahead CSS selector (was created outside of .explore)
* use navbar buttons for +/- of rows
* moved elapsed time under run query button
* fix JS error on multiple timeseries being returned
* fix color for graph lines
* show prometheus query errors
2018-05-24 10:55:00 +02:00
Mitsuhiro Tanda
067ceb178e Revert "move queryTimeout option to common setting"
This reverts commit 3ba59a1d66a2a3c07ccd04a48c403f0772fbef31.
2018-05-21 21:45:51 +09:00
Mitsuhiro Tanda
12ace5ab65 move queryTimeout option to common setting 2018-05-21 21:45:51 +09:00
Mitsuhiro Tanda
8ddcd67080 add query timeout option for Prometheus 2018-05-21 21:45:51 +09:00
Torkel Ödegaard
6c0752473a Sqlstore refactor (#11908)
* refactor: tracing service refactoring

* refactor: sqlstore to instance service

* refactor: sqlstore & registory priority

* refactor: sqlstore refactor wip

* sqlstore: progress on getting tests to work again

* sqlstore: progress on refactoring and getting tests working

* sqlstore: connection string fix

* fix: not sure why this test is not working and required changing expires

* fix: updated grafana-cli
2018-05-18 11:10:10 +02:00
David Kaltschmidt
e731c248d7 Prometheus step alignment: shift interval only on jitter
* only increase interval by step if jitter happened
* shift both start and end
* simplified tests by using low epoch numbers
2018-05-14 12:08:30 +02:00
David
06aca5e8b5 Merge branch 'master' into prometheus_align_queries 2018-05-08 12:22:55 +02:00
David
1236b7b918 Merge pull request #11770 from grafana/davkal/explore-panel-link
Explore: Add entry to panel menu to jump to Explore
2018-05-07 16:31:19 +02:00
Mitsuhiro Tanda
253b2cc081 add test for prometheus table column title 2018-05-01 05:00:56 +09:00
David Kaltschmidt
8a53ec610b Fix url encoding, expand template vars, fix TS hacks
* moved datasource related functions to panel sub-class
* expand panel template vars for url
* added keybindings for x -> Explore
* url encoding for explore state
2018-04-30 17:44:30 +02:00
David Kaltschmidt
05b0bfafe4 Explore: Add entry to panel menu to jump to Explore
* panel container menu gets new Explore entry (between Edit and Share)
* entry only shows if datasource has `supportsExplore` set to true (set
 for Prometheus only for now)
* click on Explore entry changes url to `/explore/state` via location provider
* `state` is a JSON representation of the panel queries
* datasources implement `getExploreState()` how to turn a panel config into explore initial
 state
* Explore can parse the state and initialize its query expressions
* ReactContainer now forwards route parameters as props to component
* `pluginlist` and `singlestat` panel subclasses needed to be adapted because
 `panel_ctrl` now has the location provider as a property already
2018-04-30 17:44:28 +02:00
Mitsuhiro Tanda
c2b720835b fix to match table column name and order 2018-04-27 19:34:10 +09:00
Marcus Efraimsson
f112e38266 prometheus: convert metric find query tests to jest 2018-04-25 15:37:58 +02:00
Marcus Efraimsson
6687409efb prometheus: fix variable query to fallback correctly to series query
Using a query of for example up or up{job=job1}
2018-04-25 15:37:58 +02:00
David Kaltschmidt
707700ac7d force GET for metadataRequests, w/ test 2018-04-24 16:26:46 +02:00
David Kaltschmidt
006286ac05 Renamed helperRequest and removed positional args
From review feedback:

* s/helper/metadata
* combined positional args to _request into options dict
* metadataRequest reuses _request()
* moved consumption of this.httpMethod into _request, can be overwritten
 in options due to spread-after
2018-04-24 12:27:37 +02:00
David Kaltschmidt
53817b7429 Add silent option to backend requests
* When set to `true`, the `silent` option for backend_srv requests
 suppresses all event emitters that are triggered when the response is
received.
* Added `helperRequest()` to the Prometheus datasource to support
 requests that are not triggered by the user, e.g., for tab completion.
`helperRequest()` sets the `silent` option.
* Migrated all non-timeseries queries of the Prometheus datasource to
 use `helperRequest()`.

Fixes #11673
2018-04-20 15:28:04 +02:00
Sven Klemm
00524e6827 prevent angular from evaluating {{hostname}} in tooltip (#11514) 2018-04-09 12:51:17 +02:00
Julien Pivotto
1f1719c498 Fix #10555 #6888 Better escape for Prometheus variables
Prior this commit, C:\bar was escaped C:\\\bar. Should be C:\\\\bar.

Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2018-03-29 09:49:15 +02:00
Daniel Lee
1cef373d16 Merge remote-tracking branch 'upstream/master' into update-xorm 2018-03-20 19:21:58 +01:00
Mitsuhiro Tanda
c6fa0b90a7 prometheus editor: variable autocomplete support (PR #9988)
* prometheus ace editor, template variable support

* minor fix

* support [[var]] notation

* don't remove last ] if token type is string

* Revert "don't remove last ] if token type is string"

This reverts commit bce5b2d56e.

* Revert "support [[var]] notation"

This reverts commit 10012f8ffe.

* fix token type and regex
2018-03-15 20:17:51 +03:00
Alexander Zobnin
989ba9763f prometheus: fix bug introduced by #9859 (httpMethod is undefined) 2018-03-12 19:41:07 +03:00
Alexander Zobnin
46d2067af2 prometheus: add tests for heatmap mode 2018-03-12 17:37:21 +03:00
Alexander Zobnin
94cf560304 Merge remote-tracking branch 'upstream/master' into prometheus-heatmap 2018-03-12 17:16:02 +03:00
Alexander Zobnin
479209f483 prometheus: datasource refactor 2018-03-12 17:13:05 +03:00
Mitsuhiro Tanda
4e1501b172 set default value of httpMethod 2018-03-12 13:53:05 +09:00
Mitsuhiro Tanda
a83ede0193 support POST for query and query_range 2018-03-12 13:25:05 +09:00
Alexander Zobnin
a791a92d79 heatmap: fix Y axis and tooltip decimals and units issues 2018-03-07 13:28:44 +03:00
Julien Pivotto
69c93e6401 Fix Prometheus 2.0 stats (#11048)
Fixes #11016

Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2018-03-03 13:40:28 +01:00
Alexander Zobnin
e361a31a2a prometheus: tests for heatmap format 2018-02-21 20:22:46 +03:00
Alexander Zobnin
efa869bb89 prometheus: initial heatmap support 2018-02-21 15:26:45 +03:00
Torkel Ödegaard
2f6e77af1e Merge branch 'master' into docs_v5.0 2018-02-21 10:47:14 +01:00
Daniel Lee
6fa46d9539 plugins: update meta data for all core plugins
So that the readme's can be published on Grafana.com
2018-02-15 16:50:38 +01:00
Torkel Ödegaard
c1cdcd3bda docs: updated whatsnew 2018-01-31 09:41:49 +01:00
Carl Bergquist
89ae4d6685 Merge pull request #9664 from mtanda/prometheus_on_by
(prometheus) show label name in paren after by/without/on/ignoring/group_left/group_right
2018-01-22 10:42:20 +01:00
Craig Miskell
2e86985d44 Remove silly noise 2018-01-05 16:22:49 +13:00
Craig Miskell
f9fb315dbd Update tests to match new reality, and rejig the implementation a bit to truly work as desired 2018-01-05 16:20:54 +13:00
Craig Miskell
61e6f63b32 Align queries to prometheus with the step to ensure 'rate' type expressions get consistent results 2018-01-05 09:08:40 +13:00
Torkel Ödegaard
27835f373e cleanup: removed unused typescript typings import 2018-01-04 10:12:02 +01:00
bergquist
1f9e2ef6ec prom: fixes broken test 2017-12-28 16:43:48 +01:00
bergquist
71272d9076 prom: make $__$interval the first suggested range vector 2017-12-28 16:01:02 +01:00