Commit Graph
87 Commits
Author SHA1 Message Date
Kyle Brandt 96e6524a7d AzureMonitor: Support decimal (as float64) type in analytics/logs (#28480)
loss of precision but will make the response work instead of erroring
follows work already done in the ADX plugin
fixes #28278
2020-10-26 08:27:16 -04:00
Kyle Brandt 44a795cb17 AlertingNG: remove warn/crit from eval prototype (#28334)
and misc cleanup
2020-10-16 12:33:57 -04:00
Kyle Brandt 768392f45f backend: use latest sdk (#28147)
fixes #27713 via https://github.com/grafana/grafana-plugin-sdk-go/pull/227
2020-10-09 12:05:11 -04:00
Kyle Brandt e16637793d Alerting: Add labels to name when converting data frame to series (#28085)
* also move conversion func to alerting package since it is not used in other places

Fixes #28068
2020-10-09 08:21:16 -04:00
Kyle Brandt c9a5d1ad4b AzureMonitor: pass through null values instead of 0 (#28126)
fixes #28001
2020-10-09 08:15:19 -04:00
Kyle Brandt 50c680f3d7 BackendPlugins: Point to request Headers in the wrapper (#27599)
In particular, so plugins can see the FromAlert header
2020-09-16 10:12:39 -04:00
Kyle Brandt 9bab551d8b AzureMonitor: change filterDimensions property to match what is stored (#27459)
Changes the dimensionsFilters property to dimensionsFilter in the Azure Monitor Datasource's AzureMonitor service to make what is sent to match the saved model.

Before this, the property that the backend was expecting was not available in the case of alerting, where the stored model is fetched.

This also fixes a panic when there is a dimension alias but no dimension
2020-09-08 15:12:08 -04:00
Kyle Brandt 06323b8e52 AzureMonitor: select plugin route from cloudname (#27273)
* AzureMonitor: select plugin route from cloudname
fixes #27243
2020-08-31 11:10:31 -04:00
Kyle Brandt 1778e9f034 Alerting: remove LongToWide call in alerting (#27140)
causing issues and currently as we use it, the query
should be requesting it as part of the query model via fromat as time series
fixes #27132
2020-08-24 10:05:52 -04:00
Kyle Brandt c724449d3d AzureMonitor: fix panic introduced in 7.1.4 (#27113)
happens when unit was "Unspecified" and alias is being used
2020-08-21 11:37:30 -04:00
Kyle Brandt 660510084c AzureAnalytics: Use fillmode Null with format as time series (#27054)
previously was using fillmode previous, which is not what we want here.
Also we do not have fill missing with this data source anyways
Fixes #27013
2020-08-19 10:42:54 -04:00
Kyle Brandt 96babf1268 Alerting: copy queryType prop to tsdb.Query (#27053)
fixes #27048
2020-08-19 10:03:39 -04:00
Kyle Brandt f9f60c9193 AzureMonitor: map more units (#26990)
add BitsPerSecond and Seconds
2020-08-13 12:57:16 -04:00
Kyle Brandt f432e153ca Dataframe/Alerting: to tsdb.TimeSeriesSlice - accept "empty" time series (#26903)
this is in order to trigger no data when used with alerting.
fixes #26897.

This is perhaps better solved in the SDK but that needs more thought and is tracked in grafana/grafana-plugin-sdk-go#214
2020-08-12 12:30:45 -04:00
Kyle Brandt 62b103b843 Azuremonitor: do not set unit if literal "Unspecified" (#26839)
part of #26828
2020-08-06 16:03:25 -04:00
Kyle BrandtandDiana Payton 577c9cd546 Docs: Azure logs - cross reference field configuration display name (#26804)
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-08-06 13:16:00 -04:00
Kyle Brandt fb5ff6a70f Azure: Insights metrics - do not sort if no data (#26486)
fixes #26473
2020-07-21 10:24:55 -04:00
Kyle Brandt 5f0be93e47 docs: fix broken markdown link in 7.1 what is new (#26379) 2020-07-16 12:24:18 -04:00
Kyle BrandtandDiana Payton cdec395fef Docs: Time series dimensions and labels (#26299)
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-07-15 16:29:00 -04:00
Kyle Brandt c980f37509 Azure: Insights Analytics, fix possible panics and return error body (#26361)
missing return statements can result in panic
2020-07-15 15:55:10 -04:00
Kyle Brandt 590702c497 Azure: Handle real type nan/inf values in Log/Insights Analytics (#26342)
Before this, if the user were to divide by 0.0, "Infinity" would be returned in the result and the user would get an error: "unexpected type, expected json.Number but got string". Now these values are properly set as Inf values (and also made sure to handle NaN as well).
2020-07-15 09:39:41 -04:00
d28b62740b Docs: Flux support in influxdb data source in 7.1 (#25551)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-07-13 14:15:09 -04:00
Kyle Brandt d91e73713d Docs: Azure update kusto doc link (#26246)
as per, and fixes #25339
2020-07-13 13:35:46 -04:00
Kyle Brandt c1ede4fc71 backend: use latest go plugin sdk (0.74.0) to sort wide frames (#26207)
This makes it so results are more stable between refreshes of data and fixes sorting issues with Azure Application Insights service as well as the two Azure Analytics services.

fixes #22937
2020-07-10 12:22:50 -04:00
Kyle BrandtandDiana Payton c6a3afb4b8 Docs: Azure Monitor data source changes for 7.1 (#26096)
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-07-08 15:47:00 -04:00
Kyle Brandt 9164a35240 Azure: Restore Insights Metrics alias feature (#26098)
also fix case sensitivity for azure monitor metrics
2020-07-07 08:42:03 -04:00
Kyle BrandtandRyan McKinley 4be56cde0d Azure: Multiple dimension support for Azure Monitor Service (#25947)
Azure Monitor (metrics) support multiple dimensions instead of just one.

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2020-06-30 16:26:46 -04:00
Kyle Brandt 72fa5ccb7b Azure/Log Analytics: return more error information (#25937)
When there is an error message in the HTTP response, this copies that error so it is relayed to the user by being shown in the frontend.

This also makes it so when there is an error the interpolated query string (ExecutedQueryString) is returned so users can see it in the query inspector.
2020-06-30 16:05:53 -04:00
Kyle Brandt aee5626dca chore: fix lint breaking build (#25916) 2020-06-29 19:45:50 -04:00
Kyle Brandt d243cd9421 Backend: use latest Go plugin sdk (#25909)
* backend: use latest go plugin sdk which fixes #25287
* update for Frame.Meta.Custom SDK changes
2020-06-29 16:20:24 -04:00
Kyle BrandtandRyan McKinley 9a8289b6d9 Azure: Application Insights metrics to Frame and support multiple query dimensions (#25849)
- The Application Insights Service now returns a dataframe. This is a "wide" formatted dataframe with a single time index.
- Multiple "group by" dimensions may now be selected instead of just one with Application Insights.
- Some types are copied / slightly altered from the Azure Go SDK but that SDK is not imported at this time.

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2020-06-29 15:06:58 -04:00
Kyle BrandtandRyan McKinley bc9c53389c Azure: Split insights into two services (#25410)
Azure Application Insights Analytics is no longer accessed by the edit button from within the Application Insights service. Instead, there is now an Insights Analytics option in the Service drop down.

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2020-06-25 12:48:18 -04:00
Kyle Brandt 36fd746c5d Influx/flux: include interpolated query with error (#25665)
with execution errors, return a Frame that has Meta.ExecutedQueryString.
2020-06-18 07:45:55 -04:00
Kyle BrandtandRyan McKinley ef61a64c46 Azure Monitor: Log Analytics response to data frames (#25297)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2020-06-05 12:32:10 -04:00
Kyle Brandt 17d3bb4287 backend: use latest Go sdk (#25304)
* uses plugin-sdk-go v0.66.0, which adds adds the ExecutedQueryString property to FrameMeta and changes s/Title/DisplayName in FieldConfig
* go mod tidy
2020-06-03 04:03:37 -04:00
Kyle BrandtandRyan McKinley 376a9d35e4 Azure Monitor: Change response to be dataframes (#25123)
note: This is just Azure Monitor within the Azure Monitor datasource (not insights, insights analytics, or log analytics yet).

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2020-06-01 12:37:39 -04:00
Kyle Brandt 81e3f93677 Backend Readme: Add section on avoiding simplejson (#25116) 2020-05-26 14:32:00 -04:00
Kyle Brandt fcb9dcb0b8 AzureMonitor: Types for front-end queries (#24937) 2020-05-26 10:52:33 -04:00
Kyle Brandt 0dc8f4ea89 backend_plugins: duration support in Frame (#23962)
sdk v0.57.0
go mod tidy
2020-04-27 14:48:20 -04:00
68e5b72cde Docs: Plugin docs for Dataframes (#23483)
Co-authored-by: Carl Bergquist <carl@grafana.com>
Co-authored-by: bergquist <carl.bergquist@gmail.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
Co-authored-by: Marcus Olsson <accounts+github@marcus.se.net>
2020-04-25 19:39:26 +02:00
Kyle Brandt 80e1191ca0 Backend Plugins: (breaking change) Add PluginContext (#23788)
* breaking change for newer backend plugins
* use exported protobuf converters and sdk types to reduce duplicate code
* uses grafana-plugin-sdk-go@v0.54.0
2020-04-23 14:08:21 -04:00
Kyle Brandt 6d500e31b9 Backend: Remove Go vendor folder (#23796) 2020-04-23 13:23:51 -04:00
Kyle Brandt 5153673884 BackendPlugins: update to sdk v0.42.0
misc cleanup
2020-04-09 15:47:30 -04:00
Kyle Brandt 80729e9fb1 Chore: remove unused go package dynmap (#23409) 2020-04-07 14:58:10 -04:00
Kyle Brandt f6cbb26167 BackendPlugin: Change QueryData response format (#23234)
* BackendPlugin: (wip) change response format
goes with https://github.com/grafana/grafana-plugin-sdk-go/pull/109

* fix error mapping in wrapper

* latest of my sdk branch

* latest of my sdk branch

* TransformWrapper fixes

* latest of sdk branch (removes extra meta)

* add metadata in wrappers

* also set error string

* sdk: v0.35.0
2020-04-07 10:13:14 -04:00
Kyle Brandt 0e09a3fe15 Alerting: support alerting on data.Frame (that can be time series) (#22812)
data.Frame (that can be series) are converted to as tsdb.TimeSeriesSlice - so new backend plugins can be shimmed into existing alerting

use sdk v0.31.0
2020-03-18 10:30:07 -04:00
Kyle Brandt 69a5530aec Backend Plugins: use sdk v0.26.0 (#22725)
allows Field names to be duplicated, goes with #22705
2020-03-11 10:06:16 -04:00
Kyle Brandt 73c4bef70f Dependency: sdk's dataframe package renamed to data (#22700)
* use sdk 0.24.0
2020-03-10 15:42:15 -04:00
Kyle Brandt 5a31e48548 Vendor: grafana-plugin-sdk-go v0.11.0 (#21552)
upgrades https://github.com/grafana/grafana-plugin-sdk-go from v0.6.0 to v0.11.0
2020-01-16 12:53:51 -05:00
Kyle Brandt 431bf2b179 @grafana/data: export ArrowDataFrame (#20832) 2019-12-03 21:17:36 -08:00
Kyle Brandt 4afd40018b transform: update to use sdk with frame.labels moved to frame.[]field.labels (#20670)
sdk v0.4.0
2019-11-26 13:28:16 -05:00
Kyle Brandt 1776c11fc6 dev: fix pre-commit typo in toolkit (#20673)
s/not/no/
2019-11-26 12:03:44 -05:00
Kyle Brandt c9309edbb0 transform: changes to support sdk v0.2.0 (#20426)
and update vendor
2019-11-18 11:40:40 -05:00
Kyle Brandt ef4d98b441 Chore/Go-dep: change sdk to use new tag (#20422)
dependency code is the same, just new tag for same commit
2019-11-15 12:10:20 -05:00
Kyle Brandt 5b84a3cd53 chore: fix "testing" version is latest.json (#20398)
earlier commit has typo
2019-11-14 16:21:09 -05:00
Kyle Brandt da1df02813 transform_plugin: stop plugin when grafana stops (#20397)
fixes https://github.com/grafana/gel-app/issues/49
until #20362
2019-11-14 15:49:31 -05:00
Kyle Brandt 860411cb4d Chore: Update latest.json (#20393) 2019-11-14 12:03:45 -05:00
Kyle Brandt b8029dcd4e transform_plugin: pass encoded dataframes through (#20333) 2019-11-12 16:21:10 -05:00
Kyle Brandt 17f36d0492 sdk: update to latest (#20182)
which removes an unused field from the Transform api
2019-11-05 14:12:54 -05:00
Kyle Brandt 750e8d27bf api/dashboard: fix panic on UI save (#20137) 2019-11-01 07:57:03 +01:00
Kyle Brandt 009d58c4a2 Plugins: Transform plugin support (#20036)
currently temporary separate http api
2019-10-29 12:22:31 -04:00
Kyle Brandt 55d7fbf04c devenv: have bra watch attempt graceful shutdown (#19857)
This is useful when working with backend plugins and grafana at the same time. Makes it so Grafana has a chance to shutdown the external process. An os.Interrupt signal is first sent, then after a five second wait a a force kill will be sent if the process is still running.
2019-10-16 12:24:28 -04:00
Kyle Brandt 1ffcb002db DataFrame: guess number field when on NaN (#19833) 2019-10-16 15:13:27 +02:00
Kyle Brandt 84609abdfa build: update scripts go.(mod|sum) (#19834)
* build: update scripts go.(mod|sum)

* build: exclude gosec rule G108

Gosec rule G108: Profiling endpoint automatically exposed on /debug/pprof
is not applicable since we only enable /debug/pprof endpoint if -profile
flag is provided when starting grafana.
2019-10-16 10:52:51 +02:00
Kyle Brandt 2c3c576ca6 fix: export Bus on search service (#19773)
fix pkg/services/search/service.go:52:3: s.bus undefined (type *SearchService has no field or method bus, but does have Bus)

fixes issue introduced by #19765
2019-10-11 11:46:44 -04:00
Kyle Brandt 0f32e15a88 build: use vendored packages for circle backend tests (#19708) 2019-10-08 12:03:23 -04:00
Kyle Brandt 29a04ad69c build: use vendor folder for building (#19677)
* build: use vendor folder for building
not sure if this is a good idea or not, but this stops module fetching

* untouch yarn.lock

Signed-off-by: Kyle Brandt <kyle@grafana.com>

* modules on in runPrint
2019-10-08 10:17:31 +02:00
Kyle Brandt e5bf3027fc Refactor: Move sql_engine to sub package of tsdb (#18991)
this way importing the tsdb package does not come with xorm dependencies
2019-09-10 15:50:04 -04:00
Kyle Brandt 364d2358d8 alerting: add lock on job to prevent a race condition (#18218)
without this lock there is a race condition between the scheduler and job processing.
2019-09-03 09:14:28 -04:00
Kyle Brandt f689b60426 remotecache: support SSL with redis (#18511)
* update go-redis lib from v2 -> v5
* add ssl option to the redis connection string
fixes #18498
2019-08-13 06:51:13 -04:00
Kyle Brandt e1b2d61ceb backend: null.Float NaN -> null for json marshal (#18284) 2019-08-06 12:28:48 -04:00
Kyle Brandt ea0cee4c35 alerting: more specific error when missing threshold (#18221)
fixes #18184
2019-07-22 13:23:33 -04:00
Kyle Brandt 172464e91e alerting: return err when SetAlertState fails to save to sql (#18216)
fix duplicate alert states when the alert fails to save to the database.
fixes #18176
2019-07-22 07:23:27 -04: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
Kyle Brandt 76d08989f0 provisioning: escape literal '$' with '$$' to avoid interpolation (#18045)
fixes #17986
2019-07-11 07:32:07 -04:00
Kyle Brandt c9f4cf8b53 devenv: switch OpenTSDB docker block (#17849)
old docker image, https://hub.docker.com/r/opower/opentsdb/,  seems to be gone
2019-07-01 09:11:25 -04:00
Kyle Brandt 5aa13eeb76 release: update latest.json to v6.2.5 (#17767) 2019-06-25 21:16:01 +02:00
Kyle Brandt b9fda28e27 release: 6.2.5 changelog (#17766) 2019-06-25 15:10:42 -04:00
Kyle Brandt 0adbb001db RemoteCache: redis connection string parsing test (#17702) 2019-06-24 11:51:38 +02:00
Kyle Brandt 49f0f0e89e config: fix connstr for remote_cache (#17675)
fixes #17643 and adds test to check for commented out lines (but will only catch `;`, not `#`).
2019-06-20 10:15:21 -04:00
Kyle Brandt bd08d8ce8e middleware: fix Strict-Transport-Security header (#17644)
fixes #17641
2019-06-18 14:24:23 -04:00
Kyle Brandt 073851f9c7 Build: Upgrades to golang 1.12.6 (#17542) 2019-06-13 11:08:48 +02:00
Kyle Brandt 599514ad68 middleware: add security related HTTP(S) response headers (#17522)
* x_xss_protection
  * strict_transport_security (HSTS)
  * x_content_type_options

these are currently defaulted to false (off) until the next minor release.

fixes #17509
2019-06-12 13:15:50 +02:00
Kyle Brandt c09fe3c3b4 remote_cache: Fix redis (#17483)
* wip: fix remote cache for redis
connstr parsing and non-negative expires for #17377
TODO: finish parse, check zero case, find out why negative duration in the first place

* finish parse.
Still TODO, find out negative value, and decide if would be better to make database specific entries in the .ini file

* update ini files

* remove accidental uncomment in defaults.ini

* auth_proxy: expiration non-negative so expiration is not in the past

* fix test, revert neg in redis

* review: use errutil
2019-06-10 15:27:08 +02:00
Kyle Brandt 826d33ea37 auth_proxy: non-negative cache TTL (#17495)
fixes setex error with redis on #17377
2019-06-10 15:25:23 +02:00
Kyle Brandt a95c7bfa6f sqlstore: clean quota and user_auth_tokens when removing users (#17487)
fixes #17392
2019-06-10 13:35:47 +02:00