Compare commits

..

1758 Commits

Author SHA1 Message Date
Grot (@grafanabot)
6232fe07c0 "Release: Updated versions in package to 8.2.2" (#40750) 2021-10-21 10:46:45 +01:00
Grot (@grafanabot)
db5359f94e Prometheus: Pass scoped vars when creating PromLink query (#40525) (#40561)
(cherry picked from commit 4a3be0f845)

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2021-10-21 11:03:21 +02:00
Sofia Papagiannaki
b8a1af0db1 Hide Grafana 8 alerts for disabled org (#40687) (#40745)
(cherry picked from commit 2c28aea654)
2021-10-21 10:43:59 +02:00
Grot (@grafanabot)
867a305532 ValueMappings: Fix so that value mappings work in stat/gauge/bargauge/piechart (#40612) (#40623)
(cherry picked from commit 26dda75db5)

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
2021-10-21 09:30:13 +01:00
Grot (@grafanabot)
32069ea229 Dahboard: Only show "Another session is editing this dashboard" once per edit session (#40485) (#40487)
(cherry picked from commit 0c5491d6fd)

Co-authored-by: An <an.le@grafana.com>
2021-10-21 09:29:14 +01:00
Grot (@grafanabot)
a90b3956e0 Scale: Fixes handling of NaN percent when data min = data max (#40622) (#40628)
(cherry picked from commit c174664e63)

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
2021-10-21 09:28:52 +01:00
Armand Grillet
f3b8c1a89d Fix panic when Slack API sends unexpected response (#40721) (#40741)
Co-authored-by: Santiago <santiagohernandez.1997@gmail.com>
2021-10-21 10:49:07 +03:00
Grot (@grafanabot)
be82a39b84 Docs: Add doc for alert groups (#40353) (#40712)
* WIP: add doc for alert groups

* add more messaging around filtering and grouping options

(cherry picked from commit f10511ba1c)

Co-authored-by: Nathan Rodman <nathanrodman@gmail.com>
2021-10-20 11:53:29 -04:00
Grot (@grafanabot)
41941aaeed DashGrid: Fixed auto resize issue with tabel panel (#40688) (#40704)
* Changing how we use the AutoSizer component in the DashGrid.

* updated snapshot.

* fixed failing test.

(cherry picked from commit 0d036a6df5)

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2021-10-20 17:48:56 +02:00
Grot (@grafanabot)
880d629aff AzureMonitor: Make ResourceNames() case insensitive (#40690) (#40705)
(cherry picked from commit ed68056b88)

Co-authored-by: Andres Martinez Gotor <andres.martinez@grafana.com>
2021-10-20 17:04:28 +02:00
Grot (@grafanabot)
4a7abae6ae Geomap: Avoid exceptions when missing data and values (heatmap and zoom settings) (#40664)
(cherry picked from commit 43878ff05f)

Co-authored-by: nikki-kiga <42276368+nikki-kiga@users.noreply.github.com>
2021-10-20 07:36:04 -07:00
Grot (@grafanabot)
e47b07ed19 Docs: Updated docker image names for consistency (#40426) (#40655)
* Updated the docker image names and added a note

* Updated the example version to current

(cherry picked from commit 38709df33b)

Co-authored-by: Petros Kolyvas <code@petros.io>
2021-10-20 09:37:49 -04:00
Domas
b0c59d1c62 fix unified alerting enabled checks (#40693) (#40697)
(cherry picked from commit 51a152456f)

public/app/features/query/state/DashboardQueryRunner/DashboardQueryRunner.ts
2021-10-20 15:22:11 +02:00
Grot (@grafanabot)
b993a3f2fc Storybook: fix theme colors not updating (#40679) (#40691)
(cherry picked from commit 1e471a6f76)

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
2021-10-20 14:11:40 +02:00
Grot (@grafanabot)
66a0a108ac CloudMonitoring: Allow to manually set filters (#40606) (#40689)
(cherry picked from commit b3027e8221)

Co-authored-by: Andres Martinez Gotor <andres.martinez@grafana.com>
2021-10-20 13:35:58 +02:00
Grot (@grafanabot)
3b32815716 InfluxDB: Fix spelling - "chronograf" rather than "chronograph" (#40587) (#40678)
(cherry picked from commit 6c0d3e97fe)

Co-authored-by: Ben Tasker <88340935+btasker@users.noreply.github.com>
2021-10-20 12:41:49 +02:00
Marcus Andersson
ffee4e0ec7 [v8.2.x] Toolkit: Prevent toolkit from crashing when an error occur (#40670) 2021-10-20 10:25:25 +02:00
Grot (@grafanabot)
f5f737f87f Fix 404 link to time series doc (#40565) (#40652)
(cherry picked from commit e3d1b2c8fe)

Co-authored-by: Fredrik Enestad <fredrik@enestad.com>
2021-10-19 14:55:13 -04:00
Grot (@grafanabot)
d70d30c31e Slider: Adjusts input to enforce min/max values on blur (#40524) (#40637)
* [cr] adjusts slider input to enfore min/max values on blur

* [cr] additional test for blur action, min/max readability

(cherry picked from commit 70f68289f5)

Co-authored-by: Coleman Rollins <crollins199@gmail.com>
2021-10-19 17:15:27 +02:00
Grot (@grafanabot)
7def66fdb6 Variables: Improve display when selecting variables with the same value (#40607) (#40630)
* Variables: Allow selection of different variables with the same value

* Variables: Don't modify this key

(cherry picked from commit e48d77b1eb)

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-10-19 15:41:30 +02:00
Grot (@grafanabot)
7ac477ab48 Grafana-UI: Move Select container styles to outer most container (#40611) (#40621)
* Grafana-UI: Move Select container styles to outer most container

* Update packages/grafana-ui/src/components/Select/Container.tsx

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>

* Rename file

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
(cherry picked from commit d5a0f719df)

Co-authored-by: Josh Hunt <joshhunt@users.noreply.github.com>
2021-10-19 14:36:26 +02:00
Grot (@grafanabot)
bb71fe0b9c [v8.2.x] Graph: Fix annotation description not being shown on hover (#40608)
Co-authored-by: Maria Alexandra <239999+axelavargas@users.noreply.github.com>
2021-10-19 12:10:44 +02:00
Grot (@grafanabot)
01ffb3852c Table: Tweak to type icon styles (#40596) (#40598)
(cherry picked from commit d179c2a4e9)

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
2021-10-19 09:26:06 +02:00
Grot (@grafanabot)
41a9638df7 RowsToFields: Fix issue with field names that are numbers (#40580) (#40597)
* RowsToFields: Fix issue with field names that are numbers

* Only add the index accessor if field name does not conflict with it

* fix lint

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
(cherry picked from commit 25813db334)

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
2021-10-19 08:52:53 +02:00
Grot (@grafanabot)
363a94ff21 Annotations: Improve tag search performance (#40567) (#40582)
(cherry picked from commit ec0fcbbf4b)

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-10-18 16:30:02 +02:00
Grot (@grafanabot)
55b6b8a318 frontend logging fixes (#39946) (#40571)
(cherry picked from commit a531c6e26f)

Co-authored-by: Domas <domas.lapinskas@grafana.com>
2021-10-18 14:07:28 +02:00
Grot (@grafanabot)
a3842b4111 Logs: Fix creating of detected fields for each letter in log line (#40507) (#40560)
* Logs: Fix using of JSON parser for strings

* Update packages/grafana-data/src/utils/logs.ts

* Update packages/grafana-data/src/utils/logs.ts

* Update parser typing and documentation

(cherry picked from commit 4e1cf7dea7)

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2021-10-18 11:44:09 +02:00
Grot (@grafanabot)
014e5ba0c2 Table panel: Fix filter not working for special characters and allow filter's case sensitivity control (#40458) (#40556)
* Fix filter not working for special characters and allow case sansitive filter control

* Memoize regex

(cherry picked from commit 6201b5b1d9)

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2021-10-18 10:58:39 +02:00
Grot (@grafanabot)
3b5deb42c4 Noting non-support of template queries in official documentation (#40169) (#40539)
(cherry picked from commit 99eddac406)

Co-authored-by: Anne E. Ulrich <aeulrich1997@gmail.com>
2021-10-15 18:16:39 -04:00
Grot (@grafanabot)
899999750e Add copyright notice (#39206) (#40538)
* Add copyright notice

* Update docs/sources/copyright/_index.md

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

* Update docs/sources/copyright/_index.md

Co-authored-by: Robby Milo <robby.milo@grafana.com>

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
Co-authored-by: Robby Milo <robby.milo@grafana.com>
Co-authored-by: achatterjee-grafana <aparajita.chatterjee@grafana.com>
(cherry picked from commit f238342c17)

Co-authored-by: Nate Walters <89402456+nate-walters-grafana@users.noreply.github.com>
2021-10-15 17:25:15 -04:00
Grot (@grafanabot)
81dfa4a09d Fixed broken relrefs (#40533) (#40535)
(cherry picked from commit c44f51d5c3)

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-10-15 16:30:21 -04:00
achatterjee-grafana
2e37c96aac Update _index.md (#40257) (#40529)
Clicking the "Getting started with Grafana" link does nothing in this page.  Added the additional "getting-started" to the ref.

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: jpapp25 <jeremypapp@gmail.com>
2021-10-15 13:54:44 -04:00
Grot (@grafanabot)
33b7458198 Updated MySQL provisioning doc (#39750) (#40502)
Updated password to secureJsonData for MySQL provisioning

(cherry picked from commit 374041148d)

Co-authored-by: PunkoIvan <punkoivan@gmail.com>
2021-10-15 11:49:29 +02:00
Grot (@grafanabot)
48edcd9577 Some more grammar fixes (#40183) (#40501)
(cherry picked from commit 8b41d85b68)

Co-authored-by: Anne E. Ulrich <aeulrich1997@gmail.com>
2021-10-15 11:49:08 +02:00
Grot (@grafanabot)
07e7dddeaf Fix typo in whats-new-in-v8-0.md (#38661) (#40500)
(cherry picked from commit 060a16041d)

Co-authored-by: Christoph Deil <Deil.Christoph@gmail.com>
2021-10-15 11:48:55 +02:00
Grot (@grafanabot)
6b7b3a3fa3 Text Panel: fixes unnecessary scroll in markdown html tables (#40315) (#40478)
* Text Panel: fixes unnecessary scroll in tables

* uses more robust solution that covers every edge case

* chore: uses variables instead and sets first child margins to zero

* override margin for only h1 and figure elements

* remove override styles for h1,table markdown contents

(cherry picked from commit 51a48e1869)

Co-authored-by: Uchechukwu Obasi <obasiuche62@gmail.com>
2021-10-14 16:37:25 +01:00
Grot (@grafanabot)
39fc1bf710 Fix: State timeline panel not to crash when only one threshold (#40371) (#40457)
(cherry picked from commit 1e9aeb6f19)

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2021-10-14 14:23:41 +02:00
Grot (@grafanabot)
d67b6e23ea Alerting: delete orphaned records from kvstore (#40337) (#40450)
(cherry picked from commit 153c356993)

Co-authored-by: Jean-Philippe Quéméner <JohnnyQQQQ@users.noreply.github.com>
2021-10-14 12:32:57 +02:00
Grot (@grafanabot)
3cc055f59c Prometheus: Remove autocomplete limit for metrics (#39363) (#40448)
* Remove limit on metrics

* Remove unused variable

(cherry picked from commit 46f922fe1a)

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2021-10-14 11:49:59 +02:00
Grot (@grafanabot)
83e58575ef CloudWatch: Add AWS Elastic GPUs metrics and dimensions (#40253) (#40436)
* CloudWatch: Added AWS Elastic GPUs metrics and dimensions

* Delete extra space

(cherry picked from commit 665055dbbc)

Co-authored-by: Ilya Stoliar <52413756+ilyastoli@users.noreply.github.com>
2021-10-14 10:09:40 +02:00
Grot (@grafanabot)
81118d3059 make alert tab create alert button work with default datasource (#40334) (#40432)
(cherry picked from commit c43b82d44b)

Co-authored-by: Domas <domas.lapinskas@grafana.com>
2021-10-14 09:14:29 +02:00
Grot (@grafanabot)
8b9bdfa546 Update _index.md (#40421) (#40427)
spelling

(cherry picked from commit b0414f66dc)

Co-authored-by: Arie Heinrich <arie.heinrich@outlook.com>
2021-10-14 04:11:31 +02:00
Grot (@grafanabot)
7689b2f5ec Forbid creation of dashboard permissions with both a user and a team (#40104) (#40412)
These permissions could be created through the API but would not show
correctly in the UI.

(cherry picked from commit 5af96544f3)

Co-authored-by: Jesse Weaver <pianohacker@gmail.com>
2021-10-13 16:10:40 -06:00
Grot (@grafanabot)
fb79d72230 ReleaseNotes: Update changelog and release notes for v8.1.3 (#40384) (#40390)
(cherry picked from commit 415a92331a)

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2021-10-13 16:18:20 +02:00
Grot (@grafanabot)
3f86150506 Fix: State timeline tooltip not showing (#40100) (#40374)
* Fix: State timeline tooltip not showing

* Check transformation instead of refId

(cherry picked from commit 7422189a88)

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2021-10-13 12:32:42 +02:00
Marcus Efraimsson
92d768fe66 Prometheus: Fix issue where TCP connections not being reused when querying from Grafana alerting (#40349) (#40368)
Fixes #40366

Co-authored-by: Dave Henderson <dave.henderson@grafana.com>
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
(cherry picked from commit 23bee50474)

Co-authored-by: Kevin Minehart <kmineh0151@gmail.com>
2021-10-13 11:19:04 +02:00
Grot (@grafanabot)
c57041f13b Application: Make error-template title configurable (#40310) (#40363)
* Fix error-template title

as in index-template.html

* Test: fix for AppTitle

Co-authored-by: Hugo Häggmark <hugo.haggmark@gmail.com>
(cherry picked from commit 3d9e2d8c82)

Co-authored-by: Ben RUBSON <6764151+benrubson@users.noreply.github.com>
2021-10-13 09:08:18 +02:00
Grot (@grafanabot)
ea2976180b [v8.2.x] Alerting: Remove invalid Slack URL as we migrate notification channels (#40356)
* Alerting: Remove invalid Slack URL as we migrate notification channels (#40344)

* Alerting: Remove invalid Slack URL as we migrate notification channels

Grafana will accept any type of utf8 valid string as the Slack URL and will simply fail as we try to deliver the notification of the channel. The Alertmanager will fail to apply a configuration if the URL of the Slack Receiver is invalid.

This change takes that into account by removing the URL for the receiver as we migrate notification channels that do not pass the url validation. As we assume the notification was not being delivered to being with.

* Add a log line when we modify the channel

Co-authored-by: Yuriy Tseretyan <yuriy.tseretyan@grafana.com>
(cherry picked from commit 2448123a65)

* fix tests

Co-authored-by: gotjosh <josue@grafana.com>
Co-authored-by: Yuriy Tseretyan <yuriy.tseretyan@grafana.com>
2021-10-13 08:51:06 +02:00
Grot (@grafanabot)
82ef926e1b E2E: Fix path for importDashboards (#40111) (#40351)
* Small e2e fix for importDashboards

(cherry picked from commit 47f09fca8d)

Co-authored-by: Sarah Zinger <sarahzinger@users.noreply.github.com>
2021-10-12 20:53:31 -04:00
Grot (@grafanabot)
7bbc0e8684 Example fixes for #40173 (#40175) (#40350)
(cherry picked from commit 24fa93bd58)

Co-authored-by: Paul Dee <647633+systemcrash@users.noreply.github.com>
2021-10-12 22:17:58 +02:00
Grot (@grafanabot)
a652ffa9b4 [v8.2.x] Alerting: Fixes a bug when trying to sync broken alertmanager config (#40342)
* Alerting: Fixes a bug when trying to sync broken alertmanager config (#40338)

* Alerting: Fixes a bug when trying to sync broken alertmanager config

Broken alertmanager configuration has the potential to be introduced as part of a migration e.g. due to incompatible data between what grafana accepts and what the Alertmanager expects. When this happens, we expect an eventually consistent behaviour where we'll keep trying to apply the configuration until it works.

As part of change in https://github.com/grafana/grafana/pull/39237 we introduced a regression that modified this behaviour and instead tried to create a new Alertmanager for that organization everytime, which eventually ended up in a panic due to a duplicate metrics being registered.

This PR fixes that and introduces a test to catch further regressions.

* Remove disable orgs

(cherry picked from commit 48d73cb148)

* remove decryptFn that is not known in 8.2 branch

Co-authored-by: gotjosh <josue@grafana.com>
Co-authored-by: Yuriy Tseretyan <yuriy.tseretyan@grafana.com>
2021-10-12 15:26:00 -04:00
Grot (@grafanabot)
49aadec393 Packaging: Remove ProcSubset option in systemd (#40339) (#40340)
* update service file

(cherry picked from commit fe5e49476b)

Co-authored-by: Kevin Minehart <kmineh0151@gmail.com>
2021-10-12 18:53:25 +02:00
George Robinson
e775fba146 Alerting: Fix error message in ngalert when notifications cannot be sent to alertmanager (#40158) (#40317)
(cherry picked from commit 8318e45452)
2021-10-12 15:28:45 +01:00
Grot (@grafanabot)
2011097d42 Explore: Prevent empty Elasticsearch logs query responses from hiding the logs panel (#40217) (#40329)
* remove return value from addPreferredVisualisationType

* Elasticsearch: send empty series instead when no data is received for a query

(cherry picked from commit b0391d4933)

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2021-10-12 14:53:56 +01:00
Grot (@grafanabot)
4de5d30719 Explore/Loki: Fix defaulting to instant query when switching from Prometheus (#40216) (#40323)
* Loki: Pass only wanted query props when importing from Prometheus

* Update

* Update public/app/plugins/datasource/loki/language_provider.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Add test

* Fix strict error

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
(cherry picked from commit 2f0eccb421)

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2021-10-12 13:38:40 +02:00
Grot (@grafanabot)
dad16637ce fix rule form crashing when extra query editor actions are provided (#40319) (#40322)
(cherry picked from commit b1f56b4863)

Co-authored-by: Domas <domas.lapinskas@grafana.com>
2021-10-12 13:16:41 +02:00
Grot (@grafanabot)
128981fb21 Alerting: cleanup alert resources on org removal (#39938) (#40321)
(cherry picked from commit e1dfec49f9)

Co-authored-by: Jean-Philippe Quéméner <JohnnyQQQQ@users.noreply.github.com>
2021-10-12 12:46:03 +02:00
Giordano Ricci
fa4eec8e1d AWS: add OpenSearch to AWS services (#40290) (#40297)
(cherry picked from commit 24af3593a2)
2021-10-11 17:30:08 +02:00
Grot (@grafanabot)
16ebe8999e ReleaseNotes: Updated changelog and release notes for 8.2.1 (#40287) (#40292)
* ReleaseNotes: Updated changelog and release notes for 8.2.1

* Update docs after running prettier:write

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
(cherry picked from commit 2fd869fd02)
2021-10-11 16:32:10 +02:00
Grot (@grafanabot)
88622d7f09 "Release: Updated versions in package to 8.2.1" (#40262) 2021-10-11 11:35:17 +02:00
Grot (@grafanabot)
0a27bfba5a Dashboard: Fixes rendering of repeating panels (#39991) (#40259)
* Dashboard: Fixes rendering of repeating panels

* Chore: update after PR comments

(cherry picked from commit d8e97fc024)

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
2021-10-11 07:06:51 +02:00
Grot (@grafanabot)
a596cf0515 A11y: Fix for Fastpass issues on the Profile page (#40212) (#40258)
* A11y: Fix for Fastpass issues on Profile page

* Chore: small fix

* Chore: fixes the tests

(cherry picked from commit 7706483654)

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
2021-10-11 07:06:14 +02:00
Grot (@grafanabot)
a7a935fff0 ReleaseNotes: Updated changelog and release notes for 8.2.0 (#40233) (#40236)
(cherry picked from commit 12b5956af2)
2021-10-08 19:55:30 +02:00
Grot (@grafanabot)
b29b65404c Docs: Add required library for the image renderer (#40201) (#40221)
(cherry picked from commit 4c0bafa53a)

Co-authored-by: Agnès Toulet <35176601+AgnesToulet@users.noreply.github.com>
2021-10-08 10:41:35 -04:00
Grot (@grafanabot)
7539dd5ec6 Add Headers to http client Options (#40214) (#40220)
(cherry picked from commit d023cabae6)

Co-authored-by: Dimitris Sotirakis <dimitrios.sotirakis@grafana.com>
2021-10-08 16:27:07 +02:00
Grot (@grafanabot)
80d7138076 remove systemcallfilters sections from systemd unit files (#40176) (#40219)
(cherry picked from commit cdea812cee)

Co-authored-by: Kevin Minehart <kmineh0151@gmail.com>
2021-10-08 16:17:59 +02:00
Giordano Ricci
3ff6fcdb50 Fix: fix typo in what's new list item title (#40207)
* Fix: fix typo in what's new list item title

* Sync doc with main
2021-10-08 13:25:49 +02:00
Grot (@grafanabot)
54dec97d0a Datasources: Fix deletion of datasource if plugin cannot be found (#40095) (#40209)
* fix(pluginsettings): reject with error so datasource plugin loading failures still render ui

* feat(pluginpage): handle plugin loading error

* refactor(datasources): separate out datasource and meta loading so store has info for deletion

* fix(datasourcesettings): introduce loading flag to wait for datasource and meta loading

* test(datasourcesettings): fix failing test

* test(datasources): assert loading status of datasource settings

* test(datasources): update action tests for latest changes

(cherry picked from commit 7cf3c84c92)

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
2021-10-08 13:04:17 +02:00
Giordano Ricci
904f7699a3 Docs: Whats new in 8.2 (#39945) (#40202)
* Docs: Whats new in 8.2 (#39945)

* Added time range controls updates

* Added plugins catalog update

* Added enterprise images

* Added community contributions highlights for 8.2

* accessibility statement

* Update docs/sources/whatsnew/whats-new-in-v8-2.md

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>

* Update docs/sources/whatsnew/whats-new-in-v8-2.md

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>

* Update docs/sources/whatsnew/whats-new-in-v8-2.md

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>

* Update docs/sources/whatsnew/whats-new-in-v8-2.md

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>

* Update docs/sources/whatsnew/whats-new-in-v8-2.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/whatsnew/whats-new-in-v8-2.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/whatsnew/whats-new-in-v8-2.md

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>

* Update docs/sources/whatsnew/whats-new-in-v8-2.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/whatsnew/whats-new-in-v8-2.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
(cherry picked from commit ed0c43b106)

* Add index entry

Co-authored-by: Petros Kolyvas <code@petros.io>
2021-10-08 11:11:04 +01:00
Grot (@grafanabot)
4facd4aedf Folders: Prevents deletion of General folder (#40192) (#40200)
(cherry picked from commit 70e759e0c0)

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
2021-10-08 11:48:26 +02:00
Grot (@grafanabot)
37fcce3940 Grammar issues (#40168) (#40177)
(cherry picked from commit 872385dcee)

Co-authored-by: Anne E. Ulrich <aeulrich1997@gmail.com>
2021-10-07 19:32:36 -04:00
Grot (@grafanabot)
4b4c11f566 Packaging: document systemd net bind capability rpm and deb installations (#40165) (#40178)
* add systemd net bind capability docs for rpm and deb

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
(cherry picked from commit c8651c46d0)

Co-authored-by: Kevin Minehart <kmineh0151@gmail.com>
2021-10-07 23:27:09 +02:00
Grot (@grafanabot)
40b61914e6 docs: Add keepCokkies cofiguration option in datasources (#39890) (#40166)
Signed-off-by: Vinayak Kadam <kadamvinayak03@gmail.com>
(cherry picked from commit dbe1ab7d54)

Co-authored-by: Vinayak <vinayak03@users.noreply.github.com>
2021-10-07 16:21:28 -04:00
achatterjee-grafana
11aeb24099 Doc: Fixed issue 40017 (#40152) (#40161)
* Added content as suggested by Will

* removed a few extra words.

* Update docs/sources/administration/configuration.md

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>

* Update docs/sources/administration/configuration.md

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>

* Update docs/sources/administration/configuration.md

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>
2021-10-07 13:18:11 -04:00
Giordano Ricci
efc8f111c0 Docs: Update publish.yml for 8.2.0 (#40151) 2021-10-07 16:33:52 +01:00
Grot (@grafanabot)
5a059abb5d ReleaseNotes: Updated changelog and release notes for 8.2.0 (#40141) (#40146)
* ReleaseNotes: Updated changelog and release notes for 8.2.0

* Add link & remove empty line in CHANGELOG

* remove empty line

Co-authored-by: Elfo404 <me@giordanoricci.com>
(cherry picked from commit e7b81e1918)
2021-10-07 15:32:54 +01:00
Marcus Efraimsson
9ae69bedfe [v8.2.x] ReleaseNotes: Updated changelog and release notes (#40022) (#40140)
* ReleaseNotes: Updated changelog and release notes (#40022)

(cherry picked from commit feaa56a7fe)

* Add missing release notes for 8.1.4 and 8.1.5

* ReleaseNotes: Updated changelog and release notes for 8.1.7 (#40081)

(cherry picked from commit 4a91ceeb1e)

Co-authored-by: Grot (@grafanabot) <43478413+grafanabot@users.noreply.github.com>
2021-10-07 13:49:17 +02:00
Grot (@grafanabot)
d7f71e9eae "Release: Updated versions in package to 8.2.0" (#40134) 2021-10-07 12:23:10 +02:00
Grot (@grafanabot)
1be90124f0 Aws: Update AWS authentication documentation (#39236) (#39861)
* wip: adding workspace iam role

* add intro

* minor adjustment

* Update docs/sources/datasources/aws-cloudwatch/aws-authentication.md

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

* Update docs/sources/datasources/aws-cloudwatch/aws-authentication.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/aws-cloudwatch/aws-authentication.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/aws-cloudwatch/aws-authentication.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/aws-cloudwatch/aws-authentication.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/aws-cloudwatch/aws-authentication.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/aws-cloudwatch/aws-authentication.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/aws-cloudwatch/aws-authentication.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* revert to on behalf of

* remove permissions

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
(cherry picked from commit b711bc00b9)

Co-authored-by: Erik Sundell <erik.sundell@grafana.com>
2021-10-07 11:49:56 +02:00
Grot (@grafanabot)
2d9aabfcac Search: Fix local storage key (#40127) (#40130)
* Default to 'General' if no folder title is present

* Add bottom padding

(cherry picked from commit 5c7e874008)

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2021-10-07 11:18:47 +02:00
Grot (@grafanabot)
235351ae69 Stat: recompute shared y range during streaming updates (#39485) (#40132)
(cherry picked from commit d3815a851c)

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2021-10-07 11:16:30 +02:00
Grot (@grafanabot)
f6199596df Annotations: Improve rendering performance of event markers (#39984) (#39999)
(cherry picked from commit ead8429210)

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
2021-10-07 10:50:19 +02:00
Grot (@grafanabot)
f15be05dec Fix: prevent queryDisplyText in QueryRowHeader from overflowing (#40094) (#40128)
* Revert "Fix Query Editor Row horizontal overflow (#39419)"

This reverts commit 42b1fa0f62.

* fix: prevent queryDisplyText in QueryRowHeader from overflowing

(cherry picked from commit 95d9722afa)

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2021-10-07 10:45:45 +02:00
Grot (@grafanabot)
81fcc3a007 CodeEditor: making sure we trigger the latest onSave callback provided to the component (#39835) (#40120)
(cherry picked from commit d9ca3c5c5d)

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2021-10-07 09:18:47 +02:00
Grot (@grafanabot)
764ec0bd98 TimePicker: fix console error on time picker open (#40067) (#40072)
* TimePicker: fix console error on time picker open

(cherry picked from commit ba31e4ee4d)

Co-authored-by: Oscar Kilhed <oscar.kilhed@grafana.com>
2021-10-07 07:22:46 +01:00
Grot (@grafanabot)
250381f581 Docs: Add documentation for library elements API (#39829) (#40117)
* LibraryElements: Adds api documentation

* Update docs/sources/http_api/library_element.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/http_api/library_element.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/http_api/library_element.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/http_api/library_element.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/http_api/library_element.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/http_api/library_element.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/http_api/library_element.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/http_api/library_element.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/http_api/library_element.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/http_api/library_element.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/http_api/library_element.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/http_api/library_element.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/http_api/library_element.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/http_api/library_element.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/http_api/library_element.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/http_api/library_element.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/http_api/library_element.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/http_api/library_element.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/http_api/library_element.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/http_api/library_element.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/http_api/library_element.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/http_api/library_element.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/http_api/library_element.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Refactor: changes after PR comments

* Apply suggestions from code review

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Chore: updates after review

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
(cherry picked from commit d09cdfb844)

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
2021-10-07 08:03:07 +02:00
Grot (@grafanabot)
cac6effebd Explore: Add opt-in config for Node Graph in Jaeger, Zipkin, and Tempo (#39958) (#40105)
(cherry picked from commit 3a8d04603f)

Co-authored-by: Connor Lindsey <cblindsey3@gmail.com>
2021-10-06 14:42:07 -06:00
Grot (@grafanabot)
9212b34d46 Doc: Organized the Getting Started section (#39813) (#40039)
* First commit with reorganized and updated content.

* Updated Getting started topic.

* Changed some wording.

* Removed extra word "setting".

* Update docs/sources/getting-started/getting-started-prometheus.md

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>

* Update docs/sources/getting-started/getting-started-prometheus.md

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>

* Updated doc based on review.

* Fix linting errors

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>
Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
(cherry picked from commit cfc31ce523)

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-10-06 13:30:46 -04:00
Grot (@grafanabot)
6db0af2223 A11y: Fix fastpass issues for dashboard management pages (#39940) (#40065)
* A11y: Fix fastpass issues for dashboard pages
See #39429

(cherry picked from commit 1ce750471f)

Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
2021-10-06 18:02:54 +01:00
Grot (@grafanabot)
6730d5b657 Tempo: Decrease the default Tempo search limit to 20 (#40030) (#40088)
(cherry picked from commit 3e33330e27)

Co-authored-by: Connor Lindsey <cblindsey3@gmail.com>
2021-10-06 09:30:48 -06:00
Dimitris Sotirakis
dc5ed14290 Remove unnecessary Dockerize steps (#40087) 2021-10-06 18:21:59 +03:00
Grot (@grafanabot)
8b396d5421 Fix typo in "filter by value" example (#40070) (#40086)
(cherry picked from commit 98a9b4adc5)

Co-authored-by: ian moone <lrobin@xee.com>
2021-10-06 11:19:05 -04:00
George Robinson
29638a485b Panel ID annotation cannot be set without Dashboard UID (#40019) (#40063)
(cherry picked from commit 935bd34a30)
2021-10-06 12:17:29 +01:00
Grot (@grafanabot)
7cd58dd7d0 MySql: Fix reset button on config page (#39988) (#40064)
* MySql: Fix reset button on config page

* Use button instead of anchor

* Add aria labels

(cherry picked from commit 7fd7c98540)

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2021-10-06 13:08:02 +02:00
George Robinson
265714866b You can now get alert rules for a dashboard or a panel using /api/v1/rules endpoints. (#39476) (#40008)
Get alert rules for a dashboard and panel in /api/v1/rules

(cherry picked from commit 2a4c1b1aa6)
2021-10-06 11:38:26 +01:00
Grot (@grafanabot)
cb6d6e0497 Docs: update alerting (#39899) (#40058)
* Docs: update alerting

* Apply suggestions from code review

Co-authored-by: Armand Grillet <2117580+armandgrillet@users.noreply.github.com>
(cherry picked from commit 4f2a3f92e4)

Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>
2021-10-06 12:22:06 +02:00
achatterjee-grafana
a6ef2cda29 Doc: Fix escalation issue 903 (#40034) (#40036)
* First set of reorg of Playlist topic. Also fixed a broken bookmark in Azure authentication topic.

* More re-org.

* Added note requested in issue 903.

* Updated a note added dashboard HTTP API endpoint.

* Update docs/sources/dashboards/playlist.md

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>

* Update docs/sources/dashboards/playlist.md

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>

* Update docs/sources/dashboards/playlist.md

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>

* Update docs/sources/dashboards/playlist.md

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>

* Update docs/sources/dashboards/playlist.md

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>

* Update docs/sources/dashboards/playlist.md

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>

* Updated image position and name.

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>
2021-10-05 20:41:20 -04:00
Grot (@grafanabot)
73e89da81c Fix static path matching issue in macaron (#40023) (#40027)
Co-authored-by: Malcolm Holmes <mdh@odoko.co.uk>
(cherry picked from commit 329f96db1a)

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2021-10-05 20:04:26 +02:00
Grot (@grafanabot)
218dc8104e AccessControl: rename data source id read action (#39966) (#40009)
(cherry picked from commit 4160429b71)

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
2021-10-05 16:09:32 +02:00
Grot (@grafanabot)
c26dc6487e AccessControl: Document new permissions restricting data source access. (#39091) (#40004)
* Add data sources roles and permissions to docs

Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
(cherry picked from commit 6aa006b699)

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
2021-10-05 15:25:21 +02:00
Domas
b5521a9eaf Alerting: Alertmanager datasource support for upstream Prometheus AM implementation (#39775) (#39989)
(cherry picked from commit a1d4be0700)
2021-10-05 12:13:11 +03:00
Grot (@grafanabot)
32481e75c5 Alerting: make /api/prometheus/grafana/api/v1/rules faster (#39660) (#39986)
(cherry picked from commit e343b62665)

Co-authored-by: Domas <domas.lapinskas@grafana.com>
2021-10-05 11:11:15 +03:00
Grot (@grafanabot)
3e6bb78e3d TimePicker: Close timepicker with esc (#39962) (#39969)
(cherry picked from commit 3cd7b11eb4)

Co-authored-by: Oscar Kilhed <oscar.kilhed@grafana.com>
2021-10-04 22:52:26 +02:00
Grot (@grafanabot)
d4bec0b178 Docs: Add API endpoints used for templating in Prometheus (#39639) (#39974)
(cherry picked from commit 3e01db9a1e)

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2021-10-04 22:28:06 +02:00
Grot (@grafanabot)
815adae389 Some documentation fixes (#39951) (#39973)
* Some documentation fixes

* Address review comments

* Fixed lint issues using prettifier.

Co-authored-by: achatterjee-grafana <aparajita.chatterjee@grafana.com>
(cherry picked from commit ccd7f8a5ba)

Co-authored-by: Michael D <michael@drueing.de>
2021-10-04 15:54:44 -04:00
Kyle Brandt
4be5dd6391 Alerting: Allow more characters in label names so notifications are sent (#38629) (#39965)
Remove validation for labels to be accepted in the Alertmanager, This helps with datasources that produce non-compatible labels.

Adds an "object_matchers" to alert manager routers so we can support labels names with extended characters beyond prometheus/openmetrics. It only does this for the internal Grafana managed Alert Manager.

This requires a change to alert manager, so for now we use grafana/alertmanager which is a slight fork, with the intention of going back to upstream.

The frontend handles the migration of "matchers" -> "object_matchers" when the route is edited and saved. Once this is done, downgrades will not work old versions will not recognize the "object_matchers".

Co-authored-by: Kyle Brandt <kyle@grafana.com>
Co-authored-by: Nathan Rodman <nathanrodman@gmail.com>
(cherry picked from commit 6572017ec7)

cleanup

Co-authored-by: gotjosh <josue@grafana.com>
2021-10-04 09:07:04 -07:00
Grot (@grafanabot)
b4016187ff Doc: Updated Azure AD OAuth2 authentication topic. (#39609) (#39964)
* Updated topic.

* Added bookmarks.

* Update docs/sources/auth/azuread.md

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>

* Update docs/sources/auth/azuread.md

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>

* Update docs/sources/auth/azuread.md

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>

* Fixed bulleted list.

* Updated list again.

* Format change.

* Removed spaces.

* Run prettifier to fix whitespace issues.

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>
(cherry picked from commit 991b5fee3d)

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-10-04 11:50:19 -04:00
Grot (@grafanabot)
045146184a CloudWatch Logs: Skip caching for Log queries (#39860) (#39893)
* Add x-skip-cache header to queries

* Specify caching works for CW metrics

(cherry picked from commit 3e47fb1432)

Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com>
2021-10-04 12:34:36 +02:00
Grot (@grafanabot)
2ecde07356 [v8.2.x] CloudWatch Logs: Docs for X-Ray links (#39894)
* CloudWatch Logs: Docs for X-Ray links  (#39725)

(cherry picked from commit 0b89bdd47d)

* Docs: Lint CloudWatch index page

Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com>
Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
2021-10-04 12:03:36 +02:00
Grot (@grafanabot)
8dd5e88f92 Docs: Move image renderer doc to its own section and add configuration doc (#38759) (#39896)
* Move image renderer doc to its own section and add configuration doc

* revert unwanted changes

* remove unwanted formatting

* revert change

* Improve configuration section

* update default flags for 3.1.0 update

* Clean up and add some links

* fix broken links

* clean up notes & links and small updates

* fix after merge

* fix broken link

* fix typo

* Apply suggestions from code review

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

* Apply PR feedback

* Update monitoring.md

* Apply suggestions from code review

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update troubleshooting.md

* add alias for old image rendering doc page

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
Co-authored-by: Mitch Seaman <mjseaman@users.noreply.github.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
(cherry picked from commit b7eac0f655)

Co-authored-by: Agnès Toulet <35176601+AgnesToulet@users.noreply.github.com>
Co-authored-by: Agnès Toulet <agnes.toulet@gmail.com>
2021-10-04 09:23:10 +02:00
Grot (@grafanabot)
439b1b7310 A11y: Fix fastpass issues for /org/ pages (#39902) (#39916)
* A11y: Fix fastpass issues for /org/ pages
See #39429

(cherry picked from commit 816d70a7e5)

Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
2021-10-04 10:01:01 +03:00
Grot (@grafanabot)
76ecd3759b Fix folder icons for alert rules (#39873) (#39891)
(cherry picked from commit 0f42b37e21)

Co-authored-by: Noah van der Aa <ndvdaa@gmail.com>
2021-10-01 21:30:21 +02:00
Grot (@grafanabot)
ab53001fd2 Plugins Catalog: fix overflowing text in plugin cards (#39862) (#39866)
* refactor(Plugins/Admin): add a "badge" for displaying available updates

* refactor(Plugins/Admin): rename component

* refactor(Plugins/Admin): use the PluginListItemBadges component

(cherry picked from commit 3ad5ee87a3)

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
2021-10-01 17:37:20 +02:00
Grot (@grafanabot)
ea030e8bbd Prometheus: metrics browser: handle label values with special characters (#39713) (#39858)
* prometheus: handle label-values with special characters

* added comment

(cherry picked from commit d363c36853)

Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
2021-10-01 16:11:03 +02:00
Grot (@grafanabot)
5d2fb57dd8 Plugins: Mock Icon component to prevent console errors (#39901) (#39909)
* feat(grafana-ui): externalise react-inlinesvg for mocking

* feat(grafana-toolkit): mock react-inlinesvg to prevent svg fetch errors in tests

* test(toolkit): remove assertion on array length of moduleNameMapper overrides

* feat(toolkit): set testId to match the Icon name prop in react-inlinesvg mock

(cherry picked from commit cc7f7e30e9)

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
2021-10-01 15:54:19 +02:00
Grot (@grafanabot)
5166c3c8bb A11y: Fix fastpass issues for /org/teams pages (#39848) (#39864)
* A11y: Fix fastpass issues for /org/teams pages
See #39429

(cherry picked from commit 451d023c79)

Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
2021-10-01 14:32:51 +01:00
Grot (@grafanabot)
05c0e83802 DashboardList/AlertList: Fix for missing All folder value (#39772) (#39886)
* DashboardList/AlertList: Fix for missing All folder value

* Refactor: Fixes case where folder does not exist in results

(cherry picked from commit 7c7b21b39e)

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
2021-10-01 13:38:38 +02:00
Grot (@grafanabot)
c61395d7dc ReleaseNotes: Updated changelog and release notes for 8.2.0-beta2 (#39832) (#39851)
* ReleaseNotes: Updated changelog and release notes for 8.2.0-beta2

* Update _index.md

* Fix linting errors

* Update CHANGELOG.md

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

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
Co-authored-by: Ivana <ivana.huckova@gmail.com>
Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
(cherry picked from commit 58aa595527)
2021-09-30 15:02:14 +02:00
Grot (@grafanabot)
a2306d2765 "Release: Updated versions in package to 8.2.0-beta.2" (#39831) 2021-09-30 10:49:00 +02:00
Grot (@grafanabot)
229c45ccda Add fiscal years and search to time picker (#39073) (#39828)
* Add search to time picker

* implement fiscal datemath

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
(cherry picked from commit 738d5e499e)

Co-authored-by: Oscar Kilhed <oscar.kilhed@grafana.com>
2021-09-30 10:07:24 +02:00
Grot (@grafanabot)
1126ea6539 Graphite: Ensure only valid queries are used for interpolation (#39761) (#39827)
* Graphite: Ensure only valid queries are used for interpolation

* Add a unit test

(cherry picked from commit 787e5e78dd)

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
2021-09-30 10:00:06 +02:00
Grot (@grafanabot)
06015fbdaf Explore: Fix displaying rich history saving error message (#39766) (#39826)
* Explore: Fix displaying rich history saving error message

* Keep generic error message

* remove testing snippet

(cherry picked from commit f8ebcaa0d9)

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
2021-09-30 09:52:18 +02:00
Grot (@grafanabot)
dc363a05ac A11y: Fixes some fastpass errors for /datasources/* routes (#39577) (#39797)
* A11y: Fixes some fastpass errors for /datasources/* routes
See #39429

(cherry picked from commit 75a55379f1)

Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
2021-09-30 09:24:26 +02:00
Grot (@grafanabot)
70a4fd8a21 Plugins Catalog: Make the catalog the default way to interact with plugins (#39779) (#39822)
* chore(Plugins/Admin): make the Plugins Catalog the default way to interact with plugins

* chore(defaults.ini): change the default value for `plugin_admin_enabled`

* test(Plugins): make the tests pass

(cherry picked from commit c2754eb9cc)

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
2021-09-30 09:05:55 +02:00
Torkel Ödegaard
91db8910a7 Chore: Tidy up emotion css with better theme breakpoint (#39340) (#39811)
(cherry picked from commit f3475b864c)

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-09-29 20:41:02 +02:00
Grot (@grafanabot)
e69544b6ea Scatter: support bubble and line charts with out-of-order data (alpha) (#39377) (#39809)
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
(cherry picked from commit 4c8c2f6c96)

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-09-29 19:42:50 +02:00
Grot (@grafanabot)
c6fb06721f DashboardRow: Prevent unintended editing of DashboardRow with keyboard shortcut 'e' (#39792) (#39803)
(cherry picked from commit ff009bee9f)

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-09-29 18:11:20 +02:00
Grot (@grafanabot)
900c94fd8a Admin: Show licensed roles and unit membership in UI (#39773) (#39802)
* Extend User type

* Render licensed roles and org units

* Combine admin icon with units

* Extract search users to a new service

* Fix wire provider

* remove mock data

* Fix icon margin

* Fix common_test and remove RouteRegister

* Remove old endpoints

* Fix test

* Add indexes to dashboards and orgs tables

* Fix lint

* Revert docs changes

* undo docs formatting

* Change order of input and filters

* Abstract aria-label into a function

* Add accessible info about user's membership

* UI tweaks

Co-authored-by: spinillos <selenepinillos@gmail.com>
(cherry picked from commit 62dc10829a)

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2021-09-29 18:00:15 +02:00
Grot (@grafanabot)
d6b00710cb PluginsCatalog: Add support for viewing the plugins list as both table and list (#39466) (#39798)
* working version but with duplications.

* refactor(Plugins/Admin): use "fr" instead of "repeat" for grid columns

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>

* fix(Plugins/Admin): use PluginIconName instead of IconName

* refactor(Plugins/Admin): store the display-mode on the state

* refactor(Plugins/Admin): use && for conditional rendering

* refactor(Plugins/Admin): rename variable

* refactor(Plugins/Admin): share code between card and row components

* test(PluginListItemRow): add tests

* test(Plugins/Admin): add a simple test for the display-mode switching

* fix(Plugins/Admin): compose styles with css``

* refactor(Plugins/Admin): rename "table" to "grid" for display modes

* test(Plugins/Browse): follow up on renaming "table" to "grid"

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
(cherry picked from commit 2dedbcd3c3)

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2021-09-29 17:56:43 +02:00
Grot (@grafanabot)
4fe38b169c Docs: Add docs for Redis cluster caching backend configuration (#39687) (#39800)
* caching: add docs for redis cluster config

* address PR comments

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

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
(cherry picked from commit 9f1de095b7)

Co-authored-by: Todd Treece <360020+toddtreece@users.noreply.github.com>
2021-09-29 17:56:19 +02:00
Grot (@grafanabot)
bd12923c59 E2E: improvements to the importDashboard flow (#39693) (#39790)
* E2E: improvements to the importDashboard flow

(cherry picked from commit aeeaa67b0a)

Co-authored-by: Sarah Zinger <sarahzinger@users.noreply.github.com>
2021-09-29 11:53:32 -04:00
Grot (@grafanabot)
9570495af5 A11y: Fix fastpass issues for /explore page (#39507) (#39796)
* Fix(A11y): add label to explore short url button

* Grafana-UI(A11y): Set Selects images alt attribute to their option label

* Update packages/grafana-ui/src/components/Select/SingleValue.tsx

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
(cherry picked from commit f61c8d3eed)

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2021-09-29 17:46:03 +02:00
Sofia Papagiannaki
368742ab04 Alerting: Remove ngalert feature toggle and introduce two new settings for enabling Grafana 8 alerts and disabling them for specific organisations (#38746) (#39793)
* Remove `ngalert` feature toggle

* Update frontend

Remove all references of ngalert feature toggle

* Update docs

* Disable unified alerting for specific orgs

* Add backend tests

* Apply suggestions from code review

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Disabled unified alerting by default

* Ensure backward compatibility with old ngalert feature toggle

* Apply suggestions from code review

Co-authored-by: gotjosh <josue@grafana.com>
(cherry picked from commit 012d4f0905)
2021-09-29 11:21:25 -04:00
Selene
d07ed05918 Extract search users functions into a service (#39002) (#39770)
* Extract search users to a new service

* Fix wire provider

* Fix common_test and remove RouteRegister

* Remove old endpoints

* Fix test

* Add indexes to dashboards and orgs tables

* Fix lint

(cherry picked from commit 02702eb82d)
2021-09-29 17:02:58 +02:00
Grot (@grafanabot)
4699620e23 Plugin Catalog: support Grafana instances that cannot communicate with gcom (#39638) (#39787)
* added possibility to track if remote plugins could be fetched.

* adding hook to detect if remote plugins are available.

* feat(catalog): disable installed/all filter if remote plugins are unavailable

* feat(Plugins/Admin): hide the install controls if GCOM is not available

* refactor(Plugins/Admin): group `@grafana` dependencies

* fix(Plugins/Admin): don't show an error alert if a remote plugin is not available

* feat(Plugins/Admin): prefer to use the local version of the readme

* chore(Plugins/Admin): type the mocked state properly

* test(Plugins/Admin): add tests for the Plugin Details when GCOM is not available

* test(Plugins/Admin): add tests for the Browse when GCOM is not available

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
(cherry picked from commit fffcee7c1f)

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
2021-09-29 16:44:57 +02:00
Grot (@grafanabot)
09461d03ea Update migration to not delete existing Grafana alerts (#39541) (#39736)
* keep existing unified alert rules untouched
* move silences and other alertmanager files to the organization directory (only if it is a single organization deployment)
* assign the existing notification settings and routes to the first organization
* create default notification settings for each organization in the case of multi org deployment

(cherry picked from commit 5d0d7dcb3a)

Co-authored-by: Yuriy Tseretyan <yuriy.tseretyan@grafana.com>
2021-09-29 09:27:44 -04:00
Grot (@grafanabot)
c7e9b1685c OrgPage: Minor typo fix (#39764) (#39777)
(cherry picked from commit 630a120a15)

Co-authored-by: Oscar Kilhed <oscar.kilhed@grafana.com>
2021-09-29 14:37:20 +02:00
Grot (@grafanabot)
20212aaf97 BarGauge: Improve behaviour when working with streaming data (#39737) (#39765)
* BarGauge: Improve behaviour when working with streaming data

* BarGauge: Refactor default min/max into grafana/data

(cherry picked from commit 2058193e98)

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-09-29 11:39:55 +02:00
Grot (@grafanabot)
832321b405 add support for interaction events (#39752) (#39762)
(cherry picked from commit db8c9122aa)

Co-authored-by: Erik Sundell <erik.sundell@grafana.com>
2021-09-29 11:28:15 +02:00
Grot (@grafanabot)
f4bd6d4f84 Docs: alerting fixes (#39717) (#39730)
* Docs: alerting fixes

(cherry picked from commit eead8cd8e1)

Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>
2021-09-29 12:22:06 +03:00
Grot (@grafanabot)
805cbba81d TimeSeries: Fix shared cursor (#39738) (#39760)
(cherry picked from commit 4682cf5b7c)

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2021-09-29 10:58:14 +02:00
Grot (@grafanabot)
f793c0d2fc Table panel: Make filter case insensitive (#39746) (#39757)
* Expose FilterInput from grafana/ui

* Make table filter case insensitive

* Update packages/grafana-ui/src/components/Table/FilterList.tsx

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>

Co-authored-by: Oscar Kilhed <oscar.kilhed@grafana.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
(cherry picked from commit f887576a27)

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2021-09-29 10:05:50 +02:00
Grot (@grafanabot)
b82bc90180 Hooks: Adding possibility to display banner on the top of the page (#39099) (#39755)
* adding working version of notificaion banner trigger.

* Move it to enterprise

* Fixing csss, none of the pages showed our CustomScrollbar or had double scrollbars

* fixing explore

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
(cherry picked from commit b626ba223f)

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2021-09-29 08:29:45 +02:00
Grot (@grafanabot)
b37d4152d8 AzureMonitor: move metric deep link code to backend (#39524) (#39727)
(cherry picked from commit bf9be975ac)

Co-authored-by: Isabella Siu <sakurablossom@blueblueworld.com>
2021-09-28 14:31:47 -04:00
Grot (@grafanabot)
2cd112b9da Alerting: Add filtering for Silences (#39109) (#39452)
* Add filtering for Silences page

* Add tests Silences and SilenceEditor

* pr feedback: add field validation and test refactor

* Add test for checking content

* fix overflow for validation error message

* increase login threshold for pa11y

* Make silence filter state its own type and function

(cherry picked from commit d03f75726b)

Co-authored-by: Nathan Rodman <nathanrodman@gmail.com>
2021-09-28 10:35:27 -07:00
Grot (@grafanabot)
e426039d6c Tempo: Improve search form defaults and validation (#39534) (#39749)
* Tempo: add default limit, option to hide Loki search, and run query on hotkey in dropdowns

(cherry picked from commit 06592410b2)

Co-authored-by: Connor Lindsey <cblindsey3@gmail.com>
2021-09-28 11:20:49 -06:00
Grot (@grafanabot)
f28d869db2 Tempo: Show warning if search is not available. Add opt-out config (#39489) (#39747)
* Tempo: Show warning if search is not available. Add opt-out config

(cherry picked from commit 24479ff6b0)

Co-authored-by: Connor Lindsey <cblindsey3@gmail.com>
2021-09-28 10:52:14 -06:00
Grot (@grafanabot)
618a590a05 Tempo: Improve how Tempo Search fetches autocomplete values (#39371) (#39745)
* Improve how tempo search fetches autocomplete values

* Refetch autocomplete options on menu load

(cherry picked from commit 1865689411)

Co-authored-by: Connor Lindsey <cblindsey3@gmail.com>
2021-09-28 10:20:43 -06:00
Grot (@grafanabot)
ce5fe730b8 Tempo: Format tempo search query history text (#39250) (#39743)
* Format tempo search query history text

(cherry picked from commit c57ff8beed)

Co-authored-by: Connor Lindsey <cblindsey3@gmail.com>
2021-09-28 10:13:15 -06:00
Grot (@grafanabot)
6648f8c5a1 Tempo: Run search query with keyboard shortcut from input fields (#39247) (#39741)
* Tempo: Run query with keyboard shortcut from duration fields

(cherry picked from commit 9c4e7eb659)

Co-authored-by: Connor Lindsey <cblindsey3@gmail.com>
2021-09-28 09:50:05 -06:00
Grot (@grafanabot)
d38782bc94 grafana-ui: Improve PartialHighlighter error handling (#39685) (#39739)
* Improve PartialHighlighter error handling

(cherry picked from commit 05bb451a1d)

Co-authored-by: Connor Lindsey <cblindsey3@gmail.com>
2021-09-28 09:45:15 -06:00
Grot (@grafanabot)
2e86425ed9 Alerting: Move alertmanager default config to UnifiedAlertingSettings (#39597) (#39714)
(cherry picked from commit 05eb30e323)

Co-authored-by: Yuriy Tseretyan <yuriy.tseretyan@grafana.com>
Co-authored-by: Sofia Papagiannaki <sofia@grafana.com>
2021-09-28 11:01:18 -04:00
Grot (@grafanabot)
5aaef25a33 Alerting: Optimization of fetching data in multiorg alertmanager (#39237) (#39720)
* Add method GetAllLatestAlertmanagerConfiguration to DBStore
* add method ApplyConfig to AlertManager
* update multiorg alert manager to load all alertmanager configs at once

(cherry picked from commit 1910d85ae0)

Co-authored-by: Yuriy Tseretyan <yuriy.tseretyan@grafana.com>
2021-09-28 09:05:22 -04:00
Grot (@grafanabot)
35dad9c267 Provide reader to alertmanager silence instead of file path (#39305) (#39721)
(cherry picked from commit e1aae0549e)

Co-authored-by: Yuriy Tseretyan <tceretian@gmail.com>
2021-09-28 09:04:22 -04:00
Grot (@grafanabot)
c2d95d4d01 Alerting: Prevent preview if no condition is set (#39659) (#39706)
* prevent preview if no condition is set

* fixes after pr feedback

* watch on type and condition

(cherry picked from commit cc94c55e48)

Co-authored-by: Peter Holmberg <peterholmberg@users.noreply.github.com>
2021-09-28 14:24:19 +02:00
Sofia Papagiannaki
c89e1236fe Alerting: tune rule evaluation via configuration (#35623) (#39712)
* Alerting: Configure max evaluation retries

* Alerting: Enforce minimum rule evaluation interval

* Alerting: Disable rule evaluation from configuration

* Update docs

* Alerting: Configure rule evaluation timeout

* Move options on unified_alerting config section

* Apply suggestions from code review

Co-authored-by: gotjosh <josue@grafana.com>
(cherry picked from commit f6f3a54742)
2021-09-28 14:58:31 +03:00
Grot (@grafanabot)
3d76c772be Plugin Catalog: Use routing for PluginDetails Tabs (#39555) (#39680)
* feat(catalog): introduce id and href to PluginDetailsTabs

* feat(catalog): add hrefs and ids to PluginDetails tabs. Pass queryParams to PluginDetailsBody

* feat(catalog): pass queryParams to PluginsDetailsBody and add page param to PluginListCard

* fix(catalog): prevent flicker of content by waiting for fetch details to finish loading

* feat(catalog): add tab icons to PluginDetails page

* feat(catalog): make breadcrumbs in PluginDetailsHeader aware of page queryparam

* fix(catalog): fix deeplinking to PluginDetails by comparing tabs length

* test(catalog): update tests with correct props and wrap in router

(cherry picked from commit 4dc556445c)

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
2021-09-28 12:00:49 +02:00
Grot (@grafanabot)
1feb7ce022 Plugins Catalog: Remove notice asking user to refresh browser (#39592) (#39681)
(cherry picked from commit 6eceb69d43)

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
2021-09-28 12:00:00 +02:00
Grot (@grafanabot)
2089b58def Loki: Fix creating coontext query for logs with parsed labels (#39648) (#39705)
(cherry picked from commit 79c797c232)

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2021-09-28 11:14:49 +02:00
Grot (@grafanabot)
f3479aad2b Add orientation prop to Gauge panel (#39682) (#39698)
(cherry picked from commit 0bb426ec33)

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
2021-09-28 09:51:14 +02:00
Grot (@grafanabot)
6c92beb7fe Variables: Prevents enter key from refreshing page or changing focus (#39666) (#39697)
(cherry picked from commit 9a178e7ba9)

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
2021-09-28 06:41:28 +02:00
Grot (@grafanabot)
06cb288848 Alerting: Move spammy log line to debug in the state manager (#39410) (#39434)
(cherry picked from commit fcbcfd232b)

Co-authored-by: gotjosh <josue@grafana.com>
2021-09-27 15:36:52 +01:00
Grot (@grafanabot)
cac03cc7fe Elasticsearch/Prometheus: Set correct service namespace for SigV4 (#39439) (#39652)
Makes sure to set the SigV4 service namespace for Elasticsearch and Prometheus.

Fixes #38440

(cherry picked from commit 45a844e77e)

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2021-09-27 15:18:35 +02:00
Grot (@grafanabot)
ea57ae7470 Update lockfile to correct output after running yarn install (#39646) (#39651)
* Update lockfile to correct output after running `yarn install`

* Chore: Remove caniuse-db since nothing is using it anymore

(cherry picked from commit bbf64722e4)

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-09-27 15:13:41 +02:00
Grot (@grafanabot)
bbfb211408 Plugins Catalog: update the available panels on install/uninstall (#39293) (#39405)
* feat(Plugins/Admin): add a function to update panels

* fix(Plugins/Admin): update the available panels on plugin install / uninstall

(cherry picked from commit c8e94a2443)

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
2021-09-27 13:50:56 +02:00
Grot (@grafanabot)
07de5e5a5d Bump tmpl from 1.0.4 to 1.0.5 (#39475) (#39644)
Bumps [tmpl](https://github.com/daaku/nodejs-tmpl) from 1.0.4 to 1.0.5.
- [Release notes](https://github.com/daaku/nodejs-tmpl/releases)
- [Commits](https://github.com/daaku/nodejs-tmpl/commits/v1.0.5)

---
updated-dependencies:
- dependency-name: tmpl
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
(cherry picked from commit 057c9a4fe1)

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-09-27 13:10:02 +02:00
Grot (@grafanabot)
7d9308113a Bump prismjs from 1.24.0 to 1.25.0 (#39450) (#39645)
Bumps [prismjs](https://github.com/PrismJS/prism) from 1.24.0 to 1.25.0.
- [Release notes](https://github.com/PrismJS/prism/releases)
- [Changelog](https://github.com/PrismJS/prism/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PrismJS/prism/compare/v1.24.0...v1.25.0)

---
updated-dependencies:
- dependency-name: prismjs
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
(cherry picked from commit 0e60abfe00)

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-09-27 13:09:31 +02:00
Grot (@grafanabot)
5ce3c48c8c InfluxDB: Flux: make $__interval and $__interval_ms work in alerting (#38889) (#39642)
* influxdb: flux: handle $__interval and $__interval_ms in alert-queries

* influxdb: flux: do not handle interval-variable in the frontend

* $__interval should be rounded

* added comment

(cherry picked from commit 9f027e32b7)

Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
2021-09-27 12:32:54 +02:00
Grot (@grafanabot)
e90558d3b3 Fix: State timeline panel tooltip error when data is not in sync (#39438) (#39634)
* Fix: State timeline panel tooltip error when data is not in sync

* Move check from tooltip to panel

(cherry picked from commit 24475cfdda)

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2021-09-27 10:15:27 +02:00
Grot (@grafanabot)
e7ca31214b Live: disable centrifuge-js debug mode (#39625) (#39626)
(cherry picked from commit 1d1da09568)

Co-authored-by: Alexander Emelin <frvzmb@gmail.com>
2021-09-26 20:48:56 -07:00
Grot (@grafanabot)
fee11227da PanelOptions: fix array with siblings (#39620) (#39623)
(cherry picked from commit c9ae46a9ad)

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-09-25 17:58:09 +02:00
Grot (@grafanabot)
258f3eae32 Options: support array value paths for panel options (#39499) (#39596)
(cherry picked from commit 01deae2105)

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-09-23 10:58:14 -07:00
Grot (@grafanabot)
ac1ca2e4b5 Update PageToolbar.tsx (#39572) (#39585)
(cherry picked from commit 0229146c3b)

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-09-23 16:02:47 +02:00
Grot (@grafanabot)
1fc22f6e4d BarGauge: Set cell color to off if numeric value is NaN (#39574) (#39580)
* BarGauge: Set cell color to off if numeric value is NaN

* BarGauge: Pull getCellColor out into a pure function and add unit tests

(cherry picked from commit 6948dbe550)

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-09-23 14:59:52 +02:00
Oscar Kilhed
fa6c44b12a Remove ? as header for piechart table legend (#39521) (#39571)
(cherry picked from commit 71122930b9)
2021-09-23 14:21:31 +02:00
Grot (@grafanabot)
53a11de774 Cleanup kv_store alertmanager namespace when disabling unified alerting (#39554) (#39576)
(cherry picked from commit ba4242bdb9)

Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>
2021-09-23 13:53:51 +02:00
Grot (@grafanabot)
4ffa29d959 Fix alerts with evaluation interval more than 30 seconds resolving in Alertmanager (#39513) (#39523)
(cherry picked from commit 27609dc2c5)

Co-authored-by: George Robinson <george.robinson@grafana.com>
2021-09-23 13:06:27 +02:00
Grot (@grafanabot)
22563454b7 Variables: Prevents panel from crashing when using adhoc variable in data links (#39546) (#39568)
* Variables: Prevents panel from crashing when using adhoc variable in data links

* Refactor: uses isAdhoc instead

* Chore: updates after PR feedback

(cherry picked from commit af5296bee7)

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
2021-09-23 12:24:24 +02:00
Grot (@grafanabot)
345fb89699 Dashboard: Short url generation works for variables values with spaces (#39552) (#39567)
(cherry picked from commit 65d79d9a30)

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
2021-09-23 12:20:47 +02:00
Grot (@grafanabot)
5bf35bd49e influxdb: flux: use more precise start and end timestamps (#39415) (#39520)
* influxdb: flux: use more precise start and end timestamps

* added unit test

(cherry picked from commit bf0dc3ef62)

Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
2021-09-23 12:13:55 +02:00
Grot (@grafanabot)
aa2dbd63f3 PieChart: Filter NaN values from total calculation (#39503) (#39509)
* Filter NaN values from total calculation

* remove duplicated code, use missing value string for NaN and hidden series

(cherry picked from commit a1d8d6e95e)

Co-authored-by: Oscar Kilhed <oscar.kilhed@grafana.com>
2021-09-23 12:00:36 +02:00
Grot (@grafanabot)
4d1969c9c4 Alerting: fix the migrated silence file content (#39557) (#39564)
(cherry picked from commit 81e82ebbbd)

Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>
2021-09-23 11:49:22 +02:00
Grot (@grafanabot)
5003b911e2 VersionHistory: Remove global scss causing conflicts elsewhere (#39437) (#39560)
(cherry picked from commit 4aed940738)

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-09-23 11:24:55 +02:00
Grot (@grafanabot)
ef7a2bda39 PieChart: Fix sorting for null values in piechart (#39516) (#39556)
* Fix sorting for null values in piechart

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
(cherry picked from commit 4a6e354497)

Co-authored-by: Oscar Kilhed <oscar.kilhed@grafana.com>
2021-09-23 11:10:24 +02:00
Grot (@grafanabot)
1b8255e317 A11y: Fix fastpass issues for /admin/* pages (#39435) (#39535)
* A11y: Fix fastpass issues for /admin/* pages
See #39429

(cherry picked from commit 00dad0f4e8)

Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
2021-09-22 23:35:05 +01:00
Grot (@grafanabot)
d343d2242d CloudMonitoring: Fix INT64 label unmarshal error (#39441) (#39528)
(cherry picked from commit f76a11c955)

Co-authored-by: Benedikt Spellmeyer <b.spellmeyer@googlemail.com>
2021-09-22 17:42:15 +02:00
Ashley Harrison
a0fe59adef Chore(Navigation): Rename SideMenu -> NavBar (#39483) (#39525)
(cherry picked from commit a4d41d35d0)
2021-09-22 15:38:20 +01:00
Grot (@grafanabot)
04900c63f0 Plugins Catalog: add a few more tests (#39433) (#39470)
* refactor(Plugins/Admin): add an extra line-break between tests

* test(Plugins/Admin): add a couple of more tests for Plugin Details

* fix(Plugins/Admin): fix accidental linting issue

(cherry picked from commit 660afc6279)

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
2021-09-22 13:46:22 +02:00
Grot (@grafanabot)
e4862a64f7 Explore: prevent eplore from hiding errors containing refId (#39504) (#39508)
* Explore: prevent eplore from hiding errors containing refId

* Update public/app/features/explore/ResponseErrorContainer.tsx

Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>

Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
(cherry picked from commit 5f48d0641b)

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2021-09-22 11:59:38 +02:00
Grot (@grafanabot)
036db0f9d0 Plugins Catalog: add unit tests for data-munging (#39338) (#39432)
* test(Plugins/Admin): add tests for the helper functions

* chore(Plugins/Admin): add `error` field to the CatalogPlugin mock

* test(Plugins/Admin): add new properties `error` & `isDisabled` to test expectations

* refactor(Plugins/Admin): make the `errors` param optional everywhere

* fix(Plugins/Admin): fix a rebase bug

(cherry picked from commit fef8e646ea)

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
2021-09-22 11:06:07 +02:00
Grot (@grafanabot)
9b9b7e5a45 CloudWatch: Add AWS Gateway ELB metrics and dimensions (#39490) (#39502)
(cherry picked from commit dfb8a4cd13)

Co-authored-by: Ilya Stoliar <52413756+ilyastoli@users.noreply.github.com>
2021-09-22 10:41:48 +02:00
Grot (@grafanabot)
793cd39af3 [v8.2.x] docs: removed nonsense line from standard-options.md (#39383)
* docs: removed nonsense line from standard-options.md (#39381)

(cherry picked from commit 85391c59d0)

* Added extra space.

* Removed space.

Co-authored-by: Nick Reilingh <nreiling@bard.edu>
Co-authored-by: achatterjee-grafana <aparajita.chatterjee@grafana.com>
2021-09-21 10:17:34 -04:00
Grot (@grafanabot)
f5be918e49 Use sdk pkg for gtime (#39354) (#39468)
(cherry picked from commit 64c8d32fe7)

Co-authored-by: Andres Martinez Gotor <andres.martinez@grafana.com>
2021-09-21 13:41:31 +02:00
Grot (@grafanabot)
698c13482a Fix Query Editor Row horizontal overflow (#39419) (#39460)
(cherry picked from commit 42b1fa0f62)

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2021-09-21 12:18:24 +01:00
Grot (@grafanabot)
88ea42ab9c Chore: Add go-redis v8 dependency (#39442) (#39448)
* adds redis v8 client dependency

* remove go-redis v5 dependency

(cherry picked from commit 1781c8ec7d)

Co-authored-by: Todd Treece <360020+toddtreece@users.noreply.github.com>
2021-09-20 22:52:18 +02:00
Grot (@grafanabot)
9ae43a7aaa Schema: unify bar/point/etc visibility modes (#39378) (#39446)
(cherry picked from commit ad3c7529b0)

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-09-20 21:52:52 +02:00
Grot (@grafanabot)
ee7c12592d Live: show popup if local changes exist (#36093) (#39440)
* change tracker

* not needed

(cherry picked from commit a6fbb8d724)

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-09-20 18:54:51 +02:00
Grot (@grafanabot)
17a5142901 Plugins Catalog: Fix a11y issues (#39407) (#39416)
* refactor(catalog): fix a11y issues in Browse and PluginListCard

* test(catalog): fix failing PluginListCard tests

(cherry picked from commit 4a11d0dab9)

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
2021-09-20 15:48:28 +02:00
Grot (@grafanabot)
9e825719f6 prometheus: monaco: do not recalculate not-changing function-list (#39406) (#39413)
(cherry picked from commit dc61edc8ac)

Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
2021-09-20 14:03:28 +02:00
Grot (@grafanabot)
10c44b4f8d Alerting: Move the unified alerting settings to its own struct (#39350) (#39400)
(cherry picked from commit 2ad82b9354)

Co-authored-by: gotjosh <josue@grafana.com>
2021-09-20 11:02:07 +01:00
Grot (@grafanabot)
395730e2f7 Publishing packages: Add grafana/schema (#39317) (#39325)
(cherry picked from commit 5eb46281a4)

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2021-09-20 11:11:53 +02:00
Grot (@grafanabot)
c418e75fcf A11y/Menu: Add keyboard support to Menu component (#38974) (#39403)
(cherry picked from commit d5b885f958)

Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
2021-09-20 09:37:22 +01:00
Grot (@grafanabot)
56db5cc071 Plugins Catalog: show a confirmation modal when uninstalling a plugin (#39244) (#39402)
* feat(Plugins/Admin): show a confirmation modal when uninstalling a plugin

* refactor(Plugins/Admin): use a helper function for showing/hiding the modal

* test(Plugins/Admin): test if the modal disappears after an uninstall

(cherry picked from commit 02f9564607)

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
2021-09-20 10:14:11 +02:00
Grot (@grafanabot)
e272e239d0 Explore: Fixed default data source loading (#37059) (#39379)
Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com>
(cherry picked from commit 64f898c5f6)

Co-authored-by: Assaf Dayan <asfdyn@gmail.com>
2021-09-20 10:11:51 +02:00
Grot (@grafanabot)
972ec9cf85 Variables: Prevents unnecessary duplicate requests (#39394) (#39401)
(cherry picked from commit e696a9ab42)

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
2021-09-20 09:55:25 +02:00
Grot (@grafanabot)
635e489a59 ConfirmModal: Fix confirm button focus on modal open (#39328) (#39397)
(cherry picked from commit 06012a8da0)

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
2021-09-20 09:45:43 +02:00
Grot (@grafanabot)
333c1da5c7 PluginsCatalog: adding error information about disabled plugins. (#39171) (#39399)
* added errors in plugin list.

* added error to details page.

* adding badge on details page.

* added some more tests.

* Renamed to disabled and will handle the scenario in the plugin catalog.

* Update public/app/features/plugins/admin/components/PluginDetailsDisabledError.tsx

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>

* fixing some nits

* added missing isDisabeld to the mock.

* adding tests to verify scenarios when plugin is disabled.

* fixed issue with formatting after file changed on GH.

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
(cherry picked from commit f3002931f4)

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2021-09-20 09:43:24 +02:00
Grot (@grafanabot)
cea17c7e49 ValueMappings: Value mapping and specifying only color should not affect value formatting (decimals, unit, etc) (#39315) (#39398)
(cherry picked from commit a899e9be10)

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
2021-09-20 09:40:42 +02:00
Grot (@grafanabot)
704ba385aa Make "dist" version of dashboard scuemata directly importable in CUE (#39251) (#39372)
* Update embeds with new paths, remove deprefixing

* Add dist dashboard scuemata, in CUE

Also add tests that ensure all panel plugins with models.cue are
imported by this file, so that we can't go out of sync.

* Remove comment detritus

* Check error return

* Remove hardcoded path prefix from cli validator

(cherry picked from commit 39f2ee7692)

Co-authored-by: sam boyer <sam.boyer@grafana.com>
2021-09-17 17:14:36 -04:00
Grot (@grafanabot)
b21ba77c4f GraphNG: uPlot 1.6.16 (#39260) (#39367)
(cherry picked from commit 474461ba15)

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2021-09-17 15:16:36 -05:00
Grot (@grafanabot)
3a002da406 Pipeline: Make Pa11y ci not mandatory on PR stage (#39285) (#39368)
(cherry picked from commit ef36bbbfbd)

Co-authored-by: Maria Alexandra <239999+axelavargas@users.noreply.github.com>
2021-09-17 13:59:10 -05:00
Grot (@grafanabot)
6f52226c66 Alerting: Metrics should have the label org instead of user (#39353) (#39365)
An user within Grafana has a completely different meaning. Multi-tenancy is done via Organizations as a top-level concept.

(cherry picked from commit 35e5bfce40)

Co-authored-by: gotjosh <josue@grafana.com>
2021-09-17 18:52:54 +02:00
Grot (@grafanabot)
ab5ec6e838 namespace should be AWS/Rekognition (#39094) (#39360)
(cherry picked from commit 7d873fa795)

Co-authored-by: Sumit Bopche <sumitbopche01@gmail.com>
2021-09-17 17:52:49 +02:00
Grot (@grafanabot)
71b0ae9094 BarChart: Fix field enumeration for bar value display and legend items (#39308) (#39357)
(cherry picked from commit 29e8728ef0)

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2021-09-17 17:23:38 +02:00
Grot (@grafanabot)
3b1abd4bd3 prometheus: monaco-query-field: fix metrics-list (#39347) (#39349)
(cherry picked from commit 73873f99cd)

Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
2021-09-17 15:28:35 +02:00
Andres Martinez Gotor
13b8b7721b backport #39322 (#39344) 2021-09-17 15:22:48 +02:00
Grot (@grafanabot)
8a369feb63 Alerting: Support Unified Alerting with Grafana HA (#37920) (#39342)
* Alerting: Support Unified Alerting in Grafana's HA mode.

(cherry picked from commit 7db97097c9)

Co-authored-by: gotjosh <josue@grafana.com>
2021-09-17 13:23:51 +01:00
Grot (@grafanabot)
499b1f4ff2 influxdb: influxql: more robust resultformat-handling (#39330) (#39339)
(cherry picked from commit d116b2d71b)

Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
2021-09-17 13:06:44 +02:00
Andres Martinez Gotor
8fcfc4d87e merge main (#39318)
Co-authored-by: Grot (@grafanabot) <43478413+grafanabot@users.noreply.github.com>
2021-09-17 11:23:50 +02:00
Grot (@grafanabot)
c05f195de5 prometheus: monaco: handle multiple query fields at the same time (#39286) (#39320)
(cherry picked from commit 8489575c84)

Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
2021-09-17 10:24:18 +02:00
Grot (@grafanabot)
49bec6ce4f prometheus: query-editor: better duration-completions (#39284) (#39314)
(cherry picked from commit f8de33da8d)

Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
2021-09-17 09:41:16 +02:00
Grot (@grafanabot)
d8b03490c3 "Release: Updated versions in package to 8.2.0-beta.1" (#39281) 2021-09-16 11:32:27 +02:00
Andres Martinez Gotor
fc632276f1 Update release notes and what’s new links (#39277) 2021-09-16 10:32:40 +02:00
Torkel Ödegaard
95fd659bfc SideMenu: Remove live section from main side menu (#39278) 2021-09-16 10:12:54 +02:00
Peter Holmberg
4f7e1db57c Graphs: Fix threshold handle being visible in dashboards (#39270) 2021-09-16 08:59:36 +02:00
rodrigosilva-ciandt
b5ed47c95c Docs: Update azuread docs to mention about env variables (#39203)
* Update azuread docs to mention about env variables

Add a note about the name of the environment variables to be used for configuring client_id and client_secret

* Update docs/sources/auth/azuread.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/auth/azuread.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* fix typo

* Revert "fix typo"

This reverts commit ff84f70773.

* Fixed typo again, trying to kick start license check.

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
Co-authored-by: achatterjee-grafana <aparajita.chatterjee@grafana.com>
2021-09-15 21:47:03 -04:00
Santiago
c3cf95f383 Revert "Alerting: add template funcs (#38404)" (#39258)
This reverts commit d6fb0181fb.
2021-09-15 19:47:22 -03:00
Santiago
0d2e68537c Alerting: Cleanup template, silence and notification files created du… (#39007)
* Alerting: Cleanup template, silence and notification files created during tests

* Create tempdir for testing, delete afterwards and check for errors

* Refactoring error checks

* Update docs/sources/enterprise/access-control/fine-grained-access-control-references.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/administration/configuration.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/enterprise/access-control/fine-grained-access-control-references.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-09-15 18:48:52 -03:00
Santiago
d6fb0181fb Alerting: add template funcs (#38404)
* Alerting: (wip) add template funcs

* Alerting: (wip) numeric template functions

* Alerting: (wip) template functions

* Test for the "args" function

* Alerting: (wip) Documentation for template functions

* Alerting: template functions - refactor

* code review changes

* disable linter error

* Use Prometheus implementation of TemplateExpander

* Update docs/sources/alerting/unified-alerting/alerting-rules/create-grafana-managed-rule.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-09-15 18:48:29 -03:00
Ryan McKinley
cde133fe05 Canvas: use grafana datasource to list resource files (#39204) 2021-09-15 14:48:11 -07:00
Marcus Efraimsson
e31b8f4d33 Chore: Remove SQL engine cache (#39254)
Fix bug with engine cache not updating after data source updated, introduced in #36635.
Removes the SQL engine cache because since #36635 we already have instance caching in place using the SDK instance manager.
This also adds support for disposing cached SQL/xorm engines before a query happens to a data source that has been updated. Done by letting the SQL engine implementing the InstanceDisposer interface.

Fixes #37299
2021-09-15 23:03:25 +02:00
Atif Shoukat Ali
64ff15c157 Live: default to constant label value for pipeline (#39211) 2021-09-15 13:10:52 -07:00
Maarten De Wispelaere
3d0fa70b3b Docs: Added "manageAlerts" provisioning option. (#38836)
* add "manageAlerts" option to prov. docs

* Update docs/sources/administration/provisioning.md

Takes into account suggestion from @domasx2

Co-authored-by: Domas <domasx2@gmail.com>

* Revert "Update docs/sources/administration/provisioning.md
"

This reverts commit d7085355a6.

* Adding content back.

Co-authored-by: Domas <domasx2@gmail.com>
Co-authored-by: achatterjee-grafana <aparajita.chatterjee@grafana.com>
2021-09-15 14:32:30 -04:00
Leon Sorokin
fb091de2c7 BarChart: Fix legend and tooltip colors off by 1 after data refresh (#39234) 2021-09-15 13:10:26 -05:00
sam boyer
2a4b08eab9 Apply cuetsy attrs to PanelSchema (#39112) 2021-09-15 12:27:47 -04:00
Vardan Torosyan
8537b36be2 Access control: Document new permissions restricting access for reloading provisioning configuration (#38906)
* Access control: Document new permissions restricting access for reloading provisioning configuration

* Apply suggestions from code review

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

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-09-15 17:58:20 +02:00
Dan Cech
f8ae71af5b Usage Stats Updates (#39235)
* add randomly-generated anonymous id to usage reports
* include uptime in stats
* add last_sent tracking, remove metricsLogger
2021-09-15 11:47:44 -04:00
Peter Holmberg
74beb9a64c Alerting: Edit thresholds by handle in timeseries panel (#38881)
* POC/Thresholds: Allow thresholds modification directly from the time series panel

* Snapshot updates

* Optimize styles memoization

* change threshold from graph

* renames and logging

* using useeffect to update graph

* Fix react worning about setting state on unmounted component

* revert panelrenderer

* using onFieldConfig change

* use a useeffect

* simplied fieldConfig state

* Do not use plot context in ThresholdControlsPlugin

* Do not throw setState warnings when drag handle is dropped

* Update thresholds position on the graph when updating threshold drag handle

* fix issues with rerenders

* prevent thresholds on conditions with range

* only edit the first threshold

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2021-09-15 17:35:12 +02:00
Josh Hunt
b3196621f1 AzureMonitor: Fix template variables being cleared out (#39173)
* AzureMonitor: Fix template variables being cleared out

* fix metric namespace from resetting

* tests :)
2021-09-15 16:31:37 +01:00
Giordano Ricci
f79173c99d Explore: Reuse Dashboard's QueryRows component (#38942)
* WIP

* Functional without custom wrapper component, needs highlight

* Remove latency from explore

* Sync eventbus

* Some cleanup & removal of unused code

* Avoid clearing queries when running all empty queries

* Run remaining queries when removing one

* Update snapshots

* fix failing tests

* type cleanup

* Refactor QueryRows

* update snapshot

* Remove highlighter expressions

* minor fixes in queryrows

* remove unwanted change

* fix failing e2e test

* Persist refId in explore url state

* make traces test slightly more robust

* add test for query duplication
2021-09-15 16:26:23 +01:00
Domas
e251863085 Alerting: validate recording rule name (#39136) 2021-09-15 18:24:26 +03:00
Marcus Andersson
aba8af1d59 Docs: plugin migration guide 7.0.0 to 8.0.0 (#38911)
* restructuring to new storybook inspired structure.

* added instructions on how to handle breaking changes in the legend.

* start adding migration steps for 7 -> 8

* added information about the data frame format changes.

* added plugin.json changes.

* added emotion 11 imports.

* added information about theme v1 being deprecated.

* added steps for backend plugin migration.

* added reference to the migrate hooks v6 -> v7.

* docs(pluginmigration): introduce getColorForTheme changes

* Update docs/sources/developers/plugins/migration-guide.md

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>

* Update docs/sources/developers/plugins/migration-guide.md

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>

* Update docs/sources/developers/plugins/migration-guide.md

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>

* Update docs/sources/developers/plugins/migration-guide.md

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>

* Update docs/sources/developers/plugins/migration-guide.md

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>

* docs(migration-guide): introduce useStyles to v8 deprecation notes

* Apply suggestions from code review

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/developers/plugins/migration-guide.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/developers/plugins/migration-guide.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/developers/plugins/migration-guide.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/developers/plugins/migration-guide.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* suggestion from review.

* Update docs/sources/developers/plugins/migration-guide.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* docs(Migration Guide): update the example for `grafanaDependency`

* docs(Migration Guide): remove the time-series migration part for now

* Update docs/sources/developers/plugins/migration-guide.md

Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>

* Update docs/sources/developers/plugins/migration-guide.md

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

* docs(Migration Guide): update wording about plugin signing

* Update docs/sources/developers/plugins/migration-guide.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/developers/plugins/migration-guide.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/developers/plugins/migration-guide.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-09-15 17:23:10 +02:00
Andrew Burian
e4c80d1269 Update silences.md (#38834)
* Update silences.md

minor correction in not equals regex

* Update docs/sources/alerting/unified-alerting/silences.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-09-15 10:59:18 -04:00
Andrej Ocenas
515d6afec3 CloudWatch Logs: Disable query path using websockets (Live) feature (#39231)
* Use only non live branch for querying logs.

* Update tests

* fix lint
2021-09-15 16:28:34 +02:00
Domas
264946f37f Graph: make old graph panel thresholds work even if ngalert is enabled (#38918) 2021-09-15 16:15:50 +03:00
Alexander Kubyshkin
32946ec9b1 Table panel: Fix table column resize handle incorrect z-index (#36934) (#39157) 2021-09-15 13:26:11 +02:00
Erik Sundell
9d3f4f5983 Analytics: Instrument Azure Application Insights (#38553)
* add backend

* read config and pass to backend

* update config docs

* change var name

* use connection string instead of instrumentation key

* add config for endpoint url. update docs

* update default ini

* add spaces

* remove space

* Update docs/sources/administration/configuration.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update conf/defaults.ini

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update conf/defaults.ini

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-09-15 13:00:38 +02:00
Serge Zaitsev
6005e6572d Chore: fix param names in ctx.ParamsInt64 (#39223) 2021-09-15 12:14:15 +02:00
Dimitris Sotirakis
fdc681788b InfluxDB: Fix regex to identify / as separator (#39185)
* Fix regex to identify / as separator

* Update regex
2021-09-15 09:37:33 +01:00
Erik Sundell
c621131fff remove code that was duplicated by accident (#39212) 2021-09-15 10:32:01 +02:00
Jim McDonald
1aaa00a1e4 Value mappings: add regex value mapping. (#38931) 2021-09-14 17:15:14 -07:00
Alexander Emelin
15e278e9e1 Live: search for pipeline files in data folder (#39198)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-09-14 22:27:51 +02:00
Alexander Emelin
548b4daa49 Live: up centrifuge to v0.18.4 (#39139) 2021-09-14 11:31:04 -07:00
Leon Sorokin
df6b6e7a98 BarChart: fix stale bar values and x axis labels (#39188) 2021-09-14 12:16:43 -05:00
Serge Zaitsev
063160aae2 Chore: pass url parameters through context.Context (#38826)
* pass url parameters through context.Context

* fix url param names without colon prefix

* change context params to vars

* replace url vars in tests using new api

* rename vars to params

* add some comments

* rename seturlvars to seturlparams
2021-09-14 18:34:56 +02:00
Andrej Ocenas
fb1c31e1b6 CloudWatch Logs: Add link to Xray data source for trace IDs in logs (#39135)
* Refactor log query handling

* Add link to config page

* Change message about missing xray to alert

* Add xrayTraceLinks

* Fix typo in field name

* Fix tests and lint

* Move test

* Add test for trace id link

* lint
2021-09-14 17:02:41 +02:00
Levente Balogh
3c433dc36d Plugins Catalog: refactor the mocking for our tests (#39165)
* refactor(Plugins/Admin): add a type for version coming back from the API

* refactor(Plugins/Admin): only add necessary version information to the state

* test(Plugins/Admin): add a mock for a CatalogPlugin

* test(Plugins/ADmin): add a mock for a LocalPlugin

* test(Plugins/Admin): add a test for a RemotePlugin

* test(Plugins/Admin): add helpers for mocking plugin states

* refactor(Plugins/Admin): mock the Redux state instead of the API responses

This makes it simpler to add new test cases and also makes
the tests easier to reason about.

* refactor(Plugins/Admin): mock the Redux state instead of the API responses
2021-09-14 16:44:13 +02:00
Gábor Farkas
bff3d91b0d prometheus: monaco: better popup-font-size (#39181) 2021-09-14 16:40:44 +02:00
Dimitris Sotirakis
ed810da1f6 Update to grabpl 2.4.6 (#39177) 2021-09-14 16:21:04 +02:00
Marcus Efraimsson
fa9857499b Chore: GetDashboardQuery should be dispatched using DispatchCtx (#36877)
* Chore: GetDashboardQuery should be dispatched using DispatchCtx

* Fix after merge

* Changes after review

* Various fixes

* Use GetDashboardCtx function instead of GetDashboard
2021-09-14 16:08:04 +02:00
gotjosh
2b1d3d27e4 Alerting: Fix bug not creating filepath for silences/nflog if it does not exist (#39174)
We created this filepath just as we're about persist the templates - with the latest change, we now need to create it sooner.
2021-09-14 14:40:59 +01:00
Todd Treece
9b20a24989 Handle enterprise data source tab refreshes (#37567) 2021-09-14 09:24:18 -04:00
Dimitris Sotirakis
f5ecf5c2d9 Cast fields to int64 (#39179) 2021-09-14 14:57:12 +02:00
gotjosh
a2f4344bf2 Alerting: Refactor & fix unified alerting metrics structure (#39151)
* Alerting: Refactor & fix unified alerting metrics structure

Fixes and refactors the metrics structure we have for the ngalert service. Now, each component has its own metric struct that includes the JUST the metrics it uses. Additionally, I have fixed the configuration metrics and added new metrics to determine if we have discovered and started all the necessary configurations of an instance.

This allows us to alert on `grafana_alerting_discovered_configurations - grafana_alerting_active_configurations != 0` to know whether an alertmanager instance did not start successfully.
2021-09-14 12:55:01 +01:00
Maria Alexandra
1edd415ddf Accessibility checks: Phase 2 - Adding Pa11y CI PR stage (#38556)
Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
2021-09-14 13:23:17 +02:00
Gábor Farkas
27e3fda7ce influxdb: influxql query editor: fix escaping problematic characters (#39170) 2021-09-14 12:55:43 +02:00
Emil Tullstedt
ad971cc9be LDAP: Search all DNs for users (#38891) 2021-09-14 10:49:37 +02:00
Ryan McKinley
98cca6317d Options: expose a dashboard picker element (#38955) 2021-09-13 23:30:46 -07:00
An
45e67630e8 Live: admin config UI (#39103)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: Atif Ali <atifshoukatali@yahoo.com>
2021-09-13 21:09:55 -07:00
achatterjee-grafana
d3a7e0228c Doc: Created a separate topic for AWS authentication (#39012)
* Created new topic for AWS authentication and fixed broken relrefs.

* Applied suggestion from review.

* Update docs/sources/datasources/aws-cloudwatch/aws-authentication.md

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>

* Applied some suggestions from doc review.

* Applied all doc review.

* Last of the edits, went through and addressed all comments.

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>
2021-09-14 01:30:43 +02:00
Piotr Jamróz
26bb08e1e6 Graphite: Fix drag and drop queries (#39130)
* Do not use "select metric" segment when rendering target

* Use better names for tests
2021-09-13 20:10:35 +02:00
Marcus Efraimsson
2cc0788187 Chore: Disable backend test for now since it adds 10 minutes extra in CI (#39150)
Ref #38586
2021-09-13 19:37:26 +02:00
Peter Leitzen
4f70113ea0 OAuth: Support role mapping for GitLab OAuth (#30025)
* Support `role_attribute_path` for GitLab OAuth

Allow role mapping for GitLab accounts.

Example:

  [auth.gitlab]
  role_attribute_path = is_admin && 'Admin' || 'Viewer'

* Support `role_attribute_path` for GitLab OAuth

Allow role mapping for GitLab accounts.

Example:

  [auth.gitlab]
  role_attribute_path = is_admin && 'Admin' || 'Viewer'

* docs: add docs for role_attribute_path

* Apply suggestions from code review

Co-authored-by: Peter Leitzen <splattael@users.noreply.github.com>

* docs: update example

example should suggest a full configuration

* Apply suggestions from code review

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* Apply suggestions from code review

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>

* docs: add suggestions from tech writers

Co-authored-by: Henry Sachs <Henry.Sachs@deutschebahn.com>
Co-authored-by: Henry Sachs <henrysachs@gmail.com>
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>
2021-09-13 12:44:37 -04:00
David Lamb
89878dae1b OAuth: clarify role & group paths prefer id_token over userinfo api (#39066)
* OAuth: clarify role & group paths prefer id_token over userinfo api (#39066)

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
Co-authored-by: Kevin Minehart <kmineh0151@gmail.com>
2021-09-13 18:15:15 +02:00
Jorge Luis Betancourt
ae4900e76f Docs: Fix broken link to signed GCS URLs docs (#39144)
The current version of the docs contains a broken link to the GCS docs about signed URLs. The link (since it contains an additional `]`) generates a 404 and also slightly breaks the rendering of the link.
2021-09-13 18:06:42 +02:00
Piotr Jamróz
0026162845 Add handlers to handle time range changes to Explore graphs (#39142) 2021-09-13 18:04:46 +02:00
Ashley Harrison
ca53f5c8da Navigation: Implement active state for items in the Sidemenu (#39030)
* Navigation: Implement active state for items in the Sidemenu

* Navigation: Improve logic for when link is active and extract isSearchActive into a util function

* Navigation: Implement custom rule for dashboards under /d/ and fix minor bugs

* Navigation: only show first matching active state + strip query params from link urls
2021-09-13 16:49:27 +01:00
Will Browne
1a71f0fe13 Chore: Add WARN log if grafana server process is running with elevated privileges (#35205)
* warn on linux

* add warning for grpc plugins

* add windows support

* update go.mod

* reorganize imports

* update naming

* remove Windows logic

* simplify and add check for when UID and EUID don't match

* fix build

* tidy go.mod

* feedback

* cleanup + migrate
2021-09-13 17:46:47 +02:00
Will Browne
40267f5ea0 Plugins: Fix "too many open files" error when verifying signature of plugin with many files (#39100)
* close file at loop end

* less tired approach
2021-09-13 17:46:26 +02:00
Maria Alexandra
04e7736cba Variables: Fix not updating inside a Panel when the preceding Row uses "Repeat For" (#38935)
Added a condition to the `repeatRow` function to only update GridPos if we actually rendered more than 1 repeated row.
2021-09-13 16:47:01 +02:00
Dan Cech
9dfd469afc add daily active counts to stats (#38842)
* add daily active counts to stats

* standardize on int64, update tests
2021-09-13 10:29:35 -04:00
Michael Kopinsky
baff8fe39d Add link to default template (#39106)
This would have been useful to me. Perhaps it would be useful to others?
2021-09-13 10:29:23 -04:00
Alexander Kubyshkin
82f5fb7d6d QueryEditor: Fix copy-paste with unicode special symbol (#39117) 2021-09-13 15:46:43 +02:00
Serge Zaitsev
e1e385b318 Chore: Remove untyped data map from macaron context (#39077) 2021-09-13 15:41:03 +02:00
Marcus Efraimsson
1c892a2fc4 Postgres/MySQL/MSSQL: Add setting to limit maximum amount of rows processed (#38986)
Adds a new setting dataproxy.row_limit that allows an operator to limit the 
amount of rows being processed/accepted in response to database queries 
originating from SQL data sources.

Closes #38975
Ref #39095

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-09-13 15:27:51 +02:00
Yuriy Tseretyan
5b7dc16c06 Alerting: Clarify group by label in documentation of notification policies (#39105)
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-09-13 09:03:06 -04:00
Domas
f38c8a2b2b Chore: infer combined reducer state types (#39118) 2021-09-13 16:00:41 +03:00
Ivana Huckova
f172701043 IntervalV2: Use maxDataPoints to calculate correct interval (#39036)
* Use max data points to calculate interval

* Fix mockCalculator to mach Calculator

* Fix incorrect merge, replace queryModel with query
2021-09-13 14:58:32 +02:00
Dominik Prokop
b97e2da2bf Table panel: Make sure width of the tooltip is correct (#39086) 2021-09-13 14:03:32 +02:00
Serge Zaitsev
abfdfcf405 Plugins: Support multiple HTTP methods in plugin.json routes (#39069)
* Fix: support comma-separated methods in plugin.json

* update docs about multiple methods per route
2021-09-13 13:32:11 +02:00
Gábor Farkas
e055ba3525 prometheus: monaco: improved suggestion-displaying (icons, help-text) (#38977)
* prometheus: monaco: better icons in popup

* prometheus: monaco: add help-text to functions

* prometheus: monaco: add help-text to metrics

* better help-text
2021-09-13 12:36:18 +02:00
Piotr Jamróz
88ad9aad42 Explore: Ensure logs volume bar colors match legend colors (#39072)
* Ensure logs volume bar colors match legend colors

* Fix tests
2021-09-13 11:11:49 +02:00
Piotr Jamróz
15b8b738f3 Graphite: Fix Graphite Editor not loading (#39116) 2021-09-13 10:04:52 +02:00
shuotli
b49045794c remove untitled file (#39060) 2021-09-13 09:39:06 +02:00
Alexander Kubyshkin
3cf3e02596 Thresholds: Fix undefined color in "Add threshold" #39113 2021-09-13 07:11:13 +02:00
sam boyer
f8d79d301c Rename Family to Panel in models.cue (#39111) 2021-09-12 14:34:33 -04:00
Ivana Huckova
4952f6fc58 Prometheus: Add interpolation for built-in-time variables to backend (#39051)
* Add grafana variable interpolation to backend

* Remove newlines
2021-09-10 22:56:15 +02:00
Emruz Hossain
a30f560b35 Doc: Fix table not rendering properly in datasources/prometheus.md (#39084)
Signed-off-by: Emruz Hossain <emruz@appscode.com>
2021-09-10 15:39:40 -04:00
Zoltán Bedi
94f1173824 Explore: Refactor graph component to use PanelRenderer (#38914)
* Move SplitOpenFn type to grafana-data

* Use panel renderer instead of Timeseries panel for graph in Explore

* rename splitopen props on panel context
2021-09-10 18:18:22 +02:00
Ryan McKinley
ddd110d0b2 Geomap: include sample geojson files (#39057) 2021-09-10 09:05:03 -07:00
Marcus Efraimsson
0bb7d50ad6 Docs: Improve v8 upgrade notes for SQL data sources (#38792)
Improves SQL data sources documentation in regards to Grafana 8 changes 
and adds some additional upgrade notes in regards to this.

Ref #35390
Ref #38666

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-09-10 17:38:09 +02:00
Jack Westbrook
c9620b2202 Catalog: Add update text to PluginListCard (#39087)
* feat(catalog): add update info to PluginListCard

* refactor(catalog): use IconName enum and minor styling changes to PluginHeaderDependencies

* fix(catalog): add a semver range to grafanaVersion for dependency checks in InstallControls
2021-09-10 17:17:57 +02:00
Carl Bergquist
cbf16bebc6 CDN: always look for files in the root folder (#39092)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
2021-09-10 16:48:13 +02:00
Ryan McKinley
6bda64cb19 Grafana: include a built-in backend datasource (#38571) 2021-09-10 07:44:47 -07:00
Alexander Emelin
f74421b892 update centrifuge to v0.18.3 (#39085) 2021-09-10 17:20:05 +03:00
Alexander Emelin
2a6871d64e Chore: build on armv6 to catch 32-bit CPU problems (#39078) 2021-09-10 17:10:47 +03:00
Connor Lindsey
b89f8fdfcb Explore: Trace view now shows trace start time in selected timezone (#39054) 2021-09-10 07:52:59 -06:00
Dimitris Sotirakis
ba9d5540b8 Datasources: Introduce response_limit for datasource responses (#38962)
* Introduce response_limit for datasource responses

* Fix lint

* Fix tests

* Add case where limit <= 0 - added parametrized tests

* Add max_bytes_reader.go

* Use new httpclient.MaxBytesReader instead of net/http one

* Fixes according to reviewer's comments

* Add tests for max_bytes_reader

* Add small piece in configuration.md

* Further fixes according to reviewer's comments

* Fix linting - fix test
2021-09-10 16:51:06 +03:00
Alexander Emelin
5fcc9fe193 temporary switch to alternative jsonpath implementation (#39090)
to work with go1.16 and avoid replace in go.mod
2021-09-10 16:24:31 +03:00
Dominik Prokop
e68bf87de1 GraphNG: Remove plot context (#38928)
* Remove plot ctx usage: Tooltip plugin

* Remove plot ctx usage: Context menu plugin

* Remove plot ctx usage: Annotations plugin

* Remove plot ctx usage: Exemplars plugin

* Remove plot ctx usage: EventsCanvas plugin

* Remove plot ctx usage: EventsCanvas/XYCanvas plugin

* Remove plot ctx usage: AnnotationEditor plugin

* Remove plot ctx usage: AnnotationMarker

* Remove plot context

* Do not throw react warnings from uPlot performed hooks
2021-09-10 13:50:21 +02:00
Carl Bergquist
c979b5d868 Upgrade the build pipeline to 2.4.5 (#39080)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
2021-09-10 13:21:44 +02:00
Dominik Prokop
92d736665a TimeSrv: Do not update URL multiple times for same, consecutive range updates (#39083) 2021-09-10 13:05:34 +02:00
Alexander Emelin
e78d880db3 tmp replace of ojg lib to fix builds on 32-bit CPU (#39074) 2021-09-10 13:14:16 +03:00
Sofia Papagiannaki
7af329f385 Alerting: Fix API specification (#38753)
* Alerting: Fix API spec

* Add missing status codes
2021-09-10 12:46:02 +03:00
Levente Balogh
9173898fd6 Plugins Catalog: show Grafana and plugin dependencies (#39062)
* fix(@grafana/data): add a missing optional field to the plugin types

* refactor(Plugins/ADmin): use the type from @grafana/data for plugin dependencies

* fix(Datasources/Graphite): add missing `state` to useEffect dependencies

* refactor(Plugins/Admin): remove unnecessary comment

* feat(Plugins/Admin): add plugin and grafana dependencies to the CatalogPluginDetails

* feat(Plugins/ADmin): show Grafana dependency under plugin details

* feat(Plugins/Admin): show grafana and plugin dependencies for a plugin

* test(Plugins/Admin): add a smoke test for plugin dependencies

* refactor(Plugins/Admin): remove unused style from the header
2021-09-10 11:32:21 +02:00
Hugo Häggmark
fc73bc1161 LibraryElements: Enables creating library elements with specific UID (#39019)
* LibraryPanels: Enables create/update library panels with specific UID

* Chore: added check for uid length after PR comments

* Refactor: creates IsShortUIDTooLong function

* Refactor: adds UID to PATCH endpoint

* Refactor: clarifies the patch code

* Refactor: changes  after PR comments
2021-09-10 11:22:13 +02:00
Gábor Farkas
580b03c952 grafana-ui: monaco dependencies updated (#39027) 2021-09-10 10:36:43 +02:00
Ryan McKinley
be2e9d3501 Live: remove the 'canPublish' check from the UI (#39016) 2021-09-09 09:52:01 -07:00
Sergey Kostrukov
06a616e630 Update Azure SDK with bug fixes (#38952) 2021-09-09 17:32:36 +01:00
gotjosh
39a3bb8a1c Alerting: Persist notification log and silences to the database (#39005)
* Alerting: Persist notification log and silences to the database

This removes the dependency of having persistent disk to run grafana alerting. Instead of regularly flushing the notification log and silences to disk we now flush the binary content of those files to the database encoded as a base64 string.
2021-09-09 17:25:22 +01:00
Alexander Emelin
3ee861f57e Live: declarative processing pipeline, input -> frames -> output, toggle protected POC (#37644) 2021-09-09 19:19:29 +03:00
Carl Bergquist
d19f33b52f Annotations: don't log context.Cancelled as an error when cleaning up (#39024)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
2021-09-09 18:13:14 +02:00
Sofia Papagiannaki
b56bf83c19 Alerting: Fix notification channel migration (#38983) 2021-09-09 18:53:06 +03:00
Connor Lindsey
5511383070 Explore: Add more error handling to Tempo trace download (#39045) 2021-09-09 09:49:45 -06:00
Alexander Emelin
84e821bdef Chore: update plugin sdk to v0.113.0 (#39040) 2021-09-09 08:18:07 -07:00
jcolladokuri
aa45eebf3d Azure Monitor: changed ARG API version to 2021-06-01-preview (#38951)
* changed ARG API version to 2021-06-01-preview

* Fixing lint error
2021-09-09 17:00:16 +02:00
Dominik Prokop
1a566bef47 Alerting/Annotations: Bring back metrics and alert state to annotations tooltip (#39035)
* Normalize alert state name for UI descriptor retrieval

* Bring back alert state and metric values to annotation tooltip

* Make sure alert state is only shown when present

* Update test

* Handle Error alerting satte
2021-09-09 16:58:27 +02:00
dependabot[bot]
f7d105174b Bump axios from 0.21.1 to 0.21.2 (#39020)
Bumps [axios](https://github.com/axios/axios) from 0.21.1 to 0.21.2.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/master/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v0.21.1...v0.21.2)

---
updated-dependencies:
- dependency-name: axios
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-09-09 16:50:50 +02:00
Kyle Brandt
fb14769383 Macaron: Continue on invalid slice type to avoid panic (#39004)
Makes the panic go away.
Otherwise I get a reflect: call of reflect.Value.Interface on zero Value
2021-09-09 10:32:18 -04:00
Todd Treece
6e667cacee Alerting: Skip query cache for alert queries (#39010) 2021-09-09 16:16:05 +02:00
Yuriy Tseretyan
6c2884ac37 Alerting: Fix notifier tests to close the temp file (#38992) 2021-09-09 09:56:42 -04:00
Serge Zaitsev
4c921cf120 remove default return handler from macaron (#38887) 2021-09-09 15:41:34 +02:00
Kevin Minehart
792fa63725 set opts.version after getting version from package.json (#39038) 2021-09-09 15:40:08 +02:00
Connor Lindsey
e3c11d2682 Explore: Add filter by trace and span ID to trace to logs feature (#38943)
* Add filter by trace and span ID to trace to logs feature

* Update settings screenshot
2021-09-09 07:24:08 -06:00
Giordano Ricci
dc36f15fbb Prometheus: Revert stepMode functionality (#38982)
* Revert "Prometheus: add functionality to specify desired step interval in dashboards panels (#36422)"

This reverts commit ddf5b65c51.
Co-authored-by: Ivana Huckova <ivana.huckova@gmail.com>

* Revert "Explore: add functionality for supporting different step modes in prometheus (#37829)"

This reverts commit f433cfd8d9.
Co-authored-by: Ivana Huckova <ivana.huckova@gmail.com>

* Revert stepMode BE implementation from #36796
Co-authored-by: "Ivana Huckova" <ivana.huckova@gmail.com>
2021-09-09 14:05:08 +02:00
Hugo Häggmark
419ead99aa Annotations: Fixes blank panels for queries with unknown data sources (#39017)
* Annotations: Fixes blank panels for queries with unknown data sources

* Chore: fixes strict typescript error
2021-09-09 13:43:05 +02:00
Levente Balogh
1133e56006 Plugins Catalog: migrate state handling to Redux (#38876)
* feat(Plugins/Catalog): start adding necessary apis

* feat(PLugins/Catalog): add extra helpers for merging local & remote plugins

* feat(Plugins/Catalog): add plugin details as an optional field of CatalogPlugin

* feat(PLugins/Catalog): add scaffolding for the new redux model

* feat(PLugins/Catalog): export reducers based on a feature-flag

* refactor(Plugins/Admin): rename api methods

* feat(Plugin/Catalog): add an api method for fetching a single plugin

* feat(Plugins/Admin): try cleaning stuff around plugin fetching

* ffeat(Plugins/Catalog): return the catalog reducer when the feature flag is set

* refactor(Plugins/Admin): fix typings

* feat(Plugins/Admin): use the new reducer for the browse page

* feat(catalog): introduce selectors to search and filter plugins list

* refactor(Plugins/Details): rename page prop type

* refactor(Plugins/Admin): add a const for a state prefix

* refactor(Plugins/Admin): use the state prefix in the actions

* feat(Plugins/Admin): add types for the requests

* refactor(Plugins/Admin): add request info to the reducer

* refactor(Plugins/Admin): add request handling to the hooks & selectors

* refactor(Plugins/Details): start using the data stored in Redux

* refactor(Plugins/Admin): rename selector to start with "select"

* fix(Plugins/Admin): only fetch plugins once

* refactor(Plugins/Admin): make the tab selection work in details

* refactor(catalog): put back loading and error states in plugin list

* refactor(Plugins/Admin): use CatalogPlugin for <PluginDetailsSignature />

* feat(Plugins/Admin): add an api method for fetching plugin details

* refactor(Plugins/Admin): add action for updating the details

* irefactor(Plugins/Admin): show basic plugin details info

* refactor(Plugin Details): migrate the plugin details header

* refactor(Plugins/Admin): make the config and dashboards tabs work

* refactor(Plugins/Admin): add old reducer state to the new one

* feat(catalog): introduce actions, reducers and hooks for install & uninstall

* refactor(catalog): wire up InstallControls component to redux

* refactor(catalog): move parentUrl inside PluginDetailsHeader and uncomment InstallControls

* feat(catalog): introduce code for plugin updates to install action

* refactor(Plugins/Admin): add backward compatible actions

* test(catalog): update PluginDetails and Browse tests to work with catalog store

* refactor(Plugins/Admin): make the dashboards and panels work again

* refactor(Plugins/Admin): fix linter and typescript errors

* fix(Plugins/Admin): put the local-only plugins to the beginning of the list

* fix(Plugins/Admin): fix the mocks in the tests for PluginDetails

* refactor(Plugins/Admin): remove unecessary hook usePluginsByFilter()

* refactor(Plugins/Admin): extract the useTabs() hook to its own file

* refactor(Plugins/Admin): remove unused helpers and types

* fix(Plugins/Admin): show the first tab when uninstalling an app plugin

This can cause the user to find themselves on a dissappeared tab, as the
config and dashboards tabs are removed.

* fix(catalog): correct logic for checking if activeTabIndex is greater than total tabs

* fix(Plugins/Admin): fix race-condition between fetching plugin details and all plugins

* fix(Plugins): fix strict type errors

* chore(catalog): remove todos

* feat(catalog): render an alert in PluginDetails when a plugin cannot be found

* feat(catalog): use the proper store state

* refactor(Plugins/Admin): fetch local and remote plugins in parallell

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>

* style(catalog): fix prettier error in api

* fix(catalog): prevent throwing error if InstallControlsButton is unmounted during install

* refactor(Plugins/Admin): add a separate hook for filtering & sorting plugins

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2021-09-09 12:20:35 +02:00
Ashley Harrison
e4ca6f2445 Sidemenu: Refactor Sidemenu to use emotion (#38995)
* Chore(Sidemenu): Refactor Sidemenu scss into emotion

* Fix unit test

* Sidemenu: use cx instead of template strings
2021-09-09 09:56:08 +01:00
Dimitris Sotirakis
78b3847014 Copy cue.mod and packages/grafana-schema to container workdir (#38998) 2021-09-09 08:54:36 +03:00
Erik Sundell
cf83d55db9 bump latest (#38991) 2021-09-09 07:28:35 +02:00
Hugo Häggmark
bfb34b9c1a LibraryPanels: Prevents changing the folder when saving an existing library panel (#38978) 2021-09-09 06:21:31 +02:00
Ryan McKinley
a960aae4e7 Timeseries: add wide-to-long, and fix the multi-frame output (#38670)
Co-authored-by: Douglas Thrift <dthrift@flexera.com>
2021-09-08 23:44:51 +02:00
leplan73
258e2cd91e #31983 Changed regexp (#38642) 2021-09-08 11:20:13 -04:00
Andrej Ocenas
91a67ab0fb CloudWatch/Logs: Don't group dataframes for non time series queries for non live path (#38915)
* Use the same grouping function in legacy code

* Add error propagation

* Fix tests

* Fix tests
2021-09-08 16:30:55 +02:00
Erik Sundell
5e38b02f94 Cloudwatch: Migrate queries that use multiple stats to one query per stat (#36925)
* migrate queries that use multiple stats - squash commits

* fix typo
2021-09-08 16:06:43 +02:00
Santiago
ae9343f8ae Clear ngalert configuration table (#38940) 2021-09-08 10:48:50 -03:00
Ashley Harrison
e639b220ce Sidemenu: Use <a> instead of <Link> when target is present (#38987) 2021-09-08 14:39:49 +01:00
Connor Lindsey
6a39ac7407 Explore: Download traces as JSON in Explore Inspector (#38614)
* Transform dataframe to jaeger format

* Transform dataframe to Zipkin format

* Add endpoint type and shared to Zipkin

* Transform dataframe to OTLP format

* Add data tab tests and note in inspector docs

* Remove comments and logs

* Resolve typescript strict errors

* Update docs/sources/explore/explore-inspector.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs

* Improve OTLP conversion to include service info and additional tags

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-09-08 07:04:27 -06:00
Marcus Andersson
3bb2ee9de6 Plugins: added the possibility to manage field config state outside of the panel renderer. (#38944) 2021-09-08 15:02:44 +02:00
Grot (@grafanabot)
7f49ad4152 ReleaseNotes: Updated changelog and release notes for 8.1.3 (#38972)
* ReleaseNotes: Updated changelog and release notes for 8.1.3

* ReleaseNotes: Updated changelog and release notes for 8.1.3

Co-authored-by: Erik Sundell <erik.sundell@grafana.com>
2021-09-08 13:33:42 +02:00
Gabriel MABILLE
8585273c29 AccessControl: Restrict more the access to the data sources configuration tab (#38966)
Co-authored-by: Emil Tullstedt <sakjur@users.noreply.github.com>
2021-09-08 13:15:21 +02:00
George Robinson
5caf6cb369 Change templateCaptureValue to support using template functions (#38766)
* Change templateCaptureValue to support using template functions

This commit changes templateCaptureValue to use float64 for the value
instead of *float64. This change means that annotations and labels can
use the float64 value with functions such as printf and avoid having to
check for nil. It also means that absent values are now printed as 0.

* Use math.NaN() instead of 0 for absent value
2021-09-08 10:46:15 +01:00
Hugo Häggmark
17f9bc138e LibraryPanels: Fixes update issues related to library panels in rows (#38963) 2021-09-08 10:53:55 +02:00
Ashley Harrison
b82fe083d7 Sidemenu: Refactor SignIn to use SideMenuItem (#38882) 2021-09-08 09:48:30 +01:00
Gábor Farkas
cbdba57924 Prometheus: fix popup positioning in monaco-based query-field (#38964)
* prometheus: monaco: fix popup positioning

* added explanation comment
2021-09-08 10:23:59 +02:00
Gabriel MABILLE
e9631fdf7c AccessControl: "Add data source" button needs create and write rights to be enabled (#38934) 2021-09-08 09:47:55 +02:00
Ryan McKinley
10ffc9a754 Tables: optionally show field type icon in tables (#38855) 2021-09-08 00:44:41 -07:00
Oscar Kilhed
ecf40f0331 PieChart: Display "No data" when there is no data (#38808)
PieChart: Display "No data" when there is no data
2021-09-08 09:07:09 +02:00
Will Browne
40643ee023 track signature files + add warn log (#38938) 2021-09-08 08:49:05 +02:00
Djairho Geuens
0383becc46 OAuth: Make generic teams URL and JMES path configurable (#37233)
OAuth: Make generic teams URL and JMES path configurable
2021-09-07 19:57:20 -05:00
Marcus Efraimsson
fbdaf56a84 Postgres/MySQL/MSSQL: Fix region annotations not displayed correctly (#38936)
Fix region annotations not displayed correctly when returning timeend column 
as epoch timestamp and by that making sure that the returned data frame field 
named timeend is treated as time type.

Fixes #38533
2021-09-08 01:54:48 +02:00
Ryan McKinley
9aa03acfa6 Chore: remove sql testdata (#38945) 2021-09-07 16:35:52 -07:00
Alexander Emelin
342b1426e5 live: update centrifuge to v0.18.2 (#38925) 2021-09-07 21:05:24 +03:00
An
b14b267bed Canvas Panel: icon/image select modal (#38844)
* feature: add icon modal

* fix: make apply send on change

* move to resource folder

* allow empty

* type

* icon modal

* fix: edit styles

* fix: edit styles

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-09-07 19:46:20 +02:00
Torkel Ödegaard
51776e6bd3 UsageStats: Add connected users and client (#38811) 2021-09-07 18:50:28 +02:00
Ashley Harrison
b24a4630a6 Chore(Navigation): Add feature toggle for new navigation work (#38929) 2021-09-07 17:24:44 +01:00
Gabriel MABILLE
a811d7d76f Access control: Add a scope to Data Sources GET endpoint (#38933) 2021-09-07 17:13:11 +02:00
Andreas Gerstmayr
4e22823a49 uPlot: Fix default value for plot legend visibility (#36660)
Fixed the condition, as the last part of `!seriesConfig.show ?? false`
will never be evaluated because `!seriesConfig.show` always yields a
boolean.
2021-09-07 16:20:29 +02:00
Ivana Huckova
19d4213df6 Prometheus: Fix validate selector in metrics browser (#38921)
* Fix match[] param in loki and prometheus

* Update loki series match param
2021-09-07 15:44:45 +02:00
Ashley Harrison
9ce5edfa6b Docs: Update 'Whitelisted' to 'Allowed' per style guide (#38897)
* Docs: Updated 'Whitelisted' to 'Accepted' to match what's shown in the frontend now.

* Apply suggestions from code review

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

* Docs: Update frontend to match docs

* kick drone

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-09-07 13:30:26 +01:00
Hugo Häggmark
8826540c09 Dashboard: Forces panel re-render when exiting panel edit (#38913) 2021-09-07 12:46:21 +02:00
Torkel Ödegaard
a7c367968c Docs: Clarify delta value (#38824) 2021-09-07 12:10:13 +02:00
Dimitris Sotirakis
5f10843203 Chore: Rename scripts/star dir to scripts/drone (#38910)
* Rename scripts/star dir to scripts/drone

* Update CODEOWNERS after paths change
2021-09-07 12:15:04 +03:00
Hugo Häggmark
058ac6becf Chore: Bumps Immer, Redux Toolkit, Redux and React Redux (#38872)
* Chore: Bumps immer and redux/toolkit

* WIP: transpile errors

* Chore: bumps redux and react redux

* Chore: removes unused dispatch

* make alerting compile with updated redux toolkit

* Test: Fixes broken test

* Chore: fixes strict errors

Co-authored-by: Domas <domasx2@gmail.com>
2021-09-07 10:44:47 +02:00
Gábor Farkas
3f0f448201 influxdb: influxql: explicit min-interval check (#38873)
* influxdb: influxql: explicit min-interval check

* added test
2021-09-07 09:49:34 +02:00
Alex Khomenko
9f833681b1 Docs: Fix typos in merge pull request guide (#38904)
* Fix typos

* Update contribute/merge-pull-request.md

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2021-09-07 09:46:10 +02:00
ying-jeanne
c989f0fbbe SQL: Migrate to use SDK contracts (#36635)
* convert SQLs to use sdk contracts

* make draft

* postgres

* intermedia

* get datasourceinfo filled at the beginning of the service

* move the interval into package because of cyclict  import and fix all postgres tests

* fix mysql test

* fix mssql

* fix the test for pr https://github.com/grafana/grafana/issues/35839

* fix some issue about intervalv2 package

* update sql test

* wire migration for SQLs

* add sqls to the background process

* make it register instead of register and start

* revert formatting

* fix tests

* fix linter

* remove integration test

* Postgres test fix

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2021-09-07 09:35:37 +02:00
Serge Zaitsev
51aeb717a4 inject modified request into context (#38807) 2021-09-07 09:23:16 +02:00
Dimitris Sotirakis
2316c3942b Chore: Tidy up starlark files into folders (#38874)
* Tidy up starlark files into folders

* Rename steps

* Make sure lib.star only contain steps - added services.star and utils.star
2021-09-07 10:21:49 +03:00
sam boyer
269c01ea5c Chore: fix function name spelling (#38901)
Should be appendTransformerAfter().
2021-09-06 21:15:39 -07:00
sam boyer
96473004db Refactor dashboard scuemata to introduce composition slots, allow unspecified panels to validate, and re-enable devenv validation (#38727)
* Re-enable devenv dashboard validation

* Open up dashboard schema composition points

* Introduce composition space at front of scuemata

* Refactor go code to use new composition structure

* Bunch of small cleanups in dashboard.cue

* Enable both base and dist tests of devenv

* Get rid of obsolete CUE loading hacks

* Skip weird failures on these tests

Really don't seem to be testing for what we intend them to be testing
for.
2021-09-06 18:53:42 -04:00
Marcus Efraimsson
0ecc24d1c0 Docs: Contribution guideline for merging pull requests (#38800)
Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
2021-09-06 17:13:13 +02:00
Marcus Andersson
49f7278063 OAuth: add docs for disableAutoLogin param (#38752)
* OAuth: add docs for disableAutoLogin param

* Apply suggestions from code review

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* OAuth: add availability note for disableAutoLogin

* Update docs/sources/auth/overview.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/auth/overview.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: Alexander Zobnin <alexanderzobnin@gmail.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-09-06 16:55:30 +02:00
Maria Alexandra
98dc925175 Dashboard: Fix UIDs are not preserved when importing/creating dashboards thru importing .json file (#38659)
* Dashboard: Fix UID not preserved on import

* Import Dashboard: add e2e test to verify uid is preserved when importing dashboard

* E2e: Use dynamic uid

* Tests: fixes e2e test

* Chore: adds back waits

Co-authored-by: Hugo Häggmark <hugo.haggmark@gmail.com>
2021-09-06 15:50:28 +01:00
Myrle Krantz
dc381dbf8e Improving "Accepted Cookies" terminology (#38886)
Updating text to be more descriptive and inline with our values.
2021-09-06 15:28:31 +01:00
Gabriel MABILLE
cf7034ee50 AccessControl: add permission to datasource permissions navigation selection (#38758) 2021-09-06 16:18:18 +02:00
Ivana Huckova
d5956ce4b7 Loki: Fix error handling, remove legacy condition (#38633)
* Fix error handling, remove legacy condition

* Fix strict errors in Loki and lower error count

* Update
2021-09-06 15:28:54 +02:00
shuotli
d2f3bb6491 Azure Monitor: Add Azure resource overview dashboard (#38801)
* Add azure resource overview dashboard

* fix width
2021-09-06 09:44:45 +02:00
Gábor Farkas
6cab44d73a InfluxDB: InfluxQL: handle new-alerting better (#37588)
* influxdb: influxql: alert: use already-computed interval-value when available

* reverted by-mistake changed import

* simplify code

now we can rely on DataQuery.Interval always being good

* removed unnecessary test

* fix lint-error
2021-09-06 09:33:07 +02:00
Gábor Farkas
01f1c550bf old-alert: interval calculation: apply default-min-interval of 1ms (#38835) 2021-09-06 09:24:32 +02:00
Uchechukwu Obasi
774f0a0d01 e2e guide: improves data-testid code snippet to be clear and understandable (#38791) 2021-09-06 07:03:02 +01:00
Hugo Häggmark
3b0910e470 LibraryPanels: Prevents duplicate repeated panels from being created (#38804)
* LibraryPanels: Prevents duplicate repeated panels from being created

* Tests: adds tests

* Chore: updates after PR feedback
2021-09-06 05:57:01 +02:00
Kevin Minehart
d913e46e37 Chore: move build command to importable package (#38726)
* move build command to importable package & clean up
2021-09-03 11:24:21 -05:00
MichaIng
68c7d054bf Update PID file location form /var/run to /run (#35739)
Signed-off-by: MichaIng <micha@dietpi.com>
2021-09-03 10:50:13 -05:00
nikki-kiga
2a2f10da7e Transformations: Use fieldMatchers for convertFieldType and add doc (#38769) 2021-09-03 04:18:06 +02:00
Will
caef39b6a4 Chore: fix typo (#38838) 2021-09-02 19:14:17 -07:00
nikki-kiga
9e7ad70e5d FieldNamePicker: Add preview details for field type and values (#38768)
* add field type and values preview to picker

* add more details to description

* add icon to Select and specify icons for FieldType

* remove description
2021-09-02 17:04:02 -07:00
achatterjee-grafana
27e1c49534 Fixed a couple of broken relrefs. (#38833) 2021-09-02 20:11:25 +02:00
Ryan McKinley
9a0040c0ae Canvas: add alpha canvas panel and initial interfaces (#37279) 2021-09-02 10:01:08 -07:00
Sofia Papagiannaki
c19d65b1ad Alerting: some fixes for updating rules via the API (#38764)
* Alerting: Allow updating rules if quota are exceeded

* Check for rule UID uniqueness in POST request
2021-09-02 19:38:42 +03:00
Dimitris Sotirakis
e5cdf9e4d1 Add type/ci as label on CI related file changes (#38831) 2021-09-02 18:22:51 +02:00
gotjosh
dd502f22eb Alerting: Fix alert flapping in the internal alertmanager (#38648)
* Alerting: Fix alert flapping in the alertmanager

fixes a bug that caused Alerts that are evaluated at low intervals (sub 1 minute), to flap in the Alertmanager.
Mostly due to a combination of `EndsAt` and resend delay.

The Alertmanager uses `EndsAt` as a heuristic to know whenever it should resolve a firing alert, in the case that it hasn't heard
back from the alert generation system.

Because grafana sent the alert with an `EndsAt` which is equal to the `For` of the alert itself,
and we had a hard-coded 1 minute re-send delay (only applicable to firing alerts) this meant that a firing alert would resolve in the Alertmanager before we re-notify that it still firing.

This commit, increases the `EndsAt` by 3x the the resend delay or alert interval (depending on which one is higher). The resendDelay has been decreased to 30 seconds.
2021-09-02 16:22:59 +01:00
Giordano Ricci
7f1327d1ed Elasticsearch: Prevent pipeline aggregations to show up in terms order by options (#38448)
* Elasticsearch: Prevent pipeline aggregations to show up in terms order by options

* fix optional props

* Refactor & add tests

* Fix & lower strict ts count

* Update public/app/plugins/datasource/elasticsearch/components/QueryEditor/BucketAggregationsEditor/SettingsEditor/TermsSettingsEditor.test.tsx

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>

* Update public/app/plugins/datasource/elasticsearch/components/QueryEditor/BucketAggregationsEditor/SettingsEditor/TermsSettingsEditor.test.tsx

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
2021-09-02 16:00:40 +02:00
Connor Lindsey
fb17f053d3 Explore: Standardize trace query field styling (#38796) 2021-09-02 07:30:11 -06:00
Ashley Harrison
ea65e11c44 Sidemenu: Various accessibility improvements (#38823) 2021-09-02 14:17:57 +01:00
erdnaxe
5f521bd9ae packaging: systemd unit hardening (#38109) 2021-09-02 07:36:35 -05:00
Zoltán Bedi
7e6cf14c84 Fix: Include Buffer in webpack build (#38819) 2021-09-02 14:18:07 +02:00
malcolmholmes
b22c2543d0 Build: Upgrade grabpl to 2.4.2 (#38820) 2021-09-02 13:03:32 +01:00
Friedrich Mäckle
8c8ccc8b91 Check navigator property exists before accessing it (#38745)
* Check navigator property exists before acecssing it

* fix: pass undefined to Intl.DateTimeFormat if no locale can be determined

* Update packages/grafana-data/src/datetime/formats.ts

replacing ternary by or

Co-authored-by: Ashley Harrison <ashharrison90@gmail.com>

Co-authored-by: Ashley Harrison <ashharrison90@gmail.com>
2021-09-02 11:47:25 +01:00
Dimitris Sotirakis
a5ce61b539 Chore: Update to alpine:3.14.2 (#38813)
* Update apline to 3.14.2

* Remove libcrypto1.1 libssl1.1 version dependencies

* Update grabpl version
2021-09-02 12:57:11 +03:00
blackmetal23
fe65021c14 Update Dockerfile (#38785)
Update alpine 3.14.1 to 3.14.2
CVE : https://github.com/alpinelinux/docker-alpine/issues/199
2021-09-02 11:45:33 +03:00
Kyle Brandt
f524cdb5ee devenv: update prom random_data for go1.17 (use go install) (#38763)
* devenv: update prom random_data for go1.17 (use go install)
* restore env vars and tags to install cmd
2021-09-02 10:32:09 +02:00
Piotr Jamróz
bd95856ff9 Graphite: Migrate to React (part 6: Remove AngularJS Query Editor) (#37919)
* Add UMLs

* Add rendered diagrams

* Move QueryCtrl to flux

* Remove redundant param in the reducer

* Use named imports for lodash and fix typing for GraphiteTagOperator

* Add missing async/await

* Extract providers to a separate file

* Clean up async await

* Rename controller functions back to main

* Simplify creating actions

* Re-order controller functions

* Separate helpers from actions

* Rename vars

* Simplify helpers

* Move controller methods to state reducers

* Remove docs (they are added in design doc)

* Move actions.ts to state folder

* Add docs

* Add old methods stubs for easier review

* Check how state dependencies will be mapped

* Rename state to store

* Rename state to store

* Rewrite spec tests for Graphite Query Controller

* Update docs

* Update docs

* Add GraphiteTextEditor

* Add play button

* Add AddGraphiteFunction

* Use Segment to simplify AddGraphiteFunction

* Memoize function defs

* Fix useCallback deps

* Update public/app/plugins/datasource/graphite/state/helpers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/helpers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/helpers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Add more type definitions

* Remove submitOnClickAwayOption

This behavior is actually needed to remove parameters in functions

* Load function definitions before parsing the target on initial load

* Add button padding

* Fix loading function definitions

* Change targetChanged to updateQuery to avoid mutating state directly

It's also needed for extra refresh/runQuery execution as handleTargetChanged doesn't handle changing the raw query

* Fix updating query after adding a function

* Simplify updating function params

* Migrate function editor to react

* Simplify setting Segment Select min width

* Remove unnecessary changes to SegmentInput

* Extract view logic to a helper and update types definitions

* Clean up types

* Update FuncDef types and add tests

* Show red border for unknown functions

* Autofocus on new params

* Extract params mapping to a helper

* Split code between params and function editor

* Focus on the first param when a function is added even if it's an optional argument

* Add function editor tests

* Remove todo marker

* Fix adding new functions

* Allow empty value in selects for removing function params

* Add placeholders and fix styling

* Add more docs

* Create basic implementation for metrics and tags

* Post merge fixes

These files are not .ts

* Remove mapping to Angular dropdowns

* Simplify mapping tag names, values and operators

* Simplify mapping metrics

* Fix removing tags and autocomplete

* Simplify debouncing providers

* Ensure options are loaded twice and segment is opened

* Remove focusing new segments logic (not supported by React's segment)

* Clean up

* Move debouncing to components

* Simplify mapping to selectable options

* Add docs

* Group all components

* Remove unused controller methods

* Create Dispatch context

* Group Series and Tags Sections

* Create Functions section

* Create Section component

* use getStyles

* remove redundant async/await

* Remove

* remove redundant async/await

* Remove console.log and silent test console output

* Do not display the name of the selected dropdown option

* Move Section to grafana-ui

* Update storybook

* Simplify SectionLabel

* Fix Influx tests

* Fix API Extractor warnings

* Fix API Extractor warnings

* Do not show hidden functions

* Use block docs for better doc generation

* Handle undefined values provided for autocomplete

* Basic integration

* Move creating state to context.tsx

* Update tests

* Rename test

* Clean up dependencies

panel.targets is not needed for interpolation - it happens in the data source itself. It was used only to show query ref in the the dropdown for the segment.

* Update time range when it changes

* Change action name

* Simplify segments cloning

* Remove redundant variable

* Use styles instead of direct css

* Update docs

* Remove angular wrappers

* Remove redundant tests

* Section -> SegmentSection

* Simplify section styling

* Remove redundant div

* Fix unit tests

* Simplify SegmentSection component

* Use theme.spacing

* Use empty label instead of a single space label

* Remove targetFull

It was used in the past two store the query interpolated with sub-queries inside the model and send both to the backed (interpolated and not interpolated). This has been changed though - the logic has been moved away from model to the data source where interpolation happens and now only interpolated query is passed meaning targetFull is not needed anymore.

* Revert "Remove targetFull"

This reverts commit 499f8b33

* Bring back calculating targetFull

* Clean up

* Add missing dep

* Add missing dep in tests

* Fix time range synchronization

* Fix warning message

* Remove unused type

* Synchronize changes to the query

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2021-09-02 10:18:14 +02:00
Piotr Jamróz
f941390631 Deprecate browser access mode for the Graphite data source. (#38783)
* Deprecate browser access mode for Graphite

* Update docs

* Update copy
2021-09-02 10:16:17 +02:00
Ryan McKinley
ae702caec6 Transformer: labels to fields should not also merge frames (#38671) 2021-09-01 20:18:50 +02:00
Ashley Harrison
205c672417 Sidemenu: Refactor TopSectionItem and BottomNavLinks into SideMenuItem (#38755)
* Sidemenu: Refactor TopSectionItem and BottomNavLinks into SideMenuItem

* Update failing snapshot

* BottomSection: Convert tests to RTL + add some extra unit tests
2021-09-01 17:16:50 +01:00
Ole Kristian (Zee)
92934af741 Monaco: Add javascript and typescript support (#38703) 2021-09-01 08:55:01 -07:00
Ryan McKinley
e461c722bf Live: prepend orgId when publishing from HTTP (#38775) 2021-09-01 17:54:34 +02:00
Ryan McKinley
e980f8531a StateTimeline: merge threshold values (#35073) 2021-09-01 17:43:57 +02:00
Domas
7fe3599ab1 Docs: document editing cortex/loki recording rules, namespaces and groups (#38547)
* document recording rule creation

* namespace/group editing docs

* explain namespaces & groups

* Jita's suggestions
2021-09-01 11:35:33 -04:00
Ryan McKinley
7af2d1a629 Dashboards: support merging in new panels and options (#37905) 2021-09-01 08:03:56 -07:00
Serge Zaitsev
643c7fa0cb Chore: update all +build statements (#38782) 2021-09-01 17:38:56 +03:00
Alex Khomenko
ea8d9d77f4 Admin: User list tweaks (#38750)
* Setup filter

* Enable filtering users by active in last 30 days

* Add loading state

* Update last active age strings

* Tweak user list

* Use theme spacing

* Improve table's accessibility

* Add more aria-labels
2021-09-01 16:53:58 +03:00
Will Browne
e39410c094 Cloud-Monitoring: Ensure service gets dependencies (#38788)
* ensure cloud-monitoring gets service dependencies

* all one line
2021-09-01 15:29:21 +02:00
Gabriel MABILLE
9f29241a0c AccessControl: add one-dimensional permissions to datasources (#38070)
* AccessControl: add one-dimensional permissions to datasources in the backend

* AccessControl: add one-dimensional permissions to datasources in the frontend (#38080)

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
2021-09-01 15:18:17 +02:00
Uchechukwu Obasi
4e8ab0512c PlayList: add delete functionality to remove playlist (#38120)
* WIP: add delete functionality to playlist

* fixes deleted item to be removed instantly without manual refresh

* update confirmModal to reference playlist name

* refactor confirmModal message to be clear enough

* WIP: some unit tests for the playlistPage

* added more tests and did some cleanup

* some code refactoring

* adds ability for user roles to control playlist delete

* some abstraction to cleanup code

* modified alert message for delete button to correspond with action

* tried a better approach to modify the alert message

* fixes playlist lookup on each render

* update handlers to not use anonymous function

* exposed getBackendSrv().get api to fetch all playlist

* used better naming convention

* removes unecessary async/await construct

* some code refactoring

* used the correct param structure
2021-09-01 13:23:57 +01:00
Dominik Prokop
326455a9b8 Annotation tooltip: Bring back links styles (#38780) 2021-09-01 13:30:30 +02:00
Hugo Häggmark
55e20bbf04 LibraryPanels: Separates name from panel title (#38707)
* LibraryPanels: Separates name from panel title

* WIP

* Chore: fixes update for duplicate lib panels

* Chore: reverts implementation

* Chore: show library options only for library panels

* Chore: ui fixes after PR comments

* Chore: fixes issue when creating library panels
2021-09-01 13:27:43 +02:00
Joan López de la Franca Beltran
6cfb640a0b Chore: Refactor securedata to remove global encryption calls from dashboard snapshots (#38714)
* Add encryption service

* Add tests for encryption service

* Inject encryption service into http server

* Replace encryption global function usage in login tests

* Migrate to Wire

* Move Encryption bindings to OSS Wire set

* Chore: Refactor securedata to remove global encryption calls from dashboard snapshots

* Fix dashboard snapshot tests

* Remove no longer user test

* Add dashboard snapshots service tests

* Refactor service initialization

* Set up dashboard snapshots service as a background service

Co-authored-by: Tania B <yalyna.ts@gmail.com>
Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
2021-09-01 13:05:15 +02:00
Jack Westbrook
a4e253bcf9 Fix: Prevent yarn start exiting early on TS errors (#38777) 2021-09-01 12:31:50 +02:00
Serge Zaitsev
c3ab2fdeb7 Macaron: remove custom Request type (#37874)
* remove macaron.Request, use http.Request instead

* remove com dependency from bindings module

* fix another c.Req.Request
2021-09-01 11:18:30 +02:00
Jack Westbrook
56f61001a8 Chore: Bump Lerna to v4 (#38751) 2021-09-01 11:00:09 +02:00
Dimitris Sotirakis
89716f2806 Remove ci-build-windows folder (#38778) 2021-09-01 10:44:08 +02:00
SaintMalik
316d78f5c3 Fix typos in CHANGELOG.md (#38741) 2021-09-01 11:29:37 +03:00
Alex Khomenko
7f27a2e1af Add licensing card background images (#38774) 2021-09-01 10:46:03 +03:00
Kai Hayashi
6e0f18b13a CloudWatch: Update Period auto to take retention into account (#37424)
* now to get it to build

* modified names, added the 455 day case, and added a comment

* removed wireguard override i used for my local

* updated the docs
2021-09-01 09:44:47 +02:00
shuotli
f2c4346cc4 Azure Monitor: Add support for numeric fields in ARG (#38728)
* Fix todouble/toreal not working

* fix test
2021-09-01 09:02:08 +02:00
Hugo Häggmark
38ca27428d LibraryPanels: Removes library panel icon from the panel header (#38749) 2021-09-01 06:14:21 +02:00
Nathan Rodman
ad610a1916 Alerting: Fix bug for default value in silence matcher (#38735) 2021-08-31 20:51:36 -07:00
Scott Lepper
4f479de88e Grafana UI: Table - add sticky table footer (#38094)
* table footer to allow showing summary data from the table panel
2021-08-31 12:37:10 -04:00
Dan Cech
681de1ea89 add key/value store service (#36868)
* add key/value store service

* don't export kvStoreSQL, consumers should interact with KVStore & NamespacedKVStore

* add del method, avoid ErrNotFound (#38627)

* switch value column to medium text

Co-authored-by: Alexander Emelin <frvzmb@gmail.com>
2021-08-31 11:05:45 -04:00
achatterjee-grafana
dd24995852 Doc: Add granularity to files and folder permissions. (#38732)
* Added note as suggested by Simon. Also, adjusted content and resized image.

* Minor wording change.
2021-08-31 10:43:13 -04:00
Tania B
6b7b9f5158 Chore: Remove global encryption calls from sqlstore (#38588)
* Add encryption service

* Add tests for encryption service

* Inject encryption service into http server

* Replace encryption global function usage in login tests

* Refactor UpdatePluginSetting

* Refactor EncryptSecureSettings

* Fix wire.go

* Refactor service initialization

Co-authored-by: Joan López de la Franca Beltran <joanjan14@gmail.com>
Co-authored-by: Joan López de la Franca Beltran <5459617+joanlopez@users.noreply.github.com>
Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
2021-08-31 15:01:23 +02:00
Gábor Farkas
aa7a6633b8 old-alert: set interval and max-data-points (#38434)
* alerting: old-alerting: handle interval + maxdatapoints better

* fixed failing test

* refactor: use interval instead of tsdb

* fix typo

* added unit-test

* added comment

* refactor
2021-08-31 14:49:30 +02:00
Jack Westbrook
fec50115b0 Chore: Bump dangerously-set-html-content to 1.0.9 (#38622) 2021-08-31 14:10:56 +02:00
Tania B
bfde29d107 Chore: Remove global encryption calls from authinfoservice (#38591)
* Add encryption service

* Add tests for encryption service

* Inject encryption service into http server

* Replace encryption global function usage in login tests

* Migrate to Wire

* Refactor authinfoservice to use encryption service

Co-authored-by: Joan López de la Franca Beltran <joanjan14@gmail.com>
Co-authored-by: Joan López de la Franca Beltran <5459617+joanlopez@users.noreply.github.com>
Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
2021-08-31 14:00:13 +02:00
Gábor Farkas
a5d11a3bef Prometheus: monaco-based query-editor-field, first step (#37251)
* prometheus: add monaco-based query-field

for now it is behind a feature-flag

* added new trigger character

* better separate grafana-specifc and prom-specific code

* better styling

* more styling

* more styling

* simpler monaco-import

* better imports

* simplified code

* simplified type imports

* refactor: group completion-provider files together

* renamed type

* simplify type-import

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>

* handle no-metric-name autocompletes

* updated comment

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
2021-08-31 13:46:13 +02:00
Jack Westbrook
8d3b31ff23 Build: Upgrade Webpack 5 (#36444)
* build(webpack): bump to v5 and successful yarn start compilation

* build(webpack): update postcss dependencies

* build(webpack): silence warnings about hash renamed to fullhash

* build(webpack): enable persistent cache to store generated webpack modules / chunks

* build(webpack): prefer eslintWebpackPlugin over tschecker so eslint doesn't block typechecking

* chore(yarn): run yarn-deduplicate to clean up dependencies

* chore(yarn): refresh lock file after clean install

* build(webpack): prefer output.clean over CleanWebpackPlugin

* build(webpack): prefer esbuild over babel-loader for dev config

* build(babel): turn off cache compression to improve build performance

* build(webpack): get production builds working

* build(webpack): remove phantomJS (removed from grafana in v7) specific loader

* build(webpack): put back babel for dev builds no performance gain in using esbuild in webpack

* build(webpack): prefer terser and optimise css plugins for prod. slower but smaller bundles

* build(webpack): clean up redundant code. inform postcss about node_modules

* build(webpack): remove deprecation warnings flag

* build(webpack): bump packages, dev performance optimisations, attempt to get hot working

* chore(storybook): use webpack 5 for dev and production builds

* build(storybook): speed up dev build

* chore(yarn): refresh lock file

* chore(webpack): bump webpack and related deps to latest

* refactor(webpack): put back inline-source-map, move start scripts out of grafana toolkit

* feat(webpack): prefer react-refresh over react-hot-loader

* build(webpack): update webpack.hot to use react-refresh

* chore: remove react-hot-loader from codebase

* refactor(queryeditorrow): fix circular dependency causing react-fast-refresh errors

* revert(webpack): remove stats.errorDetails from common config

* build(webpack): bump to v5 and successful yarn start compilation

* build(webpack): update postcss dependencies

* build(webpack): silence warnings about hash renamed to fullhash

* build(webpack): enable persistent cache to store generated webpack modules / chunks

* build(webpack): prefer eslintWebpackPlugin over tschecker so eslint doesn't block typechecking

* chore(yarn): run yarn-deduplicate to clean up dependencies

* chore(yarn): refresh lock file after clean install

* build(webpack): prefer output.clean over CleanWebpackPlugin

* build(webpack): prefer esbuild over babel-loader for dev config

* build(babel): turn off cache compression to improve build performance

* build(webpack): get production builds working

* build(webpack): remove phantomJS (removed from grafana in v7) specific loader

* build(webpack): put back babel for dev builds no performance gain in using esbuild in webpack

* build(webpack): prefer terser and optimise css plugins for prod. slower but smaller bundles

* build(webpack): clean up redundant code. inform postcss about node_modules

* build(webpack): remove deprecation warnings flag

* build(webpack): bump packages, dev performance optimisations, attempt to get hot working

* chore(storybook): use webpack 5 for dev and production builds

* build(storybook): speed up dev build

* chore(yarn): refresh lock file

* chore(webpack): bump webpack and related deps to latest

* refactor(webpack): put back inline-source-map, move start scripts out of grafana toolkit

* feat(webpack): prefer react-refresh over react-hot-loader

* build(webpack): update webpack.hot to use react-refresh

* chore: remove react-hot-loader from codebase

* refactor(queryeditorrow): fix circular dependency causing react-fast-refresh errors

* revert(webpack): remove stats.errorDetails from common config

* revert(webpack): remove include from babel-loader so symlinks (enterprise) work as before

* refactor(webpack): fix deprecation warnings in prod builds

* fix(storybook): fix failing builds due to replacing css-optimise webpack plugin

* fix(storybook): use raw-loader for svg icons

* build(webpack): fix dev script colors error

* chore(webpack): bump css-loader and react-refresh-webpack-plugin to latest versions

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2021-08-31 12:55:05 +02:00
Ashley Harrison
b40d48258d Sidemenu: Fix logout button (#38747) 2021-08-31 11:33:38 +01:00
Dimitris Sotirakis
3fb5afb9e3 Update Dockerfile (#38744) 2021-08-31 12:53:17 +03:00
Ashley Harrison
7a242afcd6 Sidemenu: Refactor BottomNavLinks to use SideMenuDropDown (#38598)
* Sidemenu: Attempt to refactor BottomNavLinks to use SideMenuDropDown

* BottomNavLinks: Rewrite existing enzyme tests in RTL

* BottomNavLinks: Use object spreading instead of slicing
2021-08-31 10:37:51 +01:00
Selene
e47a60f511 Add filter to search users by active (#38637)
* Add filter to search users by active

* Fix query
2021-08-31 11:35:16 +02:00
shuotli
f1529b83a2 [Azure monitor] Support variables for Azure Resource Group subscription picker (#38620) 2021-08-31 09:15:35 +02:00
Ryan McKinley
f567bef0bf Geomap: hide legend for markers with single threshold (#38734) 2021-08-30 23:22:19 -07:00
Dimitris Sotirakis
8e2ee0a1c8 Chore: Update to Golang 1.17 (#38608)
* Update to golang 1.17

* Further updates

* Run go mod tidy on go 1.17

* Apply suggestions from code review

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* Use build-container:1.4.2

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2021-08-31 09:19:26 +03:00
Leon Sorokin
05e5b67a99 Colors: rename getThresholdRange() -> getGradientRange() (#38688)
* Colors: use visible y scale range for non-threshold gradients schemes

* rename instead
2021-08-30 15:04:02 -05:00
Tania B
a0108a1e5b Encryption: Extract encryption into service (#38442)
* Add encryption service

* Add tests for encryption service

* Inject encryption service into http server

* Replace encryption global function usage in login tests

* Apply suggestions from code review

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>

* Migrate to Wire

* Undo non-desired changes

* Move Encryption bindings to OSS Wire set

Co-authored-by: Joan López de la Franca Beltran <joanjan14@gmail.com>
Co-authored-by: Joan López de la Franca Beltran <5459617+joanlopez@users.noreply.github.com>
Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
2021-08-30 19:39:55 +02:00
Kyle Brandt
79e79fe244 Alerting/Docs: Clarify NoData option (#38451)
* Alerting/Docs: Clarify NoData option
for #37665

* Update docs/sources/alerting/unified-alerting/alerting-rules/create-grafana-managed-rule.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-08-30 09:13:04 -04:00
Zoltán Bedi
dbc7464e78 Toolkit: fix matchmedia missing (#38694) 2021-08-30 14:36:15 +02:00
Levente Balogh
82c038bd06 Plugins Catalog: add signature information to details (#38558)
* refaactor: extract the tab labels into a const

* feat: list - show signature badge for enterprise plugins as well

* feat(plugins): add a component for showing plugin signature details

* feat: add a component for showing signature info under details

* feat: add a component for displaying signature info in details header

* feat: extract the plugin details header into a separate component

* feat: show signature information on the plugins details page

* refactor(Plugins): use an enum instead of an object

* refactor(Plugins): use more strict typing for tabs

* refactor(Plugins): use function declaration instead of fat-arrow for components

* fix(Plugins): fix typo

* fix: make installed plugin config an optional param again

* refactor: cache plugin meta requests

* refactor: move PLUGIN_TAB_LABELS to the types module
2021-08-30 14:00:11 +02:00
Serge Zaitsev
d15cbe4b4e Macaron cleanup (#37795)
* simplify some dependency injection in macaron
* remove unused internal server error handler from macaron
* remove internal server error handler from the router
* remove unused combo router api
* remove unused parts of the macaron router
2021-08-30 11:48:34 +02:00
Peter Holmberg
74afe809af Alerting: Add DateTimePicker on view rule page (#38592)
* export datetimepicker

* minor fixes to the datetime picker

* correct datetime to picker

* move datetime calc to function

* set maxDate

* set maxDate

* wrap in useCallback
2021-08-30 11:42:37 +02:00
Zoltán Bedi
38b398feb4 Fix: panel crash after esc (#38646) 2021-08-30 09:57:07 +02:00
Alex Khomenko
d90c822e69 Fix key prop when rendering options (#38595) 2021-08-30 06:59:51 +02:00
Oscar Kilhed
b248c119ef TimeSeries: Use graph min/max for percentage threshold (#38528)
* TimeSeries: Use graph min/max as baseis for percentage threshold calculation.

* respect hard and soft axis limits for % threshold steps

* revert state-timeline changes

* enable by-threshold coloring in histogram and barchart

* revert yMin

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2021-08-29 15:46:17 -05:00
sam boyer
96557ecadc Change cuetsy annotation "targetType" to "kind" (#38564)
Mirrors change made upstream in cuetsy
2021-08-29 14:29:06 -04:00
knuzhdin
3df001db93 ImageRendering: fix leakage of the rendering inflight counter (#34607) 2021-08-28 09:05:03 +02:00
Christoph Deil
06c9f7e13b Fix typo in whats-new-in-v8-1.md (#38660)
* Fix typo in whats-new-in-v8-1.md

* Update docs/sources/whatsnew/whats-new-in-v8-1.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-08-28 00:28:56 +02:00
nikki-kiga
a54a139176 Transformations: Convert field types to time string number or boolean (#38517)
* outline string to time

add stringToTime transformer

start to add format

add type and dateformat

rename stringToTime to fieldConversion

add more type support and use FieldNamePicker

add field conversion transformation

* adjust for performance feedback

rename and adjust labels and widths

shorten labels and null values

rename to convertFieldType

update test

* make updates
2021-08-27 13:49:31 -07:00
Leon Sorokin
3c72f1678f Colors: fix by-value/hex3 & Single color schemes in Gradient mode (#38656) 2021-08-27 15:06:28 -05:00
Leon Sorokin
4e2516d12a GraphNG: fix crash when trying to diff missing timeRange prop (#38654) 2021-08-27 12:40:33 -05:00
Dominik Prokop
1be53b4f3b TimeSeries: Add per-axis grid visibility toggle (#38502)
* Allow grid lines visibility control to XYChart and TimeSeries

* Move grid lines config to field config (axis)

* Fix merge

* Auto grid mode

* Fix ts

* Align naming

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

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>

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

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>

* remove 'grid' from props diff array since field.config.custom.* is handled by structureRev diffing

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2021-08-27 12:30:42 -05:00
Giordano Ricci
b5e4a0a39a Elasticsearch: Only show numbers in histogram field autocomplete (#38631) 2021-08-27 17:19:44 +01:00
Jack Westbrook
5898824a48 Chore: Fix version format (#38649) 2021-08-27 18:12:37 +02:00
Petros Kolyvas
4a73e0f9a8 Docs: Remove an unnecessary legacy alerts notification webhook listing and reduce promotional content (#38644)
* Removed an unecessary webhook listing and modified some text to reduce promotion for specific tooling.

* Updated doc content with Eve and Ursula's review.

* Removed "the".

Co-authored-by: achatterjee-grafana <aparajita.chatterjee@grafana.com>
2021-08-27 11:17:58 -04:00
Olof Bourghardt
8da634f780 Loki: add tests for addAdHocFilters (#38594)
* Loki: add tests for addAdHocFilters

* Change description of test

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>

* Replace ADD_FILTER with "=" operator in test description

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>

* Loki: refafctor test for addAdHocFilter

* Loki: refactor tests for better readability

* Remove comments

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
2021-08-27 17:06:22 +02:00
Jack Westbrook
beeb8330c4 Chore: Update packages version to 8.2.0-pre (#38635)
* chore(packages): run packages:prepare script

* chore: update package.json version

* chore: put back semver compliant version
2021-08-27 17:01:19 +02:00
Giordano Ricci
eaca54a9f2 Elasticsearch: change terms default min_doc_count to 1 (#38632) 2021-08-27 14:22:12 +01:00
Armand Grillet
72d296843d Docs: clarify state of Unified Alerting (#38603)
* Docs: clarify state of Unified Alerting

* Update docs/sources/alerting/unified-alerting/_index.md

Co-authored-by: Kyle Brandt <kyle@grafana.com>

* Adjusted note to move below the introduction.

* Fixed a typo and added beta notes.

* Minor typo fix.

* Docs: remove innacurate beta label for Grafana 8.0

Grafana 8.0 is not in beta, only unified alerting.

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
Co-authored-by: Kyle Brandt <kyle@grafana.com>
Co-authored-by: achatterjee-grafana <aparajita.chatterjee@grafana.com>
2021-08-27 15:09:28 +02:00
Ikko Ashimine
202f295e51 Chore: Fix typo in nodes.go (#38636)
commmon -> common
2021-08-27 14:57:41 +02:00
Marcus Efraimsson
e872032a2b Docs: Add v8.1 upgrade note regarding unencrypted data source passwords (#38449)
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-08-27 13:23:56 +02:00
Alexander Emelin
a95a40d87d Live: allow connections with request host matching origin host (#38538) 2021-08-27 13:26:28 +03:00
Andres Martinez Gotor
b25eb0aa74 AzureMonitor: Fix wrong merge (#38623) 2021-08-27 11:31:17 +02:00
Torkel Ödegaard
bbaf6a23bb Docs: Add info and links about our hosted services to our grafana install docs (#38544)
* Add info and links about our hosted services to our grafana install docs

* review updates

* Update docs/sources/installation/debian.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>
2021-08-27 10:46:45 +02:00
Marcus Efraimsson
0ef5831332 v8.2.0-pre.0 2021-08-27 10:39:53 +02:00
Olof Bourghardt
458bced826 Jaeger: fix bug where query is executed twice (#38550)
* Jaeger: add empty callback to QueryField onBlur to stop query from being run twice

* Jaeger: add wait call on 500ms to accomodate for debouncing by the QueryField component
2021-08-27 10:36:18 +02:00
Alex Khomenko
a15e33e693 Admin: remove Redux from ServerStats (#38581)
* Admin: remove Redux from ServerStats

* Admin: Fix import
2021-08-27 11:09:17 +03:00
Alex Khomenko
c08d5eeda0 Update the location of the server stats tab (#38548) 2021-08-27 10:04:57 +03:00
Gábor Farkas
8e88600c04 style-guide: frontend: describe directory naming style (#38607)
* style-guide: frontend: describe directory naming style

* apply recommended changes

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

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-08-27 08:27:56 +02:00
Dimitris Sotirakis
d7daaa19df Add CODEOWNERS for CI related code (#38606) 2021-08-27 09:06:15 +03:00
Jack Westbrook
2cb141d4ec Plugins: Refactor installation buttons component (#37642)
* refactor(catalog): split out installcontrols into multiple components

* test(catalog): update tests for plugindetails page

* refactor(catalog): rename installcontrols -> index

* refactor(catalog): remove redundant curlies

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>

* tests(plugindetails): fix assertions and naming of tests

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>

* refactor(installcontrols): prefer enum over duplicate union type, rename disabled prop

* refactor(installcontrols): use PluginStatus enum for installcontrols pluginStatus

* refactor(installcontrols): remove redundant curlies

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
2021-08-26 17:15:43 +02:00
idafurjes
568549e810 Bug: Return empty plugins.DataTimeSeriesSlice when the frame field vector is epmty (#38587)
* Add check if the vector is empty

* Use Rows() instead of Len() on field

* Remove redundant condition
2021-08-26 16:39:50 +02:00
Jack Westbrook
5339275793 Grafana UI: Fix TS error property css is missing in type (#38078) 2021-08-26 16:00:52 +02:00
Stephanie Hingtgen
785072086c Add event after datasource create (#38467)
* Add event after datasource create
2021-08-26 08:50:05 -05:00
Kevin Minehart
1ced2bc6df move main.go logic out of commands (#38555)
* move main.go logic out of commands
2021-08-26 15:42:22 +02:00
Domas
2847f25781 Alerting: UI to edit cortex/loki namespace & group names, group eval interval (#38543) 2021-08-26 16:40:27 +03:00
Dimitris Sotirakis
00886afaf1 Force use versions of libcrypto1.1 and libssl1.1 (#38585) 2021-08-26 15:22:53 +02:00
Ashley Harrison
a583f7e160 Sidemenu: Refactor SideMenuDropDown (#38554)
* SideMenuDropDown: Refactor to be more component-ey + rewrite tests in RTL

* SideMenuDropDown: Rename childLinks -> items

* Rename mockChildLinks -> mockItems as well
2021-08-26 14:08:27 +01:00
Marcus Efraimsson
b231afd50f Docs: Fix error in provisioning docs for discord notifier (#38579)
Fixes an error in provisioning docs for discord notifier referencing the wrong 
name of the "message content" setting.

Fixes #38494
2021-08-26 12:29:29 +02:00
Marcus Efraimsson
2f07af1b54 Chore: Skip test TestDevenvDashboardValidity for now (#38577)
Skipping TestDevenvDashboardValidity test for now to resolve broken 
test-backend step in main/branches. Did also run scripts/stripnulls.sh 
hence the devenv dashboard changes.
2021-08-26 11:45:57 +02:00
Marcus Efraimsson
ec88295a0b Testdata: Fix proper initialization (#38576)
Fixes #38566
2021-08-26 11:39:04 +02:00
Torkel Ödegaard
d5ed4e9c8c Geomap: Minor style fixes (#38532)
* Fixed hover font-weight, option casing, and added simple test dashboard with 3 panels

* Update theme colors

* Style tweaks to legend

* Updated

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-08-26 10:17:03 +02:00
Dimitris Sotirakis
12320dda3c Elasticsearch: Fix metric names for alert queries (#38546)
* Export fieldName to var

* Add empty string as frame name
2021-08-26 09:20:38 +02:00
Dimitris Sotirakis
8a04af412e Build pipeline: Cleanup build-main pipeline steps (#38484)
* Refactor dependencies

* Regenerate drone.yml

* Reorder steps in starlark files

* Make build depend on test

* Make test steps depend on lint

* Make gen-version step depend on build steps

* Refactor step dependencies

* Move e2e-tests step before upload_cdn

* Sync with main
2021-08-26 10:11:22 +03:00
idafurjes
7faea40674 API: Add short url validation (#38436)
* Add short url validation
Path should not contain string ../

* Update pkg/api/short_url.go

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2021-08-26 09:07:27 +02:00
dependabot[bot]
0b945f3db4 Bump actions/cache from 2.1.5 to 2.1.6 (#34867)
Bumps [actions/cache](https://github.com/actions/cache) from 2.1.5 to 2.1.6.
- [Release notes](https://github.com/actions/cache/releases)
- [Commits](https://github.com/actions/cache/compare/v2.1.5...v2.1.6)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-26 08:27:37 +02:00
achatterjee-grafana
e32e135c73 Docs move "visualizations" folder up one level in TOC (#38523)
* Moved Visualizations folder one level up. Fixed a bunch of broken relrefs.

* More broken relrefs.

* Fixed the last of the broken relrefs

* Adjusted weight and added alias.

* Added aliases to a bunch of visualization topics.

* More topics with aliases.

* More aliases, adjusted some weight and other metadata information.
2021-08-25 14:14:00 -04:00
Ryan McKinley
9267014a45 Schema: export existing types in @grafana/data|ui (#38518) 2021-08-25 09:59:03 -07:00
Connor Lindsey
76ade24f2f Add catch around JSON trace upload for more error handling (#38520) 2021-08-25 10:08:46 -06:00
Ivana Huckova
d1b6132302 Loki: Fix ad-hoc filter when used with parser (#38542)
* Fix ad hoc filter when used with parser

* Update
2021-08-25 16:08:41 +02:00
Patrick O'Carroll
2e772d41a7 Themes: align hover and focus opacity (#38498)
* new warning and success color in light theme, slight tweak to primary text

* changed hover opacity to the same as focues opacity

* Updated generated files

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2021-08-25 15:34:19 +02:00
Ashley Harrison
b30882bd2b Sidemenu: Refactor DropDownChild (#38509)
* DropDownChild: Refactor DropDownChild to be more component-like

* Rewrite tests in RTL

* Let's not do this just yet...
2021-08-25 14:27:04 +01:00
Arve Knudsen
78596a6756 Migrate to Wire for dependency injection (#32289)
Fixes #30144

Co-authored-by: dsotirakis <sotirakis.dim@gmail.com>
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: Ida Furjesova <ida.furjesova@grafana.com>
Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com>
Co-authored-by: spinillos <selenepinillos@gmail.com>
Co-authored-by: Karl Persson <kalle.persson@grafana.com>
Co-authored-by: Leonard Gram <leo@xlson.com>
2021-08-25 15:11:22 +02:00
sam boyer
e61bc33163 Move dashboard scuemata to grafana-schema (#38470)
* Relocate dashboard scuemata to grafana-schema

* Update assorted tests, vars with dashboard path

* Remove crufty commented var

* Not sure...why that failed

* Remove prefix from base dashboard path var

* Move cue/ui remnants into grafana-schema

* Update import paths in plugin models

* Remove mudball, add package statements

* Remove cuegen.sh

Wooooo we ain't got no codegen

* Revert "Remove mudball, add package statements"

This reverts commit 9bed3098f1.

* Tidy up all the cue files

* Move dashboard scuemata into scuemata/ subdir

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-08-25 06:55:04 -04:00
Olof Bourghardt
a19ad25eaa Jaeger: support running queries with keyboard shortcut (#37958)
* Jaeger: add QueryField component

* Remove unused imports

* Fix e2e test so that it checks for QueryField component

* Remove comments

* Fix failing e2e test
2021-08-25 11:30:32 +02:00
Ashley Harrison
7c97b9d03f QueryEditor: Don't use _.defaults as it mutates the query prop directly (#37965)
* QueryEditor: Don't use _.defaults as it mutates the query prop directly

* QueryEditor: Update the query type on mount if none exists

* QueryEditor: Mutate in the constructor instead of render

* Apply defaults immutably in render
2021-08-25 10:19:02 +01:00
Witek Bedyk
65501cbad3 Licensing: Provide correct URL for AGPL license (#36917)
* Provide correct link for AGPL license

* Change LicenseURL to point go Grafana OSS page

* Keep utm_source query parameter

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2021-08-25 10:43:43 +02:00
dependabot[bot]
f8a0c38763 Bump path-parse from 1.0.6 to 1.0.7 (#37789)
Bumps [path-parse](https://github.com/jbgutierrez/path-parse) from 1.0.6 to 1.0.7.
- [Release notes](https://github.com/jbgutierrez/path-parse/releases)
- [Commits](https://github.com/jbgutierrez/path-parse/commits/v1.0.7)

---
updated-dependencies:
- dependency-name: path-parse
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-25 10:17:34 +02:00
dependabot[bot]
c5df1c6430 Bump tar from 4.4.13 to 4.4.15 (#37536)
Bumps [tar](https://github.com/npm/node-tar) from 4.4.13 to 4.4.15.
- [Release notes](https://github.com/npm/node-tar/releases)
- [Changelog](https://github.com/npm/node-tar/blob/main/CHANGELOG.md)
- [Commits](https://github.com/npm/node-tar/compare/v4.4.13...v4.4.15)

---
updated-dependencies:
- dependency-name: tar
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-25 10:13:08 +02:00
Will Browne
1618d5ad6f use most appropriate func for registering core plugins (#38497) 2021-08-25 10:08:48 +02:00
Patrick O'Carroll
84de946daa changed opacity on disabled, secondary and secondary shade in both themes (#38453) 2021-08-25 09:47:46 +02:00
Domas
2e8a7c1161 set basic auth for prometheus backend ds requests (#38496) 2021-08-25 10:05:17 +03:00
dependabot[bot]
7751c0a706 Bump ws from 6.2.1 to 6.2.2 (#35085)
Bumps [ws](https://github.com/websockets/ws) from 6.2.1 to 6.2.2.
- [Release notes](https://github.com/websockets/ws/releases)
- [Commits](https://github.com/websockets/ws/commits)

---
updated-dependencies:
- dependency-name: ws
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-25 08:51:05 +02:00
Dimitris Sotirakis
29d0a1536c Chore: Update grabpl version to 2.3.3 (#38516)
* Update grabpl version to 2.3.1

* Update grabpl version to 2.3.2

* Update grabpl version
2021-08-25 08:50:41 +03:00
Gabriel MABILLE
f9273d0d37 AccessControl: Add a mock (#38515) 2021-08-24 20:12:48 +02:00
gotjosh
14a0519338 Alerting: Remove Multiorg alertmangaer from the top-level services (#38506)
Removes the registration of the multi-org alertmanager, it is started as a subservice of ngalerting.
2021-08-24 19:11:28 +02:00
gotjosh
2f27a5240b Alerting: Fix flake on test receiver tests (#38511)
* Alerting: Fix flake on test receiver tests

* Make the actual result from the API be sorted

* Use the correct letters
2021-08-24 17:22:11 +01:00
Alex Khomenko
6e639f3c72 Admin: Update stats page UI (#38014)
* Add StatCard

* Style cards

* Update types

* Add tests

* Move stats tab into licencing

* Prevent UI jumps when loading stats

* Fix merge conflicts

* Revert docs format
2021-08-24 19:13:48 +03:00
Ryan McKinley
fcceb5716d Schema: move existing grafana/ui models into schema (#38469) 2021-08-24 08:22:34 -07:00
Dimitris Sotirakis
e8faa2c900 Build pipeline: Cleanup PR pipeline steps (#38447)
* Refactor dependencies

* Regenerate drone.yml

* Reorder steps in starlark files

* Make build depend on test

* Make test steps depend on lint

* Make gen-version step depend on build steps
2021-08-24 17:07:06 +02:00
Stephanie Closson
8bb9600cc6 Chore: Updated plugin schema docs ref PR@38463 (#38501)
* updated plugin schema docs ref PR@38463

* Documentation updates as per review
2021-08-24 11:45:41 -03:00
dependabot[bot]
d1ed0cb275 Bump dns-packet from 1.3.1 to 1.3.4 (#34861)
Bumps [dns-packet](https://github.com/mafintosh/dns-packet) from 1.3.1 to 1.3.4.
- [Release notes](https://github.com/mafintosh/dns-packet/releases)
- [Changelog](https://github.com/mafintosh/dns-packet/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mafintosh/dns-packet/compare/v1.3.1...v1.3.4)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-24 16:34:51 +02:00
Dimitris Sotirakis
da72dc55cb Update to golang:1.16.1-alpine3.14 (#38508) 2021-08-24 16:13:12 +02:00
Maria Alexandra
856cb1d80f Pipeline: Fix pa11y ci when server is not available and fix publish frontend metrics step (#38485) 2021-08-24 13:44:52 +02:00
Patrick O'Carroll
8fb4882a01 Light theme palette update (#38487)
* new warning and success color in light theme, slight tweak to primary text

* Update generated light theme scss

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2021-08-24 13:23:01 +02:00
David Parrott
7fbeefc090 Alerting: create wrapper for Alertmanager to enable org level isolation (#37320)
Introduces org-level isolation for the Alertmanager and its components.

Silences, Alerts and Contact points are not separated by org and are not shared between them.

Co-authored with @davidmparrott and @papagian
2021-08-24 11:28:09 +01:00
Karl Persson
7ebf4027a7 Access Control: refactor permission evaluator to be more flexible (#35996)
* add a more flexible way to create permissions

* update interface for accesscontrol to use new eval interface

* use new eval interface

* update middleware to use new eval interface

* remove evaluator function and move metrics to service

* add tests for accesscontrol middleware

* Remove failed function from interface and update inejct to create a new
evaluator

* Change name

* Support Several sopes for a permission


* use evaluator and update fakeAccessControl

* Implement String that will return string representation of permissions
for an evaluator

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
2021-08-24 11:36:28 +02:00
Domas
9d8f61c738 Alerting: allow creating/editing recording rules for Loki and Cortex (#38064) 2021-08-24 10:31:56 +02:00
Dimitris Sotirakis
309d263531 Chore: Add public/lib to .prettierignore (#38479)
* Add public/lib to .prettierignore

* Fixes according to reviewer's comments
2021-08-24 10:11:44 +02:00
Vicky Lee
c5f384c654 docs: update cloud data sources README links (#37820)
* docs: update cloud data sources README links

* Update public/app/plugins/datasource/cloudwatch/README.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update public/app/plugins/datasource/grafana-azure-monitor-datasource/README.md

* Update public/app/plugins/datasource/cloud-monitoring/README.md

Co-authored-by: Daniel Lee <dan.limerick@gmail.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-08-24 10:11:07 +02:00
Olof Bourghardt
05b0df2254 Zipkin: support running queries with keyboard shortcut (#37960)
* Zipkin: replace input field with QueryField component

* Fix failing tests

* Remove console.log

* Partially migrate test to react

* Zipkin: finish migration from enzyme to react

* Remove comments
2021-08-24 09:52:34 +02:00
idafurjes
ccab9611cb API: Add theme validation (#38432)
* Add theme validation

* Fix lint for const
2021-08-24 08:41:15 +02:00
Leon Sorokin
403bbd0144 GraphNG: optimize measureText(), drop estimation for y-axis auto-sizing (#38475) 2021-08-24 00:11:19 -05:00
Villena Guillaume
4cb87b6b60 Annotations Panel: Show annotations end time if present (#38425)
* Annotation Panel: Show annotation end time if present

* Added hyphen between dates
2021-08-23 20:57:44 -07:00
Travis Patterson
6548cd89af Add honeycomb plugin logo (#38461) 2021-08-23 14:33:55 -06:00
Ryan McKinley
425ec7ca9e Schema: create a new schema package for basic models (#38409) 2021-08-23 13:03:41 -07:00
Stephanie Closson
8d126de305 Added enterprise features to the schema (#38463) 2021-08-23 16:39:26 -03:00
Tharun Rajendran
2156980edb Datasource: add button to navigate to explore from settings (#36119)
Fixes #13737
2021-08-23 09:23:49 -06:00
Maria Alexandra
ef8e95ac7f Pipeline: Revert a11y changes to fix publish frontend metrics step (#38452) 2021-08-23 16:45:59 +02:00
Karl Persson
864c526d9a Access Control: Update docs with the correct scope name (#38444)
* Update docs with the correct scope name

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-08-23 16:39:40 +02:00
Connor Lindsey
a2525005e5 Manually set query type in Tempo explore on component mount (#38408)
* Manually set query type in Tempo explore on component mount
2021-08-23 07:51:45 -06:00
Ivana Huckova
74fef637af Prometheus: Use default POST method if no httpMethod provided (#38446)
* Prometheus: If no httpMethod, use default POST method

* Use http.MethodPost
2021-08-23 15:25:40 +02:00
Alex Khomenko
49fdab7e43 grafana/ui: Clarify InlineField docs (#38100)
* grafana/ui: clarify InlineField docs

* grafana/ui: revert formatting

* grafana/ui: revert formatting[2]

* grafana/ui: do not format code samples

* grafana/ui: disable mdx formatting
2021-08-23 16:25:09 +03:00
Peter Holmberg
eba21f3145 Alerting: Append appSubUrl to links if present (#38069)
* append appSubUrl if present

* remove null check
2021-08-23 14:57:30 +02:00
idafurjes
769b7a5865 Bug: Register OpenTSDB with correct service name (#37581)
* Bug: Register OpenTSDB with correct service name

* USe Register instead of RegisterAndStart
2021-08-23 14:56:53 +02:00
Maria Alexandra
6396f05320 Pa11y: add logs to a11y step in terminal to provide more info of status (#38445) 2021-08-23 14:54:33 +02:00
Jeremy Price
9a71cec1f0 Access Control: Make the evaluator prefix match only (#38025)
* Make the evaluator prefix match only

* Handle empty scopes

* Bump version of settings read role

Co-authored-by: Karl Persson <kalle.persson@grafana.com>
2021-08-23 14:03:20 +02:00
Villena Guillaume
1b3eecddcd Annotation Panel: Fix annotation with end time not being centered (#38423)
* Annotation Panel: Fix annotation with end time not being centered

* Update public/app/plugins/panel/annolist/AnnoListPanel.tsx

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

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-08-23 12:03:27 +01:00
Dimitris Sotirakis
64cb000d37 Chore: Add e2e-tests-server as dependencies on steps that publish packages (#38059)
* Add e2e-tests-server as dependencies on steps that publish packages

* Sign drone yaml
2021-08-23 13:39:16 +03:00
Jeremy Price
e124167d05 access control: 1527/Correct grammar in usage-scenarios (#35142)
* First revision

* Update docs/sources/enterprise/access-control/usage-scenarios.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/enterprise/access-control/usage-scenarios.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Note about creating roles

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
Co-authored-by: Daniel Lee <dan.limerick@gmail.com>
2021-08-23 11:37:19 +02:00
Uchechukwu Obasi
ab74bb78b2 A11y metrics: fixes frontend script that pushes to CI Stat dashboard (#38435) 2021-08-23 11:36:39 +02:00
Maria Alexandra
b579a707e3 A11y - Add Pa11y CI in main pipeline to collect a11y issues (#37741)
Co-authored-by: 
Hugo Häggmark <hugo.haggmark@gmail.com>
thisisobate <obasiuche62@gmail.com>
2021-08-23 10:08:01 +02:00
Gábor Farkas
9e8035ef30 devenv: influxdb: update telegraf config (#37835) 2021-08-23 09:38:47 +02:00
Jack Westbrook
bafe16368a Chore: Migrate CustomScrollbar to react-custom-scrollbars-2 (#38013) 2021-08-23 09:28:58 +02:00
idafurjes
b9a538aff0 Bug: Add check before delete org (#38056)
* Add check before delete org

* Fix comment

* Simpify check if signed in user belongs to the org

* Add check on login if user has and existing org
change error code to 400, when org can not be deleted

* Roll back last commit, regarding an different issue
2021-08-23 08:58:35 +02:00
Ryan McKinley
8c4c05493b Dashboard: keep live timeseries moving left (v2) (#37769) 2021-08-20 14:48:55 -07:00
Travis Patterson
32e11434da Fire event after datasource delete (#38090) 2021-08-20 14:51:31 -06:00
Ryan McKinley
b88f8bacf3 DataFrame: add frame type key to DataFrame structure (#38092) 2021-08-20 09:26:40 -07:00
achatterjee-grafana
d38ce58045 replace "blah" with "example". (#38114) 2021-08-20 10:09:21 -04:00
Will Browne
ae17cce316 Plugins: Add Hide OAuth Forward config option (#36306)
* add prop

* add angular conf

* invert naming

* undo md changes

* fix wording

* y u fail 4 me

* refactor(datasourcesettings): rename hideForwardOAuthIdentityOption prop

* refactor(datasourcesettings): rename scope.hideForwardOAuthIdentityOption

* Update contribute/style-guides/e2e.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* feat(datasourcehttpsettings): add showForwardOAuthIdentityOption to angular wrappers & template

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-08-20 15:53:54 +02:00
Olof Bourghardt
5231660627 Explore: use GrafanaTheme2 (LiveLogs component) (#37452)
* Explore: use GrafanaTheme2

* Explore: add correct style values. Add theme.v1 to the styles that were uncertain

* Logs: add use of GrafanaTheme2 in varioius log components

* Styles: add some of the correct values recieved via feedback

* Add correct style values

* Update public/app/features/dashboard/components/AddPanelWidget/AddPanelWidget.tsx

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>

* Update public/app/features/dashboard/components/AddPanelWidget/AddPanelWidget.tsx

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>

* Update public/app/plugins/panel/dashlist/styles.ts

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>

* Explore: fix failing tests

* Explore: add styling values from v2

* Fix small type error

* Replace v1 styles with v2 styles

* Remove forgotten v1 values

* Remove more v1 style values

* Apply correct style value to LogRowMessage

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
2021-08-20 14:53:03 +02:00
Kevin Minehart
b3c4b20953 Docker: Update base alpine version (fix CVE-2021-36159) (#38088)
* update base alpine version and update apk packages in Dockerfile

* update base alpine version

* don't need to apk update

* remove space

* Update to alpine 3.14.1

Co-authored-by: Malcolm Holmes <mdh@odoko.co.uk>
2021-08-20 12:54:03 +01:00
Jack Westbrook
d9a2dd8a4b Chore: Align enzyme dependencies in root and jaeger workspace (#38006)
* chore: align enzyme dependencies in root and jaeger workspace

* chore(yarn): refresh lock file
2021-08-20 12:54:29 +02:00
Hugo Häggmark
a0773b290b Dashboard: Prevents folder change when navigating to general settings (#38103)
* Dashboard: Prevents folder change when navigating to general settings

* Tests: fixes broken tests

* Chore: changes from PR feedback
2021-08-20 11:53:48 +02:00
Jack Westbrook
5ff3b7bf3f Chore: Bump storybook to 6.3.7 (#38008) 2021-08-20 11:40:20 +02:00
Dimitris Sotirakis
16c518582f Chore: Prevent branches beginning with "v*" from being considered as versioned branches (#38016)
* Add v8* and v9* "regex" to only build versioned branches

* Add glob pattern matching

* Sign drone yaml
2021-08-20 09:22:53 +03:00
Jason Stangroome
28784935b8 Sort notification channels alphabetically (#37426)
Even without the ability to control the sort order or to filter, this notably improves usability for long lists of notification channels.

Partially fixes #20067.
2021-08-19 22:49:14 +02:00
Grot (@grafanabot)
170d1bf954 ReleaseNotes: Updated changelog and release notes for 8.1.2 (#38086) 2021-08-19 23:15:30 +03:00
Douglas Thrift
d18205ff20 Matchers: handle undefined with Is/Is not null (#38036) 2021-08-19 11:24:01 -07:00
Mitch Seaman
5edba603a8 Add metadata (#30138)
* Sentence case

* Fix typo

* steps not paragraph

* prepare for merge conflict

* another merge conflict fix

* Update docs/sources/enterprise/license/activate-license.md

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

* add suggested changes from docs team manually

Co-authored-by: Daniel Lee <dan.limerick@gmail.com>
Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-08-19 19:26:26 +02:00
Leon Sorokin
7cc15c848f Chore: sync yarn.lock (#38077) 2021-08-19 11:24:38 -05:00
Nathan Rodman
df791ae2af Alerting: Add custom grouping for alert groups (#37378)
* Group alertmangaer alerts by custom grouping

* Filter am groups

* Style filter components

* Style filter bar and add clear functionality

* rename components to alert group

* use query params for group filters

* filter style improvements

* add tests for group by

* Add grouping banner to better highlight groupings

* clean up hook logic
2021-08-19 09:22:52 -07:00
Connor Lindsey
6ed60c0bec Tempo: Use echo endpoint when testing Tempo datasource (#38018)
* Use echo endpoint when testing Tempo datasource

* Remove unreachable error message

* Null check response
2021-08-19 09:56:03 -06:00
Piotr Jamróz
f7501ff77f Graphite: Convert tag values returned as numbers to strings (#37882)
* Convert tag values returned as numbers to string

This is a bug in Graphite <= 1.1.7. Since 1.1.8 all values are converted to strings.

* Simplify type conversions

* Fix linting errors
2021-08-19 08:40:13 -07:00
Connor Lindsey
76b891b001 Tempo: Add Tempo search behind feature flag (#37765)
* Add Tempo search behind feature flag

* Add query fields for Tempo search

* Only show loki search if a logs-to-traces datasource is set up

* Refactor tempo search to use separate fields for service name, span name, and tags

* Add tests to buildSearchQuery

* Move search to separate component and rename type to native search

* Improve Tempo tokenizer syntax
2021-08-19 09:15:46 -06:00
Josh Hunt
17306217aa AzureMonitor: Support PostgreSQL and MySQL Flexible Servers (#38075) 2021-08-19 16:56:58 +02:00
Tobias Skarhed
1f091c448f Template variables: Keyboard navigation improvements (#38001)
* Fix variable labels

* Add proper labeling for input

* Add ids to PickerRenderer

* Fix tests

* Update PR feedback

* OptionsPicker: Change to id

* Inherit aria attributes

* Add checkbox role

* Fix typo

* Add proper label reference

* Update role and label

* Prevent spreadng non-DOM attributes

* Move form layout to other component

* Remove haspopup

* Add testid to selector

* Add HTMLProps extension

* Use list

* Move styles outside of class

* Add cx
2021-08-19 16:28:25 +02:00
Olof Bourghardt
28cf93e42c Explore: use GrafanaTheme2 (LiveTailButton component) (#37516)
* Explore: use GrafanaTheme2 in LiveTailsButton

* Remove unused theme
2021-08-19 16:17:28 +02:00
Kyle Brandt
d43d9207ee Alerting/Docs: $labels and $values not available with classic condition (#38011)
fixes #37836
2021-08-19 09:02:41 -04:00
Jack Westbrook
e988d9b56d Piechart: Update @visx dependencies to 2.1.0 and move to root package.json (#38000)
* chore: move visx dependencies to root package.json

* chore(piechart): bump visx dependencies to 2.1.0

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2021-08-19 14:49:09 +02:00
Ivana Huckova
7f8576ee37 Postgres: For template queries return [] and not error (#38060)
* Postgres: For template queries return [] and not error

* remove the console error

* update mssql and mysql

Co-authored-by: Ying WANG <ying.wang@grafana.com>
2021-08-19 13:43:41 +02:00
Leon Sorokin
ecfa32c8cb AnnotationEditor: simplify plugin (#37463) 2021-08-19 06:40:40 -05:00
Raymond Chen
befdfedfb6 Add documentation for setting up debugging in VSCode (#29987) 2021-08-19 12:08:43 +02:00
billabongrob
2fe62af685 Admin: Obfuscate azure_blob Account Key
Obfuscate azure_blob Account Key #37970
2021-08-19 11:41:26 +02:00
Hugo Häggmark
4ba2636aba Dashboard: Fix so panels are rendered correctly on SoloPanelPage (#38050)
* Dashboard: Fix so panels are rendered correctly on SoloPanelPage

* Refactor: narrows down the path
2021-08-19 08:47:37 +02:00
Hugo Häggmark
dba15190af Chore: Upgrades rxjs to 7.3.0 (#37913)
* Chore: upgrades rxjs to 7.3.0

* Chore: replaces toPromise with lastValueFrom

* Chore: removes unused mock that caused test error

* Chore: fixes build error in PieChartPanel

* Chore: fixed build error in requestAllIndices

* Chore: fixes comment

* Chore: trying to reduce docs errors

* Chore: searches for explicit api extractor warnings

* Chore: updates rxjs-spy to 8.0.0

* Chore: reverts to main

* Chore: upgrade rxjs and rxjs-spy
2021-08-19 06:38:31 +02:00
Villena Guillaume
646d95b8fb TimeSeries: Support Ctrl key for marking annotations (#38034) 2021-08-18 16:38:02 -05:00
w-endre
c5f8d98709 <Explore>: Minor documentation update" (#36338)
* Clarification added for using the Explore tool.

* Update docs/sources/explore/_index.md

Co-authored-by: Daniel Lee <dan.limerick@gmail.com>
2021-08-18 21:59:57 +02:00
An
7b813c81ac revert: change to events canvas (#38023) 2021-08-18 15:47:25 -04:00
Leon Sorokin
49b129b110 GraphNG: fix mem leaks & avoid plot re-inits (#38017)
* State timeline: fix mem leak caused by excessive plot re-init

* Update PlotTooltipInterpolator type

* Do not reference config object in the setCursor hook

* fix excessive BarChart re-init caused by shallow diff of text config

* one less error

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-08-18 13:43:53 -05:00
MDS
63a85a4ac0 Fix typo in set-up-for-high-availability.md (#36316)
* Update set-up-for-high-availability.md

fixed a minor typo

* Update docs/sources/administration/set-up-for-high-availability.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: Daniel Lee <dan.limerick@gmail.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-08-18 20:08:48 +02:00
Chip Wolf ‮
fe09879ff5 Alerting: correct property names for Slack bot icons (#33376) 2021-08-18 21:06:05 +03:00
Robby Milo
552eed75e2 docs - update publishing details, add menuTitle instructions (#37441)
* docs - update publishing details, add menuTitle instructions.

* Update docs/README.md

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

* Update docs/README.md

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

* Apply suggestions from code review

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

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
Co-authored-by: Daniel Lee <dan.limerick@gmail.com>
2021-08-18 19:59:04 +02:00
Ole Ernst
c0d6fc0255 avoid duplicate log in development environment (#36609)
avoid logging performance metrics in production environment
2021-08-18 19:45:54 +02:00
Alexandre de Verteuil
0bf9b6a931 Typo fix in saml.md (#31451) 2021-08-18 16:49:10 +02:00
Oscar Kilhed
21f45d4927 Postgres UUID group issue (#37999)
* Add UUID to types that can be grouped by

* Remove noop switch
2021-08-18 16:17:30 +02:00
Petros Kolyvas
861fe60d01 Updating CONTRIBUTING.md to redirect to GitHub Discussions for Enhancements (#37039) 2021-08-18 16:16:28 +02:00
wengelbrecht-grafana
3843eda130 Update auditing.md (#37312)
Fixed small spelling mistake
2021-08-18 16:12:38 +02:00
Jon Gyllenswärd
b01c0eb571 Docs update for request security (#33974)
* added link to request security feature

* Update docs/sources/administration/security.md

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

* Update docs/sources/administration/security.md

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: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-08-18 16:11:53 +02:00
Andrej Ocenas
60a0c5da05 CloudWatch/Logs: Don't group dataframes for non time series queries (#37998)
* Don't split response when there is no time field

* Refactor grouping to separate function

* Add test
2021-08-18 15:05:06 +02:00
Peter Holmberg
a7b22a73b6 Alerting: Add Copy link to Alert on View rule page (#37967)
* add button to page

* add url to getText

* reorder imports

* build url function

* remove log

* encode
2021-08-18 14:25:56 +02:00
Victor Cinaglia
0819d15942 profiling: Support binding pprof server to custom network interfaces (#36580)
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-08-18 13:28:39 +02:00
Jack Westbrook
552ecfeda3 Chore: Update NPM packages with react peer deps (#36598)
* chore: bump npm packages with react peer deps

* chore: bump rc-cascader to 1.4.3

* chore: bump react-table to 7.7.0

* chore: bump types packages

* refactor(buttoncascader): use CascaderValueType (fixes typescript errors)

* refactor(cascader): use CascaderValueType (fixes typescript errors)

* chore: bump rc-drawer to 4.4.0

* refactor(drawer): update component to match rc-drawer 4.4.0 api changes

* refactor(cascader): provide backwards compatibility for component apis

* chore(react-test-renderer): bump to match react 17.0.1

* fix(drawer): defer opening RcDrawer so animations play correctly

* chore: bump rc-cascader to 1.5.0
2021-08-18 11:23:34 +02:00
Simon Podlipsky
9900f2ed48 Fix url util converting false into true (#37402)
A value of key-value pair is stripped for boolean values. While this is ok for `true`, it kind of inverts `false`
2021-08-18 10:10:29 +02:00
Sergey Kostrukov
c6356c5bba Fix scopes mutation by cloning original array (#37981) 2021-08-18 10:05:14 +02:00
Dimitris Sotirakis
050dc7bc8f Cloudwatch: Unwrap errors - throw error from upstream (#36334)
* Unwrap errors - throw error from upstream

* Fixes according to reviewer's comments

* Fix linting

* Remove unused code
2021-08-18 10:37:13 +03:00
Domas
cb9912ec0a Alerting: button to test contact point (#37475) 2021-08-18 10:16:35 +03:00
Hugo Häggmark
a160930e24 Chore: skip e2e test for examplars (#37991) 2021-08-18 08:29:03 +02:00
An
b028dbc537 EventsCanvas: Clean up action to avoid memory leak (#37592) 2021-08-17 17:29:24 -07:00
Ryan McKinley
16b1922cdc Devenv: remove unused options from timeseries panel (#37980) 2021-08-17 16:29:15 -07:00
Nathan Rodman
b153bb6101 Alerting: Add alertmanager notifications panel (#37078)
* Add filter parsing to rule list filters

* Add unit tests for label parsing

* Make label operators an enum

* add example for parsing function

* Update labels operator regex

* Use tooltip for query syntax example

* refactor to use Matchers for filtering

* wip: initial alertmanager notifications panel

* Panel for alertmanager notificaitons

* add filtering for notifications list

* remove icon

* rename am notifications to alert groups

* naming fixes

* Feature toggle

* Add toggle for expand all

* add pluralize

* add action buttons

* test work in progress

* Tests for alert groups panel

* Add useEffect for expandAll prop change

* Set panel to alpha state

* Fix colors

* fix polling interval callback

Co-authored-by: Domas <domas.lapinskas@grafana.com>

Co-authored-by: Domas <domas.lapinskas@grafana.com>
2021-08-17 15:02:03 -07:00
Nathan Rodman
6579872122 Alerting: update matchers field operators to Select (#37809)
* Alerting: update matchers field operators to Select

* Add matcher field to routes

* fix default values

* min-width for matcher operator

* dry up matcher field options

* change MatcherField name to MatcherValue
2021-08-17 14:48:39 -07:00
Petros Kolyvas
9008ebd27a Relative reference error for influxdb gettting started guide (#37979) 2021-08-17 17:09:36 -04:00
Ryan McKinley
2ff4b028c8 Core: move dimensions out of geomap into app/features (#37946) 2021-08-17 13:43:54 -07:00
Piotr Jamróz
d93d989a5a Graphite: Migrate to React (part 4 & 5: group all components) (#37590)
* Add UMLs

* Add rendered diagrams

* Move QueryCtrl to flux

* Remove redundant param in the reducer

* Use named imports for lodash and fix typing for GraphiteTagOperator

* Add missing async/await

* Extract providers to a separate file

* Clean up async await

* Rename controller functions back to main

* Simplify creating actions

* Re-order controller functions

* Separate helpers from actions

* Rename vars

* Simplify helpers

* Move controller methods to state reducers

* Remove docs (they are added in design doc)

* Move actions.ts to state folder

* Add docs

* Add old methods stubs for easier review

* Check how state dependencies will be mapped

* Rename state to store

* Rename state to store

* Rewrite spec tests for Graphite Query Controller

* Update docs

* Update docs

* Add GraphiteTextEditor

* Add play button

* Add AddGraphiteFunction

* Use Segment to simplify AddGraphiteFunction

* Memoize function defs

* Fix useCallback deps

* Update public/app/plugins/datasource/graphite/state/helpers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/helpers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/helpers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Add more type definitions

* Remove submitOnClickAwayOption

This behavior is actually needed to remove parameters in functions

* Load function definitions before parsing the target on initial load

* Add button padding

* Fix loading function definitions

* Change targetChanged to updateQuery to avoid mutating state directly

It's also needed for extra refresh/runQuery execution as handleTargetChanged doesn't handle changing the raw query

* Fix updating query after adding a function

* Simplify updating function params

* Migrate function editor to react

* Simplify setting Segment Select min width

* Remove unnecessary changes to SegmentInput

* Extract view logic to a helper and update types definitions

* Clean up types

* Update FuncDef types and add tests

* Show red border for unknown functions

* Autofocus on new params

* Extract params mapping to a helper

* Split code between params and function editor

* Focus on the first param when a function is added even if it's an optional argument

* Add function editor tests

* Remove todo marker

* Fix adding new functions

* Allow empty value in selects for removing function params

* Add placeholders and fix styling

* Add more docs

* Create basic implementation for metrics and tags

* Post merge fixes

These files are not .ts

* Remove mapping to Angular dropdowns

* Simplify mapping tag names, values and operators

* Simplify mapping metrics

* Fix removing tags and autocomplete

* Simplify debouncing providers

* Ensure options are loaded twice and segment is opened

* Remove focusing new segments logic (not supported by React's segment)

* Clean up

* Move debouncing to components

* Simplify mapping to selectable options

* Add docs

* Group all components

* Remove unused controller methods

* Create Dispatch context

* Group Series and Tags Sections

* Create Functions section

* Create Section component

* use getStyles

* remove redundant async/await

* Remove

* remove redundant async/await

* Remove console.log and silent test console output

* Do not display the name of the selected dropdown option

* Move Section to grafana-ui

* Update storybook

* Simplify SectionLabel

* Fix Influx tests

* Fix API Extractor warnings

* Fix API Extractor warnings

* Do not show hidden functions

* Use block docs for better doc generation

* Handle undefined values provided for autocomplete

* Section -> SegmentSection

* Simplify section styling

* Remove redundant div

* Simplify SegmentSection component

* Use theme.spacing

* Use empty label instead of a single space label

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2021-08-17 18:50:31 +02:00
Ashley Harrison
f8d7726187 DashboardGrid: compare window width against theme breakpoints (#37868) 2021-08-17 16:53:25 +01:00
Josh Hunt
1e221b6452 AzureMonitor: Show error message when subscriptions request fails in ConfigEditor (#37837)
* Fix jsdoc description for datasourceRequest

* Align default subscription width with other fields

* AzureMonitor: Show error message when requesting default subscriptions in ConfigEditor

* update snapshots:
2021-08-17 16:46:15 +01:00
Andrej Ocenas
11c848f00d Tempo: Service map (#37661)
* Add prometheus queries

* Add stats

* Refactor transform

* Fix stat format

* Refactor transform

* Hide behind feature flag

* Better linking error messages

* Add test

* Add test for datasource

* Fix lint

* Make optionality checking more explicit
2021-08-17 15:48:29 +02:00
cyhone
6aa2a0dc8a refactor: simplify serverlock code (#37451) 2021-08-17 15:34:03 +02:00
Hugo Häggmark
0d2aaed3e8 Annotations: Fixes so alert annotations are visible in the correct Panel (#37959) 2021-08-17 15:14:11 +02:00
George Robinson
3ca00f90b5 Contact point testing (#37308)
This commit adds contact point testing to ngalerts via a new API
endpoint. This endpoint accepts JSON containing a list of
receiver configurations which are validated and then tested
with a notification for a test alert. The endpoint returns JSON
for each receiver with a status and error message. It accepts
a configurable timeout via the Request-Timeout header (in seconds)
up to a maximum of 30 seconds.
2021-08-17 13:49:05 +01:00
Josh Hunt
afabc617ed AzureMonitor: Apply query migrations in QueryEditor (#37704)
* move query migrations out of the angular controller

* Migrate queries in QueryEditor

* finish up migrations

* update deprecated comment

* remove comment
2021-08-17 14:03:18 +02:00
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
Josh Hunt
368da73ac4 AzureMonitor: Fix crash from infinite render loop (#37924) 2021-08-17 11:50:37 +01:00
Will Browne
697ac937c6 fix with global config state (#37293) 2021-08-17 12:16:34 +02:00
Will Browne
8a2f63ee06 Update Makefile (#37926) 2021-08-17 12:06:33 +02:00
Jack Westbrook
483c597740 Storybook: Fix Graph with Tooltip story (#37937) 2021-08-17 10:14:57 +02:00
Olof Bourghardt
f433cfd8d9 Explore: add functionality for supporting different step modes in prometheus (#37829) 2021-08-17 07:48:45 +02:00
Atif Shoukat Ali
f6c9c196ba Live: No connection warning for user with no org (#37943) 2021-08-16 22:11:39 -07:00
Evan Sosenko
5d74c47cf8 Add missing AWS/Cognito metrics (#37768)
* Add missing AWS/Cognito metrics

https://docs.aws.amazon.com/cognito/latest/developerguide/metrics-for-cognito-user-pools.html

* Add missing Cognito dimensions

* Remove Cognito usage metrics
2021-08-16 20:44:32 +02:00
Ashley Harrison
344c43f2e8 PanelEdit: Fix 'Actual' size by passing the correct panel size to DashboardPanel (#37885) 2021-08-16 16:01:54 +01:00
Tobias Skarhed
89572926c3 Search: Make search icon keyboard navigable (#37865)
* Make search icon keyboard navigable

* Update text

* Update test

* Remove unused line

* Add global focus-visible styles for button
2021-08-16 15:51:44 +02:00
Maria Alexandra
1735f9a56b Navigation: Add aria-label to top section links to improve a11y for screen readers (#36953) 2021-08-16 15:10:57 +02:00
Dimitris Sotirakis
37b0c20984 Chore: Update channel to where failed Docker nightly builds are posted (#37927)
* Update channel

* Sign drone.yml
2021-08-16 14:54:52 +02:00
Olof Bourghardt
d26f3cdd03 Loki: add support for resolution (#36710)
* Add input to specify min step

* Add stepInterval to as input to component

* Add onBlur to Input component

* Loki: add functionality for min step

* Loki: change name on props to step to make it more clear

* Loki: add resolution as a query option

* Loki: Add min,max,exact as step options

* Loki: add functionality for different step modes

* Loki: fix bug where step function isn't working

* Loki: fix bug where exact step isn't working

* Loki: change width of step input field

* Loki: add tests for adjustInterval function

* Loki: add check for max step oprio to make sure it's not below the safe interval

* Loki: fix bug with some tests

* Loki: fix bug with tests

* Explore: add tooltip to loki step function

* Loki: remove resolution as a logs option

* Loki: update snapshots

* Fix failing tests

* Loki: add select component for choosing resolution

* Loki: add functionality for calculating correct interval with resolution applied

* Loki: remove functionality for step mode

* Loki: remove tests for step mode

* Loki: add tooltip to line limit and resolution

* Loki: add backend support for resolution

* Loki: fixed backend bug where resolution was undefined

* Loki: add check for resolution
2021-08-16 14:02:13 +02:00
Dimitris Sotirakis
1aeafa34d1 Elasticsearch: Fix metric names for alert queries (#37871)
* Use props names as metrics names

* Make aliases work
2021-08-16 14:45:20 +03:00
Sherwin Daganato
118c811c61 CloudWatch: Add AWS/EC2 MetadataNoToken metric (#37427) 2021-08-16 10:04:21 +02:00
Gábor Farkas
668f397a8e Prometheus/Alerting: handle datasource.timeRange is nil case (#37888) 2021-08-16 09:20:58 +02:00
Domas
5ab8d6a3b9 remove guideliens form rule list state table (#37839) 2021-08-16 10:12:07 +03:00
Stephanie Hingtgen
db2e0d46b7 Update http error code when datasource health check fails (#37895)
Since the datasource settings are configured by the user, the health check error could be a client error. A 506 error may be sufficient as well.
2021-08-16 09:49:34 +03:00
Ivana Huckova
15edaa5837 Add pattern parser to syntax (#37824) 2021-08-15 21:20:37 +02:00
Ikko Ashimine
1a5529d244 Annotations: Fix typo in types.ts (#37910) 2021-08-15 09:22:38 -07:00
Sergey Kostrukov
10cc9bda74 Toolkit: return original stack trace for webpack errors (#37814) 2021-08-14 13:49:56 -07:00
Teppo Kurki
5c69f899b5 doc: add missing LoadingState.Streaming (#37903)
The final query is missing this and does not work without it.
2021-08-14 09:35:33 -04:00
sam boyer
6d08be157f Don't reuse plugin action for cue subcommands (#37858) 2021-08-13 17:01:12 -04:00
Leon Sorokin
0e3fb55caa Tooltip: bring back optimized hoverpoint code (#37901) 2021-08-13 15:35:41 -05:00
Ryan McKinley
f5b8e8b48a Devenv: remove unused stacking setting (#37898) 2021-08-13 21:09:57 +02:00
Travis Patterson
00709ec1db Add prometheus remote client (#37755) 2021-08-13 10:44:56 -06:00
Dominik Eckelmann
e49aa48dbb Added note on pagerduty alert notification (#37759) 2021-08-13 12:32:42 -04:00
shuotli
6ecf401cd1 AzureMonitor: Add data links to deep link to Azure Portal Azure Resource Graph (#35591)
* Add deep link in ARG

* add soverigh clouds

* add query to Azure portal link

* move deep link to backend

* cloud specific to ARG

* Add unit test

* fix lint

* fix escape issue

* use constant & fix test

* fix constant & use pathEscape

* use cmp.Equal for test
2021-08-13 16:21:24 +01: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
Sergey Kostrukov
dd0a906fb7 Fix alternative Azure cloud names (#37133) 2021-08-13 14:58:05 +01:00
Uchechukwu Obasi
4e98ade2af Annotations: fixes variable values not displaying in annotations. (#37883)
* Fixes wrong annotation when opening dashboard with URL encoded variable
Co-authored-by: Ashley Harrison, Hugo Haggmark, and Tobias Skarhed.

* added a more descriptive comment
2021-08-13 14:38:57 +01:00
Sofia Papagiannaki
7a01fb369d Alerting: Fix API spec generation (#37852)
* Alerting: Fix API spec generation

* Apply suggestion from code review

Co-authored-by: gotjosh <josue@grafana.com>
2021-08-13 16:15:53 +03:00
gotjosh
f3f3fcc727 Alerting: Introduces /api/v1/ngalert/alertmanagers to expose discovered and dropped Alertmanager(s) (#37632)
* Alerting: Expose discovered and dropped Alertmanagers

Exposes the API for discovered and dropped Alertmanagers.

* make admin config poll interval configurable

* update after rebase

* wordsmith

* More wordsmithing

* change name of the config

* settings package too
2021-08-13 13:14:36 +01:00
Dimitris Sotirakis
db91a55d49 Remove duplicated title from slack notification (#37834) 2021-08-13 15:13:02 +03:00
Ursula Kallio
e8696f978f Fix #747; remove 'other variables'. (#37866) 2021-08-13 08:02:04 -04:00
Matt Abrams
f76248cdbf [docs] : fix broken link (#37860)
found a broken link. This PR points the hyperlink at the new URL 👍
2021-08-13 07:45:38 -04:00
Josh Hunt
81cfc2c347 AzureMonitor: Use React QueryEditor for annotations editor (#37633) 2021-08-13 11:05:57 +01:00
Ashley Harrison
d4098cf098 Select: Add menuShouldPortal to a couple that got missed (#37847) 2021-08-13 08:35:24 +01:00
Hugo Häggmark
5449f1c1e6 Variables: Fix issue with empty dropdowns on navigation (#37776) 2021-08-13 09:10:37 +02:00
Olof Bourghardt
13a91f791d Explore: use GrafanaTheme2 (Explore component) (#37445)
* Explore: use GrafanaTheme2

* Explore: change width and paneel padding

* Explore: remove the use of stylyesFactory

* Explore: fix failing tests

* Simpify calculation of width for ExploreGraphNGPanel

* Update public/app/features/explore/Explore.tsx

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>

* Update public/app/features/explore/Explore.tsx

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>

* Prettified code

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2021-08-13 08:02:49 +02:00
Kyle Brandt
aef67994a1 Annotations: Fix alerting annotation coloring (#37412)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-08-12 09:37:54 -07: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
a17339cb9a One-off schema support for old graph and row plugins (#37810)
* Add special types for graph and row panels

* Update old keys on dashboard json
2021-08-12 09:50:10 -04:00
Sofia Papagiannaki
04d5dcb7c8 Alerting: modify DB table, accessors and migration to restrict org access (#37414)
* Alerting: modify table and accessors to limit org access appropriately

* Update migration to create multiple Alertmanager configs

* Apply suggestions from code review

Co-authored-by: gotjosh <josue@grafana.com>

* replace mg.ClearMigrationEntry()

mg.ClearMigrationEntry() would create a new session.
This commit introduces a new migration for clearing an entry from migration log for replacing  mg.ClearMigrationEntry() so that all dashboard alert migration operations will run inside the same transaction.
It adds also `SkipMigrationLog()` in Migrator interface for skipping adding an entry in the migration_log.

Co-authored-by: gotjosh <josue@grafana.com>
2021-08-12 16:04:09 +03:00
Connor Lindsey
4a9fdb8b76 Add span duration to left panel in trace viewer (#37806) 2021-08-12 06:54:55 -06:00
Ashley Harrison
8ffce22e7c Chore: Update optimize-css-assets-webpack-plugin to 5.0.5 (#37746)
* Chore: Update optimize-css-assets-webpack-plugin to 5.0.5

* kick github
2021-08-12 11:40:26 +01:00
Tobias Skarhed
b6ede8d96d Chore: Low hanging a11y fruits (#37783)
* aria-label disallowed on header element

* A11y issues for Getting Started and panel header

* Add unique identifier to search navigation

* Add dashboard header markup

* Fix news panel low hanging fruits
2021-08-12 11:13:03 +02:00
Alex Khomenko
059ef4ee9a PasswordField: Fix button role (#37816)
* Fix button role

* Fix tests
2021-08-12 10:46:33 +02:00
Dimitris Sotirakis
e4779cfb4f Remove pkg-archive from Makefile (#37821) 2021-08-12 11:39:09 +03:00
Andrej Ocenas
b5f7df3e62 CloudWatch/Logs: Fix crash when time column has nil values (#37708) 2021-08-12 10:36:06 +02:00
Domas
e76848acee Alerting: improve rule list error message (#37734) 2021-08-12 09:57:52 +02:00
Gábor Farkas
28229fc344 devenv: influxdb: simplified versioning for old-version influxdb (#37726) 2021-08-12 08:36:50 +02:00
Gábor Farkas
4afa74232f prometheus: alerting: respect datasource.scrapeInterval (#37799) 2021-08-11 20:34:51 +02:00
Will Browne
45754edfbc bump plugin-sdk-go to fix tls verify field issue (#37797) 2021-08-11 16:23:07 +02:00
Serge Zaitsev
e2227c38a3 Remove debug log from gzipper (#37790) 2021-08-11 14:04:08 +02:00
Ursula Kallio
a058a09b9b Include voice and tone summary (#37742)
Fix https://github.com/grafana/technical-documentation/issues/35.
2021-08-11 11:30:40 +02:00
dependabot[bot]
94b58b87ea Bump prismjs from 1.23.0 to 1.24.0 (#36236)
Bumps [prismjs](https://github.com/PrismJS/prism) from 1.23.0 to 1.24.0.
- [Release notes](https://github.com/PrismJS/prism/releases)
- [Changelog](https://github.com/PrismJS/prism/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PrismJS/prism/compare/v1.23.0...v1.24.0)

---
updated-dependencies:
- dependency-name: prismjs
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-11 09:56:20 +01:00
Ryan McKinley
3205450210 Transformations: support a synchronous transformation pattern (#37780) 2021-08-11 01:25:33 -07:00
Ashley Harrison
181d6a78ed Chore: Fix some more typescript strict errors (#37750) 2021-08-11 09:10:41 +01:00
Ivana Huckova
4cf097c4e5 Small UX updates (#37694) 2021-08-11 09:56:23 +02:00
Ryan McKinley
36c798eb2f Chore: define base panel type in @grafana/data (#37766) 2021-08-11 00:23:41 -07:00
Ryan McKinley
7a8e861c1f Timeseries: migrate log scale (#37771) 2021-08-11 00:23:12 -07:00
Piotr Jamróz
31bb3522c8 Graphite: Migrate to React (part 3: migrate segments) (#37309)
* Add UMLs

* Add rendered diagrams

* Move QueryCtrl to flux

* Remove redundant param in the reducer

* Use named imports for lodash and fix typing for GraphiteTagOperator

* Add missing async/await

* Extract providers to a separate file

* Clean up async await

* Rename controller functions back to main

* Simplify creating actions

* Re-order controller functions

* Separate helpers from actions

* Rename vars

* Simplify helpers

* Move controller methods to state reducers

* Remove docs (they are added in design doc)

* Move actions.ts to state folder

* Add docs

* Add old methods stubs for easier review

* Check how state dependencies will be mapped

* Rename state to store

* Rename state to store

* Rewrite spec tests for Graphite Query Controller

* Update docs

* Update docs

* Add GraphiteTextEditor

* Add play button

* Add AddGraphiteFunction

* Use Segment to simplify AddGraphiteFunction

* Memoize function defs

* Fix useCallback deps

* Update public/app/plugins/datasource/graphite/state/helpers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/helpers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/helpers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Add more type definitions

* Remove submitOnClickAwayOption

This behavior is actually needed to remove parameters in functions

* Load function definitions before parsing the target on initial load

* Add button padding

* Fix loading function definitions

* Change targetChanged to updateQuery to avoid mutating state directly

It's also needed for extra refresh/runQuery execution as handleTargetChanged doesn't handle changing the raw query

* Fix updating query after adding a function

* Simplify updating function params

* Migrate function editor to react

* Simplify setting Segment Select min width

* Remove unnecessary changes to SegmentInput

* Extract view logic to a helper and update types definitions

* Clean up types

* Update FuncDef types and add tests

* Show red border for unknown functions

* Autofocus on new params

* Extract params mapping to a helper

* Split code between params and function editor

* Focus on the first param when a function is added even if it's an optional argument

* Add function editor tests

* Remove todo marker

* Fix adding new functions

* Allow empty value in selects for removing function params

* Add placeholders and fix styling

* Add more docs

* Create basic implementation for metrics and tags

* Post merge fixes

These files are not .ts

* Remove mapping to Angular dropdowns

* Simplify mapping tag names, values and operators

* Simplify mapping metrics

* Fix removing tags and autocomplete

* Simplify debouncing providers

* Ensure options are loaded twice and segment is opened

* Remove focusing new segments logic (not supported by React's segment)

* Clean up

* Move debouncing to components

* Simplify mapping to selectable options

* Add docs

* use getStyles

* remove redundant async/await

* Remove

* remove redundant async/await

* Remove console.log and silent test console output

* Do not display the name of the selected dropdown option

* Use block docs for better doc generation

* Handle undefined values provided for autocomplete

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2021-08-11 09:13:55 +02:00
Olof Bourghardt
2a1363f175 Explore: use GrafanaTheme2 (MetaInfoText component) (#37539)
* Explore: use GrafanaTheme2 in MetaInfoText component

* Explore: change font-size to h6 size

* Explore: add correct font weight

* Use correct style value for font-size

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Use error color style

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Use bodySmall font-size instead of h6 font-size

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2021-08-11 08:25:54 +02:00
nikki-kiga
87b8a74576 Tooltip: display ms within minute time range (#37569)
* Tooltip: add hasMs flag for system dateTime format

* Tooltip: display ms in sub minute time range

* Tooltip: add field check, increase range on tests

* Add diffrentiating test

* minimize parsing to string values

Co-authored-by: Oscar Kilhed <oscar.kilhed@grafana.com>
2021-08-10 13:54:44 -07:00
SLAMA
5986d99f51 Alerting frontend : fix line notifier (#37744)
- Fixes #37425
- change `line` type string to uppercase
2021-08-10 18:59:53 +01:00
achatterjee-grafana
1da779103e Added missing period. (#37737) 2021-08-10 17:06:14 +02:00
Tobias Skarhed
fa731f16bf DashboardLinks: Screen reader accessibility #37682 2021-08-10 16:55:25 +02:00
Gábor Farkas
476a227505 influxdb: check for invalid program-flow (#37474) 2021-08-10 14:18:29 +02:00
Serge Zaitsev
707d3536f0 Macaron: Strip down renderer middleware (#37627)
* strip down macaron renderer

* inline renderHTML

* remove IndentJSON parameter

* replace renderer with a html/template set

* fix failing test

* fix renderer paths in tests

* make template reloading even simpler

* unify ignored gzip path lookup

* fix csp middleware usage
2021-08-10 13:29:46 +02:00
Tobias Skarhed
5b575ae91f TimeRangeOption: Make entire list item clickable #37730 2021-08-10 12:43:50 +02:00
Jeremy Price
06368abf44 Accesscontrol fix permission name (#37717)
* Fixes permission name for services:accesscontrol
2021-08-10 11:11:13 +02:00
Zoltán Bedi
ad6a4edfeb UI: FileDropzone component to handle file list overwrite (#37685)
* UI: FileDropzone component to handle file list overwrite

* FileListItem: use type=button everywhere

* Update packages/grafana-ui/src/components/FileDropzone/FileDropzone.story.tsx

Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>

* FileListItem: add aria-hidden and change cancel text

* Update packages/grafana-ui/src/components/FileDropzone/FileListItem.test.tsx

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>

Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2021-08-10 10:23:49 +02:00
Domas
3e124c854e Alerting: interpolate variables when creating alert rule from dashboard panel (#37201) 2021-08-10 10:59:48 +03:00
Gábor Farkas
488930dbe3 influxdb: influxql: update provisioning example (#37701) 2021-08-10 09:07:23 +02:00
Serge Zaitsev
0dfac9c3aa Macaron: convert CSP middleware (#37672) 2021-08-10 09:03:22 +02:00
Serge Zaitsev
377b323faf truncate float64 values to a lower precision to look the same on all platforms (#37677) 2021-08-10 09:03:01 +02:00
Ivana Huckova
a02f9be0c6 Explore: Fix showing of full log context (#37442)
* Fix log context

* Update to auto values insted of unset

* Update comment

* Fix redundant left margin for non-wrapped logs

* Remove unused css styling

* Adjust width and height
2021-08-10 09:01:57 +02:00
Julien Duchesne
7e63118ea9 Run builds on single-build agents (#37702)
This is an effort to reduce cache errors when multiple agents try to build the yarn cache at the same time
https://github.com/grafana/deployment_tools/issues/13329
2021-08-10 09:16:09 +03:00
Zoltán Bedi
33aeee60ff Toolkit: Fix matchMedia not found error (#37643) 2021-08-10 07:34:35 +02:00
Leonard Gram
7d503d4331 Update latest to v8.1.1 (#37715) 2021-08-09 21:01:38 +02:00
achatterjee-grafana
b556bafc4d Updated note as requested. Also adjusted the weight of some of the topics to list data sources alphabetically in TOC. (#37713) 2021-08-09 20:37:21 +02:00
Grot (@grafanabot)
72b1b0e90e ReleaseNotes: Updated changelog and release notes for 8.1.1 (#37692)
* ReleaseNotes: Updated changelog and release notes for 8.1.1

* Update _index.md

* Update CHANGELOG.md

Co-authored-by: Leonard Gram <leo@xlson.com>
2021-08-09 19:53:44 +02:00
achatterjee-grafana
2bc2315e99 Updated note by adding the word "longer". (#37707) 2021-08-09 19:37:11 +02:00
sam boyer
6ae5db5608 Adapt dashboard schema to validate on some devenv dashboards (#37594)
* Remove null values from JSON

* Specify the color field

* Add note about openness of custom field's struct

* Update schemaVersion

* Specify thresholds

* Add panel id

* Add maxDataPoints and interval

* Add mappings, albeit very under-specified

* Allow empty string for timezone field

This is probably not a good idea - same as allowing nulls.

* Allow false for refresh - otherwise, string

* Make threshold value optional

* Make interval optional

* Fix broken and changed decls in ui models

* Add models.cue for timeseries panel

* Fixups for home dashboard

* Add timeShift, timeFrom

* Abstract out #Target, rejigger comments
2021-08-10 00:49:58 +08:00
sam boyer
e1637f70bd Strip nulls from all latest devenv dashboards (#37602)
Everything schemaVersion >= 30
2021-08-10 00:42:41 +08:00
Josh Hunt
88487806e3 Docs: Clarify how to enable "Forward OAuth Identity" for data sources (#37696)
* Docs: Clarify how to enable "Forward OAuth Identity" for data sources

* Update docs/sources/developers/plugins/add-authentication-for-data-source-plugins.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update add-authentication-for-data-source-plugins.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-08-09 17:22:40 +01:00
achatterjee-grafana
acc77d5cef Fix typo. (#37697) 2021-08-09 17:18:30 +02:00
Will Browne
e0315dabe8 Plugins: Use file extension allowlist when serving plugin assets instead of checking for UNIX executable (#37688)
* explicitly check for plugin binary

* remove check completely

* resolve conflicts

* allow module + logos

* add tests

* simplify

* rework to allowlist

* add case

* remove old stuff

* simplify

* add case insensitive test
2021-08-09 16:07:54 +02:00
Jeremy Price
fe500315f0 Accesscontrol update api examples (#37654)
* Fix status, add global flags

* Check examples are working, correct where they aren't
2021-08-09 15:26:27 +02:00
Ivana Huckova
c5eea16cfe Logs panel: Set default scrolling for ascending order to bottom (#37634)
* LogsPanel: When ascending order, scroll to bottom

* Add tests

* Refactor style

* Update scroll position when logs change
2021-08-09 15:19:46 +02:00
Alex Khomenko
a6a09add7a DateTimePicker: Use TZ independent formatter (#37676) 2021-08-09 12:37:53 +03:00
Dimitris Sotirakis
27c71a1f09 Prometheus: Migrate to use SDK contracts (#37358)
* Use SDK contracts (test needs fixing)

* Fix tests

* Add customQueryParametersMiddleware

* Fix merge conflicts
2021-08-09 11:11:19 +02:00
Tobias Skarhed
2d33ddf37f Dashboard: Accessible text for search links #37593 2021-08-09 09:59:29 +02:00
Olof Bourghardt
e300696792 Epxplore: use GrafanaTheme (SecondaryActions component) (#37543) 2021-08-09 08:47:47 +02:00
Alexander Emelin
ff1837a768 live: add ha with redis to what's new (#37652) 2021-08-06 20:51:46 +03:00
Connor Lindsey
b78a67cec7 PackageJson: Prettify markdown/mdx on commit with lint-staged (#37616)
* Format md,mdx files with prettier on lint-staged

* Manually run prettier on docs/sources
2021-08-06 07:52:36 -06:00
Andrej Ocenas
e9c032f10f CloudWatch Logs: Fix crash when no region is configured (#37639) 2021-08-06 15:47:27 +02:00
gotjosh
f83cd401e5 Alerting: Send alerts to external Alertmanager(s) (#37298)
* Alerting: Send alerts to external Alertmanager(s)

Within this PR we're adding support for registering or unregistering
sending to a set of external alertmanagers. A few of the things that are
going are:

- Introduce a new table to hold "admin" (either org or global)
  configuration we can change at runtime.
- A new periodic check that polls for this configuration and adjusts the
  "senders" accordingly.
- Introduces a new concept of "senders" that are responsible for
  shipping the alerts to the external Alertmanager(s). In a nutshell,
this is the Prometheus notifier (the one in charge of sending the alert)
mapped to a multi-tenant map.

There are a few code movements here and there but those are minor, I
tried to keep things intact as much as possible so that we could have an
easier diff.
2021-08-06 13:06:56 +01:00
Zoltán Bedi
7e42bb5df0 Toolkit: rename deprecated tsConfig to tsconfig (#37630) 2021-08-06 14:04:42 +02:00
Jack Westbrook
e0ca9585fe Build: bump fork-ts-checker-webpack-plugin to 6.3.1 (#37472) 2021-08-06 10:34:49 +02:00
Jack Westbrook
6ff599e25a Plugins: Fix plugin signature status (#37583) 2021-08-06 09:49:29 +02:00
Ivana Huckova
ba76877d28 Datasource: Pass access type to data source instance settings (#37577)
* Pass Access info to datasourceInstance

* Update packages/grafana-data/src/types/datasource.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Type access as direct | proxy

* Fix tests where mocking datasourceInstance, include access

* Pass access to data source instance mocks

* Update comment

* Pass access to data source instance mocks

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2021-08-06 09:24:35 +02:00
Ivana Huckova
8e7c4af366 Prometheus: Add browser access mode deprecation warning (#37578)
* Add browser deprecation info

* Update copy

* Add info to documentation

* Update copy
2021-08-06 09:22:39 +02:00
Leon Sorokin
cf1c2c374f Tooltip: fix time label mismatched with cursor & hover points (#37615) 2021-08-05 22:33:26 -05:00
achatterjee-grafana
ef19e2edce Removed section. (#37601) 2021-08-05 18:51:08 +02:00
Will Browne
74f89cfd3a update latest.json for 8.1.0 stable (#37599) 2021-08-05 18:05:40 +02:00
Grot (@grafanabot)
2418a99f09 ReleaseNotes: Updated changelog and release notes for 8.1.0 (#37589) 2021-08-05 17:22:12 +02:00
Giordano Ricci
2f21bf5cfd Chore: Reduce Elasticsearch data source plugin strict errors (#37399) 2021-08-05 16:03:38 +01:00
Zoltán Bedi
e0010860bd Tempo: add ability to upload trace json (#37407)
* Tempo: upload json

* Add test for upload

* Minor changes

* Add docs

* Update docs/sources/datasources/tempo.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Add graphframes as well to upload

* Add comments to code

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-08-05 15:13:44 +02:00
Will Browne
5a54deb38b Add 8.1.0 release notes link (#37591) 2021-08-05 15:04:05 +02:00
Gábor Farkas
9417e86316 Updated "react-use" package to newest version (#37579)
* package.json: updated react-use to newest version

* fixes (typescript and other)
2021-08-05 14:32:51 +02:00
Olof Bourghardt
8073be2e4e Explore: use GrafanaTheme2 in LogsNavigation component (#37518) 2021-08-05 13:31:39 +02:00
Olof Bourghardt
ba2dfe5ec4 Explore: use GrafanaTheme (LogsNavigationPages component) (#37523)
* Explore: use GrafanaTheme in LogsNavigationPages

* Explore: remove comment
2021-08-05 13:31:21 +02:00
Olof Bourghardt
0bbfe3f7b4 Explore: use GrafanaTheme2 (NoDataSourceCallToAction component) (#37542)
* Explore: use GrafanaTheme2 in NoDataSourceCallToAction component

* Explore: add px to the end of styling
2021-08-05 13:30:31 +02:00
idafurjes
7ff16c47e1 Chore: Refactor tempo using SDK contracts (#37440)
* Refactor tempo using SDK contracts

* Remove commented code

* Removing simplejson use

* Unmarshal JSON
2021-08-05 11:14:17 +02:00
Josh Hunt
f41f45f6bf AzureMonitor: Remove Angular query editor (#37532)
* Remove angular query editor

* call debounced onRunQuery, and set some default query values
2021-08-05 10:12:25 +01:00
Zoltán Bedi
44c7e65fac Zipkin: add ability to upload trace json (#37483)
* Zipkin: upload json

* Change back mock json
2021-08-05 10:55:15 +02:00
idafurjes
0563bc68fc Chore: Refactor loki to use SDK contracts (#37400)
* Refactor loki to use SDK contracts

* Register with service name

* Initialize interval calculator

* Return always created result

* Use go library instead of simplejson

* Update pkg/tsdb/loki/loki.go

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>

* Remove newline

* Merge with main

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2021-08-05 10:25:31 +02:00
Ivana Huckova
1083bef030 Prometheus: Implement stepMode for alerting queries (#36796)
* Add select component for choosing step option

* Add onStepChange

* Add functionality for max step

* Rename minInterval to stepInterval to describe min, max and exact step interval

* Change select option from standard to exact

* Add new type StepType for better type safety

* Add tests for adjustInterval

* Add functionality and tests for exact step option

* Prometheus: Spell out min and max in select component

* Prometheus: Change width of step select component and add placeholder

* Prometheus: Adjust for the factor in exact step

* Prometheus: Update tooltip of step lable to include max and exact options and add padding to select component to give it some breathing room from other components

* Update snapshot for step tooltip

* Prometheus: make tooltip more informative

* Prometheus: add tooltip to interval input element

* Prometheus: extract default step option

* Prometheus: update snapshot for PromQueryEditor

* Prometheus: change step labels to uppercase

* Prometheus: define a default step option

* Prometheus: use default step option in both ui component and logic

* Prometheus: update snapshot for PromQueryEditor

* Prometheus: refactor datasource.ts for better readability

* Prometheus: change tool tip for step

* Prometheus: update snapshots

* Prometheus: add correct styling

* Prometheus: update snapshots

* Prometheus change variable name to something less superfluous

* Prometheus: refactor

* Prometheus: add new test for adjustInterval

* Docs: Update docummentation on the step parameter for prometheus

* Prometheus: make step input field smaller and change placeholder text to 15s

* Prometheus: update snapshots

* Prometheus: Make stepMode uniform in all places in the code

* Adjust step based on stepMode

* Adjust comment

* Check if we have queryInterval

* Refactor, add safe interval

* Fix merge resolutions

* Fix tests and add tests

* Update snapshot

* Update docs/sources/datasources/prometheus.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/prometheus.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/prometheus.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/prometheus.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/prometheus.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/prometheus.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/prometheus.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Implement calculation with intervalMode in calculator.go

* Update tests, add calculate safe interval method

* Replace panic with error

* Update pkg/tsdb/interval/interval_test.go

Co-authored-by: idafurjes <36131195+idafurjes@users.noreply.github.com>

* Update pkg/tsdb/calculator_test.go

Co-authored-by: idafurjes <36131195+idafurjes@users.noreply.github.com>

* Impotrt require

* Remove lint errors

Co-authored-by: Olof Bourghardt <ob655088@gmail.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
Co-authored-by: idafurjes <36131195+idafurjes@users.noreply.github.com>
2021-08-05 09:09:49 +02:00
Leon Sorokin
d49ce5ad47 GraphNG: optimize cursor (#37460) 2021-08-04 16:13:11 -05:00
Leon Sorokin
27b94139ed XYCanvas: useMemo() for className gen (#37513) 2021-08-04 13:47:43 -05:00
Leon Sorokin
1fe3452886 Field: use 0-based field.state.seriesIndex (#37563) 2021-08-04 13:02:27 -05:00
Will Browne
e403d54ba4 Plugins: Update plugin catalog docs (#37557)
* docs(catalog): update documentation for 8.1 changes

* docs(catalog): update the image and video links

* Apply suggestions from code review

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* make catalog refs consistent

* Update docs/sources/plugins/catalog.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-08-04 18:35:15 +02:00
An
968817b151 Geomap: Use set to order labels in reducer (#37509)
* shared location config

* shared locaiton config

* shared locaiton config

* remove file

* add alpha annotations

* chore: set is already ordered

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-08-04 12:07:59 -04:00
achatterjee-grafana
7323ba5ec1 Added new section "Support for AES-GCM encryption algorithm". (#37556) 2021-08-04 12:01:39 -04:00
Jack Westbrook
e21ecf237b Catalog: Update enterprise license messaging in PluginDetails (#37547)
* feat(catalog): change messaging if enterprise license is missing and add link

* test(catalog): fix failing PluginDetails test
2021-08-04 17:55:03 +02:00
ying-jeanne
fcd0dac814 Dependency: update collector to v.31.0 (#37546)
* update collector to v.31.0

* Change protobuf unmarshal function after upgrade

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2021-08-04 17:41:07 +02:00
Sriram
800967a413 Docs: Added missing enterprise plugins (#36786)
* Added missing enterprise plugins

* Update tests
2021-08-04 16:08:43 +01:00
Alex Khomenko
1a46123dbf TimeRangePicker: fix DOM nesting (#37550) 2021-08-04 17:04:31 +02:00
Mitch Seaman
978384b27e small typo fix (#37527) 2021-08-04 10:48:40 -04:00
Ashley Harrison
8aa3845f70 Select: Make portalling the menu opt-in, but opt-in *everywhere* (#37501)
* Select: Don't portal by default

* Select: Portal all the Selects

* Fix indendentation in this comment

* Select: Remove @example docs until formatting is correct

* Docs: Add some documentation for the Select changes

* Update docs/sources/whatsnew/whats-new-in-v8-1.md

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

* Update docs/sources/whatsnew/whats-new-in-v8-1.md

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

* Update packages/grafana-ui/src/components/Select/types.ts

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

* Update public/app/core/components/TransformersUI/configFromQuery/ConfigFromQueryTransformerEditor.tsx

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

* Update public/app/core/components/TransformersUI/configFromQuery/ConfigFromQueryTransformerEditor.tsx

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

* Update public/app/core/components/TransformersUI/configFromQuery/ConfigFromQueryTransformerEditor.tsx

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

* Update public/app/core/components/TransformersUI/prepareTimeSeries/PrepareTimeSeriesEditor.tsx

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

* Docs: Variants instead of varients

* Update public/app/core/components/TransformersUI/configFromQuery/ConfigFromQueryTransformerEditor.tsx

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

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-08-04 15:47:53 +01:00
Ivana Huckova
a0f94866b4 Update dashboard loki query editor (#37541) 2021-08-04 16:23:16 +02:00
Jack Westbrook
cc7c54be0e Plugins: Update Catalog Card UI (#37350)
* feat(catalog): lazy load and add alt text to plugin logos

* refactor(catalog): use plugin types, make sure data is available for new ui

* test(catalog): fix up tests after types refactor

* feat(catalog): introduce Tile and PluginBadge components for ui updates

* refactor(catalog): update PluginList to use new components, lazy load images, add creditcard icon

* test(catalog): update Browse.test types

* fix(catalog): if local and remote make sure to get the correct local plugin from array

* refactor(catalog): prefer grafana/ui components over custom Tile component

* chore(catalog): delete redundant components

* feat(catalog): introduce ascending descending name sort for Browse

* refactor(catalog): prefer theme spacing over hardcoded values

* refactor(catalog): update Local and Remote plugin types to match api responses

* fix(catalog): prefer local.hasUpdate and local.signature so updateable plugin signature is valid

* test(catalog): update test plugin mocks

* test(catalog): add tests for sorting and categorise

* test(catalog): add tests for plugin cards, remove grid component

* test(catalog): add tests for PluginBadges component

* refactor(catalog): change enterprise learn more link to open plugin page on website
2021-08-04 15:09:57 +02:00
Jeremy Price
e8e1a0b50b Revert "Revert "AccessControl: Implement a way to register fixed roles (#35641)" (#37397)" (#37535)
This reverts commit 55efeb0c02.
2021-08-04 14:44:37 +02:00
Ivana Huckova
7fd94e69c3 Loki: Update labels in log browser when time range changes (#37520)
* Refresh label when time range changes

* Refactor solution

* Add tests

* Update tests comments

* Update test

* Update public/app/plugins/datasource/loki/components/LokiQueryField.tsx

* Update public/app/plugins/datasource/loki/components/LokiQueryField.tsx
2021-08-04 14:37:19 +02:00
Jack Westbrook
224b062cac Catalog: Fix InstallControls for externally managed users (#37531) 2021-08-04 13:52:01 +02:00
Maria Alexandra
d48febee75 Fix: Wrong annotations show on a given dashboard. Correct annotations show on page refresh. #37160 (#37496) 2021-08-04 11:57:27 +02:00
Jack Westbrook
cdcccfcc53 Plugins: Fix catalog permissions for org and server admins (#37504)
* simplify toggle + add link to server admin

* feat(catalog): org admins can configure plugin apps, cannot install/uninstall plugins

* fix(catalog): dont show buttons if user doesn't have install permissions

* feat(catalog): cater for accessing catalog via /plugins and /admin/plugins

* feat(catalog): use location for list links and match.url to define breadcrumb links

* test(catalog): mock isGrafanaAdmin for PluginDetails tests

* test(catalog): preserve default bootdata in PluginDetails mock

* refactor(catalog): move orgAdmin check out of state and make easier to reason with

Co-authored-by: Will Browne <will.browne@grafana.com>
2021-08-04 11:49:05 +02:00
Ashley Harrison
81cf09af9e DashboardPrompt: Implement beforeunload handler (#37490) 2021-08-04 10:08:13 +01:00
Gábor Farkas
4da398014f influxdb: more robust query-has-variables check (#37493)
* influxdb: moved queryUtils file to better place

* influxdb: more robust query-has-variables check
2021-08-04 10:45:37 +02:00
Tobias Skarhed
aba7013ce5 TimeRangePicker: Accessiblity improvements (#36912)
* Add low hanging aria markup

* Add a list of radio buttons

* Add ref to put focus

* Add landmark markup

* Add labels to icon buttons

* Add radio button groupings

* Add keyboard focus styles

* Improve markup

* Update test selector

* Remove testid in favor of text

* Fiddle around with test labels

* Get correct testid selector

* Add aria-expanded to button

* Change order of quick select for keyboard nav

* Create headings for easier heading navigation

* Add another h3

* Add testid

* Use selectors in e2e test

* Add dataid selector for narrow absolute button

* Update e2e test with proper selectors

* Add more verbose aria-label

* Change editor to picker
2021-08-04 09:53:52 +02:00
Selene
0fc7dffee8 Remove _url from loading logo (#37480) 2021-08-04 09:36:42 +02:00
Olof Bourghardt
0b376522ac Explore: use GrafanaTheme2 (AdHocFilter component) (#37434)
* Explore: use GrafanaTheme2 and useStyles2 instead of the old ones

* Explore: delete files and components that were'nt being used
2021-08-04 09:24:25 +02:00
Oscar Kilhed
e3fe4a2d11 GraphNG: make sure we update when children changes (#37333) 2021-08-04 09:07:00 +02:00
Olof Bourghardt
2e476167eb Explore: use GrafanaTheme2 (ExploreGraphNGPanel component) (#37450)
* Explore: use GrafanaTheme2

* Explore: add correct style values

* Update public/app/features/explore/ExploreGraphNGPanel.tsx

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>

* Explore: change margin-right to xs

* Explore: change margin-right to new theme xs

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
2021-08-04 08:47:37 +02:00
Leon Sorokin
0b7253406b Portal: optimizations (#37459)
Co-authored-by: An Le <an.le@grafana.com>
2021-08-03 16:27:27 -05:00
Maria Alexandra
d48e65bf74 Annotations: Fix Datasource as template variable not available for annotations (#37506) 2021-08-03 19:54:49 +02:00
Tania B
bfc8a5cf49 Docs: Update docs for enterprise reporting (#37314)
* Docs: Update docs for enterprise reporting

* Apply feedback

* Remove old scheduler section and add screenshots

* Update images links

* Update reporting scheduler intro

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

* Update Send now

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

* Update Send later

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

* Apply more feedback

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

* Apply review feedback

* Apply review feedback

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

* Apply review feedback

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

* Apply more feedback

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

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-08-03 18:09:26 +03:00
Stephanie Hingtgen
a05ae6768c Docs: Documents caching encryption in enterprise config (#36766)
* Enterprise: adding documentation of two new configuration flags

* Update docs/sources/enterprise/enterprise-configuration.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update enterprise-configuration.md

* Fix grammar

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-08-03 10:20:05 -04:00
Leon Sorokin
0d2cd90150 GraphNG: fix y axis autosizing (#37464) 2021-08-03 08:18:05 -05:00
Park Beomsu
75c8bd26fc Docs: fix wrong formula (#37432) 2021-08-03 08:56:38 -04:00
Gábor Farkas
bc0ab3cc7a influxdb: better query-has-variable check (#37453) 2021-08-03 14:32:48 +02:00
Torkel Ödegaard
0965132bff Azure: Fixes annotations query editor not working properly (#37476) 2021-08-03 12:43:25 +02:00
MicahChiu
c2247f51e6 Style: Fix for Flex compatibility in lower versions of browsers (#36913) 2021-08-03 11:32:53 +01:00
Ashley Harrison
9934c883cc Select: Expose menuPortalTarget on SelectBase (#37456)
* Select: Expose Select props for greater flexibility

* Select: only expose menuPortalTarget

* Select: Add deprecation notice for menuPortalTarget prop

* Select: Add deprecation warning to component
2021-08-03 11:55:09 +02:00
Josh Hunt
e530d66275 AzureMonitor: Refactor query state and fetching data for Metrics (#37067)
* Split query modifications into seperate file

* seperate setQueryValue for Logs

* wip for centralising api requests

* more wip

* moved data hooks out into seperate module, added post-request cleanup

* metric metadata

* ,

* more cleanup

* update tests, fix hasOption to work with grouped variables

* update ARG subscriptiopns field

* last select stuff

* remove todo comment

* pr feedback

* more pr feedback :) :)

* updated comment
2021-08-03 10:04:04 +01:00
Maria Alexandra
f10c5020f1 Annotation: Fix "Enabled" button disappear after Grafana v8.0.6 upgrade (#37454) 2021-08-03 09:42:13 +02:00
Will Browne
312e78ff0b fix typo (#37457) 2021-08-03 09:41:31 +02:00
nikki-kiga
9fa8f5cc95 TooltipPlugin: add crosshair exception (#37285)
* TooltipPlugin: add crosshair exception

* TooltipPlugin: set active plot and add class

* Plot: hide cursor pts when not active in crosshair mode

* TooltipPlugin: clean up adding class

* TooltipPlugin: rename crosshair class

* rename class, move up to chart root element

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2021-08-02 11:25:51 -07:00
Connor Lindsey
6906a74179 Jaeger: Sync getTraceName improvements from upstream (#37408)
* Improve trace name resolution

* Use getTraceName in transformTraceData

* Improve getTraceName performance

* Change trace-viewer extension back to ts
2021-08-02 08:23:43 -06:00
Connor Lindsey
0699a04dcd Refactor UNSAFE_component... from SpanGraph and VirtualizedTraceView (#37418) 2021-08-02 08:03:08 -06:00
Olof Bourghardt
bc6e7d32e2 Explore: use GrafanaTheme2 (#37305)
* Explore: refactor to use GrafanaTheme2

* Explore: change style values

* Explore: change styles

* Explore: change last style values to the correct ones

* Explore: remove stylesFactory

* Update public/app/features/explore/Logs.tsx

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>

* Update public/app/features/explore/Logs.tsx

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>

* Update public/app/features/explore/Logs.tsx

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2021-08-02 15:47:41 +02:00
Julien Duchesne
e5f52a05f2 Put back signature in drone.yml (#37447)
Repository protection will be enabled for grafana/grafana today
2021-08-02 15:35:49 +02:00
Connor Lindsey
e4f0d269f4 Connor/jaeger misc sync (#37420)
* Avoid resize on mouse hover (KeyValueTable)

* Add null check for span.logs in filter-spans

* Display references unless it's a single CHILD_OF

* Identify uninstrumented services

* Improve span duration formatting
2021-08-02 06:28:20 -06:00
Ashley Harrison
e7d4b175b7 Update ci-check-strict.sh (#37449) 2021-08-02 13:38:36 +02:00
Tobias Skarhed
b0dcbd568a PasswordField: Don't show password on enter #37444 2021-08-02 12:58:00 +02:00
Domas
73d36d5521 put alerting admin page under ngalert flag (#37437) 2021-08-02 10:12:01 +02:00
Alexander Emelin
31903778ae Live: display stream rate, fix duplicate channels in list response (#37365) 2021-07-30 21:05:39 +03:00
achatterjee-grafana
012b9c41a5 Doc issue 37280 (#37416)
* Additional fix: Resized two images in 8.1 what's new to make them smaller

* Fixed some broken links and deleted another empty Grafana 8 alert topic.

* Replaced reference to troubleshooting with state and health check.
2021-07-30 12:21:51 -04:00
Torkel Ödegaard
185894b756 Docs: Fix image in what's new article (#37411) 2021-07-30 17:50:49 +02:00
Agnès Toulet
0757ba1c64 Renderer: delete debug.log file when Grafana is stopped (#37367) 2021-07-30 17:29:02 +02:00
idafurjes
9d496d6f48 SDK: update plugin-sdk to v0.111.0 (#37405) 2021-07-30 16:54:52 +02:00
achatterjee-grafana
e8e45f30c0 Doc update 8.1 what's new, draft 3 (#37406)
* Updated image paths, also updated prettified JSON section.

* Rearranged content.

* Added 2 new image links for prettified JSON section.
2021-07-30 10:44:09 -04:00
Joan López de la Franca Beltran
8433def04f Encryption: Convert functions into global variables (#37240) 2021-07-30 15:48:27 +02:00
achatterjee-grafana
132e9c74c0 Topics deleted are "troubleshooting" and "view-alerts". (#37395) 2021-07-30 08:07:23 -04:00
Emil Tullstedt
55efeb0c02 Revert "AccessControl: Implement a way to register fixed roles (#35641)" (#37397)
This reverts commit 88c11f1cc0.
2021-07-30 13:58:49 +02:00
Jack Westbrook
9494c2cd4f Plugins: Add filter for plugin type and update search, filter and sort ui (#37301)
* feat(catalog): introduce additive filters for plugin type, installed status and search

* feat(catalog): prefer FilterInput over custom styled search field

* feat(catalog): update Browse page to use new search, filter features

* refactor(catalog): keep filters with usePluginsByFilter hook

* test(catalog): update tests to reflect new filtering and searching

* refactor(catalog): rearrange filterByType radio buttons

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

* feat(catalog): ntroduce css for responsive filter layout

* refactor(catalog): introduce pluginfilter type and give filter methods better names

* fix(catalog): default q param to empty string so FiterInput doesn't show clear button on load

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-07-30 13:23:33 +02:00
Vardan Torosyan
53072bcad1 Update Settings Update documentation with the information about fine-grained access control (#37300) 2021-07-30 13:04:13 +02:00
Gabriel MABILLE
88c11f1cc0 AccessControl: Implement a way to register fixed roles (#35641)
* AccessControl: Implement a way to register fixed roles

* Add context to register func

* Use FixedRoleGrantsMap instead of FixedRoleGrants

* Removed FixedRoles map to sync.map


* Wrote test for accesscontrol and provisioning

* Use mutexes+map instead of sync maps

* Create a sync map struct out of a Map and a Mutex

* Create a sync map struct for grants as well

* Validate builtin roles

* Make validation public to access control

* Handle errors consistently with what seeder does

* Keep errors consistant amongst accesscontrol impl

* Handle registration error

* Reverse the registration direction thanks to a RoleRegistrant interface

* Removed sync map in favor for simple maps since registration now happens during init

* Work on the Registrant interface

* Remove the Register Role from the interface to have services returning their registrations instead

* Adding context to RegisterRegistrantsRoles and update descriptions

* little bit of cosmetics

* Making sure provisioning is ran after role registration

* test for role registration

* Change the accesscontrol interface to use a variadic

* check if accesscontrol is enabled

* Add a new test for RegisterFixedRoles and fix assign which was buggy

* Moved RegistrationList def to roles.go

* Change provisioning role's description

* Better comment on RegisterFixedRoles

* Correct comment on ValidateFixedRole

* Simplify helper func to removeRoleHelper

* Add log to saveFixedRole and assignFixedRole

Co-authored-by: Vardan Torosyan <vardants@gmail.com>
Co-authored-by: Jeremy Price <Jeremy.price@grafana.com>
2021-07-30 09:52:09 +02:00
Petros Kolyvas
faf1653230 Fixed image urls for Geopmap and Annotation list, added prettify JSON… (#37382)
* Fixed image urls for Geopmap and Annotation list, added prettify JSON logs

* Update docs/sources/whatsnew/whats-new-in-v8-1.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-07-30 02:24:47 +02:00
Ryan McKinley
d269d901fc Geomap: fix scale calculations (#37375) 2021-07-29 23:27:52 +02:00
Petros Kolyvas
bee185b637 Doc: second draft of 8.1 what's new (#37370)
* Updated first half of what's new

* Update docs/sources/whatsnew/whats-new-in-v8-1.md

Fixes for the intro

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Moved geomap and annitations panel sections.

* Had to update the intro again, all set now.

* Added more content.

* Updated enterprise section

* Few more changes.

* Fixed annotations image caption.

* minor updates to intro verbiage,

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
Co-authored-by: achatterjee-grafana <aparajita.chatterjee@grafana.com>
2021-07-29 17:22:30 -04:00
An
c564736c68 Transformers: allow label fields in the reduce processor (#37373)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-07-29 13:56:07 -07:00
Connor Lindsey
c4c28a5b63 Explore: Support custom display label for derived fields buttons for Loki datasource (#37273) 2021-07-29 12:42:20 -06:00
Kyle Brandt
aa904a5a04 NGAlert: Send resolve signal to alertmanager on alerting -> Normal (#37363) 2021-07-29 20:29:17 +02:00
Velociraptor85
c8216244a2 Update overview.md (#37260)
* Update overview.md

* Update grafana.md

* Update grafana.md
2021-07-29 13:03:02 -04:00
Zoltán Bedi
e3dde3510e Jaeger: upload json file (#37205)
* Dropzone component

* Add file list

* Add progress, error and cancelation to filelistitem

* Update Dropzone component to support progress

Cancelation
Retry

* Update file name changes

* Rename to FileDropzone

* FileListItem tests

A11y updates for icon buttons
Use value formatter from grafana/data

* Add tests for FileDropzone

Review comments

* export FileDropzoneDefaultChildren

* Jaeger: Upload trace json

* Change primary text when multiple false

* styling

* Review comments addressed

* Add test for upload trace json

* Add docs for Jaeger upload

* Fix strict type check error

* Update docs/sources/datasources/jaeger.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Minor changes

Render all the options from one function.
Add graph frames to the result.

* Address review comments

* Update docs/sources/datasources/jaeger.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* docs: move image

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-07-29 18:07:07 +02:00
idafurjes
d9d795ef2c Update latest json (#37361) 2021-07-29 17:34:27 +02:00
Grot (@grafanabot)
cba765c5f2 ReleaseNotes: Updated changelog and release notes for 8.1.0-beta3 (#37342) 2021-07-29 16:31:10 +02:00
Ganesh Vernekar
10f8a138ae Alerting: Deduplicate receivers during migration (#36812)
* Alerting: Deduplicate receivers during migration

Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>

* Fix review comments

Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>

* Better naming of contact points

Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>

* Handle some edge cases

Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>

* Don't add routes which point to default contact point

Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-07-29 15:56:19 +02:00
idafurjes
2bf2f30e97 Add release note link for 8.1.0-beta3 (#37343) 2021-07-29 12:56:19 +02:00
Will Browne
08a73a5291 Plugins: Perform plugin update check prior to uninstall (#36909)
* only uninstall if update is possible

* add .

* update lingo for clarity
2021-07-29 11:52:23 +02:00
Leonard Gram
8ebba0a93d Auth: refactor to not use the global bus (#37345) 2021-07-29 11:47:32 +02:00
Vardan Torosyan
2c810506a5 Add fine-grained access control information to the features which now support it (#37303)
* Add fine-grained access control information to the features which now support it

* Mention the new permissions in Explore docs
2021-07-29 10:38:46 +02:00
Leonard Gram
d51b2630c7 Auth: creates a hook in the user mapping flow (#37190)
* wip

* Auth Info: refactored out into it's own service

* Auth: adds extension point where users are being mapped

* Update pkg/services/login/authinfoservice/service.go

Co-authored-by: Joan López de la Franca Beltran <joanjan14@gmail.com>

* Update pkg/services/login/authinfoservice/service.go

Co-authored-by: Joan López de la Franca Beltran <joanjan14@gmail.com>

* Auth: simplified code

* moved most authinfo stuff to its own package

* added back code

* linter

* simplified

Co-authored-by: Joan López de la Franca Beltran <joanjan14@gmail.com>
2021-07-29 10:18:42 +02:00
Ivana Huckova
4f340550ee Change master to latest for docker block (#37310) 2021-07-29 10:10:45 +02:00
Ilya Stoliar
b62fe58cac CloudWatch: Add AWS LookoutMetrics (#37329) 2021-07-29 09:31:04 +02:00
idafurjes
180b1973e0 SQL: Fix SQL dataframe resampling (fill mode + time intervals) (#36937)
* Refactor resample logic

* Adjust test to have one more timestamp out of range

* adjust test + ensure filling

* revert flag flip

* Undo logic - should be timeseries only

* change data calculation based on previous interval

* fix the logics

* fix typo

* fix resample start time, to reuse what sql api returned

* calculate the start point with from truncate by interval

Co-authored-by: Will Browne <will.browne@grafana.com>
Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
Co-authored-by: Ying WANG <ying.wang@grafana.com>
2021-07-29 08:38:41 +02:00
Leon Sorokin
78f46e28c7 Stat: fix shared y scale range, reduce plot re-inits (#37324) 2021-07-28 22:42:18 -07:00
Ryan McKinley
ced26bc624 Geomap: implement basic tooltip support (#37318)
Co-authored-by: Bryan Uribe <buribe@hmc.edu>
2021-07-29 03:34:42 +02:00
Leon Sorokin
8b80d2256d GraphNG: stack by % (#37127) 2021-07-28 20:31:07 -05:00
Petros Kolyvas
4fa17c8040 Docs: Initial docs for the annotation panel launching in 8.1 (#37230)
* closed issues

* First draft of annotation panel

* Update docs/sources/panels/visualizations/annotations.md

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

* Update docs/sources/panels/visualizations/annotations.md

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

* Removal of extraneous file

* Update docs/sources/panels/visualizations/annotations.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/annotations.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/annotations.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/annotations.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/annotations.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/annotations.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/annotations.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/annotations.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/annotations.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Added additional help text related to the Display section

* Removed additional files

* Apply suggestions from code review

Included Jita's suggestions in final commit.

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-07-29 02:06:42 +02:00
Zoltán Bedi
9a62db6943 Exemplars: Disable exemplars only on query it failed (#37296) 2021-07-28 16:34:46 +02:00
Jack Westbrook
99891e1a88 Catalog: Add breadcrumb to plugin details page (#37095)
* feat(catalog): introduce a breadcrumb to plugindetails page

* refactor(catalog): use aria-labels and nav element for a11y breadcrumbs
2021-07-28 15:32:14 +02:00
Olof Bourghardt
ddf5b65c51 Prometheus: add functionality to specify desired step interval in dashboards panels (#36422)
* Add select component for choosing step option

* Add onStepChange

* Add functionality for max step

* Rename minInterval to stepInterval to describe min, max and exact step interval

* Change select option from standard to exact

* Add new type StepType for better type safety

* Add tests for adjustInterval

* Add functionality and tests for exact step option

* Prometheus: Spell out min and max in select component

* Prometheus: Change width of step select component and add placeholder

* Prometheus: Adjust for the factor in exact step

* Prometheus: Update tooltip of step lable to include max and exact options and add padding to select component to give it some breathing room from other components

* Update snapshot for step tooltip

* Prometheus: make tooltip more informative

* Prometheus: add tooltip to interval input element

* Prometheus: extract default step option

* Prometheus: update snapshot for PromQueryEditor

* Prometheus: change step labels to uppercase

* Prometheus: define a default step option

* Prometheus: use default step option in both ui component and logic

* Prometheus: update snapshot for PromQueryEditor

* Prometheus: refactor datasource.ts for better readability

* Prometheus: change tool tip for step

* Prometheus: update snapshots

* Prometheus: add correct styling

* Prometheus: update snapshots

* Prometheus change variable name to something less superfluous

* Prometheus: refactor

* Prometheus: add new test for adjustInterval

* Docs: Update docummentation on the step parameter for prometheus

* Prometheus: make step input field smaller and change placeholder text to 15s

* Prometheus: update snapshots

* Prometheus: Make stepMode uniform in all places in the code

* Prometheus: update documentation and tooltip for step

* Prometheus: update snapshots
2021-07-28 08:26:09 +02:00
Domas
69dff96c1b Alerting: ability to edit alertmanager config as json via UI (#37268) 2021-07-28 09:21:42 +03:00
Ryan McKinley
5f41c2f334 Geomap: fix esri server config (#37283) 2021-07-27 22:26:42 -07:00
Eunice Kim
ee51df3715 Geomap: Document the Geomap plugin (#37221)
* Add base layer documentation

* Add initial overlay documentation

* Fix title of overlays

* Fix typos

* Add details on each overlay options

* Add location doc

* Address comments

* Address comments

* Address Base layer comments

* Address data layer comments

* Update image names

* Change titles to sentence case

* Follow UI for capitalizations
2021-07-27 22:47:38 +02:00
Karl Persson
4127db3d3a Remove Licensing as dependency of UsageStats (#37259)
* Remove Licensing as dependency

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
2021-07-27 17:19:03 +02:00
Dimitris Sotirakis
c189851339 Chore: Update grabpl version (#37253)
* Update grabpl version to 2.3.1

* Update grabpl version to 2.3.2
2021-07-27 13:18:06 +02:00
Piotr Jamróz
8d7e22e1bb Graphite: Migrate to React (part 2B: migrate FunctionEditor) (#37070)
* Add UMLs

* Add rendered diagrams

* Move QueryCtrl to flux

* Remove redundant param in the reducer

* Use named imports for lodash and fix typing for GraphiteTagOperator

* Add missing async/await

* Extract providers to a separate file

* Clean up async await

* Rename controller functions back to main

* Simplify creating actions

* Re-order controller functions

* Separate helpers from actions

* Rename vars

* Simplify helpers

* Move controller methods to state reducers

* Remove docs (they are added in design doc)

* Move actions.ts to state folder

* Add docs

* Add old methods stubs for easier review

* Check how state dependencies will be mapped

* Rename state to store

* Rename state to store

* Rewrite spec tests for Graphite Query Controller

* Update docs

* Update docs

* Add GraphiteTextEditor

* Add play button

* Add AddGraphiteFunction

* Use Segment to simplify AddGraphiteFunction

* Memoize function defs

* Fix useCallback deps

* Update public/app/plugins/datasource/graphite/state/helpers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/helpers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/helpers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Add more type definitions

* Remove submitOnClickAwayOption

This behavior is actually needed to remove parameters in functions

* Load function definitions before parsing the target on initial load

* Add button padding

* Fix loading function definitions

* Change targetChanged to updateQuery to avoid mutating state directly

It's also needed for extra refresh/runQuery execution as handleTargetChanged doesn't handle changing the raw query

* Fix updating query after adding a function

* Simplify updating function params

* Migrate function editor to react

* Simplify setting Segment Select min width

* Remove unnecessary changes to SegmentInput

* Extract view logic to a helper and update types definitions

* Clean up types

* Update FuncDef types and add tests

* Show red border for unknown functions

* Autofocus on new params

* Extract params mapping to a helper

* Split code between params and function editor

* Focus on the first param when a function is added even if it's an optional argument

* Add function editor tests

* Remove todo marker

* Fix adding new functions

* Allow empty value in selects for removing function params

* Add placeholders and fix styling

* Add more docs

* Rename .tsx -> .ts

* Update types

* Use ?? instead of || + add test for mapping options

* Use const (let is not needed here)

* Revert test name change

* Allow removing only optional params and mark additional params as optional (only the first one is required)

* Use theme.typography.bodySmall.fontSize

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2021-07-27 13:10:39 +02:00
gotjosh
442a6677fc Alerting: Refactor Run of the scheduler (#37157)
* Alerting: Refactor `Run` of the scheduler

A bit of a refactor to make the diff easier to read for supporting
external Alertmanagers.

We'll introduce another routine that checks the database for
configuration and spawns other routines accordingly.

* Block the wait.

* Fix test
2021-07-27 11:52:59 +01:00
Dimitris Sotirakis
0c804df763 Update grabpl version to 2.3.1 (#37208) 2021-07-27 12:52:01 +03:00
Will Browne
56702376b6 delay go mod verify until all is copied (#37246) 2021-07-27 11:50:25 +02:00
Piotr Jamróz
e8eb73f271 Graphite: Update text editor state on initial load (#37202)
* Update current query when props change

* Remove managed state in GraphiteTextEditor

* Fix tests
2021-07-27 11:41:11 +02:00
Alexander Emelin
75bd0bbacd live: experimental HA with Redis (#36787)
Grafana 8.1.0 will include experimental high availability setup support by
using Redis PUB/SUB and data structures for inter-node state sharing.
This commit documents this but also explicitly marks feature as experimental
since integration of Live with Redis may slightly evolve with time as soon as
we get more understanding about Grafana Live usage scenarios.
2021-07-27 10:40:00 +03:00
Ganesh Vernekar
e8ac802e4f Alerting: Remove unused fields in Pagerduty struct (#37198)
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-07-27 10:41:48 +05:30
nikki-kiga
01e984c394 ColorPicker: display colors as rgba in input (#37231)
* SpectrumPalette: change input to display rgba string

* fieldOverrides: remove extra hex string check
2021-07-26 15:54:13 -07:00
An
154c380c8c Geomap: configure legend on map (#37077)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-07-27 00:50:15 +02:00
Nathan Rodman
5f0bc252bc Alerting: support label matcher syntax in alert rule list filter (#36408)
* Add filter parsing to rule list filters

* Add unit tests for label parsing

* Make label operators an enum

* add example for parsing function

* Update labels operator regex

* Add tests to rule list for filtering

* add additional test for testing alert instances filtering

* Use tooltip for query syntax example

* refactor to use Matchers for filtering

* Update docs for label filtering on rules list

* style fixes
2021-07-26 12:05:49 -07:00
Ryan McKinley
ffa0ef9b3d Annotations: fire an event when changing annotations (#37175) 2021-07-26 20:57:52 +02:00
nikki-kiga
3e35021f7e ColorPicker: return values as hex strings and update theme (#37173)
* Color: fix alpha calculation < 16/255 and State-timeline threshold alpha

* SpectrumPalette: Update to getColorByName

* ColorValueEditor: Update to theme2

* SpectrumPalette: Update to theme2

* ColorPickerPopover: Format hex color

* SpectrumPalette: Format hex color

* SpectrumPalette: Refactor hex color alpha helper

* SpectrumPalette: Fix import and update helper

* ColorPickerPopover: Fix test to not make lowercase

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-07-26 11:11:53 -07:00
Ryan McKinley
be4b753aa0 Panels: allow interaction in corners when no title exists (#37169) 2021-07-26 19:19:07 +02:00
Alex Khomenko
8c8d2fe08b Use dateTime vs new Date() (#37210) 2021-07-26 18:18:15 +02:00
David Parrott
b5f464412d Alerting: automatically remove stale alerting states (#36767)
* initial attempt at automatic removal of stale states

* test case, need espected states

* finish unit test

* PR feedback

* still multiply by time.second

* pr feedback
2021-07-26 18:12:04 +02:00
jmrieger
81b98745c0 Docs: Add missing backtick in time range table (#37209) 2021-07-26 11:12:49 -04:00
Olof Bourghardt
5d101fece1 Docs: add documentation with regards to the new prettify function (#36856)
* Docs: add information about prettify function

* Docs: add info in logs-panel

* Docs: update prettify function in logs-integration

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Docs: update prettify function in logs-panel

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-07-26 16:20:29 +02:00
Connor Lindsey
b644ea9e6e Loki: Add fuzzy search to label browser (#36864) 2021-07-26 08:04:03 -06:00
Ganesh Vernekar
a65975cca0 Alerting: Remove the fixed wait for notification delivery (#37203)
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-07-26 15:15:09 +02:00
Ilya Stoliar
59c691a777 CloudWatch: Add AWS IVS metrics and dimensions (#37178) 2021-07-26 14:53:18 +02:00
Zoltán Bedi
04a196da4b UI: Dropzone component (#36646)
* Dropzone component

* Add file list

* Add progress, error and cancelation to filelistitem

* Update Dropzone component to support progress

Cancelation
Retry

* Update file name changes

* Rename to FileDropzone

* FileListItem tests

A11y updates for icon buttons
Use value formatter from grafana/data

* Add tests for FileDropzone

Review comments

* export FileDropzoneDefaultChildren

* Change primary text when multiple false

* Review comments addressed

* Extract remove file to constant

* No need to await after await
2021-07-26 13:21:35 +02:00
Gábor Farkas
b254e4eb31 influxdb: influxql: fix dataframe column-names (#37195) 2021-07-26 12:08:02 +02:00
Serge Zaitsev
e42a597e87 Remove unused Macaron code and interfaces (#37194) 2021-07-26 11:47:13 +02:00
Luca Fenu
e3622ac1da Influx: fix typo (#37181) 2021-07-26 08:44:09 +02:00
Serge Zaitsev
827a5b7021 add FromContext API for macaron and reqcontext, add API for standard middleware in macaron (#37057) 2021-07-26 06:11:43 +02:00
Leon Sorokin
f78452be30 Color: fix alpha calculation < 16/255 and State-timeline threshold alpha (#35911) 2021-07-23 20:50:47 -05:00
Dmitry
81dce0716b Change PostgeSQL version selector (#37166) 2021-07-23 16:29:46 -07:00
Ryan McKinley
feb9e528aa Geomap: zoom full extent (#37174) 2021-07-23 16:23:35 -07:00
Leon Sorokin
4c3e197e26 TimeSeries: make cursor hover the nearest non-null/undefined datapoint (#34552) 2021-07-23 16:05:09 -05:00
Alexander Emelin
32b74e75a3 live: various code cleanups (#37165) 2021-07-23 19:47:08 +03:00
achatterjee-grafana
72cac20e1d Removed note about frequent changes. (#37119) 2021-07-23 11:27:21 -04:00
Ashley Harrison
26abec2287 Chore: Update slate types to fix more strict TypeScript errors (#37159) 2021-07-23 15:33:53 +01:00
idafurjes
2601a4dd6e Update latest.json (#37156) 2021-07-23 15:04:15 +02:00
Grot (@grafanabot)
c39a4e9c4e ReleaseNotes: Updated changelog and release notes for 8.1.0-beta2 (#37150)
* ReleaseNotes: Updated changelog and release notes for 8.1.0-beta2

* Update CHANGELOG.md

* Update release-notes-8-1-0-beta2.md

* Update CHANGELOG.md

* Update release-notes-8-1-0-beta2.md

* Update release-notes-8-1-0-beta2.md

* Update CHANGELOG.md

Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
2021-07-23 13:34:13 +02:00
Grot (@grafanabot)
3b875def76 ReleaseNotes: Updated changelog and release notes for 8.1.0-beta2 (#37144)
* ReleaseNotes: Updated changelog and release notes for 8.1.0-beta2

* Update docs/sources/release-notes/release-notes-8-1-0-beta2.md

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

Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-07-23 12:48:28 +02:00
Will Browne
0069d13929 Docs: Add 8.1.0 beta1 and beta2 release note links (#37140) 2021-07-23 13:00:23 +03:00
Ashley Harrison
75ff031789 Chore: Fix TypeScript strict errors with components using connect (#37109)
* Chore: Fix TypeScript strict errors with components using connect

* Chore: More TypeScript fixes

* Chore: Update strict check values

* Still need to export these types...

* Declare connector at the top of the file

* Careful with find and replace...
2021-07-23 11:33:26 +02:00
Bryan Uribe
2b51e94537 Gazetteer: Update Countries Json (#37129) 2021-07-23 00:42:34 +02:00
nikki-kiga
a1bbe797df StatPanel: Disable selection on Sparkline (#37125) 2021-07-22 15:12:31 -07:00
nikki-kiga
1de14ea257 check for bar value visibility never (#37122) 2021-07-22 14:09:43 -07:00
Sergey Kostrukov
c1963024ec Infra: Azure authentication in HttpClientProvider (#36932)
* Azure middleware in HttpClientProxy

* Azure authentication under feature flag

* Minor fixes

* Add prefixes to not clash with JsonData

* Return error if JsonData cannot be parsed

* Return original string if URL invalid

* Tests for datasource_cache
2021-07-22 21:43:10 +01:00
Sergey Kostrukov
4664cba935 Prometheus: Azure authentication in configuration UI (#35860)
* Azure authentication settings

* Persisting credentials

* Azure settings

* Prometheus-specific settings component

* Azure Prometheus Resource ID configuration

* DataSourceHttpSettings with extensibility for Azure

* Feature toggle for Azure auth

* Fix snapshot

* Update format of persisted credentials

* AzureSettings renamed to AzureAuthSettings
2021-07-22 19:53:49 +01:00
achatterjee-grafana
013218e075 Doc: first draft of 8.1 what's new (#37021)
* Create whats-new-in-v8-1.md

* Updated index page.

* Fixed two relrefs.

* Added section for annotation panel
2021-07-22 14:27:32 -04:00
Dan Cech
5a56594f0c add instructions for managing redirects when moving docs pages around (#37113) 2021-07-22 13:46:40 -04:00
Grot (@grafanabot)
ddde5a5f2d ReleaseNotes: Updated changelog and release notes for 8.1.0-beta1 (#37111) 2021-07-22 18:10:11 +02:00
Tobias Skarhed
437424d5d6 Storybook: Add a11y addon (#36790)
* Storybook: Add a11y addon

* Update lockfile

* Bump Storybook addon versions

* Put Icon at top

* addon-knobs 6.3.0
2021-07-22 17:28:38 +02:00
Alexander Emelin
6b2d33dc14 fix sample.ini (#37106) 2021-07-22 16:50:27 +02:00
George Robinson
2f4c893cf3 Expand the value string in annotations and labels of alerts (#37051)
This commit makes it possible to use the value string in
annotations and labels for alerts with "{{ $value }}"
2021-07-22 15:20:44 +01:00
yuwaMSFT2
ad1f792b8b Auth: Pass user role to Grafana using auth proxy (#36729)
* Pass role to Grafana using auth proxy

By default, the role will be applied to the default org of the user.
If the request uses the standard header "X-Grafana-Org-Id", the role will be applied to the specified org

Tested in both unit test and manually E2E

* Address comment: only allow the user role to be applied to the default org

Co-authored-by: Leonard Gram <leo@xlson.com>
2021-07-22 15:49:58 +02:00
Andrej Ocenas
93b4cc7035 Explore: Fix encoding of internal URLs (#36919)
* Encode internal explore url

* Fix tests

* Fix comma
2021-07-22 14:42:20 +02:00
Tobias Skarhed
8af83b8b78 IconButton: Put tooltip text as aria-label (#36760)
* Make tooltip prop aria-label

* Add ariaLabel prop
2021-07-22 13:56:25 +02:00
Sofia Papagiannaki
b96dd1877c Folder API: optionally force deleting Grafana 8 alerts when deleting a folder (or error) (#36427)
* Folder API: Add an optional query parameter for allowing deleting a  folder containing rules

* Update frontend

- Set forceDeleteRules=true when frontend deletes a folder
- Improve modal text

* Update docs

* Apply suggestions from code review

Co-authored-by: gotjosh <josue@grafana.com>
Co-authored-by: Nathan Rodman <nathanrodman@gmail.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-07-22 12:27:13 +03:00
Serge Zaitsev
ced42e9439 Update release notes and whats new links (#37088) 2021-07-22 10:35:02 +02:00
Ilya Stoliar
7efbcf3fbc CloudWatch: Add AWS CodeGuruProfiler metric (#37084) 2021-07-22 09:35:10 +02:00
Serge Zaitsev
9f36e36c89 Pick changes from PR 33811, use UID in dashboard navlinks (#36899)
* pick changes from PR 33811, use UID in dashboard navlinks

* use proper spelling for UID

* add uid to the plugin schema

* Update docs/sources/developers/plugins/plugin.schema.json

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-07-22 09:11:33 +02:00
Ashley Harrison
3004a650b5 Chore: Fix more TypeScript strict errors (#37066)
* Chore: Fix more TypeScript strict errors

* whoops
2021-07-22 08:09:55 +01:00
Sofia Papagiannaki
7815ed511f Alerting: Refactor API endpoints for fetching alert rules (#37055)
* Refactor ruler API endpoint for listing rules

* Refactor prometheus API endpoint for listing rules

* Update HTTP API docs
2021-07-22 09:53:14 +03:00
Ryan McKinley
9cd8e11c30 Geomap: add basic gazetteer support (#37082) 2021-07-21 23:41:27 -07:00
Domas
1881de8236 Alerting: add button to deactivate current alertmanager configuration (#36951)
* reset alert manager config button for admins

* "alert manager" -> "Alertmanager"
2021-07-22 09:15:39 +03:00
Ryan McKinley
8d06aaaf09 BarChart: support stacking options (#37083)
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2021-07-21 23:07:50 -07:00
Dominik Prokop
40a87a7851 BarChart: use uPlot's native bars pathbuilder (#36725) 2021-07-22 00:50:59 +02:00
Leon Sorokin
395289f45d GraphNG: uPlot 1.6.14 (#37045) 2021-07-21 15:27:22 -07:00
Ryan McKinley
cd9e94c9b3 Annotation Panel: release annotation panel (#36959)
Co-authored-by: Petros Kolyvas <code@petros.io>
2021-07-21 22:58:30 +02:00
Ryan McKinley
e604e69d93 Geomap: default basemap config cleanup (#37069) 2021-07-21 13:48:20 -07:00
achatterjee-grafana
f26f76df5a Added placeholder topics. (#37074) 2021-07-21 22:25:32 +02:00
achatterjee-grafana
4b348fa4a7 Added Pro and Advanced (#37073) 2021-07-21 22:01:13 +02:00
Atif Shoukat Ali
f699580b15 fix: utils deps (#36939) 2021-07-21 12:28:35 -07:00
achatterjee-grafana
a306135de5 Added Grafana cloud references to the 4 topics. (#37071) 2021-07-21 15:00:35 -04:00
Piotr Jamróz
0bf1a97262 Graphite: Migrate to React (part 2: migrate smaller AngularJS directives) (#36797)
* Add UMLs

* Add rendered diagrams

* Move QueryCtrl to flux

* Remove redundant param in the reducer

* Use named imports for lodash and fix typing for GraphiteTagOperator

* Add missing async/await

* Extract providers to a separate file

* Clean up async await

* Rename controller functions back to main

* Simplify creating actions

* Re-order controller functions

* Separate helpers from actions

* Rename vars

* Simplify helpers

* Move controller methods to state reducers

* Remove docs (they are added in design doc)

* Move actions.ts to state folder

* Add docs

* Add old methods stubs for easier review

* Check how state dependencies will be mapped

* Rename state to store

* Rename state to store

* Rewrite spec tests for Graphite Query Controller

* Update docs

* Update docs

* Add GraphiteTextEditor

* Add play button

* Add AddGraphiteFunction

* Use Segment to simplify AddGraphiteFunction

* Memoize function defs

* Fix useCallback deps

* Update public/app/plugins/datasource/graphite/state/helpers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/helpers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/helpers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Add more type definitions

* Remove submitOnClickAwayOption

This behavior is actually needed to remove parameters in functions

* Load function definitions before parsing the target on initial load

* Add button padding

* Fix loading function definitions

* Change targetChanged to updateQuery to avoid mutating state directly

It's also needed for extra refresh/runQuery execution as handleTargetChanged doesn't handle changing the raw query

* Fix updating query after adding a function

* Simplify updating function params

* Simplify setting Segment Select min width

* Extract view logic to a helper and update types definitions

* Clean up types

* Update FuncDef types and add tests

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2021-07-21 20:09:00 +02:00
Jack Westbrook
1d37d675d7 Plugins: Render app plugin config pages in catalog (#37063)
* feat(catalog): introduce PluginDetailsBody component and useLoadPluginConfig hook

* feat(catalog): use PluginDetailsBody and useLoadPluginConfig hook in PluginDetails

* feat(catalog): introduce usePluginDetails hook to handle PluginDetails state

* feat(catalog): wire usePluginDetails hook to PluginDetails and InstallControls

* refactor(catalog): fix typescript errors related to usePluginDetails hook

* chore(catalog): update types for PluginDetailsActions
2021-07-21 19:44:43 +02:00
Eunice Kim
02b5a18da2 Geomaps: Add default base layer (#37043) 2021-07-21 10:20:30 -07:00
Eunice Kim
3b0d7fc00b Geomap: Base layer server configuration (#37041) 2021-07-21 17:54:05 +02:00
Maksim Nabokikh
ec9a587cbe Provisioning: Improve validation by validating across all dashboard providers (#26742)
* Provisioning: check sanity across all dashboard readers

Signed-off-by: m.nabokikh <maksim.nabokikh@flant.com>

* Apply suggestions from code review

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Refactor of duplicateValidator and fix issues according to commentaries

Signed-off-by: m.nabokikh <maksim.nabokikh@flant.com>

* Apply suggestions from code review

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Remove newDuplicateEntries function

Signed-off-by: m.nabokikh <maksim.nabokikh@flant.com>

* Change folderUid in logs to folderUID

Signed-off-by: m.nabokikh <maksim.nabokikh@flant.com>

* Restrict write access for readers, which are provisioning duplicate dashboards

Signed-off-by: m.nabokikh <maksim.nabokikh@flant.com>

* Fix file reader after rebasing onto master

Signed-off-by: m.nabokikh <maksim.nabokikh@flant.com>

* Apply suggestions from code review

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Format file_reader

Signed-off-by: m.nabokikh <maksim.nabokikh@flant.com>

* Apply suggestions from code review

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Apply suggestions from code review

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Fix lint problem

Signed-off-by: m.nabokikh <maksim.nabokikh@flant.com>

* Apply suggestions from code review

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Signed-off-by: m.nabokikh <maksim.nabokikh@flant.com>

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2021-07-21 17:52:41 +02:00
nikki-kiga
1efa5f51cf PieChart: Make pie gradient more subtle to match other charts (#36961)
* change pie gradient to from colors

* increase label contrast

* Revert "change pie gradient to from colors"

This reverts commit 70d07d8b8e.

* reduce spin values
2021-07-21 08:50:38 -07:00
Domas
cac4b4b443 Alerting: small rule form ux improvements (#36941)
* dedupe folder option for existing grafana rules

* update test mocks

* change toggle to chevron for expanding error state ui

* fix some strict lint errors
2021-07-21 18:01:05 +03:00
Andres Martinez Gotor
5a0221a8c4 AzureMonitor: Request and concat subsequent resource pages (#36958) 2021-07-21 16:20:07 +02:00
idafurjes
1a52dd57cf Fix parse duration for day (#36942) 2021-07-21 16:16:10 +02:00
Kyle Brandt
b6a7156300 Alerting: Handle marshaling Inf values (#36947)
* SSE: change EvalMatch json value encoding to string
* update MarshalJSON on null.Float to handle inf as null
fixes #36424
2021-07-21 10:04:40 -04:00
Heds Simons
f8118cceaf docs: Update Admin allow_embedding clickjacking link. (#31490)
Signed-off-by: Heds Simons <heds@whaleway.net>
2021-07-21 09:13:02 -04:00
Andres Martinez Gotor
354d3b9abf Fix test (#37053) 2021-07-21 13:20:46 +02:00
Andres Martinez Gotor
133e292052 AzureMonitor: Fix macro resolution for template variables (#36944) 2021-07-21 11:29:07 +02:00
Andres Martinez Gotor
3b728ed78a AzureMonitor: remove default workspace from configuration editor (#36910) 2021-07-21 11:28:43 +02:00
Gábor Farkas
14274a960e influxdb: influxql: handle null-cases in timeseries data (#37047) 2021-07-21 10:44:41 +02:00
Maria Alexandra
3fb80ac474 Docs: update annotations docs to include typeahead support for tags (#36718)
* Docs: update annotations docs to include typeahead support for tags

* Docs: Update Http API annotations including new endpoint to query by tags


Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-07-21 10:23:15 +02:00
Piotr Jamróz
dbe7d3298d Graphite: Migrate to React (part 1: move state to redux) (#36484)
* Add UMLs

* Add rendered diagrams

* Move QueryCtrl to flux

* Remove redundant param in the reducer

* Use named imports for lodash and fix typing for GraphiteTagOperator

* Add missing async/await

* Extract providers to a separate file

* Clean up async await

* Rename controller functions back to main

* Simplify creating actions

* Re-order controller functions

* Separate helpers from actions

* Rename vars

* Simplify helpers

* Move controller methods to state reducers

* Remove docs (they are added in design doc)

* Move actions.ts to state folder

* Add docs

* Add old methods stubs for easier review

* Check how state dependencies will be mapped

* Rename state to store

* Rename state to store

* Rewrite spec tests for Graphite Query Controller

* Update docs

* Update docs

* Update public/app/plugins/datasource/graphite/state/helpers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/helpers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/helpers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Add more type definitions

* Load function definitions before parsing the target on initial load

* Change targetChanged to updateQuery to avoid mutating state directly

It's also needed for extra refresh/runQuery execution as handleTargetChanged doesn't handle changing the raw query

* Fix updating query after adding a function

* Simplify updating function params

* Remove redundant awaits

* Use redux Action

* Use more specific type for GraphiteTag

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2021-07-21 09:24:36 +02:00
An
71a9f7ce3c Geomap: support alternative marker shapes (#36916)
* set value default on init

* shared location config

* shared locaiton config

* shared locaiton config

* remove file

* add alpha annotations

* feature: icon picker

* features: regular shapes picker

* fix: set circle as default in select

* use a registry for shapes

* remove (unused) picker

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: An Le <anle@Ans-MBP.localdomain>
2021-07-20 21:09:08 -04:00
Dan Cech
50b7674b58 fix alerting docs aliases so we redirect instead of 404 old urls (#37037)
* fix alerting docs aliases so we redirect instead of 404 old urls

* add missing alias
2021-07-20 20:34:23 -04:00
Petros Kolyvas
a6a4c3760a GitHub: Redirecting Feature Requests to GitHub Discussions (#36826)
* PR for Github Enhancements
* Accidentally commited a file from another branch, fixing
* One other docs file left hanging - removing
* retrigger checks
* using drone.yml from main
2021-07-20 20:16:26 -03:00
Ryan McKinley
46eac518d3 Geomap: set value default on init (#36960) 2021-07-20 15:52:12 -07:00
Kyle Brandt
3ab9249f16 SQL Datasources: Allow multiple string/labels columns with time series (#36485)
for #36370
2021-07-20 12:42:54 -04:00
Fabrice
aa3a46272f Fix: Handle withCredentials option properly for loki datasource (#36914)
The loki datasource was not passing the credentials info to the fetch()
API when loki was in Browser access mode.

This is similar to:
https://github.com/grafana/grafana/pull/23380
2021-07-20 17:05:12 +02:00
Ashley Harrison
4f315bf48f VizTooltip: Use previous positioning calculation (#36861)
* VizTooltip: Use previous positioning calculation

* VizTooltip: Don't need to check for tooltip width/height here

* VizTooltip: Disable pointer-events in the mixin

* VizTooltipContainer: Move pointerEvents to inline style to prevent breaking AnnotationMarker

* Move comment to correct place

* No need to change this
2021-07-20 14:49:50 +01:00
Marcus Andersson
ff56ea6ea6 Plugins: Combine local and remote plugins into one structure (#36859)
* adding some structure to combine the local and remote into one type.

* feat(catalog): map local and remote responses to catalog plugin

* feat(catalog): render CatalogPlugins in list

* refactor(catalog): update usePluginsByFilter to work with new data structure

* refactor(catalog): move helper functions into helpers file. delete redundent usePlugins hook

* feat(catalog): create CatalogPluginDetails and pass to PluginDetails

* feat(catalog): update types and components for plugin installation

* chore(catalog): comment so not to forget to move code out of api layer

* fix(catalog): make sure all filter shows gcom and installed

* fix(catalog): fix up getCatalogPlugin logic for only locally available plugins

* refactor(catalog): create getCatalogPluginDetails helper. Move usage to hook

* revert(catalog): put back small logos in PluginList

* revert(catalog): put back small logo for PluginDetails page

* fix(catalog): prevent useDebounce from triggering when SearchField mounts

* chore(catalog): add coment explaining reason for usedebouncewithoutfirstrender

* refactor(catalog): replace reduce with filter to remove duplicate array of all plugins

* refactor(catalog): update types for useDebounceWithoutFirstRender

* chore(catalog): remove commented out import

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
2021-07-20 15:20:24 +02:00
axlrosen
79747b419b Doc: Info about $__rate_interval for naive users (#36576)
* Doc: Info about $__rate_interval for naive users

<!--

Thank you for sending a pull request! Here are some tips:

1. If this is your first time, please read our contribution guide at https://github.com/grafana/grafana/blob/main/CONTRIBUTING.md

2. Ensure you include and run the appropriate tests as part of your Pull Request.

3. In a new feature or configuration option, an update to the documentation is necessary. Everything related to the documentation is under the docs folder in the root of the repository.

4. If the Pull Request is a work in progress, make use of GitHub's "Draft PR" feature and mark it as such.

5. If you can not merge your Pull Request due to a merge conflict, Rebase it. This gets it in sync with the main branch.

6. Name your PR as "<FeatureArea>: Describe your change", e.g. Alerting: Prevent race condition. If it's a fix or feature relevant for the changelog describe the user impact in the title. The PR title is used to auto-generate the changelog for issues marked with the "add to changelog" label.

-->

**What this PR does / why we need it**:

For Prometheus newbies (i.e. most of us), it seems like $__rate_interval should be widely used, but the documentation doesn't tell us that. So I added more about why it's good, and an explicit recommendation that it can be a good default value for use if (like most of us) you don't really understand how to choose an interval. (Let me know if that's not actually the case, but that's what I took away from https://github.com/grafana/grafana/issues/21417)

Also fixed a few typos in the existing doc.

**Which issue(s) this PR fixes**:

<!--

- Automatically closes linked issue when the Pull Request is merged.

Usage: "Fixes #<issue number>", or "Fixes (paste link of issue)"

-->

Fixes #

**Special notes for your reviewer**:

* Edits based on suggestions from @beorn7

* Update docs/sources/datasources/prometheus.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
Co-authored-by: Ivana <ivana.huckova@gmail.com>
2021-07-20 13:25:24 +02:00
Ashley Harrison
e22ff342e0 Update ci-check-strict.sh (#36943) 2021-07-20 12:21:20 +02:00
Ganesh Vernekar
5806c66825 Alerting: Fix the table markdown docs (#36901)
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-07-20 15:37:19 +05:30
Elan Kugelmass
c7c776c642 Prometheus: Update PromQL typeahead and highlighting (#36730)
* Update PromQL functions

* prettier
2021-07-20 11:19:59 +02:00
Alexander Emelin
8eeeb02a70 live: add to v8 upgrading section (#36661) 2021-07-20 11:58:24 +03:00
Ashley Harrison
220b964de5 Chore: Fix more TypeScript errors (#36918)
* TypeScript: Fix some strict typescript errors

* Fix more strict typescript errors

* Few more fixes

* Better string conversion

* update check script to 195
2021-07-20 09:57:03 +01:00
Gábor Farkas
ea375db8b2 influxdb: influxql: for timeseries-queries, return dataframes (#36850) 2021-07-20 10:52:36 +02:00
Alexander Emelin
6c440b5e8b live: handle input with NaN sent as a string (#36924) 2021-07-20 10:46:05 +03:00
Vardan Torosyan
140bb4cc56 Access control docs: Add a note indicating that Explore can be managed by fine-grained access control (#36703)
* Access control: Add FGAC permissions to Admins for Explore access

* Remove unnecessary change
2021-07-20 09:03:28 +02:00
David Parrott
fa0bed7118 do not over write alerting rule duration (#36930) 2021-07-20 11:49:35 +05:30
Sarah Zinger
f32d200fc0 E2E: Add support for data-test-id over aria labels and add importDashboard flow (#36483)
* E2E: Add support for data-testids and not just aria-labels.
2021-07-19 14:01:31 -04:00
Piotr Jamróz
ef689d0c24 SegmentSelect: Do not call onCloseMenu when a value was selected (#36905)
* Do not call onCloseMenu when a value was selected

Otherwise a wrong value might be picked up from the input in case when part of the value is in the input (used for filtering) and the actual value is selected.

* Add more docs
2021-07-19 19:57:09 +02:00
Ryan McKinley
85a14a0503 Geomap: configure size and color with different fields (#36825) 2021-07-19 19:16:42 +02:00
Alexander Emelin
48941da02e live: mention HA limitations in administration docs (#36752) 2021-07-19 20:05:08 +03:00
Ganesh Vernekar
34699713ea Alerting: Update docs to mention the requirement of persistent disks (#36808)
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-07-19 17:51:33 +02:00
Ryan McKinley
ee3a320540 Geomap: improve the view configuration (#36893) 2021-07-19 17:40:56 +02:00
Andrej Ocenas
001331e2ac Explore: Fix query cancellation when opening an url with split panes (#36847)
* Add exploreId to requestId

* Fix tests
2021-07-19 17:29:51 +02:00
Ivana Huckova
a11294ae9d Devenv: Update troubleshooting documentation (#36846)
* Update Troubleshooting section

* Update devenv/README.md

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update devenv/README.md

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update devenv/README.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-07-19 17:23:38 +02:00
Ryan McKinley
d4fa2529c8 Geomap: make the geomap panel beta and label alpha layers (#36894) 2021-07-19 08:07:28 -07:00
Tharun Rajendran
ecd2c320ba GlobalStyle: Add focus style for links (#36533)
* GlobalStyle: Add focus style for links

* GlobalStyle: show focus style only on visible
2021-07-19 16:17:45 +02:00
Ashley Harrison
9c6085ee0b DashboardSrv/NavModelSrv: Remove legacy angularjs (#36810)
* DashboardSrv: Remove ngInject + promiseToDigest wrapper

* NavModelSrv: Remove ngInject that is doing nothing

* DashboardSrv: Use getBackendSrv instead of just importing the backendSrv directly
2021-07-19 11:38:12 +01:00
Djairho Geuens
4cadbba686 Email: Allow configuration of content types for email notifications (#34530)
* Alerting: Allow configuration of content types for email notifications

* Fix lint error

* Improves email templates

* Improve configuration documentation

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Improve code comments

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Improve configuration documentation

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Improve email template

* Remove unnecessary predeclaration

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Adds handling for unrecognized content type

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Move utility function outside of util package

* Fixes syntax

* Remove unused package

* Fix lint error

* improve email templates

* Fix test

* Alerting: Allow configuration of content types for email notifications

* Fix lint error

* Improves email templates

* Improve configuration documentation

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Improve code comments

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Improve configuration documentation

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Improve email template

* Remove unnecessary predeclaration

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Adds handling for unrecognized content type

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Move utility function outside of util package

* Fixes syntax

* Remove unused package

* Fix lint error

* improve email templates

* Fix test

* Fix comment style

Co-authored-by: Ganesh Vernekar <15064823+codesome@users.noreply.github.com>

* Fix template formatting

* Add test and improve error handling

* Fix test

* Fix formatting

* Fix formatting

* Improve documentation and regenerates txt template

* Update docs/sources/administration/configuration.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: Djairho Geuens <djairho.geuens@ae.be>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
Co-authored-by: Ganesh Vernekar <15064823+codesome@users.noreply.github.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-07-19 13:31:51 +03:00
idafurjes
cec12676e7 Chore: Refactor influxdb to use SDK contracts (#36189)
* Use backend SDK for influxdb

* Remove BasicAuth condition, some comments

* Remove not used fields from datasource info

* Register InfluxDBService

* Fix casting and make HTTPClientProvider exported

* Remove unused function

* Remove empty line

* Update pkg/tsdb/influxdb/flux/query_models.go

Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>

* Read interval from TimeRange instead of Interval

* Change pkg name from datasource->models, minor changes

* Use testify instead of convey

* Add new calculator logic and fix pointer semantic for dsInfo

* Initialise parsers, use tsdb interval pkg

Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
2021-07-19 11:32:33 +02:00
Domas
27b7c35ccc add defaults to alert list migration handler (#36547) 2021-07-19 12:25:53 +03:00
Sofia Papagiannaki
f308ba91e3 Alerting: Improve receiver initialisation errors (#36814)
* Alerting: Improve receiver initialisation errors
2021-07-19 11:58:35 +03:00
Ilya Stoliar
0cfc135c4b CloudWatch: Add AWS CertificateManager metric (#36881) 2021-07-19 10:41:12 +02:00
Ashley Harrison
b8a5f38d2a Angular cleanup: Don't inject in link_srv (#36849)
* Angular cleanup: Don't inject in link_srv

* link_srv: Fix unit tests

* kick drone
2021-07-19 09:16:36 +01:00
Alexander Emelin
37caebc934 live: handle origin without port set (#36834) 2021-07-17 13:38:33 +03:00
Leon Sorokin
248b442ca3 Docs: fix link to status-history on visualizations index page (#36873) 2021-07-17 00:45:36 -05:00
sam boyer
cae47b3c1c Make validate-schema CLI command work vs. disk (#36863)
* Make validate-schema CLI command work vs. disk

Previously, `grafana-cli cue validate-schema` would only validate the
CUE files that had been included at compile time. Now, the command
requires passing a grafana checkout root path, and will actually check
against live files on disk.

* Exempt validateScuemata from sec linter

* Nit: validateScuemata is a simpler, better name

* Try to fix validate-scuemata build step
2021-07-16 19:53:19 -04:00
Eunice Kim
dd11e232d0 Geomap: Implement Heatmap overlays (#36769) 2021-07-16 14:23:48 -07:00
Tobias Skarhed
cfd06775c0 Dashboard: Add accessible landmark markup (#36753)
* Add landmark markup

* Make panel titles h2

* Descibe panel landmarks

* Add nav elements and heading 1

* Reset line height and remove margin

* Make focus styles visible

* Change nav to section

* Add desc

* Fix focus styles cutoff
2021-07-16 21:48:47 +02:00
nikki-kiga
2172920095 Tooltip: Make active series more noticeable (#36824)
* fix: make active series in tooltip more noticeable

* update font and spacing theme values
2021-07-16 11:28:35 -07:00
Sofia Papagiannaki
afe6e793ff Alerting: deactivate an Alertmanager configuration (#36794)
* Alerting: deactivate an Alertmanager configuration

Implement DELETE /api/alertmanager/grafana/config/api/v1/alerts
by storing the default configuration which stops existing cnfiguration
from being in use.

* Apply suggestions from code review
2021-07-16 20:07:31 +03:00
Olof Bourghardt
f4f2c197ae Explore: Add switch to restructure logs for better readability (#36324)
* Add prettifyLogMessage to select components in test file

* Change entry depending on the value of prettifyLogMessage

* Add prettifyLogMessage to state

* Fix merge conflict

* Fixe bug where the log message wasn't parsed as JSON

* Implement function to restructure all logs

* Change elstic image version back to 7.7.1

* Add showCommonLabels that was missing

* Remove comment

* Put import of getParser together with the other imports

* Logs: fix bug where message isn't restructured if it contains ANSI code

* Logs: change label for switch to Restructure

* Remove unnecessary file

* Logs: added divider before switch component

* Add dividers between the different log options

* Remove unintentional changes

* Explore: remove dividers in log settings

* Explore: refactor for LogRowMessage for better readability

* remove unnecessary change

* Logs: fix bug where logs aren't restructured if they have highlights

* Logs: minor refactoring

* Logs: use memoizeOne to prevent parsing on every re-render

* Logs: calculate needsHilight inside renderLogMessage instead of outside

* Logs: fix bug where logs aren't prettified when wrap logs is disabled

* Explore: change name to prettify

* Remove console.log

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>

* Dashboards: add switch to prettify log messages to the Logs fields

* Logs: make prettify only work for JSON logs

* Logs: fix bug with tests for logs

* Update public/app/plugins/panel/logs/module.tsx

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2021-07-16 15:08:47 +02:00
Andres Martinez Gotor
96efbbaed1 Azure Monitor: Implement CallResourceHandler in the backend (#35581) 2021-07-16 12:47:26 +02:00
Marcus Andersson
a6872deeb9 Plugins: automatically search plugins when typing in plugin list search box. (#36643)
* will automagically search if typing something in the search field.

* Decreasing the debounced time to 500ms
2021-07-16 12:43:13 +02:00
Marcus Efraimsson
11d03f7961 Chore: Use context.Context for the get home dashboard API endpoint (#36735)
Use context.Context for the get home dashboard API endpoint.

Ref #36734
2021-07-16 12:40:03 +02:00
Jack Westbrook
e2c64ae228 Plugins: Prevent catalog from listing installed embedded plugins (#36675) 2021-07-16 12:33:56 +02:00
Dominik Prokop
a6aab7d0c9 Docs: Add time series annotations docs (#36657)
* Docs: Add time series annotations docs

* Review
2021-07-16 12:33:00 +02:00
Ashley Harrison
a70eafb732 Angular cleanup: Remove unused <panel-links-editor> + controller (#36838) 2021-07-16 11:29:46 +01:00
dannyfreak
67b977fd63 Added missing metrics for Consumer Lag dimension (#36821)
Co-authored-by: Fryc, Daniel <Daniel.Fryc@Pearson.com>
2021-07-16 11:10:40 +02:00
Marcus Andersson
8e386b9da5 Docs: added documentation for the "prepare time series"-transformation. (#36761)
* added documentation for the prepare time series transformation.

* Update docs/sources/developers/plugins/data-frames.md

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>

* Update docs/sources/panels/transformations/types-options.md

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>

* Update docs/sources/panels/transformations/types-options.md

Co-authored-by: Marcus Olsson <marcus.olsson@hey.com>

* Update docs/sources/panels/transformations/types-options.md

Co-authored-by: Marcus Olsson <marcus.olsson@hey.com>

* changed according to feedbcak.

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
Co-authored-by: Marcus Olsson <marcus.olsson@hey.com>
2021-07-16 10:41:15 +02:00
Selene
1c74bb3992 UsageStats: Extend usage stats for count permissions in folders and dashborads (#36065)
* Add usage stats for permissions for dashboards and folders

* Change double quotes for simple ones
2021-07-16 10:14:33 +02:00
Gábor Farkas
367f3ea0ae devenv: influxdb: updated telegraf to new version (#36795) 2021-07-16 08:44:54 +02:00
Piotr Jamróz
3778e9bbbd SegmentSelect: Fix closing the menu on click out (#36816) 2021-07-16 08:39:06 +02:00
Dimitris Sotirakis
2e0dc835cf Scuemata: Add test to validate devenv resources (#35810)
* Add test for devenv resources

* Refactor validation tests for grokkability

* Devenv dashboards error-tracking script

* Refactor to use cueerrors.Details()

* Further test refinement

* Close major elements of dashboard schema

* Centralize dashboard validation tests

General dashboard validation testing belongs in the load package.

* Better names for error context on glue CUE code

* Fixup validate-resource

Do only one of base or dist, and fix copied docs.

* Skip the devenv test

* Remove test for validateResources

* Fix shellcheck

* Backend linter

Co-authored-by: sam boyer <sdboyer@grafana.com>
2021-07-15 20:08:03 -04:00
Ryan McKinley
8de218d5f1 Geomap: use a common configuration builder to find location fields (#36768) 2021-07-15 12:00:19 -07:00
Grot (@grafanabot)
dc5778c303 ReleaseNotes: Updated changelog and release notes for 7.5.10 (#36802)
* ReleaseNotes: Updated changelog and release notes for 7.5.10

* added link to the release note.s

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2021-07-15 18:04:42 +02:00
Ivana Huckova
8f31636a98 Fix width or logrows to cover full space up until logs navigation (#36778) 2021-07-15 17:09:20 +02:00
Dimitris Sotirakis
0df1b33d71 Plugins: Migrate Elasticsearch to backend plugin SDK (#36132)
* Migrate Elasticsearch to backend plugin SDK

* Fix linting

* Move away from Convey!

* Rebase commit

* Small logger fix

* Fixes according to reviewer's comments

* Fixes according to reviewer's comments

* Fixes according to reviewer's comments

* More cleanup

* Move things around - small refactoring

* Fix typo

* Update calculator - add tests

* Fixes according to reviewer's comments
2021-07-15 16:45:59 +02:00
Jack Westbrook
75947da527 Chore: Update latest.json to 8.0.6 (#36805) 2021-07-15 16:13:18 +02:00
Giordano Ricci
f6b83a4f47 Elasticsearch: Add frozen indices search support (#36018)
* Revert "Revert "Elasticsearch: add frozen indices search support (#27472)" (#27726)"

This reverts commit 4c7131425b.

* Make label width a bit more consistent

* Add documentation for X-Pack & Frozen Indices support in Elasticsearch

* Change UI & docs casing

* create default empty dataframe

* Remove backticks and simplify regex

* small doc improvement
2021-07-15 15:52:02 +02:00
Marcus Efraimsson
b164c90e91 Chore: Fix http: superfluous response.WriteHeader error when deleting an external snapshot (#36780) 2021-07-15 15:29:52 +02:00
Grot (@grafanabot)
fdad8558ee ReleaseNotes: Updated changelog and release notes for 8.0.6 (#36751)
* ReleaseNotes: Updated changelog and release notes for 8.0.6

* Fix changelog entry for #36737

* Fix release note entry for #36737

* Add new release for 8.0.6

Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
2021-07-15 15:15:36 +02:00
Marcus Efraimsson
337998d58b Chore: Ease the migration of always using context.Context when interacting with the bus (#36733)
If DispatchCtx is called and there's a handler registered using
AddHandler we now allow that and not return a handler not
found error. In addition we log a warning message helping
the developers know that AddHandlerCtx should be used
instead.
If Dispatch is called and there's a handler registered
using AddHandlerCtx we log a warning message helping
the developers know that DispatchCtx should be used instead.
2021-07-15 14:33:38 +02:00
Marcus Efraimsson
a6b2e1865c Datasource: Improve default timeout settings for HTTP client provider (#36621)
Make sure that default timeout settings are based on configuration
parameters. This now applies for core data sources using old TSDB
contracts and new SDK contracts. Before it was only applied for old TSDB
contracts.
Also moves global setting variables to non-global (setting.Cfg).
2021-07-15 14:30:06 +02:00
George Robinson
456dac1303 Expand the value of math and reduce expressions in annotations and labels (#36611)
* Expand the value of math and reduce expressions in annotations and labels

This commit makes it possible to use the values of reduce and math
expressions in annotations and labels via their RefIDs. It uses the
Stringer interface to ensure that "{{ $values.A }}" still prints the
value in decimal format while also making the labels for each RefID
available with "{{ $values.A.Labels }}" and the float64 value with
"{{ $values.A.Value }}"
2021-07-15 13:10:56 +01:00
Dominik Prokop
421f5040ec User analytics: Use user email as Rudderstack id (#36788) 2021-07-15 12:28:13 +02:00
Ashley Harrison
8c91b290ba Select: Block scroll on select instead of trying to hide the menu (#36783) 2021-07-15 10:54:38 +01:00
Marcus Efraimsson
decc2124f3 Chore: Upgrade grafana-plugin-sdk-go to v0.110.0 (#36763) 2021-07-15 09:39:25 +02:00
Will Browne
94688be398 Plugins: Use plugin.pluginDir as source of truth for plugin location (#36711)
* use plugin.pluginDir as source of truth for plugin location

* correct the interface
2021-07-15 09:08:25 +02:00
Will Browne
e82f8dbef9 switch to json resp for errors (#36743) 2021-07-15 08:56:11 +02:00
Torkel Ödegaard
9b329804e1 Docs: New index page with list of all visualizations and panels (#36756)
* New index pages and some new images

* Update

* Update graph-color-scheme.md

Small grammar fix

* Update pie-chart-panel.md

Small fix for caption

* Update _index.md

Minor grammatical change and missing comma.

* Update graph-color-scheme.md

Another small grammar tweak

* Adding color scheme docs

* Updated image captions

* Added missing panels

* Updates

* fixes

* Align on naming

* Fix

Co-authored-by: Petros Kolyvas <code@petros.io>
2021-07-15 07:57:33 +02:00
Ryan McKinley
6d87b26d6c OptionsUI: add standard field name picker (#36732) 2021-07-14 11:54:58 -07:00
Joseph Robinson
2f595fa144 Docs:Adjust azuread.md for Powershell UUID command (#27323)
* Docs:Adjust azuread.md for Powershell UUID command

Why this change is needed:

-Update the docs to include more Unique ID information for Windows users. This is intended to improve user experience.
-Adjust passive to active voice where it improves the documentation.
-Checking for style guide compliance.

Closes issue: #23094

* Update azuread.md

Fixed typo "possibile".

* Update docs/sources/auth/azuread.md

fix capital letter U and G.

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/auth/azuread.md

Adjust punctuation for clarity.

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/auth/azuread.md

Place Note in correct bold markup following style guide.

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/auth/azuread.md

Bold markup for UI fields.

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/auth/azuread.md

Capital for id > ID.

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Including suggestions as noted by Diana Payton

* adjusting object IDs to match the docs.microsoft style
* using bold for UI elements
* Other fixes as needed

Update docs/sources/auth/azuread.md

Capital for id > ID.

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/auth/azuread.md

Add the adverb to place the next step directly after the previous step in sequence.

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/auth/azuread.md

Change remaining lowercase "id" use to upper case "ID" when it
appears in text.

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Applying achatterjee's suggestions

Accepting the changes:

* Adding in articles
* Adjusting prepositions
* Other changes as requests

Completing this commit through the Github web interface for added speed.

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2021-07-14 18:55:25 +02:00
Anzic23
6367d812db Update _index.md (#35595)
error in DashboardURL
2021-07-14 18:27:53 +02:00
shuotli
5c5c3bdd94 AzureMonitor: Improve Azure Resource Graph docs (#34450)
* Add macros in ARG doc

* Update docs/sources/datasources/azuremonitor.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/azuremonitor.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/azuremonitor.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/azuremonitor.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/azuremonitor.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/azuremonitor.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/azuremonitor.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-07-14 18:23:07 +02:00
castillo92
e8d5b2431e Update queries.md (#31941)
* Update queries.md

Completing some examples to allow newbie people to understand relative time and time shift time

* Update docs/sources/panels/queries.md

Co-authored-by: Geshi <ohayo@geshii.moe>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
Co-authored-by: Geshi <ohayo@geshii.moe>
2021-07-14 18:22:23 +02:00
Carrie Crowe
c21b4eb602 Update configuration.md (#30695)
* Update configuration.md

Corrected several typos and included words that were originally left out to ensure proper grammar in document.

* Update docs/sources/administration/configuration.md

Co-authored-by: Dave Henderson <dhenderson@gmail.com>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
Co-authored-by: Dave Henderson <dhenderson@gmail.com>
2021-07-14 18:19:26 +02:00
Julien Duchesne
96ff257e96 Remove verify-drone for Windows (#36759)
This step checks that there's no drift between star files and yml
It's currently broken for windows: https://raintank-corp.slack.com/archives/C010WU9Q5TJ/p1626270627462700
But it's only needed for PRs really
2021-07-14 17:03:21 +02:00
Ashley Harrison
9cfb7d801f Modal: Force modal content to overflow with scroll (#36754) 2021-07-14 15:35:34 +01:00
Gábor Farkas
815f9a7557 InfluxDB: InfluxQL: adds tags to timeseries data (#36702)
* influxdb: influxql: return tags in timeseries

* influxdb: influxql: added tests
2021-07-14 16:06:53 +02:00
Mitch Seaman
f77f3d8a9d Add AGPL license update to 8.0 changelog, release notes, What's New (#36742)
* add license change to changelog, release notes, and whats new

* wording update to match other headers
2021-07-14 07:52:03 -06:00
Ashley Harrison
54f8996acf Select: Portal select menu to document.body (#36398)
* ValueMappings: Force overflowing modal content to scroll

* ValueMappings: Update unit tests

* Select: Portal Select to document.body, close menu on scroll

* Select: Fix tests + apply updates from https://github.com/grafana/grafana/pull/32833

* ValueMappingsEditorModal: Revert to using selectEvent in the tests

* Select: Fix remaining unit tests

* Portal: Rewrite Portal as a functional component so we can use useTheme2

* Modal: Remove modal styles from this PR

* Update E2E tests

* More unit test fixes

* Select: Fix remaining E2E tests

* Select: Create util method to select an option in tests
2021-07-14 14:04:23 +01:00
Julien Duchesne
f41f00dec4 Sign Drone's configuration YAML file (#36528)
* Sign Drone's configuration YAML file
This is needed to protect the repository

* Update grabpl to 2.2.8

* Add comment about generating the drone.yml file
2021-07-14 14:40:28 +02:00
Ivana Huckova
d9897a457d Loki: Add autocomplete option for $__range variable (#36717)
* Add autocomplete option for Loki & Promtheus rates

* Update test
2021-07-14 13:44:23 +02:00
Torkel Ödegaard
f29f190e73 Docs: Docs for Rows to fields and Config from query transformations (#36713)
* Docs: Docs for new transformations rows to fields and config from query results

* Added config from query docs

* refinement

* Same lists everywhere

* minor tweak

* Added beta and version notices
2021-07-14 13:16:09 +02:00
Josh Hunt
43ee7acecd AzureMonitor: Make all query properties optional (#36701)
* start to make all query fields optional

* fix other types

* fix optional types in fields

* Pfeedback!

* Clean up types
2021-07-14 12:36:11 +02:00
Marcus Efraimsson
10c892fa5b Postgres/MySQL/MSSQL: Fix name of time field should be named Time for time series queries (#36720)
Name of time field changed in v8 for time series queries from Time to the name of the selected 
time column, i.e. time or time_sec. These changes should make sure that the name of time field 
is always returned as Time for time series queries.

Fixes #36059

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-07-14 11:29:51 +02:00
Ryan McKinley
92801d5fa1 Transformations: add 'prepare time series' transformer (#36737)
* adding transformer that will stretch a data frame from wide to long.

* added a UI for the stretch frames transformer.

* refactored according to feedback.

* removed unused dep.

* making sure it is being displayed.

* minor adjustments.

* move stretch to prepare

* improved readability of tests.

* refactored to use a function component syntax.

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2021-07-14 11:24:12 +02:00
Andres Martinez Gotor
114f6714c4 AzureMonitor: Fail rather than warn if Log credentials are set (#36652) 2021-07-14 09:53:24 +02:00
Will Browne
7dbe388d4e fix gzipped plugin asset response (#36721) 2021-07-14 09:38:49 +02:00
Ryan McKinley
cbda218a14 Geomap: rename "circles" layer to "markers" layer (#36727) 2021-07-13 13:45:12 -07:00
David Parrott
19f18bcecc Alerting: annotation on state change (#36535)
* WIP

* Add annotation on alert state change

* move annotation creation to manager

* praise the linter!

* add debug msg when creating annotation
2021-07-13 09:50:10 -07:00
Ryan McKinley
db5597ab9a DataLinks: support 'onClick' from table panels (#36682) 2021-07-13 09:43:39 -07:00
Jack Westbrook
dcc6663801 Plugins: Don't show uninstall button for core plugins in catalog (#36671)
* fix(catalog): don't show un/install buttons if core plugin

* test(catalog): add PluginDetails test case for core plugins
2021-07-13 18:22:36 +02:00
Alexander Emelin
607c5d2555 Live: handle influx input with incomplete/asymmetrical field set (#36664) 2021-07-13 19:17:59 +03:00
Arve Knudsen
2026a1dfb6 grafana-plugin-ci-e2e: Fix README; bump version (#36716)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2021-07-13 16:59:18 +02:00
Sarah Zinger
0922e8d9f0 Upgrade node version for e2e tests (#36620) 2021-07-13 10:23:29 -04:00
David Parrott
310d3ebe3d change template expansion missing value handling (#36679) 2021-07-13 06:57:18 -07:00
Jack Westbrook
b37c59c1b2 Chore: Sync lock file with package.json (#36667) 2021-07-13 14:23:08 +02:00
Olof Bourghardt
9ea2c601ef Explore: page title indicates which datasource is being used (#36699)
* Explore: quick fix for page title

* Explore: update page title in componentDidUpdate with info about the current datasources

* Explore: change tests to incorporate the new page title

* Explore: remove updatePageDocumentTitle since the recent changes replace it
2021-07-13 14:21:49 +02:00
Kevin Song
0b95fd8ae6 Legacy Alerting: Replace simplejson with a struct in webhook notification channel (#34952)
* Add type for webhook body

* Update pkg/services/alerting/notifiers/webhook.go

Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>
2021-07-13 15:14:04 +03:00
Jeffrey Jansma
b81d7eb886 Documentation: Update image_rendering.md to include libgbm1 (#35850)
* Update image_rendering.md

* Updated with feedback 

Updated with feedback
2021-07-13 14:01:59 +02:00
Maria Alexandra
da7f5864f5 Annotations: Add custom label for custom values in builtin annotations (#36691) 2021-07-13 13:30:07 +02:00
Torkel Ödegaard
702fd1cad9 Visualizations: Dynamically set any config (min, max, unit, color, thresholds) from query results (#36548)
* initial steps for config from data

* Moving to core and separate transforms

* Progress

* Rows to fields are starting to work

* Config from query transform working

* UI progress

* More scenarios working

* Update public/app/core/components/TransformersUI/rowsToFields/rowsToFields.ts

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

* transform all

* Refactor

* UI starting to work

* Add matcher UI to transform

* Apply to self

* Adding a reducer option

* Value mapping via new all values reducer

* value mappings workg add -A

* Minor changes

* Improving UI and adding test dashboards

* RowsToFieldsTransformerEditor tests

* Added tests for FieldToConfigMapping Editor

* Added test for ConfigFromQueryTransformerEditor

* Minor UI tweaks

* Added missing test

* Added label extraction

* unified mapping

* Progress refactoring

* Updates

* UI tweaks

* Rename

* Updates

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-07-13 10:51:34 +02:00
Will Browne
e06335ffe9 Plugins: Improve grafana-cli UX + API response messaging for plugin install incompatibility scenario (#36556)
* improve UX for plugin install incompatability

* refactor test
2021-07-13 09:58:46 +02:00
Gustaf Lindstedt
81511e34d9 Avoid breaking on fieldConfig without defaults field (#36666)
This would result in a `Dashboard init failed` error when migrating
dashboards with a folded panel that has a `fieldConfig` but has not
defined `fieldConfig.defaults`.
2021-07-13 09:43:09 +02:00
Torkel Ödegaard
beca793008 Transformations: Enable / disable toggle for transformation rows (#36668)
* Disable transform feature

* Change icon

* Added more clear way to show it's disabled
2021-07-13 09:36:51 +02:00
idafurjes
5d01add7da Fix Postgres query handling null values for smallint (#36648)
* Fix Postgres query handling null values for smallint

* Fix converting to int16
2021-07-13 09:36:24 +02:00
Tharun Rajendran
c26bd6c52f Password Field Improvements (#36160)
* Password: added show password functionality
added autcomplete props
created password component

Fixes #28721

* addressed review changes and added unit tests

* wrapped passwordField component in forwardRef

* fix validation and tests
2021-07-13 09:32:03 +03:00
Eunice Kim
dc8874cd2e GeoMap: Implement circle overlays (#36680) 2021-07-12 20:47:39 -07:00
Domas
32a551b4ca Alerting: add toggle in Loki/Prom datasource config to opt out of alerting ui (#36552)
* wip

* fix useIsRuleEditable

* test for detecting editable-ness of a rules datasource

* tests!

* fix lint errors

* add alerting ui opt-out toggle to loki and prom datasources

* Apply suggestions from code review

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2021-07-12 15:06:09 -07:00
Domas
3ea8880d7f Alerting: better detect cortex/loki ruler api (#36030)
* wip

* beter detect non existing rules stuff

* fix useIsRuleEditable

* test for detecting editable-ness of a rules datasource

* tests!

* fix lint errors
2021-07-12 14:10:13 -07:00
Marcus Andersson
d4e53a9be4 Plugins: adding possibility to install enterprise plugins if you have a valid license. (#36653) 2021-07-12 22:18:39 +02:00
George Robinson
36cb396568 Add ValueString to the documentation for alerts (#36654) 2021-07-12 17:20:42 +01:00
Ivana Huckova
528fe90536 Explore: Fix running of log queries with shift-enter shortcut (#36600)
* Re-run query if we are running query fromo query row

* Fix imports in tests

* Change solution

* Dispatch clear cache
2021-07-12 17:54:17 +02:00
Ashley Harrison
b1d576c5da TimeSeries: Improve tooltip positioning when tooltip overflows (#36440)
* TimeSeries: Improve tooltip positioning when tooltip overflows

* VizTooltip: Use react-popper, extract positioning calculation into util function + add unit tests

* VizTooltip: Keep ref as tooltipRef

* Use popper only for VizTooltip positioning

* VizTooltip: Set altAxis to true to prevent overflow on y axis

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2021-07-12 16:53:53 +01:00
Torkel Ödegaard
863b412d54 Transformations: State feature (alpha/beta) and more (#36630)
* Adding plugin state feature to transforms

* initial help box

* New HelpBox component

* More progress

* Testing

* Removing HelpBox, simple new design, new active state for OperationRowAction

* Updated tests

* Fixed typing issue

* Removed AlphaNotice

* Made focus and enter key trigger OnClick and sorted transformations

* Fixed e2e tests
2021-07-12 16:42:04 +02:00
Tobias Skarhed
5e62bddd1d BottomNavLinks: Accessible text for image and icon (#36650) 2021-07-12 16:15:40 +02:00
Ivana Huckova
3c1a9a9eae Explore: Refactor QueryRow to use ConnectedProps (#36604)
* Refactor QueryRow

* Upddate import in test

* Simplify typing

* Add copy when loading instance
2021-07-12 15:30:24 +02:00
Ganesh Vernekar
8efe1856e2 Alerting: A better and cleaner way to know if Alertmanager is initialised (#36659)
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-07-12 18:53:01 +05:30
Brent Cetinich
37c3e6f9b9 Add StreamName dimension for AWS/KinesisVideo namespace (#36655) 2021-07-12 14:24:10 +02:00
Zoltán Bedi
ee89e51c48 Tempo: show hex strings instead of uints for ids (#36471) 2021-07-12 14:12:47 +02:00
Zoltán Bedi
c02ead9113 Tracing: add way to configure trace to logs start and end time (#34995)
* Tracing: add way to configure trace to logs start and end time

* Use the span's time by default

* Update docs

* Update time inputs to use strings instead of number

* Support negative values as well

* Add info about using negative value

* Don't round up Loki range

* Update docs/sources/datasources/jaeger.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Wording for doc

* Round adjusted start and end time

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-07-12 11:25:41 +02:00
Torkel Ödegaard
6c5d0db255 Links: Fixes issue with some links causing full page reload (#36631) 2021-07-12 10:28:49 +02:00
Tobias Skarhed
b8fbe70c14 A11y: ARIA hide image/link duplicate in news panel (#36642)
* fix(a11y): Hide image/link duplicate

* fix: proper heading and time markup
2021-07-12 10:19:00 +02:00
Marcus Andersson
2fb385c192 Plugins: display enterprise plugins in the plugins catalog (#36599)
* displaying enterprise plugins in the list.

* added place holder for tests and removed unused code.

* added test for the browse page.

* added empty test file.

* added some more tests.
2021-07-12 09:49:01 +02:00
pricek
561ccf419c Table: Add minimum column width field for auto resizing (#35351)
* TablePanel: Adds minimum column width field

The table panel uses virtual rendering of rows, which prevents resizing
based on the contents of a column. A minimum column width field
simulates this ability.

* Fixed indentation issue

* Updates the table panel documentation

Added the "Minimum column width" option to table panel docs and updated
the information for the "Column width" option in the docs.
2021-07-12 09:46:23 +02:00
Gábor Farkas
cc460110b1 influxdb: influxql: better tag-value filtering (#36570) 2021-07-12 07:55:10 +02:00
Ganesh Vernekar
e19c690426 Alerting: Fix potential panic in Alertmanager when starting up (#36562)
* Alerting: Fix potential panic in Alertmanager when starting up

Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>

* Fix reviews

Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-07-12 11:15:16 +05:30
Torkel Ödegaard
afff7f24fc Select: Minor style and usability improvements (#36628)
* Select: Minor style & hover improvements

* added testid

* change to aria label
2021-07-11 17:18:37 +02:00
Torkel Ödegaard
c7d2d70799 DashboardList: Fix issue not re-fetching dashboard list after variable change (#36591) 2021-07-11 07:35:27 +02:00
Alexander Emelin
e1358eeb76 live: better error logging in push API (#36601) 2021-07-10 16:46:21 +03:00
Torkel Ödegaard
d4a990215f Theme: Update theme style guide and docs with new theme info and variable picking guide (#36530)
* Theme: Update theme style guide and docs with new theme info and variable picking guide

* Minor spell fix
2021-07-10 10:24:14 +02:00
Marcus Efraimsson
ca2223f705 Database: Fix incorrect format of isolation level configuration parameter for MySQL (#36565) 2021-07-09 19:05:48 +02:00
Leon Sorokin
bb1dac3c72 Stat: use shared data min/max for y auto-ranging (#36497) 2021-07-09 11:33:49 -05:00
Ryan McKinley
9ce6e2a664 Geomap: add initial openlayers alpha panel (#36188) 2021-07-09 17:53:07 +02:00
Gábor Farkas
e4ece0530a InfluxDB: Flux: fix backward compatibility for some queries (#36603)
* influxdb: flux: better backward-compatibility

* added comment-explanation
2021-07-09 17:37:14 +02:00
Richard Hartmann
483f79ff16 Chore: Add newline at EOF (#36595)
Signed-off-by: Richard Hartmann <richih@richih.org>
2021-07-09 08:21:59 -07:00
Ryan McKinley
44afe4a597 Testdata: generate data that can link to USA state codes (#36537) 2021-07-09 08:02:57 -07:00
Andres Martinez Gotor
1dc5d037e4 Add AWS/AmazonMQ dimensions (#36573) 2021-07-09 16:19:29 +02:00
Peter Holmberg
2b22ab6eaf grafana/ui: Date time picker (#36477)
* styling

* useCallback for onAction

* add flex to accomodate seconds

* fix positioning of the calender

* move input to its own component with state

* wrap callbacks in usecallback

* fix states and add mdx

* add docs

* add tests

* styling fixes for smaller screens

* make date optional

* add test for the changing the input

* more position fixes

* fix an issue with removing the date

* do not show invalid date in input

* more pr feedback
2021-07-09 15:35:48 +02:00
Agnès Toulet
19fbfc8d24 Config: remove unused Enterprise feature toggles (#36527) 2021-07-09 15:12:26 +02:00
Andrej Ocenas
ea2ba06b93 CloudWatch/Logs: Fix log alerts in new unified alerting (#36558)
* Pass FromAlert header from new alerting

* Add better error messages
2021-07-09 13:43:22 +02:00
Tobias Skarhed
56903582ce QueryVariable: Default to first option when none is set (#36521)
* TemplateVariables: Default to first option when none is set

* Add test

* Add tests and rewrite logic
2021-07-09 12:55:56 +02:00
Dominik Prokop
663a8935f7 User analytics: Add Rudderstack integration (#36567)
* Replace analytics service with Echo backend

* Add Rudderstack integration and general pageview and interaction Echo events

* Update conf/defaults.ini

Co-authored-by: Dan Cech <dcech@grafana.com>

* Update packages/grafana-runtime/src/types/analytics.ts

Co-authored-by: Dan Cech <dcech@grafana.com>

* Update conf/defaults.ini

Co-authored-by: Dan Cech <dcech@grafana.com>

* Update tests

* Force cla check

Co-authored-by: Dan Cech <dcech@grafana.com>
2021-07-09 11:45:25 +02:00
Mitch Seaman
cd95e28c30 Docs: Document which data sources work with caching (#36561)
* Document which data sources work with caching

* add Prometheus and Loki to exclusions

* update list of built-in data sources

I checked in Grafana v8.0.4 and these were the built-in data sources that do work with query caching.

* Apply suggestions from code review

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* alphabetize list

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2021-07-09 02:16:02 -06:00
Victor Cinaglia
a63c959ae9 Alerting: fix typo in delete dashboard modal prompt (#36270) 2021-07-09 09:58:49 +02:00
Alexander Emelin
10a942aad0 live: better overview in docs (#36506)
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2021-07-08 21:03:50 +03:00
Tobias Skarhed
0684af6277 Chore: Bump version in latest.json (#36568) 2021-07-08 18:21:07 +02:00
Marcus Andersson
52bd1eb1c5 Plugins: converted the plugins admin app to a core feature in grafana (#36026)
* moved the plugins admin to core and used the plugins toggle to decide which version to use.

* reverted change.

* changed so the library tab is the default one.

* fixing navigation.
#

* fixed so we have the proper header.

* including the core plugins

* fixed so we display logos for local plugins.

* fixed so we have a working version of plugin catalog.

* removed console logs.

* reverted changes.

* fixing failed test.
2021-07-08 17:50:42 +02:00
Grot (@grafanabot)
6266a9e77a ReleaseNotes: Updated changelog and release notes for 8.0.5 (#36554)
* ReleaseNotes: Updated changelog and release notes for 8.0.5

* Update _index.md

* Update CHANGELOG.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2021-07-08 16:55:03 +02:00
Josh Hunt
a2a1fa51f2 AzureMonitor: Resource Picker alignment/spacing tweaks (#35125) 2021-07-08 16:37:41 +02:00
Ganesh Vernekar
94d2520a84 Alerting: Allow space in label and annotation names (#36549)
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-07-08 18:26:09 +05:30
Piotr Jamróz
9ace8686a1 Datasources: Improve error handling for testing data sources (#35120)
* Improve error handling for error messages

The error message will be read from error object from the following properties in the following order:
- message
- data.message
- statusText

* Convert api/ds/query errors to TestingStatus

SQL datasources (mysql, mssql, postgres) and CloudWatch use api/ds/query to test the data source, but previously didn't handle errors returned by this endpoint. If the error cannot be handled it's re-thrown to be handled in public/app/features/datasources/state/actions.ts

* Use async/await instead of Promises

* Remove incorrect type import

TestingStatus is in app/types. Should be pulled down to grafana/data but it depends on HealthCheckResultDetails that is public and lives in grafana/runtime. Ideally TestingStatus should live in grafana/data but I'm not sure if HealthCheckResultDetails can be move there too (?)

* Update packages/grafana-data/src/types/datasource.ts

Co-authored-by: Erik Sundell <erik.sundell@grafana.com>

* Handle errors with no details in toTestingStatus instead of re-throwing

* Update packages/grafana-data/src/types/datasource.ts

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

Co-authored-by: Erik Sundell <erik.sundell@grafana.com>
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2021-07-08 14:32:27 +02:00
Serge Zaitsev
9b2d7d6d69 Gradually remove Macaron web framework (#36325)
* add macaron code to the code base

* remove unused secure cookies support from macaron

* clean up modules

* remove com dependency

* fix silly typos

* little cleanup, remove recovery middleware

* remove logger middleware

* remove static handler and remove unused context methods

* bring inject into macaron codebase

* remove unused applicator

* add back macaron license

* more cleanups in macaron code

* remove unused injector Set method

* remove unused context methods: param to int conversion, body helper type, cookie helpers

* remove action from context

* remove complex environment handling, we only use Env variable

* restore ReplaceAllParams to fix the tests
2021-07-08 14:19:40 +02:00
Josh Hunt
4c0acf335b Grafana-UI: Refactor Checkbox to fix alignment issues (#36164)
* Grafana-UI: Fix Checkbox vertical layout issues

* reorganise css

* WIP for fixing checkboxes in manage dashboards

* Cleanup checkbox and fix issue in Dashboard manage page

* update tests
2021-07-08 14:09:58 +02:00
Uchechukwu Obasi
f45d0a0b7a Docs: added an accessibility section in the pull request guide (#36454)
* Docs: added an accessibility section in the pull request guide

* added more points to the accessibility guideline

* fixes some grammar nits

* changed aria to capital case since its an acronym

* added a reference to the Grafana theme

* improved the wordings for better context
2021-07-08 12:04:56 +02:00
ying-jeanne
c22905f864 Graphite: Convert to use grafana-plugin-sdk-go contracts (#35798)
* Use Dataframes and extract tags from response

* Fix timestamp conversion

* Add tests for data frame conversion

* Add missing RefID and simplify returning an error

* draft dataframe/sdk convertion for graphite

* intermedia

* modify init because registration failed

* Allocate memory for each data point value

* Remove redundant memory aliasing

* Remove redundant new line

* Sort imports

* Simplify returning nil values

* fix lint

* remove unused jsondata

* add checks on query length

* remove basic auth from request

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
2021-07-08 18:03:55 +08:00
Will Browne
2616580bae allow for appropriate content-type to be set (#36545) 2021-07-08 11:14:24 +02:00
ying-jeanne
5c3c15fa40 update backend-sdk to v0.106.0 (#36543) 2021-07-08 16:51:48 +08:00
kay delaney
8d66db09bf Timeseries Panel: Retain alerts when migrating from old graph (#36514)
Closes #36106
2021-07-08 10:47:32 +02:00
Dominik Prokop
7df0010412 TimeSeries panel: Allow adding annotations from the panel (#36220)
* First stab on UI for adding annotations in time series panel

* Extend panel context with annotations api

* Annotations editor UI & CRUD

* Prevent annotation markers to overflow uPlot canvas

* Do not overflow graphing area with region annotations

* Align annotation id type

* Fix exemplar markers positioning

* Use clipping region rather than adjusting annotation region bounds

* Smaller icons

* Improve annotation tooltip and editor auto positioning, reorg code

* Renames

* Enable annotations ctx menu only when adding annotations is allowed

* Wrap setSelect hooks diring init hook

* Use TagFilter instead of TagsInput

* Add id to annotation events

* Add support for cmd+click for adding point annotations

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2021-07-08 10:39:03 +02:00
Nathan Rodman
a0dac9c6d9 Alerting: Add alertmanager notifications tab (#35759)
* Add alertmanager notifications tab

* Link to silences page from am alert

* Include summary for alertmanager group

* Fix colors for am state

* Add horizontal dividing line

* PR feedback

* Add basic unit test for alert notificaitons

* Rename Notificaitons component file

* Polling interval to groups

* Add alertmanager notifications tab

* Link to silences page from am alert

* Include summary for alertmanager group

* PR feedback

* Add basic unit test for alert notificaitons

* Rename Notificaitons component file

* Alerting: make alertmanager notifications view responsive (#36067)

* refac DynamicTableWithGuidelines

* more responsiveness fixes

* Add more to tests

* Add loading and alert state for notifications

Co-authored-by: Domas <domas.lapinskas@grafana.com>
2021-07-07 16:17:26 -07:00
Joan López de la Franca Beltran
d9e500b654 UsageStats: Expose what ds types should be reported (#35916) 2021-07-07 23:12:00 +02:00
Kevin Minehart
ec45afa6b0 include URL arguments in dashboard resource request (#36526)
* include URL arguments in dashboard resource request
2021-07-07 21:42:49 +02:00
Torkel Ödegaard
a67eaf6b62 DashboardPage: Refactor state to fix state timing bugs and reduce unnecessary re-renders (#36460)
* DashboardPage: Refactoring state handling to improve performance and fix bugs with state out of sync

* Fixed exit panel editor timing issues

* New tests in RTL

* Updated comment

* Removed unused imports
2021-07-07 18:39:45 +02:00
Torkel Ödegaard
96a51561a3 Angular: Fixing some annoying depreaction warnings (#36466) 2021-07-07 18:39:10 +02:00
gotjosh
a86ad1190c Alerting: Refactor state manager as a dependency (#36513)
* Alerting: Refactor state manager as a dependency

Within the scheduler, the state manager was being passed around a
certain number of functions. I've introduced it as a dependency to keep
the "service" interfaces as clean and homogeneous as possible.

This is relevant, because I'm going to introduce live reload of these
components as part of my next PR and it is better if dependencies are
self-contained.

* remove unused functions

* Fix a few more tests

* Make sure the `stateManager` is declared before the schedule
2021-07-07 17:18:31 +01:00
Agnès Toulet
acf54905ee Image Renderer: update env variable in docs and custom Docker files (#36501)
* Docs: fix env variable for grafana-image-renderer plugin

* Fix image renderer env variable in custom Docker files
2021-07-07 18:05:55 +02:00
Jack Westbrook
b23bfe1338 Dev: ignore vscode folder except launch.json (#36517) 2021-07-07 17:03:10 +02:00
Sofia Papagiannaki
fc90d47863 Alerting API: Restrict access to Alertmanager configuration (#36507)
* Alerting API: Restrict access to Alertmanager configuration to viewers
2021-07-07 16:29:18 +03:00
Torkel Ödegaard
eed1f36613 Links: Fix links to other apps outside Grafana when under sub path (#36498) 2021-07-07 15:25:59 +02:00
Thomas Cave
3e95c3826a CloudWatch Logs: If Grafana Live isn't enabled, don't use the Live Channel (#36358)
* If Live isn't enabled, don't use the Live Channel

* ..Import Config if you want to use it!
2021-07-07 13:39:32 +02: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
Will Browne
333d520528 Plugins: Improve API response for plugin assets (#36352)
* improve API response for plugin assets 403

* remove unnecessary newline
2021-07-07 12:18:05 +02:00
Dimitris Sotirakis
069fb0cf38 HTTP Client: Introduce dataproxy_max_idle_connections config variable (#35864)
* Introduce dataproxy_max_idle_connections config var

* Fix according to reviewer's comments

* Fix according to reviewer's comments - round 2

* Remove unused const

* Bring back MaxIdleConnsPerHost

* Fixes according to reviewer's comments
2021-07-07 13:13:53 +03:00
Jack Westbrook
d1da97b176 Bump babel to 7.14.x for typescript 4.3 support (#36465)
* chore(babel): bump packages to 7.14.x

* chore(babel): remove plugin-proposal-class-properties and plugin-proposal-private-methods

these plugins are now enabled by default in preset-env
2021-07-07 10:43:17 +02:00
Michael Alex
7538739881 Fixed a typo in AnalyticsConfig.test.tsx file (#36439) 2021-07-07 09:12:59 +02:00
Ryan McKinley
92dc6aed3f Dev: include vscode launcher / debugger (#36360) 2021-07-07 00:05:30 -07:00
Dominik Prokop
b361fc751c PanelOptions: Don't mutate panel options/field config object when updating (#36441)
* PanelOptions: Don't mutate panel options/field config object when updating

* Review

* maybe faster, plus value === '' fix

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2021-07-07 08:58:07 +02:00
idafurjes
60ac54d969 Chore: Refactor OAuth/social package to service (#35403)
* Creating SocialService

* Add GetOAuthProviders as socialService method

* Add OAuthTokenService

* Add GetOAuthHttpClient method to SocialService

* Rename services, access socialMap from GetConnector

* Fix tests by mocking oauthtoken methods

* Move NewAuthService into Init

* Move OAuthService to social pkg

* Refactor OAuthService to OAuthProvider

* Fix nil map error, rename file, simplify tests

* Fix bug for Forward OAuth Identify

* Remove file after rebase
2021-07-07 08:54:17 +02:00
Zoltán Bedi
55e763b4cd Prometheus: interpolate variable for step field (#36437)
* Prometheus: interpolate variable for step

* Add test for variable interpolation
2021-07-07 08:43:46 +02:00
Alex Khomenko
1655ff1e49 Add aria label (#36468) 2021-07-07 09:06:39 +03:00
Tharun Rajendran
97dca963a9 Table: Fixes color for data links (#36446)
* Table: add styling for anchor tag

* inherit color from parent to anchor tag

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2021-07-07 07:46:38 +02:00
Alexander Emelin
e60950a8c7 Live: document allowed_origins (#36433) 2021-07-06 20:47:05 -07:00
Ben Bodenmiller
0c20cc1d12 Chore: remove extra "only" (#36494) 2021-07-06 20:45:55 -07:00
Kevin Minehart
92cb503486 use absolute path when getting grafana path; add test for directory (#36001) 2021-07-06 11:28:02 -05:00
Torkel Ödegaard
17707d886a PanelEditor: Fixes issue minor UI issue with editing non data panels (#36463) 2021-07-06 18:01:13 +02:00
Matthias Blümel
b49b7faeee Transformation: show message if not applied on single frame (#36469)
* Transformation: show message if not applied on single frame

* Use FieldValidationMessage component instead

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2021-07-06 16:41:28 +02:00
Josh Hunt
eabf3fb674 Docs: Fix Azure Monitor refs (#36458)
* Docs: Fix Azure Monitor refs

* more fixes

Co-authored-by: Robby Milo <robbymilo@gmail.com>
2021-07-06 10:27:32 -04:00
Alex Shpak
b5cdf5fdd8 Respect hour12 settings when formatting local date (#33679)
* Respect hour12 settings when formatting local date
2021-07-06 13:09:19 +01:00
Ashley Harrison
cc4d301d50 Annotations: Add typeahead support for tags in builtin annotations (#36377)
* Annotations: create React component, naive attempt at hooking together

* Annotations: Use query object instead of passing annotation

* Annotations: Hook up the new api to get annotation tags

* Annotations: Use InlineFieldRow instead of gf-form-inline

* Annotations: Use InlineSwitch instead of gf-form-switch

* TagFilter: Add support for allowCustomValue

* Annotations: Update to match backend api

* Annotations: Add basic tests, expose inputId on `TagFilter`

* Annotations: Fix test name and reorder tests slightly

* Annotations: Use FieldSet instead of gf-form-group

* Refactor: fixes annotation queries

* Annotations: Everything working, just types to fix...

* Annotations: Fix types?

* Revert "Annotations: Fix types?"

This reverts commit 6df0cae0c9.

* Annotations: Fix types again?

* Annotations: Remove old angular code

* Annotations: Fix unit tests for AnnotationQueryEditor

* Annotations: Check if it's an annotation query immediately

* Annotations: Prevent TagFilter overflowing container when there are a large number of tags

* Change to new form styles

* Annotations: Add id's + fix unit tests

* Updated wording

* Annotations: Allow custom value to preserve being able to use template variables

Co-authored-by: Hugo Häggmark <hugo.haggmark@gmail.com>
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2021-07-06 10:50:46 +01:00
Ashley Harrison
96a3cc3cd8 TooltipPlugin: Prevent Tooltip render if field is undefined (#36260)
* Tooltip Plugin: Prevent tooltip render if focusedSeriesIdx is out of range

* TooltipPlugin: Also prevent render in multi case

* TooltipPlugin: Return null if field is undefined
2021-07-06 10:48:10 +01:00
Josh Hunt
2a4191a2ee AzureMonitor: Fix issue where resource group name is missing on the resource picker button (#36400)
* AzureMonitor: Fix issue where resource group name is missing in the UI

* fix
2021-07-06 11:22:47 +02:00
Dimitris Sotirakis
a18d3007a7 Folders: Return 409 Conflict status when folder already exists (#36429)
* Return 409 Conflict when trying to post folder that already exists

* Fix tests

* Update documentation for new error message in folders api
2021-07-06 11:11:29 +02:00
Josh Hunt
227c11d37f Grafana-Toolkit: Improve error messages when tasks fail (#36381) 2021-07-06 10:07:17 +01:00
fabio-silva
d87e086d6f Dashboard: avoid and correct invalid date ranges (i.e. to < from) (#34543)
* Dashboard: invert invalid date ranges from URL

* Dashboard: discard invalid date ranges from inputs

* Dashboard: move time range reset

* Dashboard: simplify undefined dashboard verification

* Dashboard: show form error on invalid date range

* Dashboard: rename function to isRangeInvalid

* Dashboard: refactor invalid check functions

* Dashboard: different error messages for date picker

* Dashboard: add date tests to TimeRangeForm
2021-07-06 10:46:17 +02:00
Ivana Huckova
b77f6d59bd Loki: Add support for ad-hoc filtering in dashboard (#36393)
* Add support for ad-hoc filtering in dashboards

* Add tests

* Add documentation

* Update docs/sources/variables/variable-types/add-ad-hoc-filters.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Remove unused import

* Refactor and simplify

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-07-06 10:30:27 +02:00
Ivana Huckova
666656c925 Loki: Add $__range variable (#36175)
* Add  variable to Loki

* Add tests

* Update, remove redundant options

* Add missing import

* Update docs/sources/datasources/loki.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/loki.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-07-06 08:56:01 +02:00
Ryan McKinley
3a6ec01c05 Dashboards: load dashboards from a data source (#36366) 2021-07-05 15:35:10 -07:00
Richard Hartmann
4632b070e4 Put vendored code under their upstream licenses explicitly (#36442)
Signed-off-by: Richard Hartmann <richih@richih.org>
2021-07-05 21:33:01 +02:00
Zoltán Bedi
0ae8a85828 CloudwatchLogs: send error down to client (#36277)
* CloudwatchLogs: send error down to client

* Move error handling down to startLiveQuery
2021-07-05 16:12:58 +02:00
Tharun Rajendran
f62bc59688 DataSource: change status code to 404 if datasource and plugin is not found (#36426)
Fixes #36418
2021-07-05 14:46:34 +02:00
Torkel Ödegaard
4932b9dfa4 DateFormats: Fix reading correct setting key for use_browser_locale (#36428) 2021-07-05 14:45:36 +02:00
Sergey Kostrukov
89ba607382 AzureMonitor: strongly-typed AzureCredentials and correct resolution of auth type and cloud (#36284) 2021-07-05 12:20:12 +02:00
Will Browne
719e78f333 bump version (#36430) 2021-07-05 12:19:10 +02:00
Andres Martinez Gotor
759f9c44cb Add a button to clear Azure Monitor Logs credentials (#36256) 2021-07-05 11:12:56 +02:00
Tharun Rajendran
1ab452e88a API: Fix 404 status code plugin pages (#36402) 2021-07-05 10:24:14 +02:00
Uchechukwu Obasi
808b9a3126 Grafana-ui: disables storybook controls that are irrelevant (#35250)
* Grafana-ui: disables storybook controls that are irrelevant

* excluded unused control in Select story

* made timeRange control visisble in GraphNG story
2021-07-05 10:17:39 +02:00
Dominik Prokop
7ae656ff16 TimeSeries: Do not show series in tooltip if it's hidden in the viz (#36353) 2021-07-05 10:15:34 +02:00
Sofia Papagiannaki
8a3edf280e Alerting: Fix prometheus API to check folder permissions (#36301) 2021-07-05 10:49:14 +03:00
Armand Grillet
7fb233cfb1 Theme: Add margin-bottom to .markdown-html tables (#36415) 2021-07-05 08:40:56 +02:00
Edgar Poce
7fd2ddfdb4 Transformations: skip merge when not enough dataframes (#36407) 2021-07-05 08:40:02 +02:00
Ikko Ashimine
b13101fd00 Monaco: fix typo in types.ts (#36412)
guarentee -> guarantee
2021-07-04 15:58:33 -07:00
Alexander Emelin
354789edc9 update option description to only commit to wildcard symbol for now (#36341)
(cherry picked from commit 012ee1fc28)
2021-07-03 00:46:48 +03:00
MeetzhDing
63715dcdef fix: #36322 HistoryWrapper constructor history param not work (#36367) 2021-07-02 17:19:58 +01:00
Marcus Efraimsson
b26b922658 Contribute: Ongoing refactoring of context.Context everywhere (#36363) 2021-07-02 17:07:21 +02:00
Josh Hunt
ca5379d64d AzureMonitor: Refresh documentation (#35371)
* AzureMonitor: Refresh documentation

* logs/kusto

* finish up logs

* variables for log analytics

* Apply suggestions from code review

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* finish up main topics

* finish docs?

* typos and other review comments

* add link to sample arg queries

* split up azure docs

* workaround weird code duplication issue

* Update docs/sources/datasources/azuremonitor/template-variables.md

Co-authored-by: Sarah Zinger <sarahzinger@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* feedback

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
Co-authored-by: Sarah Zinger <sarahzinger@users.noreply.github.com>
2021-07-02 15:56:20 +01:00
Leonard Gram
09a96ad2ad Azure OAuth: debug logs for user information (#36389) 2021-07-02 16:24:33 +02:00
Ivana Huckova
09e49f6118 Docs: Improve title and documentation for share shortened link in Explore (#36380)
* Improve title and documentation for share shortened link in Explore

* Update docs/sources/explore/_index.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-07-02 16:14:55 +02:00
Ivana Huckova
0ca6fdd310 Docs: Add $__rate_interval variable to global variables (#36378)
* Add  variable documentation to global variables

* Update docs/sources/variables/variable-types/global-variables.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-07-02 16:14:41 +02:00
Karl Persson
2fd7031102 Access Control: Add fine-grained access control to explore (#35883)
* add fixed role for datasource read operations

* Add action for datasource explore

* add authorize middleware to explore index route

* add fgac support for explore navlink

* update hasAccessToExplore to check if accesscontrol is enable and evalute action if it is

* add getExploreRoles to evalute roles based onaccesscontrol, viewersCanEdit and default

* create function to evaluate permissions or using fallback if accesscontrol is disabled

* change hasAccess to prop and derive the value in mapStateToProps

* add test case to ensure buttons is not rendered when user does not have access

* Only hide return with changes button

* remove internal links if user does not have access to explorer

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2021-07-02 14:43:12 +02:00
Selene
ef05596e07 Allow white labeling loading logo (#36174)
* Allow to whitelabeling loading logo

* Add loading_logo to documentation

* Change loading_logo to loading_logo_url
2021-07-02 14:17:10 +02:00
ying-jeanne
54acb18c5f migrate away from goconvey (#36203) 2021-07-02 19:22:47 +08:00
Torkel Ödegaard
09fed51be5 Snapshots: Fixex snapshots absolute time range issue (#36350) 2021-07-02 13:05:11 +02:00
Hugo Häggmark
b741245960 DashboardQueryRunner: Fixes unrestrained subscriptions being created (#36371) 2021-07-02 10:52:13 +02:00
Andres Martinez Gotor
30dc4025c2 Remove AWS CW client cache (#36311) 2021-07-02 10:13:23 +02:00
Ward Bekker
b255f3db3f Team Sync: Add group mapping to support team sync in the Generic OAuth provider (#36307)
Added group mapping to support team sync in the Generic OAuth provider.

Co-authored-by: Leonard Gram <leo@xlson.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
Co-authored-by: Dan Cech <dan@aussiedan.com>
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2021-07-01 22:40:46 +02:00
Jack Westbrook
d2f18f8b7d chore: update latest.json to 8.0.4 (#36357) 2021-07-01 16:33:48 +02:00
Tharun Rajendran
36592e0927 Chore: Add tests for ChangePasswordPage and SendResetMailPage (#36313)
* added tests for changePassword and forgotPassword  component

* added tests for ChangePassword screen in user profile section

* addressed review changes
2021-07-01 17:01:09 +03:00
Grot (@grafanabot)
3cce67c044 ReleaseNotes: Updated changelog and release notes for 8.0.4 (#36347)
* ReleaseNotes: Updated changelog and release notes for 8.0.4

* Update _index.md

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
2021-07-01 15:59:46 +02:00
Sofia Papagiannaki
d525a5a469 Docs: Add security warning about using Grafana 8 alerts with multiple organisations (#36308)
* Docs: Add security warning about using Grafana 8 alerts with multiple orgs
2021-07-01 16:29:35 +03:00
Olof Bourghardt
16f7e61639 Prometheus: use TimeSeries instead of Graph in Prometheus 2.0 Stats dashboards (#36120)
* changed panels to TimeSeries

* Change panels to time series in Prometheus Stats dashboards

* Change Grafana metrics panels to time series

* Change name of datasource
2021-07-01 14:08:42 +02:00
Ivana Huckova
742c737784 Logs panel: Add option to show common labels (#36166)
* Add common labels to Logs panel

* Clean up and add tests

* Update documentation

* Update public/app/plugins/panel/logs/LogsPanel.tsx

Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>

* Fix type error

Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
2021-07-01 14:06:58 +02:00
Torkel Ödegaard
f152180dc3 TimeSeries: Fixes x-axis time format when tick increment is larger than a year (#36335)
* TimeSeries: Fixes x-axis time format when tick increment is larger than a year

* removed modal change

* removed modal change
2021-07-01 13:39:30 +02:00
dreamChenp12
379ed0a6f7 Docs: Update bar-gauge-panel.md (#36250)
may be a mistake here?
2021-07-01 03:38:41 -07:00
Marcus Andersson
c9e28044f1 Alerting: view to display alert rule and its underlying data. (#35546)
* add page and basic things

* quick annotations

* added so we can run queries on the view rule page.

* wip.

* merge

* cleaned up the combined rule hook.

* readd queries

* fixing so you can run queries.

* renamed variable.

* fix rerenders and visualizing

* minor fixes.

* work in progress.

* wip

* a working version that can be tested.

* changing check if we have data.

* removed unused styling.

* removed unused dep.

* removed another dep.

* Update public/app/features/alerting/unified/hooks/useCombinedRule.ts

Co-authored-by: Domas <domas.lapinskas@grafana.com>

* Update public/app/features/alerting/unified/hooks/useCombinedRule.ts

Co-authored-by: Domas <domas.lapinskas@grafana.com>

* refactored and changed UI according to figma.

* resseting menu item.

* removing unused external link.

* refactor according to feedback.

* changed so we always fetch the rule.

* fixing so datasource only is displayed once. Also changed so we only navigate to alert list when rule has been deleted.

* removed unused dep.

* Will display query as json if we can't find data source.

* changed to a function instead of the React.FC.

* refactoring of id generation and added support to generate ids for native prometheus alerts without ruler.

* set max width on page content

* added page where you can easily link to a rule in grafana.

* listing rules with same name.

* fixing error cases.

* updates after pr feedback

* more pr feedback

* use 1h-now as timerange

* remove unused import

* start on test

* add test for cloud case

* add ruleview render test

* add render tests for grafana and cloud alerts

* add mock for backendsrv

* add rendering test for the find route

* check if cards are rendered

Co-authored-by: Peter Holmberg <peter.hlmbrg@gmail.com>
Co-authored-by: Domas <domas.lapinskas@grafana.com>
2021-07-01 12:02:41 +02:00
Dimitris Sotirakis
084c9c8746 Dashboards: Add IsFolder field into models.GetDashboardQuery (#36214)
* Add IsFolder field into models.GetDashboardQuery

* Reverted folderId - return dummy success when calling get folder with id 0

* Moved condition to upper level - add test
2021-07-01 11:40:38 +03:00
Tharun Rajendran
738a3a2d89 VariableSettings: fix tool-tip hyperlink color (#36140)
* VariableSettings: fix tool-tip hyperlink color

Fixes #36122

* move inline css styles for anchor tag in Tooltip to Tooltip component styles
2021-07-01 10:24:04 +02:00
Hugo Häggmark
44c48ecebb Chore: Replace util.DynMap with structs (#36332)
* Chore: Replace util.DynMap

* Chore: added comments
2021-07-01 10:23:33 +02:00
Jack Westbrook
4434eeaf59 Profile: Fix failing FE reducer test (#36331) 2021-07-01 09:58:49 +02:00
Torkel Ödegaard
1caaa784d9 Legend: Updates display name for Last (not null) to just Last* (#35633)
* Legend: Updates display name for Last (not null) to just Last*

* added description

* Removed the asterix

* Added back * suffix
2021-07-01 09:43:40 +02:00
Alexander Emelin
483418dbb0 live: add allowed_origins option (#36318) 2021-07-01 09:30:09 +03:00
Leon Sorokin
b8010ba9f5 Web compat: polyfill MediaQueryList.addEventListener() for Safari < 14 (#36274) 2021-06-30 21:36:03 -05:00
Zoltán Bedi
8aeb1cc030 Prometheus: Fix performance issue in editor when too many ids (#36176) 2021-06-30 21:28:18 +02:00
Tharun Rajendran
3b4916853c chore: Signup Page Component tests (#36279)
* added tests for SignupPage component

* added tests for VerifyEmailPage component

* addressed review changes

* removed id for button and followed consistent id naming pattern
2021-06-30 17:11:27 +02:00
Alex Khomenko
1ab4ffb03d Fix Graph story (#36259) 2021-06-30 17:08:34 +03:00
idafurjes
7231eba6a5 Chore: Refactor OpenTSDB using backend SDK (#35815)
* Refactor OpenTSDB using backend SDK

* Adjust tests to the SDK refactor

* Remove openTSDB from service

* Rename OpenTASDB service to Service, use AuthPassword from DecryptedSecureJson

* Devenv: Add opentsdb v2.3 data source and dashboard

* Letting http client provider to set basic auth,
renaming,
casting datasource direclty to pointer

* Update pkg/tsdb/opentsdb/opentsdb.go

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* Update pkg/tsdb/opentsdb/opentsdb.go

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* Format struct

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2021-06-30 15:58:44 +02:00
Torkel Ödegaard
a690d0f803 FilterPill: Wip updated design & storybook (#35616)
* FilterPill: Wip updated design & storybook

* Added hover states

* Fixes
2021-06-30 15:25:59 +02:00
Tharun Rajendran
9f3e84b16c Routes: Redirect signup user and verify email if settings is disabled (#36303)
Fixes #31635
2021-06-30 13:56:09 +02:00
Hugo Häggmark
63f9231de1 Annotations: Adds tags endpoint (#36199)
* Annotations: Adds tags endpoint

* Chore: fixes sql  statement

* Refactor: adds count to the api

* Chore: changes after PR comments

* Refactor: changes after PR comments
2021-06-30 13:42:54 +02:00
Giordano Ricci
1490c255f1 Elasticsearch: Persist custom value for size option in Terms Bucket Agg (#36194)
* Add custom hook to handle creatable select options

* Refactor Terms Settings Editor

* Make props of Bucket Aggregation settings editors consistent

* Rename hook to something more descriptive

* Move render test helper

* Add tests

* small refactor

* Remove useless test
2021-06-30 11:20:28 +02:00
Torkel Ödegaard
6f38883583 Graph: Workaround for DashboardQueryRunner race condition (#36254)
* Graph: Workaround for DashboardQueryRunner race condition

* Removed deepClone
2021-06-30 10:36:05 +02:00
Leon Sorokin
f9fb5ba637 TimeSeries: Bring back axis label padding (#36281)
* TimeSeries: bring back some axis label padding

* Update snaps

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2021-06-30 10:02:56 +02:00
Simon Podlipsky
9dc3c7cc69 Update DashboardGrid.tsx (#36246) 2021-06-30 09:06:17 +02:00
Hugo Häggmark
3999d670cf Chore: adds buffersize to ReplaySubject (#36286) 2021-06-30 09:05:04 +02:00
Ivana Huckova
abb1c10776 Update getTimeRangeParams to return start & end instead of from & to (#36268) 2021-06-29 18:06:42 +02:00
Tharun Rajendran
c3e26657e9 LoginPage: add tests (#36226)
* added tests for LoginPage component

* addressed review changes and removed snapshot
2021-06-29 17:08:50 +03:00
Dawnpool
603d1cddb8 Update _index.md (#36248)
Spelling error on line 18.
aerts -> alerts
2021-06-29 09:52:04 -04:00
Diana Payton
c037de15a9 Docs: Update _index.md (#36237) 2021-06-29 09:27:16 -04:00
gotjosh
91751d7e38 [Alerting] Update documentation with regards to clustering (#36261)
* [Alerting] Update documentation with regards to clustering

* 8.1 not 8.2
2021-06-29 07:17:02 -04:00
Giordano Ricci
0a2a6690d9 Elasticsearch: Allow case sensitive custom options in date_histogram interval (#36168)
* Elasticsearch: make interval select handle case-sensitive input

* Elasticsearch: Allow case sensitive custom options in date_histogram interval

* asd is not a good input id
2021-06-29 09:51:05 +01:00
Andres Martinez Gotor
a4368790d5 AzureMonitor: Add an error message if a request failed with deprecated creds (#36136) 2021-06-29 10:39:28 +02:00
Jack Westbrook
90894a3474 CI: Depend on frontend build before triggering frontend metrics (#36253)
* ci(frontend-metrics): depend on build-frontend step to pass before publishing metrics

* ci(frontend-metrics): move frontend-metrics step so build-frontend occurs first
2021-06-29 10:29:34 +02:00
Sergey Kostrukov
52e38c54e5 AzureMonitor: token provider into aztokenprovider and cleanup (#36102) 2021-06-29 10:05:42 +02:00
Serge Zaitsev
93cd375ada remove GO111MODULE (#36235) 2021-06-29 10:01:21 +02:00
Jack Westbrook
24aaeb58dc CI: Add dependency metrics (#35722)
* ci(frontend-metrics): introduce outdated and vulnerable dependency commands

* ci(frontend-metrics): get total built bundle size in kb

* ci(frontend-metrics): print total bundle folder size

* chore: fix spelling

* ci(frontend-metrics): easily count the total for vulnerabilities

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>

* chore(frontend-metrics): fix for shellcheck to pass

* fix(frontend-metrics): capture each line of vulnerability audit output

* ci(frontend-metrics): fix commas in metrics output

* ci(frontend-metrics): call node modules directly as yarn returns exit code 2 in linux

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
2021-06-29 09:29:26 +02:00
Dawnpool
228372522b Update whats-new-in-v8-0.md (#36249)
Double periods to a single period
2021-06-29 09:14:16 +02:00
Ryan McKinley
ab2f6fe24c Live: attach stream info to streaming frames (#35465) 2021-06-28 14:57:10 -07:00
Ryan McKinley
b361921bb2 Live: support tempate variables in query (#36193) 2021-06-28 22:27:03 +02:00
Ryan McKinley
429e2d0ab2 StreamingDataFrame: skip empty labels (#36047) 2021-06-28 13:00:32 -07:00
Gabriel MABILLE
d42d874240 AccessControl: Fix docs link to localhost (#36233)
* AccessControl Correct link to localhost

* Removed extra parenthesis in relref definition
2021-06-28 21:11:09 +02:00
achatterjee-grafana
cdc780e9c6 Added note about location of the default home dashboard. (#36231) 2021-06-28 14:41:30 -04:00
Avneep Dhanju
32aa162d7c AzureMonitor: Add curated dashboards for Azure services (#35356)
* AzureMonitor: Curated dashboards.

* Adding ADX insights and minor fixes.
2021-06-28 17:55:26 +01:00
Ivana Huckova
c66a2a9b66 Update GOVERNANCE.md (#36223) 2021-06-28 17:55:25 +02:00
achatterjee-grafana
258b3b7078 Doc: Updated broken relrefs to "Value mappings in topic "State timeline". (#36225)
* Updated broken relrefs and adjusted some weights.

* Fixed. There was some issue with ", rendering OK in local build.
2021-06-28 17:27:21 +02:00
Ivana Huckova
a721dd42b3 Explore: Fix import of queries between SQL data sources (#36210)
* Remove datasource property when importing same ds type queries

* Refactor imported queries

* Update public/app/features/explore/state/query.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2021-06-28 16:12:46 +02:00
Marcus Efraimsson
250e9568dc Add Erik Sundell to the Grafana team (#36218) 2021-06-28 15:08:31 +02:00
Marcus Efraimsson
947c62b49b Add Will Browne to the Grafana team (#36216) 2021-06-28 15:08:16 +02:00
Sarah Zinger
493d35ccc6 Azure monitor: ensure that time column has a name (#36144)
Fixes bug when switching from Timeseries to Table view when viewing Azure Monitor Metrics Data.
2021-06-28 08:28:56 -04:00
Ester Martí Vilaseca
81a79aef23 Elasticsearch: add rate aggregation (#33311)
* Elasticsearch: add first version of rate aggregation

* Add test for rate aggreation settings editor

* Fix unit

* Add default value for mode for rate agg

* Add todo

* Revert "Add default value for mode for rate agg"

This reverts commit a44c985d8b.

* Fix width when select is empty

* Add rate aggregation to elasticsearch models

* Remove rate aggregation from extended stats

* Move elastic2 docker block & add elastic (latest)

* Add versionRange to rate aggregation

* add 7.10 elasticsearch version option

* Set supportsInlineScript to true for rate aggregation

* Remove fixed width from select

* Change seconds label for rate aggregation unit options dropdown

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>

Co-authored-by: Elfo404 <me@giordanoricci.com>
Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
2021-06-28 11:55:31 +01:00
Piotr Jamróz
faf25bc4ea Graphite: Interpolate Graphite alerts with tags (#35887) 2021-06-27 23:58:50 +02:00
Ryan McKinley
035eec1502 Testdata: use UTC time and circle alcatraz for streaming flight sample 2021-06-27 10:17:01 -07:00
Giordano Ricci
a97259f07d Elasticsearch: Name fields after template variables values instead of their name (#36035)
This reverts commit 185bf8f9a2.
2021-06-26 18:37:44 +01:00
Matt Abrams
e6e7ba209c fix broken link to play (#36148)
closes https://github.com/grafana/grafana/issues/36103
2021-06-25 14:19:18 -04:00
Dave Henderson
3ba97ee4ef Docs: Document caching defaults in enterprise config (#36181)
* Docs: Document caching defaults in enterprise config

Signed-off-by: Dave Henderson <dave.henderson@grafana.com>

* adding missed period

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* more missed periods!

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2021-06-25 20:06:01 +02:00
achatterjee-grafana
3332e02a5f Added note that anonymous access permission is no longer available. (#36142) 2021-06-25 15:46:26 +02:00
Giordano Ricci
58bbe17d84 Grafana-UI: allow custom validity checks for creatable selects (#36118)
* add actions handling to Select in storybook

* Grafana-UI: allow custom validity checks for creatable selects
2021-06-25 11:05:36 +01:00
Ashley Harrison
b8b90ec74f TimeSeries: Preserve RegExp series overrides when transforming from old graph (#36134) 2021-06-25 09:50:08 +01:00
Dimitris Sotirakis
4f3bc71caa Chore: Update tests to prevent test-backend step from failing the pipeline (#36155)
* Chore: Update flight-simple-X.txt

* Fix api_notification_channel_test.go failing test
2021-06-25 10:32:01 +02:00
Ganesh Vernekar
8fe58fc2e3 Alerting: Add additional newlines to Microsoft Teams notification message where necessary (#36126)
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-06-24 20:52:00 +05:30
Ganesh Vernekar
f2bb3faea8 Alerting: Add integration test case for email channel (#36029)
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-06-24 20:31:29 +05:30
Ben Bodenmiller
4f84a09286 Docs: Add note about time series replacing graph vis (#36101) 2021-06-24 07:57:55 -07:00
Piotr Jamróz
dcfe78f23b Explore: Fix unexpected error when loading Explore 2021-06-24 16:16:23 +02:00
Will Browne
ea8aee0432 add note about HA limitation (#36112) 2021-06-24 10:16:07 -04:00
Matt Abrams
6b0c75cfd6 put environmental variable in inline code (#36100)
this puts the code in question in the same style as the other environmental variables on the page
2021-06-24 09:36:26 -04:00
kay delaney
aae3b76d84 Chore: Upgrade typescript to version 4.3.4, storybook to 6.3.0 (#35374)
* Chore: Upgrade typescript to version 4.3.4, storybook to 6.3.0
2021-06-24 15:29:03 +02:00
Tobias Skarhed
4be9afb7e2 Signup: Add verify email route (#36113) 2021-06-24 13:07:14 +02:00
Ivana Huckova
d1df0727e7 Loki: Fix highlight of logs when using filter expressions with backticks (#36024)
* Add highlight for backticks and queries with parser

* Fix escaping for backticks and quotes
2021-06-24 12:55:25 +02:00
Alexander Emelin
98893c0420 Live: experimental HA with Redis (#34851) 2021-06-24 11:07:09 +03:00
Torkel Ödegaard
437faa72a9 Chore: Remove console log (#36083)
* Chore: Remove console log

* Updated
2021-06-24 09:23:03 +02:00
Kyle Brandt
19f764739b Alerting: Change __value__ label to __value_string__ annotation and add ValueString variable in notifications (#36032)
* Alerting: Allow __value__ label in notifications
was being removed by removePrivateItems
discoverd in #36020, but issue is not about that specifically

* __value__ label to __value_string__ annotation
and .ValueString extended property for notifications
2021-06-24 12:45:49 +05:30
Olof Bourghardt
fa46c877a9 Explore: refactor redux-connected components (#36027)
* Remove some props since they are already inferred from mapStateToProps

* Remove empty interface

* Refactor TableContainer component

* Did some small re-namings
2021-06-24 08:21:19 +02:00
Jan Steinke
e91f12bde3 fix typo in template (#36082) 2021-06-23 18:58:35 +02:00
Alexander Emelin
5bbf45592e Live: rely on app url for origin check (#35983) 2021-06-23 19:51:03 +03:00
achatterjee-grafana
5da8f3e258 Updated content to specify method to use to get keyboard shortcuts wh… (#36084)
* Updated content to specify method to use to get keyboard shortcuts when user is on Windows.

* Added changes from doc review.
2021-06-23 18:36:53 +02:00
Domas
d480bbf262 Alerting: for cortex am, load default config from status if theres no user config (#35769) 2021-06-23 09:32:42 -07:00
Ashley Harrison
15171ffa3b PieChart: sort legend descending, update placeholder to show default field display values limit (#36062) 2021-06-23 15:32:37 +01:00
Domas
d427b57c0e Docs: document cortex/loki data source caveats for alerting (#36074)
* Document cortex/loki datasource caveats

* Update docs/sources/alerting/unified-alerting/alerting-rules/create-cortex-loki-managed-rule.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/alerting/unified-alerting/alerting-rules/create-cortex-loki-managed-rule.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-06-23 16:08:56 +02:00
Grot (@grafanabot)
49a64f8d44 ReleaseNotes: Updated changelog and release notes for 7.5.9 (#36057)
* ReleaseNotes: Updated changelog and release notes for 7.5.9

* Add link to notes

* Apply suggestions from code review

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

Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com>
Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-06-23 15:32:13 +02:00
Dan Fairburn
b9582ea93d Dashboard: Allow more than 26 queries per panel. (#35442)
* Dashboard: Allow more than 26 queries per panel.

Fixes #4978

* Chore: Remove underscores from helper function names

Co-authored-by: Danyal Fairburn <danyal.fairburn@bt.com>
2021-06-23 15:23:02 +02:00
Agnès Toulet
db81e55512 Dashboard: fix SoloPanelPage (#36060) 2021-06-23 15:13:25 +02:00
kay delaney
f5bd325354 A11y: Add focus styles to dashboard toolbar links (#35895) 2021-06-23 12:03:44 +01:00
shuotli
83860bdcc3 AzureMonitor: Add cloud specific deep linking (#35784) 2021-06-23 10:26:09 +02:00
Gábor Farkas
ec9dbdd93c influxdb: influxql: fix retention-policy handling (#36022) 2021-06-23 09:53:53 +02:00
Gábor Farkas
31aaf94e91 devenv: updated influxdb1 version (#36031) 2021-06-23 08:35:13 +02:00
Domas
e5f6ab7fd2 Alerting: make rule list page work on mobile (#35991) 2021-06-23 09:27:47 +03:00
Christopher Lord
8660d0692e CLI: Add option to skip tests and linting for grafana-toolkit plugin:build (#35068)
* Add option to skip tests and linting for plugin:build

Our plugin has a separate step of CI that tests and lints, so we'd like
to be able to control whether the build step will run it too.

defaults to continuing with lint and tests.

update README for grafana-toolkit

* remove accidental duplicate documentation of coverage
2021-06-23 08:09:23 +02:00
Ryan McKinley
8ad9834019 TestData: add simple scenario with GPS and altitude coordinates (#36011) 2021-06-22 14:19:29 -07:00
Torkel Ödegaard
f0cac149da DashboardGrid: Refactorings and performance improvements (#35942)
* add back only re-render dashboard first time on layout change

* remove panel refs

* Updates

* Improved is in view logic

* Updates

* Remove unnessary auto sizer

* Found another approach that works with resize as well

* Updates

* fixing test

* Fixing ref issues

* Fixed mobile size handling, and view panel handling, removed now unnessary logic

* Updated snapshot
2021-06-22 14:44:18 +02:00
Josh Hunt
fcb4e5a211 Grafana-UI: Remove references to old monaco libraries (#35557) 2021-06-22 11:52:08 +01:00
Olof Bourghardt
1f5128da80 Explore: props automatically inferred from mapStateToProps and mapDispatchToProps (#35885)
* Explore: props automatically inferred from mapStateToProps

* Remove props that that wasn't removed in last commit

* Remove unused imports

* Add correct properties to test function

* Remove final props from ExploreProps
2021-06-22 11:43:13 +02:00
Ganesh Vernekar
9a5c1f06df Alerting: Template all possible variables in notification channels (#35749)
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-06-22 15:12:54 +05:30
Piotr Jamróz
e94b82c833 Logs: Support implicit reset codes for ANSI coloring 2021-06-22 09:45:20 +02:00
Ryan McKinley
970481bdec Matchers: support both name and display name (#35466) 2021-06-22 09:25:21 +02:00
Hugo Häggmark
ffc18ebbcf Variables: Fix for changing readonly query property (#35992)
* Variables: Fix for changing readonly query property

* Docs: adds release

* Docs: adds release
2021-06-22 08:53:41 +02:00
Sofia Papagiannaki
91cf062d0b Alerting: fix conflicting folder and dashboard permissions during migration (#35967)
* Alerting: Fix conflicting user and team permissions

* Avoid duplicate perrmissions

* Fix lint

Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>

Co-authored-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-06-22 12:07:52 +05:30
Olof Bourghardt
cd1c7530a8 Explore: Automatically infer props from mapStateToProps (#35932)
* Explore: refactor ExploreQueryInspector.tsx to inferr props via mapStateToProps

* Explore: refactor ExploreToolbar.tsx to infere props from mapStateToProps
2021-06-22 08:24:19 +02:00
DBaldovskiy
f84a74018c Update custom-panel-option-editors.md (#36005)
Variable name fix
2021-06-21 23:11:34 +02:00
Travis Patterson
5ae3769320 Add Honeycomb plugin (#36000) 2021-06-21 12:34:33 -06:00
Ivana Huckova
44def5a5fe Loki: When parser added, filter label as parsed labels (#35610)
* Loki: When parser added, filter label as parsed labels

* Add tests
2021-06-21 18:50:42 +02:00
ying-jeanne
73fdd9dc22 [MYSQL] convert explicitely smallint and tinyint (#35897)
* [MYSQL] convert explicitely smallint and tinyint

* clean up code

* fix comments
2021-06-22 00:10:45 +08:00
Domas
bef0f797ab add duration utils docs (#35995) 2021-06-21 17:41:11 +02:00
Domas
781ab833bd Alerting: allow any "evaluate for" value >=0 in the alert rule form (#35807) 2021-06-21 15:54:42 +03:00
Tom Pickles
b05b5d5e3b AzureMonitor: Fix queries with Microsoft.NetApp/../../volumes resources (#32661)
* Extend description of existing tests (#28350)

* Tests for building MetricNamespaces URL (#28350)

* Added tests that break the URL builder (#28350)

* Arbitrary length of metric definition (#28350)

* Change var to const as requested (#32661)

* Adding tests to datasource url builder (#28350)

* Fixes to datasource url builder (#28350)

* Fixed linting issue that broke build (#28350)
2021-06-21 13:05:13 +01:00
Hugo Häggmark
45a5510978 Chore: Update strict error threshold (#35979) 2021-06-21 09:35:04 +02:00
Dominik Prokop
6f3887ca88 TimeSeries panel: Do not reinitialize plot when thresholds mode change (#35952) 2021-06-21 08:51:39 +02:00
Carl Bergquist
9ef4c21033 add context to getsignedinUser calls (#35963)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
2021-06-21 07:51:33 +02:00
Ganesh Vernekar
33d6e11175 Alerting: Decouple default template from channel tests (#35239)
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-06-21 07:59:09 +05:30
Torkel Ödegaard
9e53b44f35 FieldOverrides: Support changing display name in override and have it be matched by later rule (#35893)
* FieldOverrides: Support changing display name in override that can be matched by later rule

* Fixed test
2021-06-19 07:36:59 +02:00
Jack Westbrook
c56c1d73ed Chore: Update yarn.lock for underscore and caniusedb resolutions (#35950) 2021-06-18 16:31:35 +02:00
Torkel Ödegaard
83f62c1912 Explore: Remove nested auto sizer and pass width from main Explore component (#35919) 2021-06-18 14:21:54 +02:00
Erik Sundell
7ff26bdfae Templating: Add default ref id for data source variable queries (#35923)
* add default ref id for ds variable queries

* cleanup
2021-06-18 14:02:51 +02:00
Giordano Ricci
c51af73bf6 Update latest.json (#35941)
Update latest.json to the latest released
2021-06-18 13:50:59 +02:00
Grot (@grafanabot)
fb91302e52 ReleaseNotes: Updated changelog and release notes for 8.0.3 (#35936)
* ReleaseNotes: Updated changelog and release notes for 8.0.3

* Update _index.md

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2021-06-18 12:38:56 +02:00
Dimitris Sotirakis
0d08881876 Elasticsearch: Convert Timeseries and Tables to Dataframes (#34710)
* Rebase (broken tests)

* Removed tables - refactored processAggregationDocs func

* Tests cleanup

* Nit - add space in percentile legend titles

* Fix labels naming - use metricAggType map

* Fix bug which appended same fields over and over again

* Replace test with dataframes

* Fix tests

* Add nolint:gocyclo - will need refactoring

* Move frames tags assignment

* Add failing test fo when ES server is booting up

* Revert "Add failing test fo when ES server is booting up"

This reverts commit fd14a1fd5e.

Co-authored-by: Elfo404 <me@giordanoricci.com>
2021-06-18 13:26:19 +03:00
Torkel Ödegaard
7aaf813751 ButtonGroup: Support nested buttons within button groups (#35884)
* ButtonGroup: Support nested buttons within button groups

* removed files

* Fixes
2021-06-18 09:09:47 +02:00
Torkel Ödegaard
333932812d Dashboard: Fixes blank / empty panels after duplicate and add library panel (#35906) 2021-06-18 08:54:11 +02:00
Ryan McKinley
1d6e99bc95 SQL: Fixes issues with showing value column name prefix in legends (#35839)
* rename strategy

* Update pkg/tsdb/sqleng/sql_engine.go

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>

* more strict constraints

* Fixed so that it works on multi series results

* only apply the logic when original query returns 3 fields

* removed part of comment

* Update mysql test

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2021-06-18 08:05:23 +02:00
Torkel Ödegaard
941936cf97 LibraryPanels: Fixes crash in libray panels list when panel plugin is not found (#35907) 2021-06-18 08:03:42 +02:00
Leon Sorokin
503c3b8f66 Time series: always show single points if surrounded by nulls (#35845) 2021-06-17 15:44:26 -05:00
Torkel Ödegaard
22203fd4df Prometheus: Fixes issue where legend name was replaced with name Value in stat & gauge panels (#35863) 2021-06-17 20:59:28 +02:00
Leon Sorokin
e1e2bd545a GraphNG: more precise axis auto-sizing (#35842) 2021-06-17 13:23:03 -05:00
Leon Sorokin
9eac9aefde GraphNG: uPlot 1.6.13 (#35844) 2021-06-17 13:20:27 -05:00
David Parrott
4732f832f7 Alerting: recalculate EndsAt (#35830)
* setEndsAt

* one more test case

* add should clause to tests
2021-06-17 10:01:46 -07:00
Torkel Ödegaard
eea3ea9755 Postgres/MySQL: Fixes issue with toggle query editor mode (#35890)
* Postgres/MySQL: Fixes issue with toggle query editor mode

* PostGres/MySQL: Use $evalAsync instead of manual $digest

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-06-17 18:27:13 +02:00
Kyle Brandt
fe61d20794 Docs/SSE: Misc updates and corrections (#35882)
* Docs/SSE: Misc updates and coorections

* Update docs/sources/panels/expressions.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-06-17 16:41:41 +02:00
Sofia Papagiannaki
a42ace4d4c Docs: Link to the new alerting API spec (#35812)
* Docs: Link to the new alerting API spec

* Update docs/sources/http_api/alerting.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/http_api/alerting.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-06-17 16:10:08 +02:00
Marcus Andersson
b1286ab8d6 TimePicker: will display the correct dates when selecting range in calendar with tz. (#35829)
* fixing calendar issue.

* reset yarn.lock.

* added boilerplate for test.

* added tests to verify bugfix.
2021-06-17 15:45:06 +02:00
Jack Westbrook
0fea1cf970 PanelEdit: VisulizationPicker doesn't show if panel has an unknown panel plugin (#35831)
* feat(dashboard): introduce selector with fallback for unknown plugin

* refactor(dashboard): replace redux connect with redux hooks

* fix(dashboard): add a fallback for vizpicker when a panel plugin cannot be found

* feat(dashboard): add an icon for fallback plugins for vizpicker

* refactor(dashboard): prefer HOF selector
2021-06-17 15:18:05 +02:00
Sofia Papagiannaki
5e534d212c Alerting: Fix alert permissions migration (#35869)
* Alerting: Fix alert permissions migration

for MySQL >= 5.7 and PostgreSQL

* Do not use import struct
2021-06-17 15:49:56 +03:00
Uchechukwu Obasi
dbbcf36026 CodeEditor: refactors story from knobs to controls (#35827)
* fixes storybook crash

* CodeEditor: refactors story from knobs to controls

* refactor codeEditor to work when showLineNumbers is set to false

* fixes non functional controls in story

* fixes arg 'value' formatting

* revert monaco options config
2021-06-17 14:20:23 +02:00
George Robinson
066189588f Fix spelling mistake in docs for expressions (#35873) 2021-06-17 12:54:42 +02:00
Giordano Ricci
185bf8f9a2 Elasticsearch: Restore fields naming when using variables (#35624) 2021-06-17 11:50:00 +01:00
Uchechukwu Obasi
be5d032e8e withStoryContainer: removes addon-knobs since we've migrated to controls (#35763)
* withStoryContainer: removes addon-knobs since we've migrated to controls

* refactored withStoryContainer utility so that users can be able to resize story

* Layout: added ability to resize story (#35824)

* Layout: added ability to resize story

* removes the knobs-disable config since its already been applied globally

* FieldArray: refactors story to use controls and ability to resize story (#35820)

* FieldArray: refactors story to use controls and ability to resize story

* added much better argTypes changed story name to capital case

* updates the FieldArray.mdx with the new usage examples

* fixes incorrect naming of the args
2021-06-17 12:39:41 +02:00
Ashley Harrison
4618fd34a9 TimeSeries: ensure series overrides containing color are migrated, and migrate previous fieldConfig when changing panel type (#35676)
* migrate previous fieldConfig when changing panel type

* TimeSeries: ensure a color series override is migrated correctly

* TimeSeries: update test description to be more accurate

* TimeSeries: update snapshot
2021-06-17 11:18:36 +01:00
Josh Hunt
4cdcb3103a AzureMonitor: Fix workspace template variable queries without default workspace (#35836) 2021-06-17 10:19:27 +01:00
Andres Martinez Gotor
4ac2ed5de6 AzureMonitor: Avoid instantiating appInsights for AppInsights for gov cloud (#35772) 2021-06-17 11:14:56 +02:00
Andres Martinez Gotor
fee3582fb1 AzureMonitor: Disable inputs if the ds is readOnly (#35805) 2021-06-17 10:40:29 +02:00
Alex Khomenko
91e9ef232d Memoize SearchResults (#35851) 2021-06-17 11:19:33 +03:00
Torkel Ödegaard
5f07381796 MSSQL: Fixes issue with hidden queries still being executed (#35837) 2021-06-17 10:13:57 +02:00
Andrej Ocenas
16a0e7b6a4 LogsPanel: Fix performance drop when moving logs panel in dashboard. (#35379) 2021-06-17 09:53:26 +02:00
Vicky Lee
768c190bc0 test: fix e2e dashboard and configure panel flows for Grafana 8 (#35498)
* fix e2e flows

* trigger build

* remove aria-label
2021-06-17 08:31:43 +01:00
Josh Myers
eb7dd8e377 Dashboard: protect against missing overrides section (#35577)
* Protect against missing overrides section

We are using grafonnet-lib to generate dashboards. These dashboards do
not contain any `override` keys in `fieldConfig` by default and that is
causing this DashboardMigrator script to blow up when trying to import
the dashboards, see [1]. In Grafana v7, an empty overrides is
automatically added but using grafonnet-lib, it isn't possible to set an
empty overrides attribute e.g. [2] requires matcher/properties to be
set. Setting to null ends up giving me [3], which causes the panel to
not be displayed.

[1]
```
initDashboard.ts:137 TypeError: t.overrides is not iterable
    at v.w (DashboardMigrator.ts:960)
    at v.updateSchema (DashboardMigrator.ts:672)
    at D.updateSchema (DashboardModel.ts:993)
    at new D (DashboardModel.ts:156)
    at initDashboard.ts:134
```

[2]
https://github.com/grafana/grafonnet-lib/blob/master/grafonnet/stat_panel.libsonnet#L150-L164

[3]
```
"fieldConfig": {
   "defaults": {
      "links": [ ],
      "mappings": [ ],
      "thresholds": {
         "mode": "absolute",
         "steps": [
            {
               "color": "red",
               "value": 0
            },
            {
               "color": "orange",
               "value": 1
            },
            {
               "color": "green",
               "value": 3
            }
         ]
      },
      "unit": "none"
   },
   "overrides": [
      { }
   ]
},
```

* Update public/app/features/dashboard/state/DashboardMigrator.ts

Co-authored-by: Marcus Andersson <systemvetaren@gmail.com>
2021-06-17 08:33:36 +02:00
Stephanie Closson
16cc91bf33 Chore: update docker images -- revert to debian stable (#33044)
* update docker images -- revert to debian stable

* pinned node version
2021-06-16 12:35:18 -03:00
dependabot[bot]
b7b8081a06 Bump postcss from 7.0.35 to 7.0.36 (#35801)
Bumps [postcss](https://github.com/postcss/postcss) from 7.0.35 to 7.0.36.
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/7.0.35...7.0.36)

---
updated-dependencies:
- dependency-name: postcss
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-06-16 16:32:19 +02:00
Tobias Skarhed
a693b2eaef Table: Set width 100% if the calced width is 0 (#35802) 2021-06-16 16:17:33 +02:00
Torkel Ödegaard
cfae7d8b97 Events: Migrate old timeRangeUpdate event to new event system to get rid of console.log warning (#35767)
* Events: Migrate old timeRangeUpdate event to new event system to get rid of console.log warning

* Review feedback
2021-06-16 15:44:50 +02:00
Grot (@grafanabot)
ef59020f3d ReleaseNotes: Updated changelog and release notes for 7.5.8 (#35703)
* ReleaseNotes: Updated changelog and release notes for 7.5.8

* Add missing 7.5.8 link

* Update 7.5.8 release date

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
2021-06-16 15:34:10 +02:00
Alex Khomenko
11335d6f6a grafana/ui: Add DatePicker (#35742)
* Move DatePicker to grafana/ui

* Export the pickers

* Reuse TimePicker styles

* Fix date formatting

* Remove mockdate

* Add release tags

* Switch to input type='text'

* Move DatePicker to pickers

* Add mdx files

* Update types

* Update tests
2021-06-16 15:57:12 +03:00
Marcus Efraimsson
477d4197fb Chore: Improve save dashboard error messages (#35780)
Includes panel and dashboard id in alert
extractor errors.
Logs all non-400 dashboard errors.

Fixes #35751
2021-06-16 14:56:55 +02:00
Hugo Häggmark
866b2424ac Chore: Upgrades Cypress to 7.5.0 (#35517)
* Chore: Upgrades Cypress to 7.5.0

* updating e2e test not to use momen.

* Fix trace viewer tests

* Chore: changing to exact version and removing console.logs

* Tests: refactor to handle day diffs

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2021-06-16 14:34:56 +02:00
Peter Holmberg
407bd2d619 Alerting: Don't reset value when changing evaluator method on classic condition (#35750) 2021-06-16 14:11:36 +02:00
Ganesh Vernekar
dcd4bf1615 Alerting: Fill the empty GeneratorURL (#35740)
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-06-16 15:34:12 +05:30
Amir Ajorloo
16850630bf Chore: Improve the mobile view of the login page (#32962)
* Update the mobile view. Change login wrapper justify-content to flex-start. Make the logo and title smaller. Prevent alert-list from overflowing the screen. Increase the footer items line-height.

* Use already existed media-query and set mobile styles as default

* Update changes based on V8 changes

* Revert footer bottom spacer.
2021-06-16 10:47:12 +02:00
Ashley Harrison
b118e06b6a SideMenu: make sure the menu overlaps the border to prevent leaving hover state #35728 2021-06-16 10:23:27 +02:00
Travis Patterson
2e58ad5fd2 Fix: allow variables in nested objects (#35684)
* Fix: allow variables in nested objects

* Changes from review
2021-06-16 08:36:25 +02:00
Maria Alexandra
182b03aa8f Dashboard Settings: Fix TimeZone dropdown doesn't change the timezone (#35680)
* Use redux action to update dashboard.timezone
* Added unit test

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
2021-06-16 08:31:16 +02:00
Hugo Häggmark
7a9d8e4230 State Timeline: Fix crash when hovering over panel (#35692)
* State Timeline: Fix crash when hovering over panel

* Refactor: fixes after PR comments

* Chore: fixes infinite loop
2021-06-16 06:35:44 +02:00
Leon Sorokin
d3c1a2bf8e Time series: fix soft scale limits when all values are 0 (#35596) 2021-06-15 17:39:45 -05:00
Torkel Ödegaard
b3fcad947b TimeSeries: Reduce tick size from 10 to 4 (#35632) 2021-06-15 17:08:39 -05:00
Dominik Prokop
60f5865ee2 GraphNG: Handle infinite numbers as nulls when converting to plot array (#35638) 2021-06-15 15:00:09 -05:00
Andrea Scarpino
368637c35a doc: fix link to label and detected fields doc (#35609)
* Fix link to label and detected fields doc

* Update docs/sources/datasources/loki.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2021-06-15 14:51:09 -04:00
Sofia Papagiannaki
e5a5b8e3fe Alerting: Fix updating alert rule properties with missing/zero values (#35512)
* Fix deleting labels and annotations

* Add test

* Keep no data and error start if not provided

* Allow setting interval and for to zero during rule updates
2021-06-15 20:55:25 +03:00
Will Browne
89d8dedece Plugins: Improve wording around allow_loading_unsigned_plugins configuration (#35731)
* improve wording

* Update docs/sources/administration/configuration.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/administration/configuration.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update conf/sample.ini

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update conf/defaults.ini

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-06-15 18:53:11 +02:00
Andres Martinez Gotor
b1a839825f AzureMonitor: Remove support for different credentials for Azure Monitor Logs (#35121) 2021-06-15 18:51:06 +02:00
Sofia Papagiannaki
abe35c8c01 Alerting: Add error recovery during rule evaluations (#35450)
* Alerting: Eval recovery after query failure

* Apply suggestions from code review
2021-06-15 19:30:21 +03:00
gotjosh
f7ed35336d Alerting: Implement /status for the notification system (#33227)
* Alerting: Implement /status for the notification system

Implements the necessary plumbing to have a /status endpoint on the
notification system.

* Add API examples

* Update API specs

* Update prometheus/common dependency

Co-authored-by: Sofia Papagiannaki <sofia@grafana.com>
2021-06-15 19:14:02 +03:00
Marcus Efraimsson
283572fcbc Docs: Add upgrade/breaking note about SQL data sources and data frames (#35766)
Add upgrade/breaking note about SQL data sources and data frames.

Ref #35534

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-06-15 18:12:14 +02:00
Betula-L
7ef8136e16 Loki: Refactor label browser from GrafanaTheme to GrafanaTheme2 (#35569) 2021-06-15 17:08:13 +02:00
Sofia Papagiannaki
33bfd6fa53 Docs: Document migration of dashboard alert permissions (#35559)
* Docs: Document migration of dashbard alert permissions

* Add reference to the configuration

* Apply suggestions from code review

* Apply suggestions from code review

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-06-15 11:39:15 -03:00
Uchechukwu Obasi
597c099050 FileUpload: refactor story from knobs to control (#35760) 2021-06-15 16:37:36 +02:00
Carl Bergquist
b40e78a943 Instrumentation: add context.Context to the dashboard get flow. (#34955)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
2021-06-15 16:08:27 +02:00
Petros Kolyvas
93860a90d8 Docs change to account for a change in access (#35687)
Anonymous access is no longer available in Grafana Cloud.
2021-06-15 08:44:35 -05:00
Olof Bourghardt
41fca2e2df Log level determined from striped message (#35607) 2021-06-15 15:42:18 +02:00
Alex Khomenko
e5e93134cf grafana/ui: Do not wrap words inside RadioButton (#35654) 2021-06-15 16:27:14 +03:00
Andres Martinez Gotor
6b786e7f68 Avoid log entry if not set for debug (#35741) 2021-06-15 15:03:24 +02:00
Andrej Ocenas
9a3e3014dd CloudWatch/Logs: Fix missing response data for log queries (#35724) 2021-06-15 14:42:55 +02:00
Maria Alexandra
b774dd9b1a Dashboard: Fix changes doesn't reflect after changing panel sizes in inspect JSON and click on apply (#35276)
* Trigger DashboardPanelsChangedEvent from InspectJSONTab if the panel.gridPos changed and if the dashboard needs to re-render, if yes we will  that will update the positioning
* Minor cleanup

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2021-06-15 14:12:32 +02:00
Will Browne
adbb15a3a7 Plugins: fix test with bad symlink target (#35737) 2021-06-15 13:53:09 +02:00
Uchechukwu Obasi
f4cc709d87 PluginSignatureBadge: refactor story from knobs to control (#35662) 2021-06-15 12:40:20 +01:00
Hugo Häggmark
3395142ece Chore: Refactors flaky Frontend test (#35645)
* Chore: Refactors flaky Frontend test

* Refactor: update after PR comments
2021-06-15 13:33:24 +02:00
Will Browne
303352a89b Plugins: Ignore symlinked folders when verifying plugin signature (#34434)
* add check + test

* fix test

* add manifest

* fix linter

* add nolint

* separate err cond checks

* only collect relevant plugin files

* skip symlinks

* refactor

* add missing test files + enable scanning Chromium.app/

* remove test since case already covered

* remove unnecessary changes from before

* refactor

* remove comment
2021-06-15 11:55:47 +02:00
Uchechukwu Obasi
3900005bf1 useDelayedSwitch: refactor story from knobs to control (#35669) 2021-06-15 10:26:36 +01:00
Alexander Emelin
898c314946 Docs: Clarify data streaming with plugins documentation (#35576) 2021-06-15 10:25:52 +03:00
Domas
5b5cb94809 Fix: fix loading symbolically linked plugins (#35635) 2021-06-15 09:10:30 +03:00
Sofia Papagiannaki
c997f646cc Alerting: Fix alert migration RefID generation (#35667)
* Alerting: Fix alert migration RefID generation

if the alert has more than 26 conditions

* Remove TODO comment

* Make similar change under pkg/expr
2021-06-14 22:13:45 +03:00
Tobias Skarhed
7f882eea05 Login: Require user to not be signed in to get request password email (#35421) 2021-06-14 18:02:05 +02:00
Karl Persson
395b942134 Access Control: Add fine-grained access control to GET stats and settings handlers (#35622)
* add accesscontrol action for stats read

* use accesscontrol middleware for stats route

* add fixed role with permissions to read sever stats

* add accesscontrol action for settings read

* use accesscontrol middleware for settings route

* add fixed role with permissions to read settings

* add accesscontrol tests for AdminGetSettings and AdminGetStats

* add ability to scope settings

* add tests for AdminGetSettings
2021-06-14 17:36:48 +02:00
Andrea Scarpino
74a6e6d973 doc: fix link to Loki's doc (#35611) 2021-06-14 11:33:27 -04:00
Kyle Brandt
8a3d7b6446 Alerting: Increase alertmanager_conf column size if mysql (#35657)
fixes #35583
2021-06-14 11:02:35 -04:00
hanjm
61a718cf8d Docs: Fix Prometheus data source provisioning example about httpMethod (#35660) 2021-06-14 16:37:27 +02:00
Ivana Huckova
e399ec32d9 Update latest.json (#35658) 2021-06-14 16:23:00 +02:00
kay delaney
0f81703c35 Chore: Fix more strict typescript errors (#35514) 2021-06-14 15:13:48 +01:00
Uchechukwu Obasi
6ee2f1fe3e Add Panel: fixes No gap between rows in safari (#35570)
* Add Panel: fixes No gap between rows in safari

* removes extra margin from bottom and far right

* fixes frontend test

* make add panel actions accessible and rewrite test using RTL
2021-06-14 15:12:56 +01:00
Sofia Papagiannaki
423474325a Alerting: fix postgres migration on conflict (#35556) 2021-06-14 16:43:33 +03:00
Grot (@grafanabot)
4cb62e4292 ReleaseNotes: Updated changelog and release notes for 8.0.2 (#35615)
* ReleaseNotes: Updated changelog and release notes for 8.0.2

* Update release notes for 8.0.2

* Update CHANGELOG.md

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

* Update docs/sources/release-notes/release-notes-8-0-2.md

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

Co-authored-by: Ivana <ivana.huckova@gmail.com>
Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-06-14 14:55:25 +02:00
Domas
0439009d4f Alerting: miscellaneous alertmanager config issues, tests (#35364) 2021-06-14 15:37:28 +03:00
Ganesh Vernekar
673b03671d Docs: Fix template example for unified alerting (#35620)
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-06-14 17:38:24 +05:30
Dominik Prokop
08bc2b402b ValueMappings: Improve singlestat value mappings migration (#35578)
* Migrate singlestat value mappings to new value mappings

* Update public/app/features/dashboard/state/DashboardMigrator.ts

* Update migration to produce single value map
2021-06-14 13:47:34 +02:00
Torkel Ödegaard
7599ab8217 PanelEdit: Always have bottom border to make sections easier to see when expanded (#35565) 2021-06-14 12:41:09 +02:00
Torkel Ödegaard
75ff02a9fb Annotations: Fix annotation line and marker colors (#35608) 2021-06-14 11:36:33 +02:00
Olof Bourghardt
1974bbb873 Graphite: Change font-family for query editor to monospace (#35515)
* Changed font-family to monospace

Added an inline style attribute to the input field for the graphite query editor which changes the font-family to monospace

* Change graphite query editor font-family to monospace

Added an inline style attribute to the input field for the graphite query editor which changes the font-family to monospace
2021-06-14 09:23:47 +02:00
Hugo Häggmark
d94817146e Variables: Hides default data source if missing from regex (#35561) 2021-06-14 06:06:34 +02:00
Ryan McKinley
056e17216e Stat: improve color mode migration from singlestat panels (#35538) 2021-06-11 18:03:30 +02:00
Torkel Ödegaard
4907d09ffe Snapshots: Remove dashboard links from snapshots (#35567) 2021-06-11 17:42:42 +02:00
Torkel Ödegaard
a328afd631 PieChart: Fixes legend dimension limits (#35563)
* PieChart: Fixes legend size limits

* Fixing table legend

* remove legend
2021-06-11 17:42:07 +02:00
Torkel Ödegaard
f884381a68 Theme: Change white base in dark theme (#35564)
* Theme: Change white base in dark theme

* Updated

* Updated snapshots
2021-06-11 17:33:56 +02:00
Ashley Harrison
60f79a3548 Dashboard: handle the case where refresh_intervals could be null (#35511)
* handle the case where refresh_intervals === null + add unit test

* have a clean _dashboard for each test

* modify check to see if refresh_intervals is an array
2021-06-11 16:20:18 +01:00
Andres Martinez Gotor
7109285ac9 AzureMonitor: Use auth middleware for QueryData requests (#35343) 2021-06-11 17:02:24 +02:00
Karl Persson
36c997a625 Access Control: Add fine-grained access control to ldap handlers (#35525)
* Add new accesscontrol action for ldap config reload

* Update ldapAdminEditRole with new ldap config reload permission

* wrap /ldap/reload with accesscontrol authorize middleware

* document new action and update fixed:ldap:admin:edit with said action

* add fake accesscontrol implementation for tests

* Add accesscontrol tests for ldap handlers

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-06-11 15:58:18 +02:00
Betula-L
6707b61434 elasticsearch plugin: Migrate from GrafanaTheme to GrafanaTheme2 (#35336) 2021-06-11 15:06:24 +02:00
Betula-L
51214ac3da Promethus: Migrate from GrafanaTheme to GrafanaTheme2 (#35331) 2021-06-11 15:03:58 +02:00
Marcus Efraimsson
0611207f3b Postgres/MySQL/MSSQL: Fix concurrent map writes panic (#35510)
Fixes panic/fatal error concurrent map writes in SQL data sources when multiple 
queries are executed concurrently and you interpolate SQL query before executing it.

Fixes #35469
2021-06-11 14:56:29 +02:00
Javier Palomo
6531424c72 Datasource: Add support for max_conns_per_host in dataproxy settings (#35520)
Allow configuring dataproxy.max_conns_per_host for HTTP data sources.

Ref #35519
Ref #35257
2021-06-11 14:18:08 +02:00
Gabriel MABILLE
e75c6a748b Access-Control: Document changes to the provisioner (#35548) 2021-06-11 13:57:49 +02:00
Oscar Kilhed
38734366d1 TimeSeries: Fix fill below for dataframes with name (#35453)
Use original dataframes for matching config.
2021-06-11 13:49:26 +02:00
Sofia Papagiannaki
aa8e09d383 Revert "Test datasource: Returns always float values (#34986)" (#35316)
This reverts commit 51afde34bd.
2021-06-11 14:12:11 +03:00
Hugo Häggmark
1838e6b774 Configuration: Fix changing org preferences on FireFox (#35549) 2021-06-11 11:49:40 +02:00
Alex Khomenko
8e827337ea Search: runAllTimers => runOnlyPendingTimers (#35509) 2021-06-11 12:45:18 +03:00
Ivana Huckova
97a59a4855 Loki: Add support for "label_values(log stream selector, label)" in templating (#35488)
* Use series endpoint if we have queries expr

* Update documentation
2021-06-11 10:57:40 +02:00
Marcus Andersson
5ac2a7cca6 AlertList: make sure we sort the alert list when displayed in "recent state changes" mode. (#35544) 2021-06-11 09:18:35 +02:00
achatterjee-grafana
07a970a50f Doc add note to alerting docs (#35528)
* Added note about retrieving rules from data sources.

* Polishing content.

* Fixed typos

* Update docs/sources/alerting/unified-alerting/opt-in.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/alerting/unified-alerting/opt-in.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/alerting/unified-alerting/opt-in.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2021-06-10 13:51:42 -04:00
Andrej Ocenas
382d9ce622 Bump latest json (#35524) 2021-06-10 17:42:18 +02:00
Diana Payton
34e4985a44 Docs: Update intro-histograms.md (#35462) 2021-06-10 08:41:38 -07:00
Vicky Lee
e9a4484daf test: remove health check request for e2e flow (#35494)
* remove health check request

* add deprecation notice
2021-06-10 16:11:10 +01:00
Grot (@grafanabot)
c45c6655d0 ReleaseNotes: Updated changelog and release notes for 8.0.1 (#35502)
* ReleaseNotes: Updated changelog and release notes for 8.0.1

* add link to index

* Apply suggestions from code review

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Wording changes

Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-06-10 16:29:42 +02:00
Stephanie Closson
cee30a05a1 allow templating for test datasource (#33447) 2021-06-10 13:39:53 +00:00
Stephanie Closson
83f26e9ce2 Fix: only recurse a symbolic link if it is a directory (#35455)
* only recurse a symbolic link if it is a directory

* added test for detecting valid plugins using lib dirs with symbolic links in them (like oracle)

* fix linting errors

* added extra checks as per code-review
2021-06-10 10:25:07 -03:00
Karl Persson
92adf2e4ff Access control: Update docs with new settings permission (#35413)
* Update docs with new action and scopes for settings

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-06-10 13:20:28 +02:00
Uchechukwu Obasi
bea8747405 Graph and GraphNG: make the stories internal (#35491) 2021-06-10 13:02:04 +02:00
shuotli
05f3985108 Upgrade ARG API version (#35464) 2021-06-10 12:33:34 +02:00
Javier Palomo
074c07b347 Drone: Retrieve the machine-user from a Vault secret (#35489)
This will remove the need to use a Drone repository secret
2021-06-10 12:22:03 +02:00
ying-jeanne
a07c53b671 [dataframe] convert opentsdb response to dataframes (#35307)
* draft pr convert opentsdb response to dataframes

* Add test for parse response and fix go lint

* Add test case for create request

* Use go-cmp in test

* Remove comment

Co-authored-by: Ida Furjesova <ida.furjesova@grafana.com>
2021-06-10 12:14:25 +02:00
Jack Westbrook
8b2ee06f3c Routing: Remove subPath only at start of href (#35416)
* fix(routing): remove baseUrl only if at start of url

* test(routing): add subdirectory suburl tests for stripBaseFromUrl

* test(routing): add absolute url check to fix tests, add extra tests
2021-06-10 11:08:39 +02:00
Andres Martinez Gotor
83b6df738e GoogleCloudMonitoring: Fix query object for panels prior to v7 (#35449)
* Fix query object for cloudmonitor panel from v6

* Use proper function
2021-06-10 10:37:55 +02:00
Torkel Ödegaard
3c32acb406 StatPanel: Fixes issue with graph look when switching color mode (#35460) 2021-06-10 10:30:46 +02:00
Marcus Efraimsson
d15d87db8a Datasource: Fix storing timeout option as numeric (#35441)
#31871 introduced support for configuring timeout in seconds
for HTTP data sources. That had a bug where backend expected
a numeric timeout value where it was actually stored as a
string. This should resolve this by requiring input to be
numbers, storing input as numeric and falling back to string
value if there's no numeric value.

Ref #31871
2021-06-10 10:27:14 +02:00
Erik Sundell
eff2410bae Cloudwatch: Fix duplicated time series (#35433)
* make sure queries are only ran once

* test aliases

* use correct dates
2021-06-10 10:23:17 +02:00
Ikko Ashimine
e3afb63e62 Chore: Fix typo in nodes.go (#35312)
formating -> formatting
2021-06-09 16:59:44 -07:00
Kyle Brandt
f4e9dcd40b Alerting/SSE: Fix "count_non_null" reducer validation (#35451)
fixes error "reducer 'count_non_null' in condition 2 is not a valid reducer"
2021-06-09 14:42:48 -04:00
Ryan McKinley
4b8d796c54 Live: avoid panic when type changes (#35394) 2021-06-09 11:15:42 -07:00
Nolan Crooks
e4a4446004 Fix typo (#35452) 2021-06-09 20:05:49 +02:00
Dimitris Sotirakis
7cdf8b3705 HTTP Client: Introduce go-conntrack into http client provider (#35314)
* Introduce go-conntrack into http client provider

* Fixes according to reviewer's comments

* Fixes according to reviewer's comments
2021-06-09 18:13:21 +02:00
Ivana Huckova
34f680a20d Logs panel: Add paddings so first and last lines can be copied (#35410)
* Logs panel: Add paddings so all lines can be copied

* Update public/app/plugins/panel/logs/LogsPanel.tsx

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2021-06-09 18:08:08 +02:00
Andres Martinez Gotor
086309700e Fix missing defaultRegion (#35436) 2021-06-09 17:19:43 +02:00
Diana Payton
ccd3ec5f2f Docs: Update panel-library.md (#35435) 2021-06-09 12:16:52 -03:00
Ashley Harrison
445356d6aa remove box-shadow from sidenav items using images for consistency (#35428) 2021-06-09 14:49:55 +01:00
Torkel Ödegaard
b3a2740d57 Dashboard: Fixes Dashboard init failed error on dashboards with old singlestat panels in collapsed rows 2021-06-09 15:41:59 +02:00
Marc Bachmann
9a5e10e6fb Annotations: Fix sql annotation parsing for empty responses (#35367)
* fix sql annotation parsing for empty responses

* fix backend when no data returned

* add back frontend changes

Co-authored-by: Ying WANG <ying.wang@grafana.com>
2021-06-09 21:14:28 +08:00
Marcus Efraimsson
bf7301e485 Postgres/MySQL/MSSQL: Fix so that numeric/non-string values are returned from query variables (#35411)
Fixes a problem with query variables where SQL query returning for example only 
numeric values didn't populate the query variables with values.

Fixes #35391
2021-06-09 14:18:54 +02:00
Emil Tullstedt
dc7a641978 Docs: Fix code sample for access control provisioning (#35406) 2021-06-09 13:47:21 +02:00
Uchechukwu Obasi
8d9e1d75a5 Grafana-UI: Removes knobs still showing in storybook stories (#35381)
* Grafana-UI: Removes knobs from storybook addons pane

* removed other knobs settings since we are disabling it

* remove the knobs disable config in individual stories
2021-06-09 11:47:01 +02:00
Will Browne
873e20b7ae Plugins: Ignore trailing slash in root URL check (#35338)
* ignore trailing slash in root URL check

* apply pr feedback
2021-06-09 09:57:32 +02:00
Hugo Häggmark
35168764c3 Chore: Fix observable function in DashboardQueryRunnerImpl (#35398) 2021-06-09 07:39:09 +02:00
Hugo Häggmark
6d78f92816 Heatmap: Adds width property to YAxis (#35230) 2021-06-09 06:14:03 +02:00
Ryan McKinley
78d53c5e3d Live: only connect when user has a role (#35339) 2021-06-08 14:00:24 -07:00
achatterjee-grafana
ec9b9d6ab1 Added a note to differentiate legacy and new alerts. (#35385) 2021-06-08 11:27:21 -04:00
Torkel Ödegaard
c425c30d7e Visualizations: Fixes Stat/BarGauge/Gauge/PieChart all values mode showing same name if same value (#35368) 2021-06-08 16:47:09 +02:00
Jack Westbrook
044acf727b Toolkit: Resolve external fonts when Grafana is served from a sub path(#35352) 2021-06-08 16:44:57 +02:00
idafurjes
1f5a28ec63 Chore: Remove global setting var from azure ad oath (#35040)
* Remove global setting var from azure ad oath

* Remove more glob var from social

* Use GrafanaComURL from cfg
2021-06-08 16:08:25 +02:00
Alex Khomenko
2cc172db1a Search: minor UI fixes (#35335)
* Increase margin between search item so it's visible

* Fix manage dashboards height overflow

* Align folder icon

* Increase margin

* Update container height

* Fix className not being passed to CardContainer
2021-06-08 14:41:06 +02:00
Sofia Papagiannaki
6a39fc9ae1 Docs: Fix image paths (#35334) 2021-06-08 15:26:53 +03:00
Torkel Ödegaard
26027fea2a Dashboard: Removed console log prompt (#35366) 2021-06-08 13:48:17 +02:00
Giordano Ricci
00cc0619be Update latest.json (#35342) 2021-06-08 11:47:54 +01:00
Grot (@grafanabot)
d4c129a9b4 ReleaseNotes: Updated changelog and release notes for 8.0.0 (#35350)
* ReleaseNotes: Updated changelog and release notes for 8.0.0

* Update release notes index

Co-authored-by: Elfo404 <me@giordanoricci.com>
2021-06-08 09:26:33 +01:00
Tobias Skarhed
5e7df4cf6a Angular cleanup: Move directives (#35330)
* angular2react: Remove json_editor_ctrl

* angular2react: Move directives

* Add to angular dir
2021-06-08 08:28:56 +02:00
Josh Hunt
8a0cef9954 AzureMonitor: Update documentation and v8 Whats New (#35275)
* AzureMonitor: Update documentation and v8 Whats New

* update docs, provisioning:

* minor updates, mainly images

* fix typos

* fixes

* few other minor fixes

* Update docs/sources/datasources/azuremonitor.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update azuremonitor.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-06-07 21:59:32 +01:00
achatterjee-grafana
1f012871b4 Fix alerting docs (#35340)
* First commit.

* More changes, to make sure all alert information flows.

* Updated a title
2021-06-07 13:07:06 -04:00
Ivana Huckova
defaa6f40e Logs: Add documentation for log details and caching (#35103)
* Add documentation for logs navigation and log details

* Change step to Step in Prometheus annotation editor

* Update docs/sources/explore/logs-integration.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2021-06-07 17:11:44 +02:00
Domas
eb9e7d9fb9 Docs: expand unified alerting silences docs page (#35332) 2021-06-07 16:51:18 +03:00
Sofia Papagiannaki
26ce294eea Docs: Fix misspellings (#35308) 2021-06-07 09:47:54 -04:00
Uchechukwu Obasi
9d21dccc30 ManageDashboard: fixes dashboard list overflowing its parent container (#35317) 2021-06-07 14:04:23 +01:00
Andres Martinez Gotor
d225323049 AzureMonitor: Use plugin SDK contracts (#34729) 2021-06-07 14:54:51 +02:00
Agnès Toulet
e8bc48a796 Docs: improve reporting doc (#35187)
* Docs: improve reporting doc

* Docs: small fixes

* Update docs/sources/enterprise/enterprise-configuration.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-06-07 13:52:30 +02:00
Domas
d20390bdd9 Docs: unified alerting message templating (#35023) 2021-06-07 14:01:21 +03:00
ying-jeanne
edf2029b52 [Scuemeta] Fix cue schema load on windows (#35185)
* fix the load basic schema

* fix windows unittest

* fix error return for get current path

* fix windows notation
2021-06-07 18:58:47 +08:00
Torkel Ödegaard
ce513e4637 Login: Fixes Unauthorized message showing when on login page or snapshot page (#35311) 2021-06-07 11:42:49 +02:00
Domas
d0eee917a5 document contact points for unified alerting (#34983) 2021-06-07 11:54:15 +03:00
Marcus Andersson
da9b5973f9 PanelChrome: title styling changed to be semi bold (#35302) 2021-06-07 08:46:42 +02:00
Leon Sorokin
36925ef521 Histogram: reduce default bucket size, fix rendering (#35294) 2021-06-04 20:15:08 -05:00
achatterjee-grafana
b76271b20b Fixed a typo (#35293) 2021-06-05 01:12:32 +02:00
achatterjee-grafana
337a4c5cb5 Docs update share panel (#35291)
* Added new topic.

* Folded create lib panel into Share panel topic.

* Updated image links, also some structural changes.

* Removed lib panel reference.

* resized two images.

* updated one image name.

* Fixed incorrect image name.
2021-06-04 23:46:40 +02:00
Torkel Ödegaard
ce2470d202 Docs: Adds initial status history docs (#35243)
* Docs: Adds initial status history docs

* spell fixes

* Update docs/sources/whatsnew/whats-new-in-v8-0.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/status-history.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/status-history.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-06-04 22:25:17 +02:00
Diana Payton
615a27062e Docs: Update whats-new-in-v8-0.md (#35283) 2021-06-04 13:01:49 -07:00
achatterjee-grafana
d5d1999e24 Added content for Azure Monitor changes. (#35288)
* Added content for Azure Monitor changes.

* Update docs/sources/whatsnew/whats-new-in-v8-0.md

* Update docs/sources/whatsnew/whats-new-in-v8-0.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2021-06-04 21:56:48 +02:00
Sofia Papagiannaki
a7475e9cb9 Docs: Update alerting opt-in page (#35285)
* Alerting: Update opt-in docs

* Apply suggestions from code review

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-06-04 22:36:38 +03:00
Diana Payton
65f9eca844 Docs: Need connect null values content (#35070)
* updated content

* Added details on Connect Null Values and changed link for image

* Fixed poor grammar

* Fixed poor grammar

* updated the descriptions and modified some language

* Update docs/sources/panels/visualizations/time-series/graph-time-series-as-lines.md

* Update docs/sources/panels/visualizations/time-series/graph-time-series-as-lines.md

Co-authored-by: Petros Kolyvas <code@petros.io>
2021-06-04 12:30:06 -07:00
Diana Payton
1c40d723b3 Update CODEOWNERS (#35287) 2021-06-04 21:19:30 +02:00
Ryan McKinley
351400b82e Panels: avoid crash while switching between panels types (#35286) 2021-06-04 12:11:04 -07:00
achatterjee-grafana
64f5f91d44 Docs lib panel 2: Added Petros's comments (#35284)
* Few more changes based on PM review..

* Updates that I missed in PR 35272
2021-06-04 20:50:12 +02:00
achatterjee-grafana
1f75afc8e8 Docs: library panel (#35272)
* Added "Create a library panel".

* Fixed broken relrefs

* More changes.

* Added more content.

* Update docs/sources/panels/panel-library.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Updated title

* Added link to topic from What's New

* Few minor edits.

* Updated intro based on Petros's feedback.

* Slight modification to create lib panel based on feedback.

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2021-06-04 20:13:56 +02:00
Sofia Papagiannaki
fba90b8f9b Alerting: Recact html responses (#35277) 2021-06-04 20:57:24 +03:00
Sofia Papagiannaki
8cda1f5153 Alerting: Allow rules with same title across folders (#35270)
* Alerting: Allow rules with same title across folders

* Add test
2021-06-04 20:45:26 +03:00
Ryan McKinley
99a6337e1f Histogram: support units on the x axis (#35218) 2021-06-04 10:42:53 -07:00
Jack Westbrook
3bbe6473b6 feat(plugin-admin-app): show message prompting user to refresh browser when installing panel plugin (#35271) 2021-06-04 19:20:06 +02:00
Gabriel MABILLE
2bbf4fa405 AccessControl: Update permissions and scopes in docs (#35263)
* Saving the current changes made with @osg-grafana @donomii

* Update remaining descriptions

* Update docs/sources/enterprise/access-control/permissions.md

Co-authored-by: Vardan Torosyan <vardants@gmail.com>

* Cleanup grammar

Co-authored-by: Jeremy Price <Jeremy.price@grafana.com>
Co-authored-by: Vardan Torosyan <vardants@gmail.com>
2021-06-04 18:10:49 +02:00
Uchechukwu Obasi
c39d0fa8c3 Grafana-ui: explicitly set storybook control types (#35265) 2021-06-04 17:51:44 +02:00
Kevin Minehart
0a28304d2a Caching: document memory limit settings (#35189)
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-06-04 09:54:41 -05:00
David
aae6e86547 Prometheus: Metrics browser layout (#35035)
* Metrics browser layout

* Simplified layout
2021-06-04 16:50:17 +02:00
Giordano Ricci
7a304223e6 Elasticsearch: Fix min_doc_count value when alerting (#35254)
* Elasticsearch: Fix min_doc_count value when alerting

* Add tests
2021-06-04 16:42:00 +02:00
Uchechukwu Obasi
70155c7fd0 Graph: fixes storybook crashing when using the story (#35251)
* Graph: fixes storybook crashing when using the story

* fixes the GraphWithLegend story too
2021-06-04 16:22:11 +02:00
Torkel Ödegaard
3331506660 Docs: Adds docs for histogram visualization (#35241)
* Docs: Adds docs for histogram visualization

* Bucket offset clarification

* tweaks

* less bad math

* Update docs/sources/panels/visualizations/histogram.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/histogram.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/histogram.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/histogram.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/histogram.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/histogram.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/histogram.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/histogram.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-06-04 16:19:44 +02:00
Marcus Andersson
456b356f21 Expressions: updating copy from experimental to beta. (#35149) 2021-06-04 15:18:21 +02:00
Sofia Papagiannaki
15c55b0115 Alerting: Fix notification channel migration and handle case when Alertmanager default configuration is absent (#35086)
* Fix dashboard alert and nootifier migration for MySQL

* Fix POSTing Alertmanager configuration if no current configuration exists

in case the default configuration has not be stored yet
or has failed to get stored

* Change CreatedAt field type
2021-06-04 15:52:41 +03:00
Jack Westbrook
c13f247a94 Card: Defend against conditional action buttons (#35204)
* fix(card): defend against invalid elements types passed to BaseActions

* test(card): add test to support conditional buttons being passed in

* fix(playlistpage): remove disabled prop from LinkButton for editors

* chore(playlistpage): remove title from edit button
2021-06-04 14:38:29 +02:00
Ganesh Vernekar
de3bcb6071 Alerting: Update docs for templating in rule labels (#35238)
* Alerting: Update docs for templating in rule labels

Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>

* Fix comment

Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-06-04 17:46:05 +05:30
Agnès Toulet
5f6c172b5a Renderer: add version information (#34964)
* Renderer: add version information

* fix alerting test
2021-06-04 14:33:49 +03:00
Diana Payton
b46715ee4a Docs: Time series panel update 8.0 (#35215)
* Update text-panel.md

* Update _index.md

* content updates

* Update _index.md

* Update graph-time-series-stacking.md
2021-06-04 13:32:44 +02:00
Sergey Kostrukov
412bcf1fb0 AzureMonitor: fix Azure Resource Graph queries in Azure China (#35235)
* Optimize Azure Monitor routes

* Update API version compatible with Azure China
2021-06-04 12:29:18 +01:00
Alex Khomenko
bfcc6a2248 Remove extra margin for checkboxes (#35169) 2021-06-04 13:10:57 +02:00
Torkel Ödegaard
bbfafa7908 Docs: Initial bar chart docs (#35155)
* Docs: Initial bar chart docs

* minor tweak

* Another minor tweak

* Updated what's new

* Updated list formatting

* Update bar-chart.md

* Update bar-chart.md

* Review feedback updates

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2021-06-04 12:36:49 +02:00
Chris Cowan
f580c9149c Elasticsearch: Add Top Metrics Aggregation and X-Pack support (#33041)
* Elasticsearch: Add Top Metrics Aggregation

* Adding support for non-timeseries visualizations

* removing console.logs

* restoring loadOptions type

* Honor xpack setting

* Adding test for elastic_response

* adding test for query builder

* Adding support of alerting

* Fixing separator spelling

* Fixing linting issues

* attempting to reduce cyclomatic complexity

* Adding elastic77 Docker block

* Update public/app/plugins/datasource/elasticsearch/components/QueryEditor/MetricAggregationsEditor/MetricEditor.test.tsx

Co-authored-by: Giordano Ricci <grdnricci@gmail.com>

* refactoring MetricsEditor tests

* Fixing typo

* Change getFields type & move TopMetrics to a separate component

* Fix SegmentAsync styles in TopMetrics Settings

* Fix field types for TopMetrics

* WIP

* Refactoring client side to support multiple top metrics

* Adding tests and finishing go implimentation

* removing fmt lib from debugging

* fixing tests

* reducing the cyclomatic complexity

* Update public/app/plugins/datasource/elasticsearch/elastic_response.ts

Co-authored-by: Giordano Ricci <grdnricci@gmail.com>

* Update public/app/plugins/datasource/elasticsearch/hooks/useFields.ts

Co-authored-by: Giordano Ricci <grdnricci@gmail.com>

* Checking for possible nil value

* Fixing types

* fix fake-data-gen param

* fix useFields hook

* Removing aggregateBy and size

* Fixing go tests

* Fixing TS tests

* fixing tests

* Fixes

* Remove date from top_metrics fields

* Restore previous formatting

* Update pkg/tsdb/elasticsearch/client/models.go

Co-authored-by: Dimitris Sotirakis <dimitrios.sotirakis@grafana.com>

* Update pkg/tsdb/elasticsearch/client/models.go

Co-authored-by: Dimitris Sotirakis <dimitrios.sotirakis@grafana.com>

* Fix code review comments on processTopMetricValue

* Remove underscore from variable names

* Remove intermediate array definition

* Refactor test to use testify

Co-authored-by: Giordano Ricci <grdnricci@gmail.com>
Co-authored-by: Elfo404 <me@giordanoricci.com>
Co-authored-by: Dimitris Sotirakis <dimitrios.sotirakis@grafana.com>
2021-06-04 11:07:59 +01:00
Alex Khomenko
f683a497eb Add missing select options for controls (#35178) 2021-06-04 10:28:27 +01:00
Will Browne
2e9ad871b3 remove incorrect use of grafana-cli logger (#35228) 2021-06-04 11:06:34 +02:00
Hugo Häggmark
a7606d130e Annotations: Fix so annotations work in panel edit (#35195) 2021-06-04 10:55:14 +02:00
Andrej Ocenas
1f16fac8d7 Docs: Update node graph docs (#35196)
* Update node graph docs

* Apply suggestions from code review

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update image links

* Update wording

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2021-06-04 10:00:02 +02:00
David Kaltschmidt
87c10e9504 Move screenshot in docs 2021-06-04 09:51:36 +02:00
Dimitris Sotirakis
4c8ce8a450 Scuemata: Checking json validity by enabling skipped tests (#34385)
* Make sure we don't skip any tests - refactoring

* Remove commented lines

* Move test folder
2021-06-04 08:18:03 +02:00
Leon Sorokin
43d3d97562 Histogram: enable client-side zoom (with bucket snapping) (#35220) 2021-06-03 20:05:47 -05:00
Ryan McKinley
e1af571efd Timeseries: move join field to index zero (#35217) 2021-06-03 16:05:08 -07:00
Andrej Ocenas
1dc387536e NodeGraph: Fix sorting markers in grid view (#35200)
* Fix test data field label

* Fix sorting

* Changed icon for sorting
2021-06-03 23:52:20 +02:00
Diana Payton
49075f235f Docs: Table update 8.0 (#35214)
* Update _index.md

* Delete table-field-options.md

* Update _index.md

* Update _index.md
2021-06-03 22:29:16 +02:00
Diana Payton
1c37fc1a6f Docs: Yet more panel updates (#35213)
* Update stat-panel.md

* Update stat-panel.md

* Update whats-new-in-v8-0.md

* Update state-timeline.md

* fixed links

* Update news-panel.md
2021-06-03 22:02:47 +02:00
Diana Payton
692568520f Docs: Add GCM update to what's new (#35211)
* content updates

* Update docs/sources/whatsnew/whats-new-in-v8-0.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/whatsnew/whats-new-in-v8-0.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-06-03 21:25:30 +02:00
Diana Payton
2c406e9a00 Docs: More panel options updates for Grafana 8.0 (#35212)
* Update gauge-panel.md

* Update heatmap.md

* Update news-panel.md

* Update pie-chart-panel.md
2021-06-03 21:22:26 +02:00
achatterjee-grafana
f3b0c16751 Updated What's New with Prometheus metrics browser entry. (#35209)
* Added placeholder.

* Reduced the size of 2 images.
2021-06-03 20:16:45 +02:00
Alexandre de Verteuil
4ee037f523 Fix Markdown syntax in enterprise/license/_index.md (#34683) 2021-06-03 13:57:23 -04:00
David
9c72f196ff Docs: Prometheus metrics browser (#35152)
* Docs: Prometheus metrics browser

* Update docs/sources/datasources/loki.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/loki.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/prometheus.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/prometheus.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/prometheus.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/prometheus.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/prometheus.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/prometheus.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/prometheus.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/prometheus.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/prometheus.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-06-03 13:41:21 -04:00
Ganesh Vernekar
8417088969 Alerting: Expand {{$labels.xyz}} template in labels and annotations (#35159)
* Alerting: Expand `{{$labels.xyz}}` template in labels and annotations

Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>

* Fix annotation not updating for same alert

Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-06-03 19:24:36 +02:00
David Parrott
17d98cfe43 Alerting: unified alerting docs state and health (#34945)
* alerting rule lading page

* add alert state and health doc

* update

*  Conflicts:
	docs/sources/alerting/unified-alerting/alerting-rules/rule-list.md
2021-06-03 18:59:45 +02:00
Diana Payton
d50b7c526b Docs: Document new value mappings (#35067)
* Update value-mappings.md

* Update value-mappings.md

* Update whats-new-in-v8-0.md

* Update add-authentication-for-data-source-plugins.md

* Update _index.md

* updates

* Update docs/sources/panels/value-mappings.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update value-mappings.md

* Update value-mappings.md

* Update panel-editor.md

* Update panel-editor.md

* Update docs/sources/panels/value-mappings.md

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>

* Update value-mappings.md

* Update value-mappings.md

* Update value-mappings.md

* Update value-mappings.md

* Update value-mappings.md

* Update value-mappings.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
2021-06-03 09:21:26 -07:00
Kyle Brandt
406f0458b2 Alerting/Docs: Non-timeseries / numeric alerting (#35190)
Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-06-03 18:15:24 +02:00
Sofia Papagiannaki
eeb84d09c2 SSE: Change math expression to accept any value convertible to float (#34996)
* SSE: Change math expression to accept any scalar value

* Apply suggestions from code review

* Update test

* Remove TODO
2021-06-03 18:06:12 +03:00
Gábor Farkas
b558d32502 influxdb: docs: add new screenshot (#35156) 2021-06-03 17:05:13 +02:00
Alexander Emelin
8bd9a430c6 Live: docs (#34642) 2021-06-03 18:03:57 +03:00
Hugo Häggmark
abd4e70792 Annotations: Fix so adds, updates and deletes are shown correctly (#35184)
* Annotations: Fix for update/save/delete annotation not appearing/disappearing

* Annotations: Fix so adds, updates and deletes are shown correctly

* Chore: updates after PR comments
2021-06-03 16:55:04 +02:00
Diana Payton
b0adc806f8 Docs: Update bar-gauge-panel.md (#35136)
* Update bar-gauge-panel.md

* Update bar-gauge-panel.md

* Update alert-list-panel.md

* Update bar-gauge-panel.md

* Update alert-list-panel.md

* Update bar-gauge-panel.md
2021-06-03 07:42:02 -07:00
Diana Payton
cd3954dfc6 Docs: Update Dashboard list and Bar gauge (#35137)
* Update dashboard-list-panel.md

* Update gauge-panel.md

* Update whats-new-in-v8-0.md

* Update whats-new-in-v8-0.md
2021-06-03 07:40:54 -07:00
Josh Hunt
5fb37ad5dc AzureMonitor: Fix permissions issue with Logs template variable queries (#35181) 2021-06-03 15:22:13 +01:00
Ganesh Vernekar
a30e60a0b8 Alerting: Do not hard fail on templating errors in channels (#35165)
* Alerting: Do not hard fail on templating errors in channels

Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>

* Fix review

Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-06-03 19:39:32 +05:30
Arve Knudsen
4d1cbe551f Chore: Upgrade golangci-lint (#35188)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2021-06-03 16:05:49 +02:00
Dimitris Sotirakis
1c49986b2f Chore: Remove endpoints that contain the slug field (#35104)
* Chore: Remove endpoints that contain the slug field

* More cleanups

* Lint fixes

* Remove unnecessary funcs

* Cleanup frontend code

* Remove deprecated endpoints from docs

* Revert change according to reviewer's comments
2021-06-03 16:20:13 +03:00
Ganesh Vernekar
aa4c5bbfe4 Alerting: Don't save Alertmanager config on migration when 0 channels (#35119)
* Alerting: Don't save Alertmanager config on migration when 0 channels

Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>

* Fix review

Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-06-03 15:07:34 +02:00
Serge Zaitsev
9d33a06b4e Add verbose version flag to list dependencies as well as the version (#34741)
* add verbose version flag to list dependencies as well as the version

* Fix typo in the println message

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2021-06-03 14:51:51 +02:00
Josh Hunt
32d9b04666 Grafana-UI: Fix checkbox vertical alignment (#35124)
* Grafana-UI: Fix Checkbox vertical layout issues

* reorganise css

* revert my 'fix' and just go back to setting a min height :(
2021-06-03 15:37:59 +03:00
Marcus Efraimsson
b3e9087557 Chore: Refactor backend plugin manager/tsdb query data (#34944)
Move QueryData method into backend plugin manager which HandleRequest uses to 
query data from plugin SDK supported data sources. This allowed us to remove a lot 
of code no longer needed.

Ref #21510

Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
2021-06-03 14:16:58 +02:00
Dimitris Sotirakis
56e0efbb56 Chore: Update drone pipeline failure message to include target branch (#35170) 2021-06-03 14:09:53 +02:00
Andrej Ocenas
0b94f33813 NodeGraph: Don't check for preferredVisualisationType (#35116)
* Don't check for preferredVisualisationType inside the NodeGraph

* Fix layout worker mocking
2021-06-03 12:48:26 +02:00
Leon Sorokin
433f11a78c GraphNG: uPlot 1.6.11 (#35146) 2021-06-03 04:47:49 -05:00
Leon Sorokin
a3ba605aff Timeline: tooltip fixups (#35145) 2021-06-03 04:46:32 -05:00
Will Browne
057ba4a6e7 fix bad log format (#35150) 2021-06-03 10:26:52 +02:00
Jack Westbrook
9df23b8fff Chore: Bump sanitize-url to 5.0.2 (#35088) 2021-06-03 10:05:55 +02:00
Dominik Prokop
7359ba44d0 Timeline/Status grid panel: Add tooltip support (#35005)
* Timeline/Status grid tooltip support first pass

* Tooltips workin

* Use getValueFormat to get the duration

* Separate boxes highlight from tooltip interpolation

* Separate state timeline tooltip component, rely on field display color to retrieve color of series

* create an onHover/onLeave API and optimize implementation

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2021-06-02 21:43:47 -05:00
Diana Payton
180bff77a4 Docs: Update whats-new-in-v8-0.md (#35141) 2021-06-02 23:40:28 +02:00
Diana Payton
87af88e04a Update annotations.md (#33218) 2021-06-02 16:29:51 -04:00
Diana Payton
9efda4d65c Docs: Update whats new 8.0 (#35135)
* Delete DRAFT.md

* Update whats-new-in-v8-0.md
2021-06-02 13:21:15 -07:00
Ryan McKinley
a9b5aa1088 State-timeline: support migrating from discrete panel (#35071) 2021-06-02 12:18:20 -07:00
Ryan McKinley
f7893ca5cf Live: fix field filtering and survive reconnect (#35122) 2021-06-02 12:12:48 -07:00
Carl Bergquist
ba7aca69f6 plugin: add signature status plugin build info (#35128)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
2021-06-02 20:53:56 +02:00
Domas
a7fa831071 Docs: unified alerting notification policies (#35118)
* wip

* finished

* typos

* fix img link
2021-06-02 14:28:24 -04:00
Ryan McKinley
744ca8d439 FieldDisplay: add cache to reuse field value calculations (#35072)
* add timeline value cache

* add timeline value cache

* with console logs

* cleanup

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2021-06-02 11:01:23 -07:00
Kyle Brandt
4093fae99a SSE: Refactor to simplify Series type (#35063)
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2021-06-02 12:29:19 -04:00
Gabriel MABILLE
134dba5101 Provisioning: Update accesscontrol sample file 2021-06-02 17:22:34 +02:00
Alexander Emelin
7aee0deb38 live: log error on dashboard subscribe (#35095) 2021-06-02 18:02:54 +03:00
Ursula Kallio
99839ee060 Change weight of reference, so they display last. (#35112) 2021-06-02 16:49:32 +02:00
Zoltán Bedi
bf96f5e285 Tempo: search fixes (#35004)
* Tempo: search fixes

Add custom width to time and trace id
Run and show query in search after page refresh

* Iterate through all response data

* Don't store linkedQuery as a property
2021-06-02 16:37:36 +02:00
Gábor Farkas
89fc92947c InfluxDB: deprecate direct browser access in data source (#35105)
* influxdb: deperacate direct browser-access

* better docs-formatting

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-06-02 16:37:16 +02:00
Marcus Efraimsson
5d41e83896 Chore: Upgrade prometheus/alertmanager dependency to v0.22.2 (#35102)
* Chore: Upgrade prometheus/alertmanager dependency to v0.22.2

* go mod tidy
2021-06-02 16:02:52 +02:00
Dominik Prokop
a08ee057eb VizLegend: add readonly prop (#35096)
* VizLegend: add readonly prop

* Update packages/grafana-ui/src/components/VizLegend/VizLegendTableItem.tsx

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

Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
2021-06-02 15:39:20 +02:00
kay delaney
7c0158cdff Library Panels: Fix refresh when changing to angular library panel (#35048)
Closes #34874
2021-06-02 13:35:12 +01:00
Kyle Brandt
c4b4171d85 Alerting/Docs: Silence documentation (#35052)
Co-authored-by: David Parrott <stomp.box.yo@gmail.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-06-02 08:26:58 -04:00
Oscar Kilhed
e6c53e4bcd DevEnv: Fix docker-driver plugin installation direction url 2021-06-02 13:31:04 +02:00
Josh Hunt
3be0a2d328 AzureMonitor: Use resource type display names in the UI (#35060)
* AzureMonitor: Use display names for resource types and locations

* de-pluralize resource types

* Rename Namespace field to Resource Type, and use display names

* add comments
2021-06-02 12:47:04 +02:00
Torkel Ödegaard
e6f2b10a36 ChangeTracker: Unified unsaved changes handling with library panels (#34989)
* UnsavedChanges: Move Change tracker to use Prompt

* Fix a lot of race conditions and stacking of changes in onConfirm and onDismiss

* Listen to save event

* add missing delay argument

* migrated the change tracker unit tests

* Updated snapshot

* Removed unessary action

* removed updateSourcePanel

* Fix hiding save library panel modal prompt when clicking discard

* change saved libray panel title and buttons so they are a bit different as Prompt and when used from save button

* Fixed issue with saving new dashboard

* Now all scenarios work

* increase wait time

* Fixed one more race condition
2021-06-02 12:24:19 +02:00
Sergey Kostrukov
f052f10289 Cleanup the options initialization (#35080) 2021-06-02 10:56:57 +01:00
Jeremy Price
2c85bbb738 Access Control: Provisioning docs cleanup (#34982) 2021-06-02 11:55:37 +02:00
Giordano Ricci
13cf6a3e00 Docs: Add Volta to Grafana dev setup instructions (#35064)
* Chore: update developer guide to use Volta

* Chore: Fix Volta config

* Chore: Add volta config to each workspace

* Chore: Add volta config to each workspace

* Apply suggestions from code review

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update contribute/developer-guide.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2021-06-02 09:08:38 +01:00
Giordano Ricci
8afb15296a Grafana-UI: Allow Card consumers to override disabled prop for action (#34664) 2021-06-02 08:20:35 +01:00
Fabian Gonzalez
9ebe585ec8 Docs: Add datalinks example to ElasticSearch docs (#34956) 2021-06-02 08:19:17 +01:00
Dimitris Sotirakis
27ad970c2b Chore: Make drone failed nightly checks send slack messages to #grafana-backend (#35076) 2021-06-02 08:49:42 +02:00
Diana Payton
d5664d92a9 Update panel-editor.md (#35069) 2021-06-02 07:21:51 +02:00
Simon Podlipsky
4137534650 Variables: Support raw values of boolean type (#34727) 2021-06-02 06:40:37 +02:00
Torkel Ödegaard
ac9cbbc02b Docs: Initial docs for State timeline visualization (#35046)
* Docs: Initial docs for State timeline visualization

* Update docs/sources/panels/visualizations/state-timeline.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/state-timeline.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/state-timeline.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/state-timeline.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/state-timeline.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/state-timeline.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/state-timeline.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/state-timeline.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/state-timeline.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Changed format for options from table to headings

* Updated what's new

* restore naming to Visualization options

* Update docs/sources/whatsnew/whats-new-in-v8-0.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/whatsnew/whats-new-in-v8-0.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2021-06-02 06:36:47 +02:00
Mitch Seaman
d92a1f29ac Docs: Add docs links for what's new in Enterprise (#35062)
* add docs links for whats new in Enterprise

* add license restriction docs update to what's new

* remove version mention from licensing docs update
2021-06-01 11:55:17 -07:00
Marcus Efraimsson
d953e200f0 Chore: Refactor short url api test (#35051)
Use a mock of the short URL service rather than real one which requires database access.

Ref #34696
2021-06-01 20:34:59 +02:00
Leon Sorokin
878474a808 Color utils: optimize colorManipulator/alpha() for common cases (#34948) 2021-06-01 12:52:58 -05:00
Uchechukwu Obasi
4d574bb8aa VizLegendTable: fixes column spacing to span to the right side (#35045)
* VizLegendTable: fixes column spacing to span to the right side

* reverted text alignment to right

* implemented a more readable solution for tabble legend spacing
2021-06-01 17:47:14 +02:00
Andrej Ocenas
aa7dbd7a69 NodeGraph: Make grid view responsive (#35047) 2021-06-01 17:30:47 +02:00
Ursula Kallio
e0a3f669e5 Add fine-grained-access-control-references.md file. (#35043)
* Add fine-grained-access-control-references.md file.

* Fix syntax error in relref.

* Fix another syntax error.

* Fix broken link:

see introduction of alert rules at PR
https://github.com/grafana/grafana/pull/34839.
2021-06-01 16:35:38 +02:00
Alex Khomenko
486ab7c639 Debounce location update (#35033) 2021-06-01 17:20:00 +03:00
Hugo Häggmark
d2649821d1 Chore: Updates latest.json (#35050) 2021-06-01 16:18:22 +02:00
Torkel Ödegaard
dc5e7695e4 Checkbox: Fixes vertical layout isssue with Checkboxes due to fixed height (#35022) 2021-06-01 16:11:07 +02:00
Grot (@grafanabot)
046de10cd7 ReleaseNotes: Updated changelog and release notes for 8.0.0-beta3 (#35049)
* ReleaseNotes: Updated changelog and release notes for 8.0.0-beta3

* Docs: adds Beta3 to index

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
2021-06-01 16:07:29 +02:00
Gábor Farkas
38b030e2a4 InfluxDB: Flux: timestamp-column has to go first (#35036) 2021-06-01 16:03:02 +02:00
Karl Persson
73b8afe724 Document global role and assignment for provisioning (#34739) 2021-06-01 15:52:46 +02:00
Marcus Efraimsson
c775708e45 Chore: Refactor Prometheus custom query parameters middleware (#34814)
Following #34473 refactor to use url.ParseQuery in the Prometheus 
custom query parameter middleware.

Ref #34473
2021-06-01 14:59:44 +02:00
kay delaney
2e38bbf751 Chore: Reduce number of strict typescript errors (#34595) 2021-06-01 13:47:29 +01:00
Jan Jansen
0d1b35f99e Short URL: Fix so that orgId is included in generated short URL (#34696)
Fixes #33813

Signed-off-by: Jan Jansen <jan.jansen@gdata.de>
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2021-06-01 14:19:10 +02:00
Maria Alexandra
ff03b456f1 Dashboard: Fix Table view when editing causes the panel data to not update (#34998)
* Dashboard: Fix Table view when editing causes the panel data to not update

- Add event subscription on PanelEditorTableView
- Extract runAllPanelQueries into Panel Model in order to use it on PanelChrome and PanelEditorTableView
- Add simple unit test for runAllQueryPaneQueries
2021-06-01 13:52:08 +02:00
Julien Duchesne
22544bd135 Fix enterprise autodeploy (#34889)
Config file needs to be copied over

No-op for OSS grafana
2021-06-01 13:29:52 +02:00
Zoltán Bedi
b211b3a63c Add docs for Tempo search (#34526)
* Add docs for Tempo search

* Apply suggestions from code review

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/datasources/tempo.md

Co-authored-by: Robby Milo <robby.milo@grafana.com>

* Apply suggestions from code review

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

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
Co-authored-by: Robby Milo <robby.milo@grafana.com>
Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-06-01 12:07:26 +02:00
idafurjes
ec29c3b84f Chore: Add Circle CI empty config (#35020)
* Fix Circle CI check with adding an empty config

* Add version

* Add empty jobs and workflows

* Add job with docker image

* Add step
2021-06-01 11:56:11 +02:00
Uchechukwu Obasi
865eac309c Table: datalink to have text underline and support for image datalink (#34635)
* Table: datalink to have text underline and support for image datalink

* fixes image oversize issue when using both image and link in a column

* fixes small nit

* extracted the getLink logic to be a standalone utility function

* Updates table tests to suit current structure

* fixes small syntax nit

* fixes bad typing issue

* annotes the getCellLinks logic as an internal utility function

* removes blank whitespace

* Tests: updates test cases to use getByRole

Co-authored-by: Hugo Häggmark <hugo.haggmark@gmail.com>
2021-06-01 11:03:03 +02:00
Mitch Seaman
9bd823bac3 Docs: Add query caching to enterprise docs page (#34751)
* add query caching to enterprise docs page

* Update docs/sources/enterprise/_index.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>
2021-06-01 02:36:51 -06:00
Andrej Ocenas
cb4f5b249f NodeGraph: Make web worker inline fixing error when assets are loaded with different origin (#35013) 2021-06-01 09:56:28 +02:00
Jack Westbrook
cb3c317e81 TimeSeries: Migration from old graph legend values (#34997)
* fix(timeseries): filter enabled graph legend values when migrating

* test(timeseries): update snapshots

* test(timeseries): add additional tests for legend
2021-06-01 09:49:19 +02:00
idafurjes
a9f652ab7a Chore: Remove CircleCI (#35014) 2021-06-01 09:46:53 +02:00
Piotr Jamróz
f4a40a4d85 Logs: Use GraphNG to plot log histograms (#34531)
* Switch to GraphNG for Logs Histogram

* Remove redundant timeZone

It was used just to format timestamp in the tooltip but it's not needed anymore.

* Add tests for creating logs histogram data

* Update decoractors tests

* Adjust bar width to be more like in the old graph

* Fix tooltip pointer color

* Test tooltip pointer color

* Decouple graph config from uPlot internals

* Ensure nested properties are not mutated when overrides are applied

* Add legend toggling for Explore graphs

* Remove unused component

ExploreGraphNGPanel is now used in Explore

* Code formatting

* allow multiple bars pathBuilders to be globally cached with different settings

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2021-06-01 09:28:25 +02:00
Alex Khomenko
c6a78a6bd7 Reporting: update docs (#34740)
* Reporting: update dcos

* Add info about pausing reports

* Add version note

* Update docs/sources/enterprise/reporting.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Docs: update report form information

* Docs: update report scheduling

* Docs: re-order reporting sections

* Update docs/sources/enterprise/reporting.md

Co-authored-by: Mitch Seaman <mjseaman@users.noreply.github.com>

* Update docs/sources/enterprise/reporting.md

Co-authored-by: Mitch Seaman <mjseaman@users.noreply.github.com>

* Update docs/sources/enterprise/reporting.md

Co-authored-by: Mitch Seaman <mjseaman@users.noreply.github.com>

* Update docs/sources/enterprise/reporting.md

Co-authored-by: Mitch Seaman <mjseaman@users.noreply.github.com>

* Update docs/sources/enterprise/reporting.md

Co-authored-by: Mitch Seaman <mjseaman@users.noreply.github.com>

* Update docs/sources/enterprise/reporting.md

Co-authored-by: Mitch Seaman <mjseaman@users.noreply.github.com>

* Update docs/sources/enterprise/reporting.md

Co-authored-by: Mitch Seaman <mjseaman@users.noreply.github.com>

* Update docs/sources/enterprise/reporting.md

Co-authored-by: Mitch Seaman <mjseaman@users.noreply.github.com>

* Update docs/sources/enterprise/reporting.md

Co-authored-by: Mitch Seaman <mjseaman@users.noreply.github.com>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
Co-authored-by: Agnès Toulet <agnes.toulet@gmail.com>
Co-authored-by: Mitch Seaman <mjseaman@users.noreply.github.com>
2021-06-01 08:35:45 +02:00
Torkel Ödegaard
ce63da63db Collapse: Fixes icon (angle down/right) positioning (#34930) 2021-06-01 08:29:52 +02:00
Marcus Olsson
fcdfa88089 Docs: Improve docs for plugin authentication (#33325)
* Improve docs for plugin authentication

* Add docs for forwarding oauth identity

* Fix review comment

* Fix review comment
2021-05-31 22:02:36 +02:00
Will Browne
8d51c2ae97 Plugins: Update plugin signing copy + docs (#34716)
* update plugin signing copy + docs

* rewording

* remove grafana sig note

* update unsigned plugin wording

* remove org admin reference in catalog docs

* add whitespace to message

* apply pr suggestion

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

* apply pr feedback

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-05-31 21:54:53 +02:00
Carl Bergquist
f432fbd793 Instrumentation: add more tracing in the auth context handler. (#34939)
ref https://github.com/grafana/grafana/issues/29489

Signed-off-by: bergquist <carl.bergquist@gmail.com>
2021-05-31 21:39:28 +02:00
Will Browne
28ccf2c880 add missing statis assets prefix (#34999) 2021-05-31 20:30:43 +02:00
Dominik Prokop
823581add8 Secure from custom config being undefined in PlotLegend (#34975) 2021-05-31 19:37:34 +02:00
Will Browne
aba1801193 Plugins: Check for Grafana admin instead of Org admin (#35000)
* check for grafana admin where necessary

* fix
2021-05-31 18:42:36 +02:00
Sofia Papagiannaki
51afde34bd Test datasource: Returns always float values (#34986) 2021-05-31 19:15:46 +03:00
idafurjes
c62602d941 Chore: Notify in slack when nightly docker image scan fails (#34980)
* Add scan docker image step, when pipeline fails notify in slack channel

* Add star code that generates the yaml file for the fail message to slack

* Fix template message

* Make message more detailed

* Adjust the name of the step
2021-05-31 17:33:22 +02:00
Ganesh Vernekar
a23674ef99 Alerting: Migrate tags as labels and not annotations (#34990)
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-05-31 19:47:17 +05:30
Alex Khomenko
05f3161f8e Admin: hide per role counts for licensed users (#34984)
* Hide per-role counts for licensed users

* Hide totals
2021-05-31 17:06:45 +03:00
Nathan Rodman
7dd5a065ba Alerting: New alert list panel component (#34614) 2021-05-31 14:08:05 +02:00
Ganesh Vernekar
7c25465b3a Alerting: Migrate paused alerts to silences (#34898)
* Alerting: Migrate paused alerts to silences

Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>

* Fix lint

Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-05-31 17:30:58 +05:30
Jack Westbrook
8c93899b15 PluginsList Panel: Redirect to catalog app for updating plugins (#34893)
* feat(pluginlistpanel): if catalog app is enabled redirect user if plugin is upgradable

* refactor(catalog): update copy if plugin is disabled
2021-05-31 13:53:40 +02:00
Will Browne
98c849d4cc fix permissions + add link for admins (#34906) 2021-05-31 12:30:32 +02:00
Zoltán Bedi
6e5d349ae8 Explore: Fix show all series (#34968) 2021-05-31 11:18:50 +02:00
Sofia Papagiannaki
355be158b7 [Alerting]: fix/cleanup API examples (#34588) 2021-05-31 11:18:29 +03:00
Gábor Farkas
618dc6a2f6 InfluxDB: InfluxQL: apply on enter not on blur (#34963) 2021-05-31 10:09:29 +02:00
Alex Khomenko
e38c6d73a0 Make sure ConfirmButton cannot be clicked when closed (#34818) 2021-05-31 10:39:55 +03:00
Alex Khomenko
10f6638d9e Add custom icons for layout options (#34890) 2021-05-31 10:38:39 +03:00
Dominik Prokop
573d7b8893 GraphNG: Remove fieldName and hideInLegend properties from UPlotSeriesBuilder (#34901)
* Remove fieldName and hideInLegend properties from UPlotSeriesBuilder

* Fix test
2021-05-31 09:27:57 +02:00
Torkel Ödegaard
d9e9e4744d StatPanel: Fixes data link tooltip not showing for single value (#34934) 2021-05-31 09:01:47 +02:00
Jack Westbrook
fd028fd798 DashboardLinks: Fix dropdown positioning (#34909) 2021-05-31 09:01:12 +02:00
Torkel Ödegaard
c7076c9e19 DataLinks: Fixes an issue __series.name is not working in data link (#34932) 2021-05-31 08:59:27 +02:00
Torkel Ödegaard
ef13f7ece1 ConfirmModal: Auto focus delete button (#34917) 2021-05-31 08:42:59 +02:00
Hugo Häggmark
37ab5ec7f4 Table: Fixes sorting for number fields (#34722)
* Table: Fixes sorting for number fields

* Refactor: changes after PR comments

* Refactor: found a bug
2021-05-31 06:12:56 +02:00
Leon Sorokin
13768da417 State timeline: defer quadtree construction until first mousemove (#34949) 2021-05-29 14:01:58 -05:00
Le Libre Au Quotidien
50775651dd build.go: Switch 32bits compilation to default mode (#34656)
* Update build.go
2021-05-29 20:50:06 +02:00
Ryan McKinley
4972e0f6a1 Rename: Status grid to history (#34864) 2021-05-29 20:24:14 +02:00
Torkel Ödegaard
d6a9a9b975 Themes: Add border to sidemenu, and reduce border in dark theme a tiny bit (#34737)
* Themes: Add border to sidemenu, and reduce border in dark theme a tiny bit

* Updated
2021-05-29 07:08:05 +02:00
Oscar Kilhed
dfc466052d BarChart: make sure tooltip closes when user presses E (#34884) 2021-05-28 23:24:03 +02:00
Chip Wolf ‮
badec6c6ad Alerting: Add support for configuring avatar URL for the Discord notifier (#33355)
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-05-28 23:00:21 +02:00
Diana Payton
66e2624ae0 Docs: Override content (#34859)
* content updates

* Update panel-editor.md

* Update panel-editor.md

* content updates

* edits

* Update field-overrides.md

* Delete field-options-and-overrides.md

* link updates

* Update field-overrides.md

* Update field-overrides.md

* Update field-overrides.md

* fixing links

* reordering

* Update docs/sources/panels/field-overrides.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/panel-editor.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/panel-editor.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/panel-editor.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/panel-editor.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/table/_index.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/table/_index.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-05-28 22:45:00 +02:00
ying-jeanne
b391e43472 [Dashboard] Revert feature toggle trimdefaults (#34888)
* Revert "solve comments and retrigger the test"

This reverts commit f08d2d9eca.

* Revert "update api doc"

This reverts commit cc09ceb853.

* Revert "remove post trim"

This reverts commit 46fe8ed596.

* Revert "fix typo"

This reverts commit 3b3ceee16e.

* Revert "Apply suggestions from code review"

This reverts commit 3b7f3b8e15.

* Revert "update comments"

This reverts commit b9c6260876.

* Revert "update doc"

This reverts commit 8e4c4d7c93.

* Revert "remove feature toggle + add libraryPaneldefinition"

This reverts commit d01cfcc2ed.

* fix some typos

* Update public/app/features/dashboard/components/ShareModal/ShareExport.tsx

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* Update docs/sources/dashboards/export-import.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* fix comments

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-05-28 22:29:30 +02:00
Ivana Huckova
f16b2c40c1 Add key for DataLinkButtons (#34935) 2021-05-28 21:57:51 +02:00
achatterjee-grafana
0392a5daa1 Added Alertmanager and 8.0 alerts content to What's New (#34925)
* Added Alertmanager and alerts docmentation

* Update docs/sources/whatsnew/whats-new-in-v8-0.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/whatsnew/whats-new-in-v8-0.md

Co-authored-by: David Parrott <stomp.box.yo@gmail.com>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
Co-authored-by: David Parrott <stomp.box.yo@gmail.com>
2021-05-28 21:22:15 +02:00
Owen Diehl
cc38613ba4 alerting: fixes per-receiver metric cardinality (#34915) 2021-05-28 12:31:23 -04:00
Owen Diehl
9aca032d10 Alerting/consistent api errors (#34858)
* consolidates alertmanager api errors

* util & testing consistent errors

* consistent errors for rest of ngalert apis

* updates expected errors in testware

* bump ci

* linting

* unrelated: dashboard.go lint
2021-05-28 11:55:03 -04:00
Torkel Ödegaard
179bfecb3e Color: Remove the default color scale logic (#34913) 2021-05-28 17:50:25 +02:00
Ivana Huckova
add1b827ae Prometheus: Add info that using Loki as Prometheus data source is no longer supported and might stop working (#34650)
* Add information that Loki as Prometheus data source is not supported

* Fix ugly error when loki as prometheus used

* Refactor, add test

* Fix type error

* Fix test by passing missing method

* Update public/app/plugins/datasource/prometheus/query_hints.ts

* Remove optionality in prop
2021-05-28 17:10:10 +02:00
Ivana Huckova
6adcfa9e50 Add info about logs histogram (#34886) 2021-05-28 17:07:27 +02:00
Kyle Brandt
b47e7d12e6 Alerting: Extract values from MD expr alerts (#34757)
When using mulit-dimensional Grafana managed alerts (e.g. SSE math) extract refIds values and labels so they can be shown in the notification and dashboards.
2021-05-28 11:04:20 -04:00
kay delaney
8143991b94 Security: Update default CSP template and fix firefox CSP issues (#34836)
* Security: Update default content_security_policy_template
- Add 'strict-dynamic' back to script-src
- Add ws(s)://$ROOT_PATH to connect-src
- Change onEvent to on-event in angular templates to fix CSP issues in firefox.
- Add blob: to style-src
2021-05-28 17:01:10 +02:00
Will Browne
244d3f61c3 Plugins: Add missing docs for plugin catalog (#34679)
* add missing docs for plugin catalog

* apply PR feedback

* use mp4 instead of gif

* update wording

* Add note about org admins

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* apply pr feedback

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2021-05-28 16:44:40 +02:00
Domas
d6037a49b6 Docs: document creating alert rules (#34839) 2021-05-28 17:20:54 +03:00
Domas
38147cc6c8 Domas: document unified alerting rule list view (#34667) 2021-05-28 17:17:33 +03:00
idafurjes
48f6d6f7e6 Oauth: Assign role from GF_USERS_AUTO_ASSIGN_ORG_ROLE for Azure AD Oauth (#34838)
* 30555:Assign correct role with environment variable GF_USERS_AUTO_ASSIGN_ORG_ROLE

* 30555:Remove unused condition
2021-05-28 16:14:30 +02:00
Ganesh Vernekar
ad6648b649 Alerting: Do no hard fail on finding discontinued channels on migration (#34894)
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-05-28 16:06:30 +02:00
Zoltán Bedi
4435895833 Prometheus: exemplars show different symbols (#34763)
* Show different symbols for different queries

* Only run different exemplars

* Address review comment

* Do the same for dashboard + tests
2021-05-28 15:40:15 +02:00
David
2205464a8d Prometheus: Add metadata to metrics in Metrics browser (#34708)
* Prometheus: Add metadata to metrics in Metrics browser

- use the available metadata to enhance the tooltip on metric items in the metrics browser
- added meta info for histogram metrics (was missing before)
- also added one for ALERTS

* fix test
2021-05-28 14:51:06 +02:00
Joan López de la Franca Beltran
886f6fc55b Docs: Settings updates at runtime (#34169)
* Docs: Settings updates on runtime docs skeleton

* Docs: Settings HTTP API

* Docs: Minor changes on settings updates at runtime docs

* Docs: Settings updates at runtime description

* Docs: Minor fix

* Docs: Move PUT /api/admin/settings docs into Admin API page

* Docs: Added longer explanation into 'Settings updates at runtime' page

* Apply suggestions from code review

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
Co-authored-by: Leonard Gram <leo@xlson.com>

* Docs: Include order of precedence description at settings updates page

* Update docs/sources/http_api/admin.md

* Docs: Add link to main configuration page from Settings updates at runtime

* Apply suggestions from code review

Co-authored-by: Mitch Seaman <mjseaman@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
Co-authored-by: Leonard Gram <leo@xlson.com>
Co-authored-by: Mitch Seaman <mjseaman@users.noreply.github.com>
2021-05-28 13:28:40 +02:00
Ganesh Vernekar
8278c7bf77 Alerting: Fix flaky TestNotificationChannels take 2 (#34880)
* Alerting: Fix flaky TestNotificationChannels take 2

Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>

* Fix nits

Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>

* Fix lint

Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-05-28 15:24:18 +05:30
Alexander Emelin
b73d168753 live: fix log message (#34879) 2021-05-28 11:33:55 +02:00
Robby Milo
327fa124a4 cleanup shortcodes, asset paths (#34826) 2021-05-28 11:27:40 +02:00
Sergey Kostrukov
179eb0898e AzureMonitor: remove requirement for default subscription (#34787)
* Do not require default subscription for Azure Monitor

* Fix explore URLs when default subscription not set

* Test datasource fixes

* Added comment

* Fix first or default subscription/workspace

* SubscriptionField doesn't depend on Log Analytics

* Tests fixed

* Select default subscription only when user clicked
2021-05-28 10:19:31 +01:00
Andres Martinez Gotor
48dc78fd48 AzureMonitor: Deprecate using separate credentials for Logs (#34758)
* Hide switch for using different credentials in AzureMonitor

* Apply feedback. Use @testing-library
2021-05-28 10:14:59 +02:00
Fredrik Enestad
261319a4be Loki: Add formatting for annotations (#34774)
* add formatting for loki annotations

based/copied from the same features from the prometheus datasource
2021-05-28 10:12:03 +02:00
Maria Alexandra
35061fc66d Docs: Improve the create pull request guide for contributing (#34799)
- add extra section about frontend unit test

Co-authored-by: Marcus Olsson <marcus.olsson@hey.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2021-05-28 10:01:25 +02:00
Josh Hunt
888cddb834 AzureMonitor: Support querying Subscriptions and Resource Groups in Logs (#34766)
* AzureMonitor: Support querying Subscriptions and Resource Groups in Logs

* cleanup
2021-05-28 08:58:46 +01:00
Arve Knudsen
ee73108e52 Drone: Don't ignore docs failures (#34872)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2021-05-28 09:38:56 +02:00
Domas
9eaa387cce fix link (#34870) 2021-05-28 09:13:47 +02:00
Danilo Bargen
83a83de10a Clarify that Threema Gateway Alerts support only Basic IDs (#34828)
Threema Gateway supports two types of IDs: Basic IDs (where the
encryption is managed by the API server) and End-to-End IDs (where the
keys are managed by the user).

This plugin currently does not support End-to-End IDs (since it's much
more complex to implement, because the encryption needs to happen
locally). Add a few clarifications to the UI.

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2021-05-28 08:54:55 +02:00
Marcus Efraimsson
35a4b2c651 Chore: Fix jaeger devenv block (#34795) 2021-05-28 08:47:18 +02:00
MrSummat
48fe3feae7 Dashboard: Fix multi-value variables in share links (#33216) (#33576) 2021-05-28 08:23:23 +02:00
wengelbrecht-grafana
53a3e386c6 Docs: Update image_rendering.md (#34849)
Adding missing packages required for Ubuntu and Centos to resolve missing libraries when checking Chromium with ldd
2021-05-28 08:05:58 +02:00
Ganesh Vernekar
89262ac64d Fix flaky TestNotificationChannels (#34831)
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-05-28 11:03:49 +05:30
Domas
2bd78ab140 Docs: alertmanager datasource (#34567) 2021-05-28 08:33:30 +03:00
Torkel Ödegaard
658cc5dd2d PieChart: Support row data in pie chart (#34755)
* PieChart: Support row data in pie chart

* Make color override work

* removed thing

* Minor refactoring
2021-05-28 07:29:57 +02:00
Leon Sorokin
3fd006604f BarChart: hide cursor crosshair (#34862) 2021-05-27 23:18:15 -05:00
Ryan McKinley
e1088e9360 Stat: don't show sparkline if y field is not number (#34857) 2021-05-28 00:32:20 +02:00
David Parrott
8ab8c9cd9a Alerting: docs for Unified Alerting opt-in, index, difference-old-new (#34684)
* opt-in, index, difference-old-new

* correct punctuation

* remove unified verbiage
2021-05-27 15:07:51 -07:00
Josh Hunt
7646246d8c AzureMonitor: Hide App Insights for data sources not using it (#34725)
* AzureMonitor: Hide Application Insights and Insights Analytics for panels not using them

* AzureMonitor: Hide Application Insights config

* simplify

* fix test
2021-05-27 20:28:36 +01:00
Alexander Emelin
6d750c000e Live: max_connections option with strict default (#34634)
this should help Live to be enabled by default but still
do not affect setups with lots of simultenious users. To
properly handle many WS connections Grafana administrators
should tune infrastructure a bit - for example increase a
number of open files for a process. Will be in more details
in documentation.
2021-05-27 22:03:18 +03:00
Matt Abrams
f05bddae43 fixes toggleDownloadForExcel function (#34685) 2021-05-27 20:58:44 +02:00
Sergey Kostrukov
de86114b66 AzureMonitor: reset default subscription when credentials change (#34707)
* Update default subscription on credentials change

* Fix secret reset when subscription selected

* Remove unused exports
2021-05-27 19:03:36 +01:00
Torkel Ödegaard
f07366690e Overrides: Hide from visualization should be available as a manual override option (#34783)
* Visualization: Hide from option should be available as a manual override option

* Fix misaligned type

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2021-05-27 17:31:01 +02:00
Torkel Ödegaard
52f3025901 Timeline: Default line width to 0 (#34802) 2021-05-27 17:30:18 +02:00
Torkel Ödegaard
119dbc4d76 Histogram: Adds histogram test dashboard & test data (#34821)
* Added test data that contains normal distribution

* Added histogram test dashboard

* Fixed so panels share same data
2021-05-27 17:27:29 +02:00
Peter Holmberg
e085b2316c Alerting: Set max width on alerting query rows (#34749) 2021-05-27 16:15:43 +02:00
Marcus Andersson
da6236d89a Alerting: improved error message and change styling of relative button. (#34730)
* improved error message and change styling of relative button.

* minor adjustments.

* adding clock icon.
2021-05-27 15:58:58 +02:00
Andrej Ocenas
fcdab32750 NodeGraph: Fix error when clicking link in a context menu (#34817)
* Add prevent default if onClick exists

* Apply field overrides
2021-05-27 15:33:25 +02:00
Jack Westbrook
8ced249c91 AddPanelWidget: Add padding to prevent top being cut off (#34806)
* fix(dashboardpage): add padding so add panel chrome isnt cut off

* fix(addpanelwidget): introduce wrapping element to cater for pulsate animation offset

* refactor(addpanelwidget): use spacing.xs rather than spacing.sm

* test(addpanelwidget): update snapshot
2021-05-27 15:28:09 +02:00
Koenraad Verheyden
ec3f8ce04c Tempo: Fix the test data source implementation (#34762)
Fixes #32677
2021-05-27 14:47:10 +02:00
ying-jeanne
006135c028 fix the url of API (#34808) 2021-05-27 20:30:42 +08:00
Carl Bergquist
a10fa5cad3 Instrumentation: Start tracing database requests (#34572)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
2021-05-27 13:55:33 +02:00
Torkel Ödegaard
29d34974e7 PieChart: Enable shared crosshair on pie chart test dashboard (#34809) 2021-05-27 13:31:22 +02:00
Domas
347273cdea Alerting: check upstream response content type in lotex proxy (#34760) 2021-05-27 14:12:29 +03:00
Domas
5660bb585f check if alertmanager being configured is cortex or vanilla (#34726) 2021-05-27 13:47:55 +03:00
Domas
871e476e41 sort alert instance, "datasource" -> "data source" (#34724) 2021-05-27 13:47:26 +03:00
Will Browne
c7b58fe186 Plugins: Enable catalog management link to gcom (#34673)
* click out to gcom when config enabled

* set to false

* fix styling for uninstall

* remove advertising config + simplify callout URL

* add entry to configuration.md

* update config name

* update lingo
2021-05-27 12:45:06 +02:00
Marcus Efraimsson
f76f426da3 Chore: Refactor Prometheus HTTP client middleware (#34473)
Following #33439 this refactors the Prometheus HTTP transport 
which is replaced by HTTP client middleware.
2021-05-27 12:43:21 +02:00
Marcus Andersson
1ded9a37c1 Alerting: rename type to make it obvious what part of the code base it belongs to. (#34714)
* renamed grafana query to grafana alert query.

* renamed according to feedback in PR.
2021-05-27 12:29:10 +02:00
Torkel Ödegaard
ca79d08dd8 PanelChrome: Fix issue with empty panel after adding a non data panel and coming back from panel edit (#34765)
* PanelChrome: Fix issue with empty panel after adding a non data panel and coming back from panel edit

* Removed the console.log
2021-05-27 12:19:06 +02:00
Ryan McKinley
67028af99e Live: check schema equality between push messages (#34548) 2021-05-27 12:55:42 +03:00
ying-jeanne
c59a2e1bcf remove feature toggle + add libraryPaneldefinition (#34488)
* remove feature toggle + add libraryPaneldefinition

* update doc

* update comments

* Apply suggestions from code review

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* fix typo

* remove post trim

* update api doc

* solve comments and retrigger the test

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2021-05-27 11:14:58 +02:00
Will Browne
dbef103fb9 check is grafana admin (#34773) 2021-05-27 11:08:16 +02:00
Joan López de la Franca Beltran
f601921670 Usage Stats: Make the UsageStatsService extension point more flexible (#34778)
* Usage Stats: Rename service to use a more idiomatic name

* Usage Stats: Update MetricsFunc definition and implementations

* Revert "Usage Stats: Rename service to use a more idiomatic name"

This reverts commit 910ecce3e8.

* Usage Stats: Update MetricsFunc definition and implementations
2021-05-27 10:53:10 +02:00
Dominik Prokop
1fa755bada Time series panel: Position tooltip correctly when window scrolled or resized (#34782)
* Position GraphNG tooltip correctly when window scrolled or resized

* Use syncRect uPlot hook instead of polling

* update snap?!
2021-05-27 10:51:06 +02:00
Peter Holmberg
23cf31a567 Alerting: Move Visualization to QueryRow (#34658)
* move visualization to queryeditorrow

* add prop to hide disable query

* move panel plugin state outside the vizwrapper
2021-05-27 10:46:06 +02:00
Dominik Prokop
811704fd2e PanelEdit: Allow standard field config properties extensions without altering order of standard options (#34669)
* Render tooltip options in correct category

* Allow custom field config properties that extend standard categories
2021-05-27 10:36:45 +02:00
Torkel Ödegaard
6394a60a08 Dashboard: Fixes issue with title or folder change has no effect after exiting settings view (#34677)
* Dashboard: Fixes issue with title or folder change has no effect after existing settings view

* Updates snapshot
2021-05-27 10:07:51 +02:00
Andi Pabst
29be741f26 MySQL Datasource: Add timezone parameter (#27535)
* Add MySQL timezone parameter

* Reword docs/sources/features/datasources/mysql.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* update documentation

* fix formatting mistake from merge

* enhance documentation with reason for parameter usage

* enhance documentation with reason for parameter usage

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2021-05-27 10:03:03 +02:00
Hugo Häggmark
3a68409e5d Plugins: Adds back getMappedValue to @grafana/data (#34746)
* Plugins: Adds back getMappedValue to @grafana/data

* Chore: fixes doc errors

* Tests: fixes snapshot

* Tests: dummy change to restart Drone

* Tests: tries to fix snapshot
2021-05-27 09:29:22 +02:00
Gábor Farkas
49126bebaa devenv: unify slow_proxy_mac and slow_proxy (#34630)
* devenv: update slow_proxy block to work on mac

* devenv: removed unnecessary block slow_proxy_mac
2021-05-27 08:44:35 +02:00
David Parrott
20d356947c set state correctly and test (#34680) 2021-05-26 11:37:42 -07:00
Kevin Minehart
3aba08f708 hide caching settings when its disabled (#34756) 2021-05-26 12:27:28 -05:00
Alexander Emelin
4221f2d147 Live: grafana_live namespace for centrifuge prom metrics (#34712) 2021-05-26 10:12:24 -07:00
Leon Sorokin
1dd5d6ffb0 GraphNG: uPlot 1.6.10 (#34759) 2021-05-26 11:46:24 -05:00
Maria Alexandra
cebe67ab01 Explore: Fix Browser title not updated on Navigation to Explore (#34651)
- Update document.title on Explore page
- Add unit test and snapshot for Wrapper component
2021-05-26 18:44:16 +02:00
Jack Westbrook
6f652e39cb Catalog: set library as active tab when viewing (#34753) 2021-05-26 18:19:40 +02:00
Jack Westbrook
515c73d8e6 Transformations: Prevent FilterByValue transform crashing panel edit (#34747) 2021-05-26 17:30:34 +02:00
Ganesh Vernekar
d69c21acb6 NGAlert: Update the default template to include more URLs (#34715)
* NGAlert: Update the default template to include more URLs

Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>

* Fix tests

Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-05-26 16:49:39 +02:00
Arve Knudsen
1aa3831d84 Docs: Better document Go dep upgrading (#34745)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2021-05-26 16:26:23 +02:00
Serge Zaitsev
ef0fab9aa5 Expose folder UID in dashboards API response (#33991)
* expose folder UID in dashboards API response, import dashboards into folders by folder UID

* handle bad folder UID as 400 error

* 12591:Add tests for request with folderUid

* Use more descriptive error status for missing folders

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* return 400 when folder id is missing

* put error checking in the right place this time

* mention folderUid in the docs

* Clarify usage of folderUid and folderId when both present

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* Capitalise UID

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* mention folder UID in the metadata for a GET response

Co-authored-by: Ida Furjesova <ida.furjesova@grafana.com>
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-05-26 10:20:13 -04:00
Kyle Brandt
9016d20c4c SSE/Chore: cleanup some error messages (#34738)
removes "rpc error: code = InvalidArgument desc =" like strings from error messages.

This came from old grpc stuff left from when SSE was a plugin (that probably should
not have been used even when it was a plugin)
2021-05-26 15:15:21 +02:00
Andrej Ocenas
9dafd4f863 NodeGraph: Show node graph collapsed by default with trace view (#34491)
* Show node graph collapsed by default with trace view

* Fix rename variable

* Change the message

* Add test

* Fix e2e test

* Remove expect in exemplars test

* Align icon

* review fixes
2021-05-26 15:11:47 +02:00
Emil Tullstedt
96da84ca49 Access control: Rename predefined roles to fixed roles (docs) (#34472) 2021-05-26 14:59:24 +02:00
idafurjes
3064209cd5 33369: Add pipeline step with trivy scan for latest on grafana/grafan… (#34660)
* 33369: Add pipeline step with trivy scan for latest on grafana/grafana to drone config

* 33369:Add docker image scan steps to .drone.star file

* 33369: Add low/medium/unknwon scan into one pipeline step

* 33369:Make starlark generate code only for the given edition

* 33369:Adjust naming and add loop into vulnerability step

* Update scripts/job.star

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2021-05-26 14:27:40 +02:00
Torkel Ödegaard
6fb0560a84 TestData: Some simple small test data and first draft of what's new in v8 demo dashboard (#34731)
* TestData: More test data

* Added v8 demo dashboard
2021-05-26 14:11:57 +02:00
Ganesh Vernekar
b168223029 NGAlert: Add integration tests for remaining notification channels (#34662)
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-05-26 16:33:55 +05:30
Serge Zaitsev
dfbf955aa8 simplify method/code sanitization (#34723) 2021-05-26 12:18:54 +02:00
Jack Westbrook
bcc7bd9dd3 VisualisationPicker: allow scrolling in Safari (#34717) 2021-05-26 11:45:50 +02:00
Ben Sully
b7ea66b00d Datasource: Use intervalMs field of query model in GetIntervalFrom if interval field is not set (#34270)
The /api/ds/query and /api/tsdb/query endpoints extract the intervalMs field from
each query in the request, but it currently seems to be ignored, at
least for queries to a Prometheus datasource. This changes
GetIntervalFrom function to check for the presence of intervalMs in the
query model if interval is missing.
2021-05-26 11:45:11 +02:00
Jack Westbrook
ad3b0b2272 PageToolbar: add bottom padding (#34602)
* fix(pagetoolbar): pad elements top and bottom to keep vertical align and wrapper padding

* fix(sidemenu): prevent mobile sidemenu squashing dashboard, vertically align mobile sidemenu icon

* fix(dashboardsettings): prevent subheader overlap

* fix(pagetoolbar): center align all toolbar elements vertically

* refactor(pagetoolbar): combine vertical paddings to bring back original padding values

* refactor: update padding values for components that use PageToolbar

* fix(playlists): update Empty cta link route to prevent 404

* test(dashboard): update snapshot
2021-05-26 10:49:39 +02:00
Torkel Ödegaard
987bffe482 TestData: Support for csv files & csv content (#34674)
* initial implementation of csv support for test data source

* CSV file & content scenarios working

* Removing categorical data

* fixing handler names

* Update pkg/tsdb/testdatasource/csv_data.go

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Update pkg/tsdb/testdatasource/csv_data.go

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Update pkg/tsdb/testdatasource/csv_data.go

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Update pkg/tsdb/testdatasource/csv_data.go

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Update pkg/tsdb/testdatasource/csv_data.go

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Update pkg/tsdb/testdatasource/csv_data.go

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Update pkg/tsdb/testdatasource/csv_data.go

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Fixed lint issues

* updated so it uses the same parsing

* more CSV tests

* lint fixes

* more lint

* lint

* support time field

* migrate manual entry to csv

* more test output

* more test output

* missing file

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-05-26 10:42:42 +02:00
Josh Hunt
b4ce068f0e AzureMonitor: Display variables in Logs resource picker (#34648)
* AzureMonitor: Display variables in Resource Picker

* tests

* hide template variable group when there's no template variables
2021-05-26 09:42:17 +01:00
Arve Knudsen
796590a1aa Chore: Upgrade opentelemetry.io/collector dependency (#34700)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2021-05-26 10:11:37 +02:00
Marcus Andersson
70efaa5582 Alerting: making sure we use the updated queries when querying for data. (#34631) 2021-05-26 10:07:20 +02:00
Marcus Andersson
e19b3df1a9 Alerting: added possibility to preview grafana managed alert rules. (#34600)
* starting to add eval logic.

* wip

* first version of test rule.

* reverted file.

* add info colum to result to show error or (with CC evalmatches)

* fix labels in evalmatch

* fix be test

* refactored using observables.

* moved widht/height div to outside panel rendere.

* adding docs api level.

* adding container styles to error div.

* increasing size of preview.

Co-authored-by: kyle <kyle@grafana.com>
2021-05-26 10:06:28 +02:00
Arve Knudsen
42f33630c7 Security: Upgrade Thrift dependency (#34698)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2021-05-26 09:31:19 +02:00
Torkel Ödegaard
ec33bae8d4 PanelEdit: Add data source label to data source picker dropdown (#34605)
* PanelEdit: Add data source label to data source picker dropdown

* Updated based on ux feedback
2021-05-26 08:59:49 +02:00
Evan Sosenko
80c05becc5 Add missing AWS/AppSync metrics (#34691) 2021-05-26 08:11:26 +02:00
Evan Sosenko
f9b8f3777a CloudWatch: Add Lambda@Edge Amazon CloudFront metrics (#34561)
* Add LambdaExecutionError to AWS/CloudFront

* Add LambdaValidationError to AWS/CloudFront

* Add LambdaLimitExceededErrors to AWS/CloudFront
2021-05-26 08:11:13 +02:00
Alexander Emelin
063e1b5ff5 Live: use latest changes in Go SDK to deal with streaming frames (#34668) 2021-05-25 10:29:02 -07:00
Ivana Huckova
93c5c8345c Prometheus: Update default HTTP method to POST for existing data sources (#34599)
* Change default method to POST

* Update comment

* Add tests

* Update Whats new

* Update docs/sources/whatsnew/whats-new-in-v8-0.md

Co-authored-by: Julien Pivotto <roidelapluie@inuits.eu>

* Update docs/sources/whatsnew/whats-new-in-v8-0.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/whatsnew/whats-new-in-v8-0.md

Co-authored-by: Julien Pivotto <roidelapluie@inuits.eu>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-05-25 18:56:46 +02:00
Owen Diehl
0e0ed43153 Alerting/testing promql extraction (#34665)
* promql compat for marshaling

* extracts upstream instant queries into data frame for alerting

* eval string parity
2021-05-25 11:54:50 -04:00
Sofia Papagiannaki
a5082ab112 Chore: additional check when decrypting values (#34637)
* Chore: additional check when decrypting values

* Apply suggestions from code review
2021-05-25 18:35:54 +03:00
Gábor Farkas
ab26c4dfa4 InfluxDB: Flux: handle boolean data-columns (#34479)
* InfluxDB: Flux: handle boolean data-columns

* normalize data-type strings based on documentation

* reference missing data type
2021-05-25 17:22:04 +02:00
achatterjee-grafana
adbe383456 Update alert doc structure (#34659)
* Restructured and fixed broken relrefs.

* Added relrefs.

* created shared alerts section.
2021-05-25 10:51:28 -04:00
Emil Tullstedt
0f4806db8a Access control: Rename predefined roles to fixed roles (code) (#34469)
* s/grafana:roles:/fixed:/

* Update free text references to predefined roles
2021-05-25 15:36:01 +02:00
Joan López de la Franca Beltran
b74a502dc4 API: Use SettingsProvider on GET settings handler (#34632) 2021-05-25 15:35:43 +02:00
Hugo Häggmark
881abb3af8 Admin: Fixes infinite loading edit profile page (#34627)
* UserProfile: Fixes infinite loading spinner

* Refactor: some clean up

* Refactor: some more cleanup

* Tests: Adds tests for UserProfileEditPage

* Chore: updates after PR comments

* Refactor: removes unnecessary unmount/mount
2021-05-25 14:48:16 +02:00
Erik Sundell
92ac2c40d3 expose azure settings as env variables (#34484) 2021-05-25 13:40:05 +02:00
Giordano Ricci
a8fa5f1796 Grafana-UI: Make card figure honor align prop (#34639) 2021-05-25 12:34:52 +01:00
Simon Podlipsky
2f14ef9235 Chore: Remove console.log() from AngularApp (#34641) 2021-05-25 13:10:54 +02:00
Gábor Farkas
a9b88bc72c fix modified yarn.lock (#34640) 2021-05-25 12:59:37 +02:00
Peter Holmberg
dcef87fd79 Alerting: Move query components to unified folder (#34587) 2021-05-25 11:34:19 +02:00
Dimitris Sotirakis
91657dad18 HTTP Client: Make ResponseHeaderTimeout default timeout in http client (#34597)
* HTTP Client: Add `ResponseHeaderTimeout` - split from `DialContext` timeout

* Fixes according to reviewer's comments

* Use grafana-plugin-sdk-go v0.100.0
2021-05-25 11:32:41 +03:00
Domas
d666defaea Alerting: misc ui fixes volume 4 (#34503) 2021-05-25 10:26:10 +03:00
Josh Hunt
1d3bcb0e90 AzureMonitor: ResourceMonitor children refactor (#34591)
* AzureMonitor: Refactor children to be an arrayu

* Add some resourcePickerData tests

* update tests

* some quick NestedResourceTable tests
2021-05-25 07:51:48 +01:00
Sergey Kostrukov
a337f70469 AzureMonitor: Fix Azure token provider national clouds (#34615)
* Fix AAD authority for sovereign clouds

* Update Azure SDK with scopes fix

* Credential initialization in cache
2021-05-25 08:19:08 +02:00
David Parrott
9b518669dd Alerting WIP update documentation (#34524)
* update alerts index.md

* pr feedback
2021-05-24 20:57:58 +02:00
Diana Payton
3c707c0a30 Docs: Update whats-new-in-v8-0.md (#34609) 2021-05-24 20:25:38 +02:00
Torkel Ödegaard
888683a8ad RowOptions: Fix enter key updating row options (#34586) 2021-05-24 16:21:54 +02:00
Gábor Farkas
0afc4c0361 InfluxDB: InfluxQL query editor: better handling of slow queries (#34507)
* InfluxDB: InfluxQL query editor: better handling of slow queries

* adjusted message to be similar to other messages

* simplify code

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
2021-05-24 15:58:59 +02:00
wangjian
530072fce7 Elasticsearch: fix NewClient not passing httpClientProvider to client impl (#34539)
* Update client.go

fix missing "httpClientProvider" in NewClient

* Update client.go
2021-05-24 14:45:29 +01:00
Uchechukwu Obasi
395d7eb74c DashboardRow: fixes time variable not updating when used in row title (#34523)
* DashboardRow: fixes time variable not updating when used in row title

* adds test cases for subscribe event
2021-05-24 14:28:26 +01:00
Sofia Papagiannaki
b48832c0f7 [Alerting]: alertmanager notifier fixes (#34575) 2021-05-24 16:09:29 +03:00
Peter Holmberg
a0b78313f3 Alerting: Remove unused NGAlerting components (#34568) 2021-05-24 14:20:11 +02:00
Dimitris Sotirakis
6970c9ebfd Use laher/mergefs - remove custom code (#34571) 2021-05-24 14:17:40 +02:00
Alex Khomenko
e9e438ee2f Form: Expose all return values from useForm (#34380) 2021-05-24 15:09:33 +03:00
Ivana Huckova
247bdc2f9b Explore: Add caching for queries run from logs navigation (#34297)
* WIP: Implement simple caching

* If results are cached, don't run new query and use those results

* Add duplicate key check

* Clean up

* Clean up

* Add tests for caching

* Remove unused variables

* Update public/app/features/explore/state/query.test.ts

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>

* Update public/app/features/explore/state/query.test.ts

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>

* Use decorateData to apply all decorators

* Remove unused variables

* Change loading stte to Done

* Clear cache when running query from navigation

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
2021-05-24 13:56:48 +02:00
Ivana Huckova
b5de6e7a1d Add @public release tag to Spinner component (#34576) 2021-05-24 13:30:02 +02:00
mmenbawy
6796a89e9d Loki: Bring back processed bytes as meta info (#34092)
* Loki: Bring back processed bytes as meta info

* style: Lint
2021-05-24 12:28:10 +02:00
Gábor Farkas
e21b90681f influxdb: influxql: make measurement-autocomplete case insensitive (#34563) 2021-05-24 12:24:42 +02:00
Piotr Jamróz
8d05df83ed CustomScrollbar: Invoke setScrollTop callback only after scrolling finishes (#34263)
* Invoke setScrollTop callback only after scrolling finishes

When the state is updated while scroll events are being dispatched (like in QueryGroup) it may cause resetting the scroll position to the first emitted event because setting the scroll happens only after render (useEffect).

* Memoize onScrollStop callback
2021-05-24 10:34:37 +02:00
Gábor Farkas
0c2bb9562a devenv: slow_proxy_mac: make configurable and smaller (#34560) 2021-05-24 10:25:30 +02:00
Jack Westbrook
68513b9a3f Chore: bump Acorn and Underscore (#34302) 2021-05-24 09:55:39 +02:00
Hugo Häggmark
7b17801047 LibraryPanels: Fixes error when importing plugin dashboard (#34557) 2021-05-24 09:31:34 +02:00
Hugo Häggmark
7204a64717 LibraryElements: Creates usage stats for panels and variables (#34476)
* LibraryPanels: Adds usage collection

* Refactor: renames Panel and Variable consts

* Chore: initialize stats

* Refactor: moves library element migrations to migration namespace
2021-05-24 06:11:01 +02:00
Matthew Turland
abe5c06d69 Fix Quick Start link on Geting Started Influx page (#34549)
Square brackets were used for the URL instead of parentheses, causing the markup to be displayed as literal text.
2021-05-22 18:59:49 +02:00
Ryan McKinley
11b2f0ee4d Timeline: use full row height with one series (#34532) 2021-05-20 16:03:23 -07:00
achatterjee-grafana
1e024f22b8 Added singlestat deprecation notice. (#34534)
* Added singlestat deprecation notice.

* removed extra space.
2021-05-20 17:45:07 -04:00
Diana Payton
0ee0d65e12 Docs: 8.0 panel edit updates (#34533)
* Update timeseries.md

* Update add-a-panel.md

* Update _index.md

* Update panel-editor.md

* content updates

* content edits

* moved repeat panels topic

* Update getting-started.md

* edits

* Update DRAFT.md
2021-05-20 23:16:15 +02:00
Vardan Torosyan
676ddac088 Docs: Document fine-grained access control (#33563) 2021-05-20 09:53:34 -07:00
Dimitris Sotirakis
292789ba2d Chore: Increase number of backend test retries in grabpl to 5 in release pipelines (#34493)
* Increase number of backend test retries to 5

* Exclude release-branch pipelines

* Fixes according to reviewer's comments

* Refactor

* Remove unused arguments

* Remove magic number
2021-05-20 17:52:02 +02:00
Torkel Ödegaard
d0769397b2 Histogram: Fix crash when state was undefined (when combine was enabled) (#34514) 2021-05-20 17:36:20 +02:00
kay delaney
aa14621d29 Chore: Move immutable, is-hotkey, and react-inlinesvg deps to grafana-ui (#34290) 2021-05-20 16:19:24 +01:00
Giordano Ricci
e2e78f14d2 Elasticsearch: fix flaky test (#34517) 2021-05-20 17:13:48 +02:00
Gábor Farkas
d95cc4a08f InfluxDB: InfluxQL query editor: generate better HTML (#34467) 2021-05-20 16:46:08 +02:00
Torkel Ödegaard
dbe281530c Timeline: Fix y-axis being cropped (#34508) 2021-05-20 16:43:19 +02:00
Marcus Efraimsson
b76dfc8ed0 Chore: Upgrade loki dependency (#34487)
Upgrades loki dependency to include grafana/loki#3743.
2021-05-20 16:31:53 +02:00
Jack Westbrook
7580124d50 chore: update latest.json to v8-beta2 (#34504) 2021-05-20 15:53:16 +02:00
Jack Westbrook
a7c5636948 Update _index.md (#34500) 2021-05-20 15:33:44 +02:00
Will Browne
c4dcfdef56 Plugins: Improve plugin installer error messages (#34437)
* fix and improve error messages

* enrich error message

* ignore previous changes

* revert manual version bump

* remove condition

* fix version param
2021-05-20 15:11:07 +02:00
Sofia Papagiannaki
23939eab10 [Alerting]: namespace fixes (#34470)
* [Alerting]: forbid viewers for updating rules if viewers can edit

check for CanSave instead of CanEdit

* Clear ngalert tables when deleting the folder

* Apply suggestions from code review

* Log failure to check save permission

Co-authored-by: gotjosh <josue@grafana.com>
2021-05-20 15:49:33 +03:00
Torkel Ödegaard
fd6e338651 Timeline: Fixes crash when there was only 1 threshold step (#34471) 2021-05-20 14:09:19 +02:00
Vardan Torosyan
99acbdd3c5 Docs: Update HTTP API index page to make clear that GE API includes everything OSS (#34269) 2021-05-20 12:38:05 +02:00
Grot (@grafanabot)
fc9c5ec873 ReleaseNotes: Updated changelog and release notes for 8.0.0-beta2 (#34481) 2021-05-20 12:09:18 +02:00
3394 changed files with 184723 additions and 61276 deletions

12
.bingo/.gitignore vendored Normal file
View File

@@ -0,0 +1,12 @@
# Ignore everything
*
# But not these files:
!.gitignore
!*.mod
!README.md
!Variables.mk
!variables.env
*tmp.mod

14
.bingo/README.md Normal file
View File

@@ -0,0 +1,14 @@
# Project Development Dependencies.
This is directory which stores Go modules with pinned buildable package that is used within this repository, managed by https://github.com/bwplotka/bingo.
- Run `bingo get` to install all tools having each own module file in this directory.
- Run `bingo get <tool>` to install <tool> that have own module file in this directory.
- For Makefile: Make sure to put `include .bingo/Variables.mk` in your Makefile, then use $(<upper case tool name>) variable where <tool> is the .bingo/<tool>.mod.
- For shell: Run `source .bingo/variables.env` to source all environment variable for each tool.
- For go: Import `.bingo/variables.go` to for variable names.
- See https://github.com/bwplotka/bingo or -h on how to add, remove or change binaries dependencies.
## Requirements
- Go 1.14+

25
.bingo/Variables.mk Normal file
View File

@@ -0,0 +1,25 @@
# Auto generated binary variables helper managed by https://github.com/bwplotka/bingo v0.4.3. DO NOT EDIT.
# All tools are designed to be build inside $GOBIN.
BINGO_DIR := $(dir $(lastword $(MAKEFILE_LIST)))
GOPATH ?= $(shell go env GOPATH)
GOBIN ?= $(firstword $(subst :, ,${GOPATH}))/bin
GO ?= $(shell which go)
# Below generated variables ensure that every time a tool under each variable is invoked, the correct version
# will be used; reinstalling only if needed.
# For example for wire variable:
#
# In your main Makefile (for non array binaries):
#
#include .bingo/Variables.mk # Assuming -dir was set to .bingo .
#
#command: $(WIRE)
# @echo "Running wire"
# @$(WIRE) <flags/args..>
#
WIRE := $(GOBIN)/wire-v0.5.0
$(WIRE): $(BINGO_DIR)/wire.mod
@# Install binary/ries using Go 1.14+ build command. This is using bwplotka/bingo-controlled, separate go module with pinned dependencies.
@echo "(re)installing $(GOBIN)/wire-v0.5.0"
@cd $(BINGO_DIR) && $(GO) build -mod=mod -modfile=wire.mod -o=$(GOBIN)/wire-v0.5.0 "github.com/google/wire/cmd/wire"

1
.bingo/go.mod Normal file
View File

@@ -0,0 +1 @@
module _ // Fake go.mod auto-created by 'bingo' for go -moddir compatibility with non-Go projects. Commit this file, together with other .mod files.

12
.bingo/variables.env Normal file
View File

@@ -0,0 +1,12 @@
# Auto generated binary variables helper managed by https://github.com/bwplotka/bingo v0.4.3. DO NOT EDIT.
# All tools are designed to be build inside $GOBIN.
# Those variables will work only until 'bingo get' was invoked, or if tools were installed via Makefile's Variables.mk.
GOBIN=${GOBIN:=$(go env GOBIN)}
if [ -z "$GOBIN" ]; then
GOBIN="$(go env GOPATH)/bin"
fi
WIRE="${GOBIN}/wire-v0.5.0"

5
.bingo/wire.mod Normal file
View File

@@ -0,0 +1,5 @@
module _ // Auto generated by https://github.com/bwplotka/bingo. DO NOT EDIT
go 1.16
require github.com/google/wire v0.5.0 // cmd/wire

View File

@@ -1,5 +1,6 @@
[run]
init_cmds = [
["make", "gen-go"],
["go", "run", "build.go", "-dev", "build-cli"],
["go", "run", "build.go", "-dev", "build-server"],
["./bin/grafana-server", "-packaging=dev", "cfg:app_mode=development"]

View File

@@ -1,9 +1,15 @@
load('scripts/pr.star', 'pr_pipelines')
load('scripts/main.star', 'main_pipelines')
load('scripts/release.star', 'release_pipelines', 'test_release_pipelines')
load('scripts/version.star', 'version_branch_pipelines')
load('scripts/job.star', 'cronjobs')
load('scripts/vault.star', 'secrets')
# To generate the .drone.yml file:
# 1. Modify the *.star definitions
# 2. Login to drone and export the env variables (token and server) shown here: https://drone.grafana.net/account
# 3. Run `make drone`
# More information about this process here: https://github.com/grafana/deployment_tools/blob/master/docs/infrastructure/drone/signing.md
load('scripts/drone/pipelines/pr.star', 'pr_pipelines')
load('scripts/drone/pipelines/main.star', 'main_pipelines')
load('scripts/drone/pipelines/release.star', 'release_pipelines', 'test_release_pipelines')
load('scripts/drone/version.star', 'version_branch_pipelines')
load('scripts/drone/pipelines/cron.star', 'cronjobs')
load('scripts/drone/vault.star', 'secrets')
def main(ctx):
edition = 'oss'

1015
.drone.yml

File diff suppressed because it is too large Load Diff

10
.github/CODEOWNERS vendored
View File

@@ -11,9 +11,9 @@
# In each subsection folders are ordered first by depth, then alphabetically.
# This should make it easy to add new rules without breaking existing ones.
# Documentation owner: Diana Payton
/docs/ @grafana/docs-squad
/contribute/ @marcusolsson @grafana/docs-squad
# Documentation owner: Jita Chatterjee
/docs/ @grafana/docs-squad @pkolyvas
/contribute/ @marcusolsson @grafana/docs-squad @pkolyvas
/docs/sources/developers/plugins/ @marcusolsson @grafana/docs-squad
/docs/sources/enterprise/ @osg-grafana @grafana/docs-squad
@@ -22,6 +22,10 @@
go.mod @grafana/backend-platform
go.sum @grafana/backend-platform
# Continuous Integration
.drone.yml @malcolmholmes @dsotirakis @zserge
/scripts/drone/ @malcolmholmes @dsotirakis @zserge
# Cloud Datasources backend code
/pkg/tsdb/cloudwatch @grafana/cloud-datasources @grafana/observability-squad
/pkg/tsdb/azuremonitor @grafana/cloud-datasources

View File

@@ -1,11 +0,0 @@
---
name: Enhancement request
about: Suggest an enhancement or new feature for the Grafana project
labels: 'type: feature request'
---
<!-- Please only use this template for submitting feature requests -->
**What would you like to be added**:
**Why is this needed**:

View File

@@ -1,5 +1,8 @@
blank_issues_enabled: false
contact_links:
- name: Feature Request
url: https://github.com/grafana/grafana/discussions/new
about: Discuss ideas for new features of changes
- name: Questions & Help
url: https://community.grafana.com
about: Please ask and answer questions here.

View File

@@ -66,9 +66,6 @@
"packaging/**/*",
"scripts/build/**/*",
"scripts/*.sh",
"scripts/*.star",
".drone.star",
".drone.yml",
"Makefile",
"Dockerfile",
"Dockerfile.ubuntu"
@@ -76,6 +73,16 @@
"action": "updateLabel",
"addLabel": "type/build-packaging"
},
{
"type": "changedfiles",
"matches": [
"scripts/*.star",
".drone.star",
".drone.yml"
],
"action": "updateLabel",
"addLabel": "type/ci"
},
{
"type": "changedfiles",
"matches": [ "public/app/plugins/datasource/grafana-azure-monitor-datasource/**/*", "pkg/tsdb/azuremonitor/**/*"],

View File

@@ -3,7 +3,7 @@ name: publish_docs
on:
push:
branches:
- main
- v8.2.x
paths:
- 'docs/sources/**'
- 'packages/grafana-*/**'
@@ -16,7 +16,7 @@ jobs:
steps:
- uses: actions/checkout@v1
- run: git clone --single-branch --no-tags --depth 1 -b master https://grafanabot:${{ secrets.GH_BOT_ACCESS_TOKEN }}@github.com/grafana/website-sync ./.github/actions/website-sync
- uses: actions/cache@v2.1.5
- uses: actions/cache@v2.1.6
with:
path: '**/node_modules'
key: ${{ runner.os }}-modules-${{ hashFiles('**/yarn.lock') }}
@@ -36,7 +36,7 @@ jobs:
host: github.com
github_pat: '${{ secrets.GH_BOT_ACCESS_TOKEN }}'
source_folder: docs/sources
target_folder: content/docs/grafana/next
target_folder: content/docs/grafana/latest
allow_no_changes: 'true'
- shell: bash
run: |

9
.gitignore vendored
View File

@@ -50,6 +50,7 @@ public/css/*.min.css
*.tmp
.DS_Store
.vscode/
!.vscode/launch.json
.vs/
.eslintcache
@@ -74,6 +75,7 @@ profile.cov
/pkg/cmd/grafana-server/grafana-server
/pkg/cmd/grafana-server/debug
/pkg/extensions/*
/pkg/server/wireexts_enterprise.go
!/pkg/extensions/main.go
/public/app/extensions
debug.test
@@ -121,8 +123,15 @@ compilation-stats.json
!/e2e/**/screenshots/expected/*
/e2e/**/videos/*
# a11y tests
/pa11y-ci-results.json
/pa11y-ci-report
# report dumping the whole system env
/report.*.json
# auto generated frontend docs
/docs/sources/packages_api
# auto generated Go files
*_gen.go

96
.pa11yci-pr.conf.js Normal file
View File

@@ -0,0 +1,96 @@
var config = {
defaults: {
concurrency: 1,
runners: ['axe'],
chromeLaunchConfig: {
args: ['--no-sandbox'],
},
},
urls: [
{
url: '${HOST}/login',
actions: [
"set field input[name='user'] to admin",
"set field input[name='password'] to admin",
"click element button[aria-label='Login button']",
"wait for element [aria-label='Skip change password button'] to be visible",
],
threshold: 3,
},
{
url: '${HOST}/?orgId=1',
threshold: 7,
},
{
url: '${HOST}/d/O6f11TZWk/panel-tests-bar-gauge',
hideElements: '.sidemenu',
threshold: 2,
},
{
url: '${HOST}/d/O6f11TZWk/panel-tests-bar-gauge?orgId=1&editview=settings',
rootElement: '.dashboard-settings',
threshold: 10,
},
{
url: '${HOST}/?orgId=1&search=open',
rootElement: '.main-view',
threshold: 15,
},
{
url: '${HOST}/alerting/list',
rootElement: '.main-view',
threshold: 7,
},
{
url: '${HOST}/datasources',
rootElement: '.main-view',
threshold: 36,
},
{
url: '${HOST}/org/users',
rootElement: '.main-view',
threshold: 4,
},
{
url: '${HOST}/org/teams',
rootElement: '.main-view',
threshold: 1,
},
{
url: '${HOST}/plugins',
rootElement: '.main-view',
threshold: 41,
},
{
url: '${HOST}/org',
rootElement: '.main-view',
threshold: 2,
},
{
url: '${HOST}/org/apikeys',
rootElement: '.main-view',
threshold: 5,
},
{
url: '${HOST}/dashboards',
rootElement: '.main-view',
threshold: 8,
},
],
};
function myPa11yCiConfiguration(urls, defaults) {
const HOST_SERVER = process.env.HOST || 'localhost';
const PORT_SERVER = process.env.PORT || '3000';
for (var idx = 0; idx < urls.length; idx++) {
urls[idx] = { ...urls[idx], url: urls[idx].url.replace('${HOST}', `${HOST_SERVER}:${PORT_SERVER}`) };
}
return {
defaults: defaults,
urls: urls,
};
}
module.exports = myPa11yCiConfiguration(config.urls, config.defaults);

83
.pa11yci.conf.js Normal file
View File

@@ -0,0 +1,83 @@
var config = {
defaults: {
concurrency: 1,
runners: ['axe'],
chromeLaunchConfig: {
args: ['--no-sandbox'],
},
},
urls: [
{
url: '${HOST}/login',
actions: [
"set field input[name='user'] to admin",
"set field input[name='password'] to admin",
"click element button[aria-label='Login button']",
"wait for element [aria-label='Skip change password button'] to be visible",
],
},
{
url: '${HOST}/?orgId=1',
},
{
url: '${HOST}/d/O6f11TZWk/panel-tests-bar-gauge',
hideElements: '.sidemenu',
},
{
url: '${HOST}/d/O6f11TZWk/panel-tests-bar-gauge?orgId=1&editview=settings',
rootElement: '.dashboard-settings',
},
{
url: '${HOST}/?orgId=1&search=open',
rootElement: '.main-view',
},
{
url: '${HOST}/alerting/list',
rootElement: '.main-view',
},
{
url: '${HOST}/datasources',
rootElement: '.main-view',
},
{
url: '${HOST}/org/users',
rootElement: '.main-view',
},
{
url: '${HOST}/org/teams',
rootElement: '.main-view',
},
{
url: '${HOST}/plugins',
rootElement: '.main-view',
},
{
url: '${HOST}/org',
rootElement: '.main-view',
},
{
url: '${HOST}/org/apikeys',
rootElement: '.main-view',
},
{
url: '${HOST}/dashboards',
rootElement: '.main-view',
},
],
};
function myPa11yCiConfiguration(urls, defaults) {
const HOST_SERVER = process.env.HOST || 'localhost';
const PORT_SERVER = process.env.PORT || '3000';
for (var idx = 0; idx < urls.length; idx++) {
urls[idx] = { ...urls[idx], url: urls[idx].url.replace('${HOST}', `${HOST_SERVER}:${PORT_SERVER}`) };
}
return {
defaults: defaults,
urls: urls,
};
}
module.exports = myPa11yCiConfiguration(config.urls, config.defaults);

View File

@@ -5,8 +5,9 @@ pkg/
node_modules
public/vendor/
vendor/
data/
/data/
e2e/tmp
public/build/
public/sass/*.generated.scss
devenv/
public/lib/monaco

14
.vscode/launch.json vendored Normal file
View File

@@ -0,0 +1,14 @@
{
"version": "0.2.0",
"configurations": [
{
"name": "Run Server",
"type": "go",
"request": "launch",
"mode": "auto",
"program": "${workspaceFolder}/pkg/cmd/grafana-server/",
"env": {},
"args": ["--homepath", "${workspaceFolder}", "--packaging", "dev"]
}
]
}

File diff suppressed because it is too large Load Diff

View File

@@ -26,10 +26,12 @@ Report a bug by submitting a [bug report](https://github.com/grafana/grafana/iss
Follow the issue template and add additional information that will help us replicate the problem.
For data visualization issues:
- Query results from the inspect drawer (data tab & query inspector)
- Panel settings can be extracted in the panel inspect drawer JSON tab
For a dashboard related issues:
- Dashboard JSON can be found in the dashboard settings JSON model view
For authentication and alerting Grafana server logs are useful.
@@ -40,7 +42,7 @@ If you believe you've found a security vulnerability, please read our [security
### Suggest enhancements
If you have an idea of how to improve Grafana, submit an [enhancement request](https://github.com/grafana/grafana/issues/new?labels=type%3A+feature+request&template=2-feature_request.md).
If you have an idea of how to improve Grafana, submit an [enhancement request](https://github.com/grafana/grafana/discussions/new).
We want to make Grafana accessible to even more people. Submit an [accessibility issue](https://github.com/grafana/grafana/issues/new?labels=type%3A+accessibility&template=3-accessibility.md) to help us understand what we can improve.

View File

@@ -1,4 +1,4 @@
FROM node:14.16.0-alpine3.13 as js-builder
FROM node:16-alpine3.14 as js-builder
WORKDIR /usr/src/app/
@@ -17,25 +17,25 @@ COPY emails emails
ENV NODE_ENV production
RUN yarn build
FROM golang:1.16.1-alpine3.13 as go-builder
FROM golang:1.17.0-alpine3.14 as go-builder
RUN apk add --no-cache gcc g++
WORKDIR $GOPATH/src/github.com/grafana/grafana
COPY go.mod go.sum embed.go ./
RUN go mod verify
COPY cue cue
COPY cue.mod cue.mod
COPY packages/grafana-schema packages/grafana-schema
COPY public/app/plugins public/app/plugins
COPY pkg pkg
COPY build.go package.json ./
RUN go mod verify
RUN go run build.go build
# Final stage
FROM alpine:3.13
FROM alpine:3.14.2
LABEL maintainer="Grafana team <hello@grafana.com>"

View File

@@ -17,19 +17,19 @@ COPY emails emails
ENV NODE_ENV production
RUN yarn build
FROM golang:1.16 AS go-builder
FROM golang:1.17.0 AS go-builder
WORKDIR /src/grafana
COPY go.mod go.sum embed.go ./
RUN go mod verify
COPY build.go package.json ./
COPY pkg pkg/
COPY cue cue/
COPY cue.mod cue.mod/
COPY packages/grafana-schema packages/grafana-schema/
COPY public/app/plugins public/app/plugins/
RUN go mod verify
RUN go run build.go build
FROM ubuntu:20.04

View File

@@ -78,6 +78,7 @@ The current team members are:
- Diana Sarlinska ([Grafana Labs](https://grafana.com/))
- Dominik Prokop ([Grafana Labs](https://grafana.com/))
- Emil Tullstedt ([Grafana Labs](https://grafana.com/))
- Erik Sundell ([Grafana Labs](https://grafana.com/))
- Fredrik Enestad ([Soundtrack Your Brand](https://www.soundtrackyourbrand.com/))
- Hugo Häggmark ([Grafana Labs](https://grafana.com/))
- Ivana Huckova ([Grafana Labs](https://grafana.com/))
@@ -102,6 +103,8 @@ The current team members are:
- Tobias Skarhed ([Grafana Labs](https://grafana.com/))
- Torkel Ödegaard ([Grafana Labs](https://grafana.com/))
- Utkarsh Bhatnagar ([Tinder](https://www.tinder.com/))
- Will Browne ([Grafana Labs](https://grafana.com/))
- Zoltán Bedi ([Grafana Labs](https://grafana.com/))
### Maintainers

View File

@@ -6,7 +6,7 @@ The default license for this project is [AGPL-3.0-only](LICENSE).
## Apache-2.0
The following folders and their subfolders are licensed under Apache-2.0:
The following directories and their subdirectories are licensed under Apache-2.0:
```
packages/grafana-data/
@@ -20,3 +20,9 @@ packaging/
grafana-mixin/
cue/
```
The following directories and their subdirectories are the original upstream licenses:
```
public/vendor/
```

View File

@@ -2,11 +2,14 @@
##
## For more information, refer to https://suva.sh/posts/well-documented-makefiles/
WIRE_TAGS = "oss"
-include local/Makefile
include .bingo/Variables.mk
.PHONY: all deps-go deps-js deps build-go build-server build-cli build-js build build-docker-dev build-docker-full lint-go golangci-lint test-go test-js test run run-frontend clean devenv devenv-down protobuf help
.PHONY: all deps-go deps-js deps build-go build-server build-cli build-js build build-docker-dev build-docker-full lint-go golangci-lint test-go test-js test run run-frontend clean devenv devenv-down protobuf drone help
GO = GO111MODULE=on go
GO = go
GO_FILES ?= ./pkg/...
SH_FILES ?= $(shell find ./scripts -name *.sh)
@@ -27,7 +30,11 @@ node_modules: package.json yarn.lock ## Install node modules.
##@ Building
build-go: ## Build all Go binaries.
gen-go: $(WIRE)
@echo "generate go files"
$(WIRE) gen -tags $(WIRE_TAGS) ./pkg/server
build-go: gen-go ## Build all Go binaries.
@echo "build go files"
$(GO) run build.go build
@@ -36,7 +43,7 @@ build-server: ## Build Grafana server.
$(GO) run build.go build-server
build-cli: ## Build Grafana CLI application.
@echo "build in CI environment"
@echo "build grafana-cli"
$(GO) run build.go build-cli
build-js: ## Build frontend assets.
@@ -51,7 +58,7 @@ scripts/go/bin/bra: scripts/go/go.mod
$(GO) build -o ./bin/bra github.com/unknwon/bra
run: scripts/go/bin/bra ## Build and run web server on filesystem changes.
@GO111MODULE=on scripts/go/bin/bra run
@scripts/go/bin/bra run
run-frontend: deps-js ## Fetch js dependencies and watch frontend for rebuild
yarn start
@@ -91,7 +98,7 @@ shellcheck: $(SH_FILES) ## Run checks for shell scripts.
build-docker-dev: ## Build Docker image for development (fast).
@echo "build development container"
@echo "\033[92mInfo:\033[0m the frontend code is expected to be built already."
$(GO) run build.go -goos linux -pkg-arch amd64 ${OPT} build pkg-archive latest
$(GO) run build.go -goos linux -pkg-arch amd64 ${OPT} build latest
cp dist/grafana-latest.linux-x64.tar.gz packaging/docker
cd packaging/docker && docker build --tag grafana/grafana:dev .
@@ -140,5 +147,13 @@ clean: ## Clean up intermediate build artifacts.
rm -rf node_modules
rm -rf public/build
# This repository's configuration is protected (https://readme.drone.io/signature/).
# Use this make target to regenerate the configuration YAML files when
# you modify starlark files.
drone:
drone starlark
drone lint
drone --server https://drone.grafana.net sign --save grafana/grafana
help: ## Display this help.
@awk 'BEGIN {FS = ":.*##"; printf "\nUsage:\n make \033[36m<target>\033[0m\n"} /^[a-zA-Z_-]+:.*?##/ { printf " \033[36m%-15s\033[0m %s\n", $$1, $$2 } /^##@/ { printf "\n\033[1m%s\033[0m\n", substr($$0, 5) } ' $(MAKEFILE_LIST)

View File

@@ -4,14 +4,14 @@ Upgrading Go or Node.js requires making changes in many different files. See bel
## Go
- CircleCi
- Drone
- `grafana/build-container`
- Appveyor
- Dockerfile
## Node.js
- CircleCI
- Drone
- `grafana/build-container`
- Appveyor
- Dockerfile
@@ -20,28 +20,29 @@ Upgrading Go or Node.js requires making changes in many different files. See bel
The Grafana project uses [Go modules](https://golang.org/cmd/go/#hdr-Modules__module_versions__and_more) to manage dependencies on external packages. This requires a working Go environment with version 1.11 or greater installed.
> **Note:** Since most developers of Grafana still use the `GOPATH` we need to specify `GO111MODULE=on` to make `go mod` and `got get` work as intended. If you have setup Grafana outside of the `GOPATH` on your machine you can skip `GO111MODULE=on` when running the commands below.
To add or update a new dependency, use the `go get` command:
```bash
# The GO111MODULE variable can be omitted when the code isn't located in GOPATH.
# Pick the latest tagged release.
GO111MODULE=on go get example.com/some/module/pkg
go get example.com/some/module/pkg
# Pick a specific version.
GO111MODULE=on go get example.com/some/module/pkg@vX.Y.Z
go get example.com/some/module/pkg@vX.Y.Z
```
Tidy up the `go.mod` and `go.sum` files:
```bash
# The GO111MODULE variable can be omitted when the code isn't located in GOPATH.
GO111MODULE=on go mod tidy
go mod tidy
```
You have to commit the changes to `go.mod` and `go.sum` before submitting the pull request.
To understand what the actual dependencies of `grafana-server` are, one could run it with `-vv` flag. This might produce an output, different from `go.mod` contents and `-vv` option is the source of truth here. It lists the modules _compiled_ into the executable, while `go.mod` lists also test and weak transitive dependencies (modules, used in some package, which is not in use by itself). If you are interested in reporting a vulnerability in a dependency module - please consult `-vv` output, maybe the "dependency" is not a dependency as such.
### Upgrading dependencies
If you need to upgrade a direct or indirect dependency, you can do it like so, $MODULE being the dependency in question: `go get -u $MODULE`. The corresponding entry in go.mod should then have the version you specified; if it's an indirect dependency, the entry should have the `// indirect` comment. Follow this by executing `go mod tidy`, to ensure that go.mod and go.sum are up to date. If the indirect dependency turns out to not be used (transitively) by any of our packages, `go mod tidy` will actually strip it from go.mod. In that case, you can just ignore it since it isn't used in the end.
## Node.js dependencies
Updated using `yarn`.
@@ -50,9 +51,9 @@ Updated using `yarn`.
## Where to make changes
### CircleCI
### Drone
Our builds run on CircleCI through our build script.
Our CI builds run on Drone.
#### Files
@@ -66,7 +67,7 @@ Our builds run on CircleCI through our build script.
### grafana/build-container
The main build step (in CircleCI) is built using a custom build container that comes pre-baked with some of the necessary dependencies.
The main build steps (in Drone) happen using a custom Docker image that comes pre-baked with some of the necessary dependencies.
Link: [grafana/build-container](https://github.com/grafana/grafana/tree/main/scripts/build/ci-build)

470
build.go
View File

@@ -3,480 +3,14 @@
package main
import (
"bytes"
"crypto/md5"
"crypto/sha256"
"encoding/json"
"flag"
"fmt"
"go/build"
"io"
"io/ioutil"
"log"
"os"
"os/exec"
"path"
"path/filepath"
"runtime"
"strconv"
"strings"
"time"
)
const (
windows = "windows"
linux = "linux"
)
var (
//versionRe = regexp.MustCompile(`-[0-9]{1,3}-g[0-9a-f]{5,10}`)
goarch string
goos string
gocc string
cgo bool
libc string
pkgArch string
version string = "v1"
buildTags []string
// deb & rpm does not support semver so have to handle their version a little differently
linuxPackageVersion string = "v1"
linuxPackageIteration string = ""
race bool
workingDir string
includeBuildId bool = true
buildId string = "0"
serverBinary string = "grafana-server"
cliBinary string = "grafana-cli"
binaries []string = []string{serverBinary, cliBinary}
isDev bool = false
enterprise bool = false
skipRpmGen bool = false
skipDebGen bool = false
printGenVersion bool = false
"github.com/grafana/grafana/pkg/build"
)
func main() {
log.SetOutput(os.Stdout)
log.SetFlags(0)
var buildIdRaw string
var buildTagsRaw string
flag.StringVar(&goarch, "goarch", runtime.GOARCH, "GOARCH")
flag.StringVar(&goos, "goos", runtime.GOOS, "GOOS")
flag.StringVar(&gocc, "cc", "", "CC")
flag.StringVar(&libc, "libc", "", "LIBC")
flag.StringVar(&buildTagsRaw, "build-tags", "", "Sets custom build tags")
flag.BoolVar(&cgo, "cgo-enabled", cgo, "Enable cgo")
flag.StringVar(&pkgArch, "pkg-arch", "", "PKG ARCH")
flag.BoolVar(&race, "race", race, "Use race detector")
flag.BoolVar(&includeBuildId, "includeBuildId", includeBuildId, "IncludeBuildId in package name")
flag.BoolVar(&enterprise, "enterprise", enterprise, "Build enterprise version of Grafana")
flag.StringVar(&buildIdRaw, "buildId", "0", "Build ID from CI system")
flag.BoolVar(&isDev, "dev", isDev, "optimal for development, skips certain steps")
flag.BoolVar(&skipRpmGen, "skipRpm", skipRpmGen, "skip rpm package generation (default: false)")
flag.BoolVar(&skipDebGen, "skipDeb", skipDebGen, "skip deb package generation (default: false)")
flag.BoolVar(&printGenVersion, "gen-version", printGenVersion, "generate Grafana version and output (default: false)")
flag.Parse()
buildId = shortenBuildId(buildIdRaw)
readVersionFromPackageJson()
if pkgArch == "" {
pkgArch = goarch
}
if printGenVersion {
printGeneratedVersion()
return
}
if len(buildTagsRaw) > 0 {
buildTags = strings.Split(buildTagsRaw, ",")
}
log.Printf("Version: %s, Linux Version: %s, Package Iteration: %s\n", version, linuxPackageVersion, linuxPackageIteration)
if flag.NArg() == 0 {
log.Println("Usage: go run build.go build")
return
}
workingDir, _ = os.Getwd()
for _, cmd := range flag.Args() {
switch cmd {
case "setup":
setup()
case "build-srv", "build-server":
clean()
doBuild("grafana-server", "./pkg/cmd/grafana-server", buildTags)
case "build-cli":
clean()
doBuild("grafana-cli", "./pkg/cmd/grafana-cli", buildTags)
case "build":
//clean()
for _, binary := range binaries {
doBuild(binary, "./pkg/cmd/"+binary, buildTags)
}
case "build-frontend":
yarn("build")
case "sha-dist":
shaFilesInDist()
case "latest":
makeLatestDistCopies()
case "clean":
clean()
default:
log.Fatalf("Unknown command %q", cmd)
}
}
}
func makeLatestDistCopies() {
files, err := ioutil.ReadDir("dist")
if err != nil {
log.Fatalf("failed to create latest copies. Cannot read from /dist")
}
latestMapping := map[string]string{
"_amd64.deb": "dist/grafana_latest_amd64.deb",
".x86_64.rpm": "dist/grafana-latest-1.x86_64.rpm",
".linux-amd64.tar.gz": "dist/grafana-latest.linux-x64.tar.gz",
".linux-amd64-musl.tar.gz": "dist/grafana-latest.linux-x64-musl.tar.gz",
".linux-armv7.tar.gz": "dist/grafana-latest.linux-armv7.tar.gz",
".linux-armv7-musl.tar.gz": "dist/grafana-latest.linux-armv7-musl.tar.gz",
".linux-armv6.tar.gz": "dist/grafana-latest.linux-armv6.tar.gz",
".linux-arm64.tar.gz": "dist/grafana-latest.linux-arm64.tar.gz",
".linux-arm64-musl.tar.gz": "dist/grafana-latest.linux-arm64-musl.tar.gz",
}
for _, file := range files {
for extension, fullName := range latestMapping {
if strings.HasSuffix(file.Name(), extension) {
runError("cp", path.Join("dist", file.Name()), fullName)
}
}
}
}
func readVersionFromPackageJson() {
reader, err := os.Open("package.json")
if err != nil {
log.Fatal("Failed to open package.json")
return
}
defer reader.Close()
jsonObj := map[string]interface{}{}
jsonParser := json.NewDecoder(reader)
if err := jsonParser.Decode(&jsonObj); err != nil {
log.Fatal("Failed to decode package.json")
}
version = jsonObj["version"].(string)
linuxPackageVersion = version
linuxPackageIteration = ""
// handle pre version stuff (deb / rpm does not support semver)
parts := strings.Split(version, "-")
if len(parts) > 1 {
linuxPackageVersion = parts[0]
linuxPackageIteration = parts[1]
}
// add timestamp to iteration
if includeBuildId {
if buildId != "0" {
linuxPackageIteration = fmt.Sprintf("%s%s", buildId, linuxPackageIteration)
} else {
linuxPackageIteration = fmt.Sprintf("%d%s", time.Now().Unix(), linuxPackageIteration)
}
}
}
func yarn(params ...string) {
runPrint(`yarn run`, params...)
}
func genPackageVersion() string {
if includeBuildId {
return fmt.Sprintf("%v-%v", linuxPackageVersion, linuxPackageIteration)
} else {
return version
}
}
func setup() {
args := []string{"install", "-v"}
if goos == windows {
args = append(args, "-buildmode=exe")
}
args = append(args, "./pkg/cmd/grafana-server")
runPrint("go", args...)
}
func printGeneratedVersion() {
fmt.Print(genPackageVersion())
}
func test(pkg string) {
setBuildEnv()
args := []string{"test", "-short", "-timeout", "60s"}
if goos == windows {
args = append(args, "-buildmode=exe")
}
args = append(args, pkg)
runPrint("go", args...)
}
func doBuild(binaryName, pkg string, tags []string) {
libcPart := ""
if libc != "" {
libcPart = fmt.Sprintf("-%s", libc)
}
binary := fmt.Sprintf("./bin/%s-%s%s/%s", goos, goarch, libcPart, binaryName)
if isDev {
//don't include os/arch/libc in output path in dev environment
binary = fmt.Sprintf("./bin/%s", binaryName)
}
if goos == windows {
binary += ".exe"
}
if !isDev {
rmr(binary, binary+".md5")
}
args := []string{"build", "-ldflags", ldflags()}
if goos == windows {
// Work around a linking error on Windows: "export ordinal too large"
args = append(args, "-buildmode=exe")
}
if len(tags) > 0 {
args = append(args, "-tags", strings.Join(tags, ","))
}
if race {
args = append(args, "-race")
}
args = append(args, "-o", binary)
args = append(args, pkg)
if !isDev {
setBuildEnv()
runPrint("go", "version")
libcPart := ""
if libc != "" {
libcPart = fmt.Sprintf("/%s", libc)
}
fmt.Printf("Targeting %s/%s%s\n", goos, goarch, libcPart)
}
runPrint("go", args...)
if !isDev {
// Create an md5 checksum of the binary, to be included in the archive for
// automatic upgrades.
err := md5File(binary)
if err != nil {
log.Fatal(err)
}
}
}
func ldflags() string {
var b bytes.Buffer
b.WriteString("-w")
b.WriteString(fmt.Sprintf(" -X main.version=%s", version))
b.WriteString(fmt.Sprintf(" -X main.commit=%s", getGitSha()))
b.WriteString(fmt.Sprintf(" -X main.buildstamp=%d", buildStamp()))
b.WriteString(fmt.Sprintf(" -X main.buildBranch=%s", getGitBranch()))
if v := os.Getenv("LDFLAGS"); v != "" {
b.WriteString(fmt.Sprintf(" -extldflags \"%s\"", v))
}
return b.String()
}
func rmr(paths ...string) {
for _, path := range paths {
log.Println("rm -r", path)
os.RemoveAll(path)
}
}
func clean() {
if isDev {
return
}
rmr("dist")
rmr("tmp")
rmr(filepath.Join(build.Default.GOPATH, fmt.Sprintf("pkg/%s_%s/github.com/grafana", goos, goarch)))
}
func setBuildEnv() {
os.Setenv("GOOS", goos)
if goos == windows {
// require windows >=7
os.Setenv("CGO_CFLAGS", "-D_WIN32_WINNT=0x0601")
}
if goarch != "amd64" || goos != linux {
// needed for all other archs
cgo = true
}
if strings.HasPrefix(goarch, "armv") {
os.Setenv("GOARCH", "arm")
os.Setenv("GOARM", goarch[4:])
} else {
os.Setenv("GOARCH", goarch)
}
if goarch == "386" {
os.Setenv("GO386", "387")
}
if cgo {
os.Setenv("CGO_ENABLED", "1")
}
if gocc != "" {
os.Setenv("CC", gocc)
}
}
func getGitBranch() string {
v, err := runError("git", "rev-parse", "--abbrev-ref", "HEAD")
if err != nil {
return "main"
}
return string(v)
}
func getGitSha() string {
v, err := runError("git", "rev-parse", "--short", "HEAD")
if err != nil {
return "unknown-dev"
}
return string(v)
}
func buildStamp() int64 {
// use SOURCE_DATE_EPOCH if set.
if s, _ := strconv.ParseInt(os.Getenv("SOURCE_DATE_EPOCH"), 10, 64); s > 0 {
return s
}
bs, err := runError("git", "show", "-s", "--format=%ct")
if err != nil {
return time.Now().Unix()
}
s, _ := strconv.ParseInt(string(bs), 10, 64)
return s
}
func runError(cmd string, args ...string) ([]byte, error) {
ecmd := exec.Command(cmd, args...)
bs, err := ecmd.CombinedOutput()
if err != nil {
return nil, err
}
return bytes.TrimSpace(bs), nil
}
func runPrint(cmd string, args ...string) {
log.Println(cmd, strings.Join(args, " "))
ecmd := exec.Command(cmd, args...)
ecmd.Env = append(os.Environ(), "GO111MODULE=on")
ecmd.Stdout = os.Stdout
ecmd.Stderr = os.Stderr
err := ecmd.Run()
if err != nil {
log.Fatal(err)
}
}
func md5File(file string) error {
fd, err := os.Open(file)
if err != nil {
return err
}
defer fd.Close()
h := md5.New()
_, err = io.Copy(h, fd)
if err != nil {
return err
}
out, err := os.Create(file + ".md5")
if err != nil {
return err
}
_, err = fmt.Fprintf(out, "%x\n", h.Sum(nil))
if err != nil {
return err
}
return out.Close()
}
func shaFilesInDist() {
filepath.Walk("./dist", func(path string, f os.FileInfo, err error) error {
if path == "./dist" {
return nil
}
if !strings.Contains(path, ".sha256") {
err := shaFile(path)
if err != nil {
log.Printf("Failed to create sha file. error: %v\n", err)
}
}
return nil
})
}
func shaFile(file string) error {
fd, err := os.Open(file)
if err != nil {
return err
}
defer fd.Close()
h := sha256.New()
_, err = io.Copy(h, fd)
if err != nil {
return err
}
out, err := os.Create(file + ".sha256")
if err != nil {
return err
}
_, err = fmt.Fprintf(out, "%x\n", h.Sum(nil))
if err != nil {
return err
}
return out.Close()
}
func shortenBuildId(buildId string) string {
buildId = strings.Replace(buildId, "-", "", -1)
if len(buildId) < 9 {
return buildId
}
return buildId[0:8]
os.Exit(build.RunCmd())
}

View File

@@ -158,18 +158,26 @@ tls_handshake_timeout_seconds = 10
# waiting for the server to approve.
expect_continue_timeout_seconds = 1
# Optionally limits the total number of connections per host, including connections in the dialing,
# active, and idle states. On limit violation, dials will block.
# A value of zero (0) means no limit.
max_conns_per_host = 0
# The maximum number of idle connections that Grafana will keep alive.
max_idle_connections = 100
# The maximum number of idle connections per host that Grafana will keep alive.
max_idle_connections_per_host = 2
# How many seconds the data proxy keeps an idle connection open before timing out.
idle_conn_timeout_seconds = 90
# If enabled and user is not anonymous, data proxy will add X-Grafana-User header with username into the request.
send_user_header = false
# Limit the amount of bytes that will be read/accepted from responses of outgoing HTTP requests.
response_limit = 0
# Limits the number of rows that Grafana will process from SQL data sources.
row_limit = 1000000
#################################### Analytics ###########################
[analytics]
# Server reporting, sends usage counters to stats.grafana.org every 24 hours.
@@ -194,6 +202,18 @@ google_analytics_ua_id =
# Google Tag Manager ID, only enabled if you specify an id here
google_tag_manager_id =
# Rudderstack write key, enabled only if rudderstack_data_plane_url is also set
rudderstack_write_key =
# Rudderstack data plane url, enabled only if rudderstack_write_key is also set
rudderstack_data_plane_url =
# Application Insights connection string. Specify an URL string to enable this feature.
application_insights_connection_string =
# Optional. Specifies an Application Insights endpoint URL where the endpoint string is wrapped in backticks ``.
application_insights_endpoint_url =
#################################### Security ############################
[security]
# disable creation of admin user on first start of grafana
@@ -488,10 +508,13 @@ login_attribute_path =
name_attribute_path =
role_attribute_path =
role_attribute_strict = false
groups_attribute_path =
id_token_attribute_name =
team_ids_attribute_path =
auth_url =
token_url =
api_url =
teams_url =
allowed_domains =
team_ids =
allowed_organizations =
@@ -586,7 +609,8 @@ startTLS_policy =
[emails]
welcome_email_on_sign_up = false
templates_pattern = emails/*.html
templates_pattern = emails/*.html, emails/*.txt
content_types = text/html
#################################### Logging ##########################
[log]
@@ -705,11 +729,67 @@ global_session = -1
# global limit of alerts
global_alert_rule = -1
#################################### Unified Alerting ####################
[unified_alerting]
# Enable the Unified Alerting sub-system and interface. When enabled we'll migrate all of your alert rules and notification channels to the new system. New alert rules will be created and your notification channels will be converted into an Alertmanager configuration. Previous data is preserved to enable backwards compatibility but new data is removed.
enabled = false
# Comma-separated list of organization IDs for which to disable unified alerting. Only supported if unified alerting is enabled.
disabled_orgs =
# Specify the frequency of polling for admin config changes.
# The interval string is a possibly signed sequence of decimal numbers, followed by a unit suffix (ms, s, m, h, d), e.g. 30s or 1m.
admin_config_poll_interval = 60s
# Specify the frequency of polling for Alertmanager config changes.
# The interval string is a possibly signed sequence of decimal numbers, followed by a unit suffix (ms, s, m, h, d), e.g. 30s or 1m.
alertmanager_config_poll_interval = 60s
# Listen address/hostname and port to receive unified alerting messages for other Grafana instances. The port is used for both TCP and UDP. It is assumed other Grafana instances are also running on the same port.
ha_listen_address = "0.0.0.0:9094"
# Explicit address/hostname and port to advertise other Grafana instances. The port is used for both TCP and UDP.
ha_advertise_address = ""
# Comma-separated list of initial instances (in a format of host:port) that will form the HA cluster. Configuring this setting will enable High Availability mode for alerting.
ha_peers = ""
# Time to wait for an instance to send a notification via the Alertmanager. In HA, each Grafana instance will
# be assigned a position (e.g. 0, 1). We then multiply this position with the timeout to indicate how long should
# each instance wait before sending the notification to take into account replication lag.
# The interval string is a possibly signed sequence of decimal numbers, followed by a unit suffix (ms, s, m, h, d), e.g. 30s or 1m.
ha_peer_timeout = 15s
# The interval between sending gossip messages. By lowering this value (more frequent) gossip messages are propagated
# across cluster more quickly at the expense of increased bandwidth usage.
# The interval string is a possibly signed sequence of decimal numbers, followed by a unit suffix (ms, s, m, h, d), e.g. 30s or 1m.
ha_gossip_interval = 200ms
# The interval between gossip full state syncs. Setting this interval lower (more frequent) will increase convergence speeds
# across larger clusters at the expense of increased bandwidth usage.
# The interval string is a possibly signed sequence of decimal numbers, followed by a unit suffix (ms, s, m, h, d), e.g. 30s or 1m.
ha_push_pull_interval = 60s
# Enable or disable alerting rule execution. The alerting UI remains visible. This option has a legacy version in the `[alerting]` section that takes precedence.
execute_alerts = true
# Alert evaluation timeout when fetching data from the datasource. This option has a legacy version in the `[alerting]` section that takes precedence.
# The timeout string is a possibly signed sequence of decimal numbers, followed by a unit suffix (ms, s, m, h, d), e.g. 30s or 1m.
evaluation_timeout = 30s
# Number of times we'll attempt to evaluate an alert rule before giving up on that evaluation. This option has a legacy version in the `[alerting]` section that takes precedence.
max_attempts = 3
# Minimum interval to enforce between rule evaluations. Rules will be adjusted if they are less than this value or if they are not multiple of the scheduler interval (10s). Higher values can help with resource management as we'll schedule fewer evaluations over time. This option has a legacy version in the `[alerting]` section that takes precedence.
# The interval string is a possibly signed sequence of decimal numbers, followed by a unit suffix (ms, s, m, h, d), e.g. 30s or 1m.
min_interval = 10s
#################################### Alerting ############################
[alerting]
# Disable alerting engine & UI features
# Disable legacy alerting engine & UI features
enabled = true
# Makes it possible to turn off alert rule execution but alerting UI is visible
# Makes it possible to turn off alert execution but alerting UI is visible
execute_alerts = true
# Default setting for new alert rules. Defaults to categorize error and timeouts as alerting. (alerting, keep_state)
@@ -882,10 +962,10 @@ disable_sanitize_html = false
[plugins]
enable_alpha = false
app_tls_skip_verify_insecure = false
# Enter a comma-separated list of plugin identifiers to identify plugins that are allowed to be loaded even if they lack a valid signature.
# Enter a comma-separated list of plugin identifiers to identify plugins to load even if they are unsigned. Plugins with modified signatures are never loaded.
allow_loading_unsigned_plugins =
# Enable or disable installing plugins directly from within Grafana.
plugin_admin_enabled = false
plugin_admin_enabled = true
plugin_admin_external_manage_enabled = false
plugin_catalog_url = https://grafana.com/grafana/plugins/
@@ -896,6 +976,21 @@ plugin_catalog_url = https://grafana.com/grafana/plugins/
# tuning. 0 disables Live, -1 means unlimited connections.
max_connections = 100
# allowed_origins is a comma-separated list of origins that can establish connection with Grafana Live.
# If not set then origin will be matched over root_url. Supports wildcard symbol "*".
allowed_origins =
# engine defines an HA (high availability) engine to use for Grafana Live. By default no engine used - in
# this case Live features work only on a single Grafana server.
# Available options: "redis".
# Setting ha_engine is an EXPERIMENTAL feature.
ha_engine =
# ha_engine_address sets a connection address for Live HA engine. Depending on engine type address format can differ.
# For now we only support Redis connection address in "host:port" format.
# This option is EXPERIMENTAL.
ha_engine_address = "127.0.0.1:6379"
#################################### Grafana Image Renderer Plugin ##########################
[plugin.grafana-image-renderer]
# Instruct headless browser instance to use a default timezone when not provided by Grafana, e.g. when rendering panel image of alert.
@@ -986,3 +1081,10 @@ default_timezone = browser
[expressions]
# Enable or disable the expressions functionality.
enabled = true
[geomap]
# Set the JSON configuration for the default basemap
default_baselayer_config =
# Enable or disable loading other base map layers
enable_custom_baselayers = true

View File

@@ -164,18 +164,26 @@
# waiting for the server to approve.
;expect_continue_timeout_seconds = 1
# Optionally limits the total number of connections per host, including connections in the dialing,
# active, and idle states. On limit violation, dials will block.
# A value of zero (0) means no limit.
;max_conns_per_host = 0
# The maximum number of idle connections that Grafana will keep alive.
;max_idle_connections = 100
# The maximum number of idle connections per host that Grafana will keep alive.
;max_idle_connections_per_host = 2
# How many seconds the data proxy keeps an idle connection open before timing out.
;idle_conn_timeout_seconds = 90
# If enabled and user is not anonymous, data proxy will add X-Grafana-User header with username into the request, default is false.
;send_user_header = false
# Limit the amount of bytes that will be read/accepted from responses of outgoing HTTP requests.
;response_limit = 0
# Limits the number of rows that Grafana will process from SQL data sources.
;row_limit = 1000000
#################################### Analytics ####################################
[analytics]
# Server reporting, sends usage counters to stats.grafana.org every 24 hours.
@@ -481,11 +489,14 @@
;auth_url = https://foo.bar/login/oauth/authorize
;token_url = https://foo.bar/login/oauth/access_token
;api_url = https://foo.bar/user
;teams_url =
;allowed_domains =
;team_ids =
;allowed_organizations =
;role_attribute_path =
;role_attribute_strict = false
;groups_attribute_path =
;team_ids_attribute_path =
;tls_skip_verify_insecure = false
;tls_client_cert =
;tls_client_key =
@@ -575,7 +586,8 @@
[emails]
;welcome_email_on_sign_up = false
;templates_pattern = emails/*.html
;templates_pattern = emails/*.html, emails/*.txt
;content_types = text/html
#################################### Logging ##########################
[log]
@@ -694,11 +706,67 @@
# global limit of alerts
;global_alert_rule = -1
#################################### Unified Alerting ####################
[unified_alerting]
#Enable the Unified Alerting sub-system and interface. When enabled we'll migrate all of your alert rules and notification channels to the new system. New alert rules will be created and your notification channels will be converted into an Alertmanager configuration. Previous data is preserved to enable backwards compatibility but new data is removed.```
;enabled = false
# Comma-separated list of organization IDs for which to disable unified alerting. Only supported if unified alerting is enabled.
;disabled_orgs =
# Specify the frequency of polling for admin config changes.
# The interval string is a possibly signed sequence of decimal numbers, followed by a unit suffix (ms, s, m, h, d), e.g. 30s or 1m.
;admin_config_poll_interval = 60s
# Specify the frequency of polling for Alertmanager config changes.
# The interval string is a possibly signed sequence of decimal numbers, followed by a unit suffix (ms, s, m, h, d), e.g. 30s or 1m.
;alertmanager_config_poll_interval = 60s
# Listen address/hostname and port to receive unified alerting messages for other Grafana instances. The port is used for both TCP and UDP. It is assumed other Grafana instances are also running on the same port. The default value is `0.0.0.0:9094`.
;ha_listen_address = "0.0.0.0:9094"
# Listen address/hostname and port to receive unified alerting messages for other Grafana instances. The port is used for both TCP and UDP. It is assumed other Grafana instances are also running on the same port. The default value is `0.0.0.0:9094`.
;ha_advertise_address = ""
# Comma-separated list of initial instances (in a format of host:port) that will form the HA cluster. Configuring this setting will enable High Availability mode for alerting.
;ha_peers = ""
# Time to wait for an instance to send a notification via the Alertmanager. In HA, each Grafana instance will
# be assigned a position (e.g. 0, 1). We then multiply this position with the timeout to indicate how long should
# each instance wait before sending the notification to take into account replication lag.
# The interval string is a possibly signed sequence of decimal numbers, followed by a unit suffix (ms, s, m, h, d), e.g. 30s or 1m.
;ha_peer_timeout = "15s"
# The interval between sending gossip messages. By lowering this value (more frequent) gossip messages are propagated
# across cluster more quickly at the expense of increased bandwidth usage.
# The interval string is a possibly signed sequence of decimal numbers, followed by a unit suffix (ms, s, m, h, d), e.g. 30s or 1m.
;ha_gossip_interval = "200ms"
# The interval between gossip full state syncs. Setting this interval lower (more frequent) will increase convergence speeds
# across larger clusters at the expense of increased bandwidth usage.
# The interval string is a possibly signed sequence of decimal numbers, followed by a unit suffix (ms, s, m, h, d), e.g. 30s or 1m.
;ha_push_pull_interval = "60s"
# Enable or disable alerting rule execution. The alerting UI remains visible. This option has a legacy version in the `[alerting]` section that takes precedence.
;execute_alerts = true
# Alert evaluation timeout when fetching data from the datasource. This option has a legacy version in the `[alerting]` section that takes precedence.
# The timeout string is a possibly signed sequence of decimal numbers, followed by a unit suffix (ms, s, m, h, d), e.g. 30s or 1m.
;evaluation_timeout = 30s
# Number of times we'll attempt to evaluate an alert rule before giving up on that evaluation. This option has a legacy version in the `[alerting]` section that takes precedence.
;max_attempts = 3
# Minimum interval to enforce between rule evaluations. Rules will be adjusted if they are less than this value or if they are not multiple of the scheduler interval (10s). Higher values can help with resource management as we'll schedule fewer evaluations over time. This option has a legacy version in the `[alerting]` section that takes precedence.
# The interval string is a possibly signed sequence of decimal numbers, followed by a unit suffix (ms, s, m, h, d), e.g. 30s or 1m.
;min_interval = 10s
#################################### Alerting ############################
[alerting]
# Disable alerting engine & UI features
# Disable legacy alerting engine & UI features
;enabled = true
# Makes it possible to turn off alert rule execution but alerting UI is visible
# Makes it possible to turn off alert execution but alerting UI is visible
;execute_alerts = true
# Default setting for new alert rules. Defaults to categorize error and timeouts as alerting. (alerting, keep_state)
@@ -711,7 +779,6 @@
# This limit will protect the server from render overloading and make sure notifications are sent out quickly
;concurrent_render_limit = 5
# Default setting for alert calculation timeout. Default value is 30
;evaluation_timeout_seconds = 30
@@ -868,7 +935,7 @@
[plugins]
;enable_alpha = false
;app_tls_skip_verify_insecure = false
# Enter a comma-separated list of plugin identifiers to identify plugins that are allowed to be loaded even if they lack a valid signature.
# Enter a comma-separated list of plugin identifiers to identify plugins to load even if they are unsigned. Plugins with modified signatures are never loaded.
;allow_loading_unsigned_plugins =
# Enable or disable installing plugins directly from within Grafana.
;plugin_admin_enabled = false
@@ -882,6 +949,20 @@
# tuning. 0 disables Live, -1 means unlimited connections.
;max_connections = 100
# allowed_origins is a comma-separated list of origins that can establish connection with Grafana Live.
# If not set then origin will be matched over root_url. Supports wildcard symbol "*".
;allowed_origins =
# engine defines an HA (high availability) engine to use for Grafana Live. By default no engine used - in
# this case Live features work only on a single Grafana server. Available options: "redis".
# Setting ha_engine is an EXPERIMENTAL feature.
;ha_engine =
# ha_engine_address sets a connection address for Live HA engine. Depending on engine type address format can differ.
# For now we only support Redis connection address in "host:port" format.
# This option is EXPERIMENTAL.
;ha_engine_address = "127.0.0.1:6379"
#################################### Grafana Image Renderer Plugin ##########################
[plugin.grafana-image-renderer]
# Instruct headless browser instance to use a default timezone when not provided by Grafana, e.g. when rendering panel image of alert.
@@ -973,3 +1054,16 @@
[expressions]
# Enable or disable the expressions functionality.
;enabled = true
[geomap]
# Set the JSON configuration for the default basemap
;default_baselayer_config = `{
; "type": "xyz",
; "config": {
; "attribution": "Open street map",
; "url": "https://tile.openstreetmap.org/{z}/{x}/{y}.png"
; }
;}`
# Enable or disable loading other base map layers
;enable_custom_baselayers = true

View File

@@ -6,6 +6,7 @@ This directory contains guides for contributors to the Grafana project.
- [Contributing documentation](documentation.md)
- [Developer guide](developer-guide.md)
- [Triage issues](triage-issues.md)
- [Merge a pull request](merge-pull-request.md)
The `style-guides` directory contains style guides for the Grafana software project and documentation.

View File

@@ -12,7 +12,7 @@ An event is something that happened in the past. Since an event has already happ
### Subscribe to an event
In order to react to an event, you first need to _subscribe_ to it.
In order to react to an event, you first need to _subscribe_ to it.
To subscribe to an event, register an _event listener_ in the service's `Init` method:
@@ -51,14 +51,16 @@ A command is a request for an action to be taken. Unlike an event's fire-and-for
### Dispatch a command
To dispatch a command, pass the object to the `Dispatch` method:
To dispatch a command, pass the `context.Context` and object to the `DispatchCtx` method:
```go
// context.Context from caller
ctx := req.Request.Context()
cmd := &models.SendStickersCommand {
UserID: "taylor",
Count: 1,
}
if err := s.bus.Dispatch(cmd); err != nil {
if err := s.bus.DispatchCtx(ctx, cmd); err != nil {
if err == bus.ErrHandlerNotFound {
return nil
}
@@ -66,7 +68,9 @@ if err := s.bus.Dispatch(cmd); err != nil {
}
```
> **Note:** `Dispatch` will return an error if no handler is registered for that command.
> **Note:** `DispatchCtx` will return an error if no handler is registered for that command.
> **Note:** `Dispatch` currently exists and requires no `context.Context` to be provided, but it's strongly suggested to not use this since there's an ongoing refactoring to remove usage of non-context-aware functions/methods and use context.Context everywhere.
**Tip:** Browse the available commands in the `models` package.
@@ -78,30 +82,34 @@ To handle a command, register a command handler in the `Init` function.
```go
func (s *MyService) Init() error {
s.bus.AddHandler(s.SendStickers)
s.bus.AddHandlerCtx(s.SendStickers)
return nil
}
func (s *MyService) SendStickers(cmd *models.SendStickersCommand) error {
func (s *MyService) SendStickers(ctx context.Context, cmd *models.SendStickersCommand) error {
// ...
}
```
> **Note:** The handler method may return an error if unable to complete the command.
> **Note:** `AddHandler` currently exists and requires no `context.Context` to be provided, but it's strongly suggested to not use this since there's an ongoing refactoring to remove usage of non-context-aware functions/methods and use context.Context everywhere.
## Queries
A command handler can optionally populate the command sent to it. This pattern is commonly used to implement _queries_.
### Making a query
To make a query, dispatch the query instance just like you would a command. When the `Dispatch` method returns, the `Results` field contains the result of the query.
To make a query, dispatch the query instance just like you would a command. When the `DispatchCtx` method returns, the `Results` field contains the result of the query.
```go
// context.Context from caller
ctx := req.Request.Context()
query := &models.FindDashboardQuery{
ID: "foo",
}
if err := bus.Dispatch(query); err != nil {
if err := bus.DispatchCtx(ctx, query); err != nil {
return err
}
// The query now contains a result.
@@ -110,12 +118,14 @@ for _, item := range query.Results {
}
```
> **Note:** `Dispatch` currently exists and requires no `context.Context` to be provided, but it's strongly suggested to not use this since there's an ongoing refactoring to remove usage of non-context-aware functions/methods and use context.Context everywhere.
### Return query results
To return results for a query, set any of the fields on the query argument before returning:
```go
func (s *MyService) FindDashboard(query *models.FindDashboardQuery) error {
func (s *MyService) FindDashboard(ctx context.Context, query *models.FindDashboardQuery) error {
// ...
query.Result = dashboard
return nil

View File

@@ -33,18 +33,18 @@ To register a handler:
```go
func init() {
bus.AddHandler("sql", DeleteDashboard)
bus.AddHandlerCtx("sql", DeleteDashboard)
}
func DeleteDashboard(cmd *models.DeleteDashboardCommand) error {
return inTransaction(func(sess *DBSession) error {
func DeleteDashboard(ctx context.Context, cmd *models.DeleteDashboardCommand) error {
return inTransactionCtx(ctx, func(sess *DBSession) error {
_, err := sess.Exec("DELETE FROM dashboards WHERE dashboard_id=?", cmd.DashboardID)
return err
})
}
```
Here, `inTransaction` is a helper function in the `sqlstore` package that provides a session, that lets you execute SQL statements.
Here, `inTransactionCtx` is a helper function in the `sqlstore` package that provides a session, that lets you execute SQL statements.
## `SQLStore`
@@ -61,7 +61,7 @@ type MyService struct {
You can now make SQL queries in any of your [command handlers](communication.md#handle-commands) or [event listeners](communication.md#subscribe-to-an-event):
```go
func (s *MyService) DeleteDashboard(cmd *models.DeleteDashboardCommand) error {
func (s *MyService) DeleteDashboard(ctx context.Context, cmd *models.DeleteDashboardCommand) error {
if err := s.SQLStore.WithDbSession(ctx, func(sess *sqlstore.DBSession) error {
_, err := sess.Exec("DELETE FROM dashboards WHERE dashboard_id=?", cmd.DashboardID)
return err

View File

@@ -1,69 +1,138 @@
# Services
A Grafana _service_ encapsulates and exposes application logic to the rest of the application, through a set of related operations.
A Grafana _service_ encapsulates and exposes application logic to the rest of the application, through a set of related operations.
Before a service can start communicating with the rest of Grafana, it needs to be registered in the _service registry_.
The service registry keeps track of all available services during runtime. On start-up, Grafana uses the registry to build a dependency graph of services, a _service graph_.
Grafana uses [Wire](https://github.com/google/wire), which is a code generation tool that automates connecting components using [dependency injection](https://en.wikipedia.org/wiki/Dependency_injection). Dependencies between components are represented in Wire as function parameters, encouraging explicit initialization instead of global variables.
Even though the services in Grafana do different things, they share a number of patterns. To better understand how a service works, let's build one from scratch!
## Create a service
Before a service can start communicating with the rest of Grafana, it needs to be registered with Wire, see `ProvideService` factory function/method in the service example below and how it's being referenced in the wire.go example below.
To start building a service:
When Wire is run it will inspect the parameters of `ProvideService` and make sure that all it's dependencies has been wired up and initialized properly.
- Create a new Go package `mysvc` in the [pkg/services](/pkg/services) directory.
- Create a `service.go` file inside your new directory.
All services need to implement the [Service](https://godoc.org/github.com/grafana/grafana/pkg/registry#Service) interface:
**Service example:**
```go
type MyService struct {
package example
// Service service is the service responsible for X, Y and Z.
type Service struct {
logger log.Logger
cfg *setting.Cfg
sqlStore *sqlstore.SQLStore
}
func (s *MyService) Init() error {
// ProvideService provides Service as dependency for other services.
func ProvideService(cfg *setting.Cfg, sqlStore *sqlstore.SQLStore) (*Service, error) {
s := &Service{
logger: log.New("service"),
cfg: cfg,
sqlStore: sqlStore,
}
if s.IsDisabled() {
// skip certain initialization logic
return s, nil
}
if err := s.init(); err != nil {
return nil, err
}
return s, nil
}
func (s *Service) init() error {
// additional initialization logic...
return nil
}
```
The `Init` method is used to initialize and configure the service to make it ready to use. Services that return an error halt Grafana's startup process and cause the error to be logged as it exits.
// IsDisabled returns true if the service is disabled.
//
// Satisfies the registry.CanBeDisabled interface which will guarantee
// that Run() is not called if the service is disabled.
func (s *Service) IsDisabled() bool {
return !s.cfg.IsServiceEnabled()
}
## Register a service
Every service needs to be registered with the application for it to be included in the service graph.
To register a service, call the `registry.RegisterService` function in an `init` function within your package.
```go
func init() {
registry.RegisterService(&MyService{})
// Run runs the service in the background.
//
// Satisfies the registry.BackgroundService interface which will
// guarantee that the service can be registered as a background service.
func (s *Service) Run(ctx context.Context) error {
// background service logic...
<-ctx.Done()
return ctx.Err()
}
```
`init` functions are only run whenever a package is imported, so we also need to import the package in the application. In the `server.go` file under `pkg/server`, import the package we just created:
[wire.go](/pkg/server/wire.go)
```go
import _ "github.com/grafana/grafana/pkg/services/mysvc"
```
// +build wireinject
## Dependencies
package server
Grafana uses the [inject](https://github.com/facebookgo/inject) package to inject dependencies during runtime.
import (
"github.com/google/wire"
"github.com/grafana/grafana/pkg/example"
"github.com/grafana/grafana/pkg/services/sqlstore"
)
For example, to access the [bus](communication.md), add it to the `MyService` struct:
var wireBasicSet = wire.NewSet(
example.ProvideService,
```go
type MyService struct {
Bus bus.Bus `inject:""`
)
var wireSet = wire.NewSet(
wireBasicSet,
sqlstore.ProvideService,
)
var wireTestSet = wire.NewSet(
wireBasicSet,
)
func Initialize(cla setting.CommandLineArgs, opts Options, apiOpts api.ServerOptions) (*Server, error) {
wire.Build(wireExtsSet)
return &Server{}, nil
}
```
You can also inject other services in the same way:
```go
type MyService struct {
Service other.Service `inject:""`
func InitializeForTest(cla setting.CommandLineArgs, opts Options, apiOpts api.ServerOptions, sqlStore *sqlstore.SQLStore) (*Server, error) {
wire.Build(wireExtsTestSet)
return &Server{}, nil
}
```
> **Note:** Any injected dependency needs to be an exported field. Any unexported fields result in a runtime error.
## Background services
A background service is a service that runs in the background of the lifecycle between Grafana starts up and shutdown. If you want a service to be run in the background your Service should satisfy the `registry.BackgroundService` interface and add it as argument to the [ProvideBackgroundServiceRegistry](/pkg/server/backgroundsvcs/background_services.go) function and add it as argument to `NewBackgroundServiceRegistry` to register it as a background service.
You can see an example implementation above of the Run method.
## Disabled services
If you want to guarantee that a background service is not run by Grafana when certain criteria is met/service is disabled your service should satisfy the `registry.CanBeDisabled` interface. When the service.IsDisabled method return false Grafana would not call the service.Run method.
If you want to run certain initialization code if service is disabled or not, you need to handle this in the service factory method.
You can see an example implementation above of the IsDisabled method and custom initialization code when service is disabled.
## Run Wire / generate code
When running `make run` it will call `make gen-go` on the first run. `gen-go` in turn will call the wire binary and generate the code in [wire_gen.go](/pkg/server/wire_gen.go). The wire binary is installed using [bingo](https://github.com/bwplotka/bingo) which will make sure to download and install all the tools needed, including the Wire binary at using a specific version.
## OSS vs Enterprise
Grafana OSS and Grafana Enterprise shares code and dependencies. Grafana Enterprise might need to override/extend certain OSS services.
There's a [wireexts_oss.go](/pkg/server/wireexts_oss.go) that has the `wireinject` and `oss` build tags as requirements. Here services that might have other implementations, e.g. Grafana Enterprise, can be registered.
Similarly, there's a wireexts_enterprise.go file in the Enterprise source code repository where other service implementations can be overridden/be registered.
To extend oss background service create a specific background interface for that type and inject that type to [ProvideBackgroundServiceRegistry](/pkg/server/backgroundsvcs/background_services.go) instead of the concrete type. Then add a wire binding for that interface in [wireexts_oss.go](/pkg/server/wireexts_oss.go) and in the enterprise wireexts file.
## Methods
Any public method of a service should take `context.Context` as its first argument. If the method calls the bus, other services or the database the context should be propagated, if possible.

View File

@@ -16,7 +16,7 @@ If this is your first time contributing to an open-source project on GitHub, mak
To increase the chance of having your pull request accepted, make sure your pull request follows these guidelines:
- Title and description matches the implementation.
- Commits within the pull request follow the [Formatting guidelines](#Formatting-guidelines).
- Commits within the pull request follow the [Formatting guidelines](#Formatting-guidelines).
- The pull request closes one related issue.
- The pull request contains necessary tests that verify the intended behavior.
- If your pull request has conflicts, rebase your branch onto the main branch.
@@ -43,6 +43,29 @@ Pull requests for Redux contributions must:
- Not contain code that mutates state in reducers or thunks.
- Not contain code that accesses the reducers state slice directly. Instead, the code should use state selectors to access state.
Pull requests that add or modify unit tests that are written in Jest must adhere to these guidelines:
- Don't add snapshots tests. We are incrementally removing existing snapshot tests, we don't want more.
- If an existing unit test is written in Enzyme, migrate it to RTL (React Testing Library), unless youre fixing a bug. Bug fixes usually shouldn't include any bigger refactoring, so its ok to skip migrating the test to RTL.
Pull requests that create new UI components or modify existing ones must adhere to the following accessibility guidelines:
- Use semantic HTML.
- Use ARIA roles, labels and other accessibility attributes correctly. Accessibility attributes should only be used when semantic HTML doesn't satisfy your use case.
- Use the [Grafana theme palette](/contribute/style-guides/themes.md) for styling. It contains colors with good contrast which aids accessibility.
- Use [RTL](https://testing-library.com/docs/dom-testing-library/api-accessibility/) for writing unit tests. It helps to create accessible components.
Pull requests that introduce accessibility(a11y) errors:
We use [pa11y-ci](https://github.com/pa11y/pa11y-ci) to collect accessibility errors on [some URLs on the project](https://github.com/grafana/grafana/issues/36555), threshold errors are specified per URL.
If the contribution introduces new a11y errors, our continuous integration will fail, preventing you to merge on the main branch. In those cases there are two alternatives for moving forward:
- Check the error log on the pipeline step `test-a11y-frontend-pr`, identify what was the error, and fix it.
- Locally run the command `yarn test:accessibility-report` that generates an HTML accessibility report, then go to the URL that contains your change, identify the error, and fix it. Keep in mind, a local Grafana instance needs to be running on `http://localhost:3000`.
You can also prevent introducing a11y errors by installing an a11y plugin in your browser, for example, axe DevTools, Accessibility Insights for Web among others.
### Backend-specific guidelines
Please refer to the [backend style guidelines](/contribute/style-guides/backend.md).
@@ -90,6 +113,8 @@ For changes to panels, the area should be the name of the panel, suffixed with P
- `GraphPanel: Fix legend sorting issues`
- `Docs: Changed url to URL in all documentation files`
If you're unsure, please have a look at the existing [changelog](https://github.com/grafana/grafana/blob/main/CHANGELOG.md) for inspiration/guidance.
### Pull request titles
The Grafana team _squashes_ all commits into one when we accept a pull request. The title of the pull request becomes the subject line of the squashed commit message. We still encourage contributors to write informative commit messages, as they becomes a part of the Git commit body.
@@ -102,6 +127,6 @@ Make sure that the title for your pull request uses the same format as the subje
If your PR includes configuration changes, all of the following files must be changed correspondingly:
* conf/defaults.ini
* conf/sample.ini
* docs/sources/administration/configuration.md
- conf/defaults.ini
- conf/sample.ini
- docs/sources/administration/configuration.md

View File

@@ -10,8 +10,14 @@ Make sure you have the following dependencies installed before setting up your d
- [Git](https://git-scm.com/)
- [Go](https://golang.org/dl/) (see [go.mod](../go.mod#L3) for minimum required version)
- [Node.js (Long Term Support)](https://nodejs.org)
- [Yarn](https://yarnpkg.com)
Additionally you'll need:
- [Node.js](https://nodejs.org) (see `volta.node` property in [package.json](../package.json) for the correct version).
- [Yarn](https://yarnpkg.com) (see `volta.yarn` property in [package.json](../package.json) for the correct version).
We recommend using [Volta](https://github.com/volta-cli/volta) to manage your JS toolchain.
Refer to the [Volta Getting Started Guide](https://docs.volta.sh/guide/getting-started) for setup instructions for your operating system.
### macOS
@@ -20,9 +26,6 @@ We recommend using [Homebrew](https://brew.sh/) for installing any missing depen
```
brew install git
brew install go
brew install node@14
npm install -g yarn
```
### Windows

View File

@@ -0,0 +1,118 @@
# Merge a pull request
When a pull request has been reviewed and approved by at least one person and all checks have passed it's time to merge the pull request.
## Who is expected to merge a pull request?
Maintainers are responsible for merging all pull requests. If a maintainer has opened a pull request the general rule is that the same maintainer merges the pull request. If a non-maintainer has opened a pull request it's suggested that one of the maintainers reviewing the pull request merges the pull request.
## Checklist/summary
The following checklist/summary should give you a quick overview of what to ask/consider before merging a pull request.
- Reviewed and approved?
- All checks passed?
- Proper pull request title?
- Milestone assigned?
- Add to changelog/release notes?
- Needs backporting?
## Before merge
Before actually merging a pull request there's a couple of things to take into consideration.
### Format the pull request title
Make sure that the pull request title is properly formatted according to `<Area>: <Summary>` and try to make the summary short and understandable for the community as a whole.
All commits in a pull request are squashed when merged and the pull request title will be the default subject line of the squashed commit message. It's also used for [changelog/release notes](#include-in-changelog-and-release-notes).
See [formatting guidelines](create-pull-request.md#formatting-guidelines) for more information.
### Assign a milestone
It's recommended to add a milestone to every pull request. This makes it easier to track what changes did go into a certain release. Without this you're basically left with going through git commits which could be a lot harder.
There's also various tooling built that in some cases requires a pull request to be assigned a milestone, for example [generating changelog/release notes](#include-in-changelog-and-release-notes).
### Include in changelog and release notes?
At Grafana we generate the [changelog](https://github.com/grafana/grafana/blob/main/CHANGELOG.md) and [release notes](https://grafana.com/docs/grafana/latest/release-notes/) based on merged pull requests. Including changes in the changelog/release notes is very important to provide a somewhat complete picture of what changes a Grafana release actually includes.
Exactly what changes should be added to the changelog is hard to answer but some general guidance would be any change that you think would be interesting for the community as a whole. Use your best judgement and/or ask other maintainers for advice.
There's a GitHub action available in the repository named [Update changelog](https://github.com/grafana/grafana/blob/main/.github/workflows/update-changelog.yml) that can manually be triggered to re-generate the changelog and release notes for any release.
To include a pull request in the changelog/release notes the general rule of thumb is that a milestone should be assigned and labeled with `add to changelog`.
The changelog/release notes are divided into sections and here's a description of how you make a pull request show up in a certain section.
**Features and enhancements:**
Milestone assigned and labeled with `add to changelog` and any of the other section rules don't apply.
**Bug fixes:**
Milestone assigned and labeled with `add to changelog` and either labeled with `type/bug` or the pull request title contains `fix` or `fixes`.
**Plugin development fixes & changes:**
Milestone assigned and labeled with `area/grafana/toolkit`, `area/grafana/ui` or `area/grafana/runtime`.
**Deprecations:**
In case the pull request introduces a deprecation you should document this. Label the pull request with `add to changelog` and use the following template at the end of the pull request description describing the deprecation change.
```md
# Deprecation notice
<Deprecation description>
```
**Breaking changes:**
In case the pull request introduces a breaking change you should document this. Label the pull request with `add to changelog` and `breaking change` and use the following template at the end of the pull request description describing the breaking change.
```md
# Release notice breaking change
<Breaking change description>
```
### Should the pull request be backported?
If your pull request has changes that need to go into one or several existing release branches you need to backport the changes. Please refer to [Backport PR](.github/bot.md#backport-pr) for detailed instructions.
Some examples when backport is required:
- The change needs to be released in the next upcoming patch release, e.g. v8.1.3, so you have to backport it, e.g. into the v8.1.x release branch.
- You have a change to be released in the next major/minor release, e.g. v8.0.0, and there's already a release branch, e.g. v8.0.x, you have to backport it, e.g. into the v8.0.x release branch.
- The change includes documentation changes that needs to be updated for one or multiple older versions, then you have to backport it to each release branch.
Some examples when backport is not required:
- The change is supposed to be released in the next major/minor release, e.g. v8.0.0, but the release branch, e.g. v8.0.x, has not yet been created.
> **Note:** You can still backport a pull request after it's been merged.
## Doing the actual merge
Time to actually merge the pull request changes. All commits in a pull request are squashed, hence the GitHub `Squash and merge` button is used to initialize the merge.
This will present you with options allowing you to optionally change the commit message before merging. Please remember that developers might use the commit information when reviewing changes of files, doing git blame and resolving merge conflicts etc., trying to quickly figure out what the actual change was. But there's not really any best practices around this, the following is an attempt to bring some guidance.
Do:
- Make sure the pull request title is formatted properly before merging, this will automatically give you a good and short summary of the commit/change.
- Leave `Co-authored-by:` lines as is so that co-authors will be accounted for the contribution.
- Remove any commit information that doesn't bring any context to the change.
Consider:
- Add any references to issues that the pull request fixes/closes/references to ease giving quick context to things. Doing this allows cross-reference between the commit and referenced issue(s).
Finalize the merge by clicking on the `Confirm squash and merge` button.
## After the merge
Make sure to close any referenced/related issues. It's recommended to assign the same milestone on the issues that the pull request fixes/closes, but not required.

View File

@@ -4,13 +4,13 @@ This style guide applies to all documentation created for Grafana products.
For information about how to write technical documentation, refer to the following resources:
* [Google Technical Writing courses](https://developers.google.com/tech-writing)
* [Divio documentation system](https://documentation.divio.com/)
* [Vue writing principles](https://v3.vuejs.org/guide/contributing/writing-guide.html#principles)
- [Google Technical Writing courses](https://developers.google.com/tech-writing)
- [Divio documentation system](https://documentation.divio.com/)
- [Vue writing principles](https://v3.vuejs.org/guide/contributing/writing-guide.html#principles)
## Contributing
The *Documentation style guide* is a living document. Add to it whenever a style decision is made or a question is answered regarding style, grammar, or word choice.
The _Documentation style guide_ is a living document. Add to it whenever a style decision is made or a question is answered regarding style, grammar, or word choice.
## Published guides
@@ -46,10 +46,14 @@ Avoid _master_ or _slave_.
## Grafana-specific style
The following guidelines are specific to Grafana documentation. For the most part, these are *guidelines* are not rigid rules. If you have questions, then please ask in the #docs channel of Grafana Slack.
The following guidelines are specific to Grafana documentation. For the most part, these are _guidelines_ are not rigid rules. If you have questions, then please ask in the #docs channel of Grafana Slack.
### General
Per the [Voice and tone](https://developers.google.com/style/tone) section of the Google developer documentation style guide:
> In your documents, aim for a voice and tone that's conversational, friendly, and respectful without being overly colloquial or frivolous; a voice that's casual and natural and approachable, not pedantic or pushy. Try to sound like a knowledgeable friend who understands what the developer wants to do.
- Use active voice:
- Active: Grafana displays the heatmap visualization.
- Passive: The heatmap visualization is displayed.
@@ -104,6 +108,7 @@ However, sometimes we need to use headings as numbered steps. This is mostly in
If that is the case, then use the following format for headings:
##### Step 1. Install the software
##### Step 2. Run the software
### Images
@@ -149,6 +154,7 @@ In general, "integration" is not capitalized. Only capitalize it if it is capita
The first letter of the name of an integration is always capitalized, even if the original named source is lowercase.
**Examples:**
- MySQL Integration
- CockroachDB Integration
- Etcd Integration
@@ -212,16 +218,20 @@ Warnings tell the user not to do something. For example:
- Do not assume everyone is using Linux. Make sure instructions include enough information for Windows and Mac users to successfully complete procedures.
- Do not add `$` before commands. Make it easy for users to copy and paste commands.
- **Right:** `sudo yum install grafana`
- **Wrong:** `$ sudo yum install grafana`
- Include `sudo` before commands that require `sudo` to work.
For terminal examples and Grafana configuration, use a `bash` code block:
```bash
sudo yum install grafana
```
For HTTP request/response, use an `http` code block:
```http
GET /api/dashboards/id/1/permissions HTTP/1.1
Accept: application/json
@@ -259,6 +269,7 @@ Two words if used as a verb, one word if used as a noun.
Two words, not one.
**Exceptions:**
- "datasource" used as an identifier
- "datasource" in a URL
- Use "data source" instead of "datasource" unless used as an identifier, in code, or as part of a URL.
@@ -267,7 +278,8 @@ Two words, not one.
#### display (verb)
*Display* is a transitive verb, which means it always needs a direct object.
_Display_ is a transitive verb, which means it always needs a direct object.
- Correct, active voice: Grafana displays your list of active alarms.
- Correct, but passive voice: Your list of active alarms is displayed.
- Incorrect: The list of active alarms displays.
@@ -327,6 +339,7 @@ Two words, not one.
**Incorrect:** webserver
### MS SQL Server
Always use "MS SQL" when referring to MS SQL Server application.
Incorrect UI spellings will be corrected in a later version of Grafana.

View File

@@ -23,20 +23,13 @@ Inspired by https://martinfowler.com/bliki/PageObject.html
Let's start with a simple [JSX](https://reactjs.org/docs/introducing-jsx.html) example containing a single input field that we want to populate during our E2E test:
```jsx
<input
className="gf-form-input login-form-input"
type="text"
/>
<input className="gf-form-input login-form-input" type="text" />
```
We _could_ target the field with a CSS selector like `.gf-form-input.login-form-input` but that would be brittle as style changes occur frequently. Furthermore there is nothing that signals to future developers that this input is part of an E2E test. At Grafana, we use `aria-label` attributes as our preferred way of defining selectors instead of [`data-*`](https://mdn.io/docs/Web/HTML/Global_attributes/data-*) as they also aid in [accessibility](https://mdn.io/docs/Learn/Accessibility/What_is_accessibility):
```jsx
<input
aria-label="Username input field"
className="gf-form-input login-form-input"
type="text"
/>
<input aria-label="Username input field" className="gf-form-input login-form-input" type="text" />
```
The next step is to create a `Page` representation in our E2E framework to glue the test with the real implementation using the `pageFactory` function. For that function we can supply a `url` and `selectors` like in the example below:
@@ -45,7 +38,6 @@ The next step is to create a `Page` representation in our E2E framework to glue
export const Login = {
// Called via `Login.visit()`
url: '/login',
// Called via `Login.username()`
username: 'Username input field',
};
@@ -67,11 +59,7 @@ Now that we have a `Page` called `Login` in our `Pages` const we can use that to
```jsx
import { selectors } from '@grafana/e2e-selectors';
<input
aria-label={selectors.pages.Login.username}
className="gf-form-input login-form-input"
type="text"
/>
<input aria-label={selectors.pages.Login.username} className="gf-form-input login-form-input" type="text" />;
```
The last step in our example is to use our `Login` page as part of a test.
@@ -86,9 +74,7 @@ describe('Login test', () => {
e2e.pages.Login.visit();
// To prevent flaky tests, always do a `.should` on any selector that you expect to be in the DOM.
// Read more here: https://docs.cypress.io/guides/core-concepts/retry-ability.html#Commands-vs-assertions
e2e.pages.Login.username()
.should('be.visible')
.type('admin');
e2e.pages.Login.username().should('be.visible').type('admin');
});
});
```
@@ -154,9 +140,52 @@ describe('List test', () => {
e2e.pages.DataSources.visit();
// To prevent flaky tests, always do a .should on any selector that you expect to be in the DOM.
// Read more here: https://docs.cypress.io/guides/core-concepts/retry-ability.html#Commands-vs-assertions
e2e.pages.DataSources.dataSources('B')
.should('be.visible')
.click();
e2e.pages.DataSources.dataSources('B').should('be.visible').click();
});
});
```
## Aria-Labels vs data-testid
Our selectors are set up to work with both aria-labels and data-testid attributes. Aria-labels help assistive technologies such as screenreaders identify interactive elements of a page for our users.
A good example of a time to use an aria-label might be if you have a button with an X to close:
```
<button aria-label="close">X<button>
```
It might be clear visually that the X closes the modal, but audibly it would not be clear for example.
```
<button aria-label="close">Close<button>
```
The example might read aloud to a user as "Close, Close" or something similar.
However adding aria-labels to elements that are already clearly labeled or not interactive can be confusing and redundant for users with assistive technologies.
In such cases rather than adding unnecessary aria-labels to components so as to make them selectable for testing, it is preferable to use a data attribute that would not be read aloud with an assistive technology for example:
```
<button data-testid="modal-close-button">Close<button>
```
We have added support for this in our selectors, to use:
Prefix your selector string with "data-testid":
```typescript
export const Components = {
Login: {
openButton: 'open-button', // this would look for an aria-label
closeButton: 'data-testid modal-close-button', // this would look for a data-testid
},
};
```
and in your component, import the selectors and add the data test id:
```
<button data-testid={Selectors.Components.Login.closeButton}>
```

View File

@@ -5,6 +5,7 @@ Generally we follow the Airbnb [React Style Guide](https://github.com/airbnb/jav
## Table of Contents
- [Frontend Style Guide](#frontend-style-guide)
- [Table of Contents](#table-of-contents)
- [Basic rules](#basic-rules)
- [Naming conventions](#naming-conventions)
@@ -28,12 +29,12 @@ Generally we follow the Airbnb [React Style Guide](https://github.com/airbnb/jav
- [Linting](#linting)
- [React](#react)
- [Props](#props)
- [Name callback props and handlers with an "on" prefix.](#name-callback-props-and-handlers-with-an-on-prefix)
- [React Component definitions](#react-component-definitions)
- [React Component constructor](#react-component-constructor)
- [React Component defaultProps](#react-component-defaultprops)
- [Name callback props and handlers with an "on" prefix.](#name-callback-props-and-handlers-with-an-on-prefix)
- [React Component definitions](#react-component-definitions)
- [React Component constructor](#react-component-constructor)
- [React Component defaultProps](#react-component-defaultprops)
- [State management](#state-management)
- [Proposal for removing or replacing Angular dependencies](https://github.com/grafana/grafana/pull/23048)
## Basic rules
@@ -194,12 +195,12 @@ _SASS styles are deprecated. Please migrate to Emotion whenever you need to modi
### Typing
In general, you should let Typescript infer the types so that there's no need to explicitly define type for each variable.
In general, you should let Typescript infer the types so that there's no need to explicitly define type for each variable.
There are some exceptions to this:
```typescript
// Typescript needs to know type of arrays or objects otherwise it would infer it as array of any
// Typescript needs to know type of arrays or objects otherwise it would infer it as array of any
// bad
const stringArray = [];
@@ -208,7 +209,7 @@ const stringArray = [];
const stringArray: string[] = [];
```
Specify function return types explicitly in new code. This improves readability by being able to tell what a function returns just by looking at the signature. It also prevents errors when a function's return type is broader than expected by the author.
Specify function return types explicitly in new code. This improves readability by being able to tell what a function returns just by looking at the signature. It also prevents errors when a function's return type is broader than expected by the author.
> **Note:** We don't have linting for this enabled because of lots of old code that needs to be fixed first.
@@ -216,18 +217,18 @@ Specify function return types explicitly in new code. This improves readability
// bad
function transform(value?: string) {
if (!value) {
return undefined
return undefined;
}
return applyTransform(value)
};
return applyTransform(value);
}
// good
function transform(value?: string): TransformedValue | undefined {
if (!value) {
return undefined
return undefined;
}
return applyTransform(value)
};
return applyTransform(value);
}
```
### File and directory naming conventions
@@ -244,6 +245,8 @@ For files exporting multiple utility functions, use the name that describes the
- Use `reducers.ts` Redux reducers.
- Use `*.test.ts(x)` for test files.
- Use kebab case for directory names: lowercase, words delimited by hyphen ( `-` ). For example, `features/new-important-feature/utils.ts`.
### Code organization
Organize your code in a directory that encloses feature code:

View File

@@ -4,11 +4,8 @@
**Themes are implemented in Typescript.** That's because our goal is to share variables between Grafana TypeScript and [Sass](https://sass-lang.com/) code. Theme definitions are located in the following files:
- [packages/grafana-ui/src/themes/dark.ts](../../packages/grafana-ui/src/themes/dark.ts)
- [packages/grafana-ui/src/themes/default.ts](../../packages/grafana-ui/src/themes/default.ts)
- [packages/grafana-ui/src/themes/light.ts](../../packages/grafana-ui/src/themes/light.ts)
The `default.ts` file holds common variables like typography and spacing definitions, while `[light|dark].ts` primarily specify colors used in themes.
- [packages/grafana-data/src/themes/createTheme.ts](../../packages/grafana-data/src/themes/createTheme.ts)
- [packages/grafana-data/src/themes/createColors.ts](../../packages/grafana-data/src/themes/createColors.ts)
## Usage
@@ -18,23 +15,22 @@ This section provides usage guidelines.
Here's how to use Grafana themes in React components.
#### useStyles hook
#### useStyles2 hook
`useStyles` memoizes the function and provides access to the theme.
`useStyles2` memoizes the function and provides access to the theme.
```tsx
import React, { FC } from 'react';
import { GrafanaTheme } from '@grafana/data';
import { useStyles } from '@grafana/ui';
import { GrafanaTheme2 } from '@grafana/data';
import { useStyles2 } from '@grafana/ui';
import { css } from '@emotion/css';
const getComponentStyles = (theme: GrafanaTheme) => css`
const getComponentStyles = (theme: GrafanaTheme2) => css`
padding: ${theme.spacing.md};
`;
const Foo: FC<FooProps> = () => {
const styles = useStyles(getComponentsStyles);
const styles = useStyles2(getComponentsStyles);
// Use styles with className
};
```
@@ -43,15 +39,89 @@ const Foo: FC<FooProps> = () => {
```tsx
import React, { FC } from 'react';
import { useTheme } from '@grafana/ui';
import { useTheme2 } from '@grafana/ui';
const Foo: FC<FooProps> = () => {
const theme = useTheme();
const theme = useTheme2();
// Your component has access to the theme variables now
};
```
## Picking the right variable
### The rich color object and the state colors
The theme.colors object has 6 rich color objects for `primary`, `secondary`, `info`, `success`, `warning` and `error`. These all
have the same sub colors that have different use cases.
| Property | When to use |
| ------------ | ---------------------------------------------------------- |
| main | For backgrounds |
| shade | For hover highlight |
| text | For text color |
| border | For borders, currently always the same as text color |
| contrastText | Text color to use for text placed on top of the main color |
Example use cases:
- Want a `red` background? Use `theme.colors.error.main`
- Want `green` text? Use `theme.colors.success.text`
- Want text to be visible when placed inside a background that uses `theme.colors.error.main` then use `theme.colors.error.contrastText`.
### Text colors
| Property | When to use |
| ----------------------------- | ------------------------------------------------------------------------------ |
| theme.colors.text.primary | The default text color |
| theme.colors.text.secondary | Text color for things that should be a bit less prominent |
| theme.colors.text.disabled | Text color for disabled / faint things |
| theme.colors.text.link | Text link color |
| theme.colors.text.maxContrast | Maximum contrast (absolute white in dark theme, absolute black in white theme) |
### Background colors
| Property | When to use |
| --------------------------------- | ------------------------------------------------------------------------------------------------- |
| theme.colors.background.canvas | Think dashboard background. A background surface for panels and panes that use primary background |
| theme.colors.background.primary | The default content background for content panes and panels |
| theme.colors.background.secondary | For cards and other surfaces that need to stand out when placed on top of the primary background |
### Borders
| Property | When to use |
| -------------------------- | ------------------------------------------------------------ |
| theme.colors.border.weak | Primary border for panels and panes and other subtle borders |
| theme.colors.border.medium | For stronger borders like inputs |
| theme.colors.border.strong | For even stronger border like hover highighted border |
### Actions
| Property | When to use |
| ---------------------------- | ----------------------------------------------------- |
| theme.colors.action.hover | Background color for hover on card, menu or list item |
| theme.colors.action.focus | Background color for focused card, menu or list item |
| theme.colors.action.selected | Background color for selected card, menu or list item |
### Paddings and margins
| Example | Result |
| --------------------------- | ----------------- |
| theme.spacing(1) | 8px |
| theme.spacing(1, 2) | 8px 16px |
| theme.spacing(1, 2, 0.5, 4) | 8px 16px 4px 32px |
### Border radius
| Example | Result |
| --------------------------- | ------ |
| theme.shape.borderRadius(1) | 2px |
| theme.shape.borderRadius(2) | 4px |
### Typography
For font family, font sizes and line heights use the variables under `theme.typography`.
#### Using `ThemeContext` directly
```tsx
@@ -67,39 +137,25 @@ With this method your component will be automatically wrapped in `ThemeContext.C
```ts
import { ThemeContext, Themeable } from '@grafana/ui';
interface FooProps extends Themeable {}
interface FooProps extends Themeable2 {}
const Foo: React.FunctionComponent<FooProps> = () => ...
export default withTheme(Foo);
export default withTheme2(Foo);
```
### Test components that use `ThemeContext`
### Using theme in tests
When implementing snapshot tests for components that use the `withTheme` HOC, the snapshot will contain the entire theme object. Any change to the theme renders the snapshot outdated.
To make your snapshot theme independent, use the `mockThemeContext` helper function:
If you need to pass a theme object to a function under test just import `createTheme` and call it without
any arguments.
```tsx
import { mockThemeContext } from '@grafana/ui';
import { MyComponent } from './MyComponent';
import { createTheme } from '@grafana/data';
describe('MyComponent', () => {
let restoreThemeContext;
beforeAll(() => {
// Create ThemeContext mock before any snapshot test is executed
restoreThemeContext = mockThemeContext({ type: GrafanaThemeType.Dark });
});
afterAll(() => {
// Make sure the theme is restored after snapshot tests are performed
restoreThemeContext();
});
it('renders correctly', () => {
const wrapper = mount(<MyComponent />);
expect(wrapper).toMatchSnapshot();
it('should work', () => {
result = functionThatNeedsTheme(createTheme());
expect(result).toBe(true);
});
});
```
@@ -116,36 +172,5 @@ This section provides insight into frequently-asked questions.
`[_variables|_variables.dark|_variables.light].generated.scss` files are the ones that are referenced in the main Sass files for Sass variables to be available. **These files are automatically generated and should never be modified by hand!**
#### If you need to modify a _Sass variable value_ you need to modify the corresponding Typescript file that is the source of the variables:
- `_variables.generated.scss` - modify `grafana-ui/src/themes/default.ts`
- `_variables.light.generated.scss` - modify `grafana-ui/src/themes/light.ts`
- `_variables.dark.generated.scss` - modify `grafana-ui/src/themes/dark.ts`
#### If you need to _add new variable_ to Sass variables you need to modify corresponding template file:
- `_variables.generated.scss` - modify `grafana-ui/src/themes/_variables.scss.tmpl.ts`
- `_variables.light.generated.scss` - modify `grafana-ui/src/themes/_variables.light.scss.tmpl.ts`
- `_variables.dark.generated.scss` - modify `grafana-ui/src/themes/_variables.dark.scss.tmpl.ts`
## Limitations
This section describes limitations with Grafana's theming system.
### You must ensure `ThemeContext` provider is available in a React tree
By default all react2angular directives have `ThemeContext.Provider` ensured. But, there are cases where we create another React tree via `ReactDOM.render`. This happens in the case of graph legend rendering and the `ReactContainer` directive. In such cases theme consumption will fail. To make sure theme context is available in such cases, you need to wrap your rendered component with ThemeContext.Provider using the `provideTheme` function:
```ts
// graph.ts
import { provideTheme } from 'app/core/utils/ConfigProvider';
// Create component with ThemeContext.Provider first.
// Otherwise React will create new components every time it renders!
const LegendWithThemeProvider = provideTheme(Legend);
const legendReactElem = React.createElement(LegendWithThemeProvider, legendProps);
ReactDOM.render(legendReactElem, this.legendElem, () => this.renderPanel());
```
`provideTheme` makes current theme available via ThemeContext by checking if user has `lightTheme` set in her boot data.
If you need to modify the sass variable files be sure to update the files that end with `.tmpl.ts` and
not the `.generated.scss` files.

View File

@@ -1,214 +0,0 @@
package grafanaschema
import "github.com/grafana/grafana/cue/scuemata"
Family: scuemata.#Family & {
lineages: [
[
{ // 0.0
// Unique numeric identifier for the dashboard.
// TODO must isolate or remove identifiers local to a Grafana instance...?
id?: number
// Unique dashboard identifier that can be generated by anyone. string (8-40)
uid?: string
// Title of dashboard.
title?: string
// Description of dashboard.
description?: string
gnetId?: string
// Tags associated with dashboard.
tags?: [...string]
// Theme of dashboard.
style: *"light" | "dark"
// Timezone of dashboard,
timezone?: *"browser" | "utc"
// Whether a dashboard is editable or not.
editable: bool | *true
// 0 for no shared crosshair or tooltip (default).
// 1 for shared crosshair.
// 2 for shared crosshair AND shared tooltip.
graphTooltip: >=0 & <=2 | *0
// Time range for dashboard, e.g. last 6 hours, last 7 days, etc
time?: {
from: string | *"now-6h"
to: string | *"now"
}
// Timepicker metadata.
timepicker?: {
// Whether timepicker is collapsed or not.
collapse: bool | *false
// Whether timepicker is enabled or not.
enable: bool | *true
// Whether timepicker is visible or not.
hidden: bool | *false
// Selectable intervals for auto-refresh.
refresh_intervals: [...string] | *["5s", "10s", "30s", "1m", "5m", "15m", "30m", "1h", "2h", "1d"]
}
// Templating.
templating?: list: [...{...}]
// Annotations.
annotations?: list: [...{
builtIn: number | *0
// Datasource to use for annotation.
datasource: string
// Whether annotation is enabled.
enable?: bool | *true
// Whether to hide annotation.
hide?: bool | *false
// Annotation icon color.
iconColor?: string
// Name of annotation.
name?: string
type: string | *"dashboard"
// Query for annotation data.
rawQuery?: string
showIn: number | *0
}]
// Auto-refresh interval.
refresh?: string
// Version of the JSON schema, incremented each time a Grafana update brings
// changes to said schema.
schemaVersion: number | *25
// Version of the dashboard, incremented each time the dashboard is updated.
version?: number
panels?: [...#Panel]
// Dashboard panels. Panels are canonically defined inline
// because they share a version timeline with the dashboard
// schema; they do not vary independently. We create a separate,
// synthetic Family to represent them in Go, for ease of generating
// e.g. JSON Schema.
#Panel: {
...
// The panel plugin type id.
type: !=""
// Internal - the exact major and minor versions of the panel plugin
// schema. Hidden and therefore not a part of the data model, but
// expected to be filled with panel plugin schema versions so that it's
// possible to figure out which schema version matched on a successful
// unification.
// _pv: { maj: int, min: int }
// The major and minor versions of the panel plugin for this schema.
// TODO 2-tuple list instead of struct?
panelSchema?: { maj: number, min: number }
// Panel title.
title?: string
// Description.
description?: string
// Whether to display the panel without a background.
transparent: bool | *false
// Name of default datasource.
datasource?: string
// Grid position.
gridPos?: {
// Panel
h: number & >0 | *9
// Panel
w: number & >0 & <=24 | *12
// Panel x
x: number & >=0 & <24 | *0
// Panel y
y: number & >=0 | *0
// true if fixed
static?: bool
}
// Panel links.
// links?: [..._panelLink]
// Name of template variable to repeat for.
repeat?: string
// Direction to repeat in if 'repeat' is set.
// "h" for horizontal, "v" for vertical.
repeatDirection: *"h" | "v"
// Schema for panel targets is specified by datasource
// plugins. We use a placeholder definition, which the Go
// schema loader either left open/as-is with the Base
// variant of the Dashboard and Panel families, or filled
// with types derived from plugins in the Instance variant.
// When working directly from CUE, importers can extend this
// type directly to achieve the same effect.
targets?: [...{...}]
// The values depend on panel type
options: {...}
fieldConfig: {
defaults: {
...
// The display value for this field. This supports template variables blank is auto
displayName?: string
// This can be used by data sources that return and explicit naming structure for values and labels
// When this property is configured, this value is used rather than the default naming strategy.
displayNameFromDS?: string
// Human readable field metadata
description?: string
// An explict path to the field in the datasource. When the frame meta includes a path,
// This will default to `${frame.meta.path}/${field.name}
//
// When defined, this value can be used as an identifier within the datasource scope, and
// may be used to update the results
path?: string
// True if data source can write a value to the path. Auth/authz are supported separately
writeable?: bool
// True if data source field supports ad-hoc filters
filterable?: bool
// Numeric Options
unit?: string
// Significant digits (for display)
decimals?: number
min?: number
max?: number
// // Convert input values into a display string
// mappings?: ValueMapping[];
// // Map numeric values to states
// thresholds?: ThresholdsConfig;
// // Map values to a display color
// color?: FieldColor;
// // Used when reducing field values
// nullValueMode?: NullValueMode;
// // The behavior when clicking on a result
links?: [...]
// Alternative to empty string
noValue?: string
// Can always exist. Valid fields within this are
// defined by the panel plugin - that's the
// PanelFieldConfig that comes from the plugin.
custom?: {...}
}
overrides: [...{
matcher: {
id: string | *""
options?: _
}
properties: [...{
id: string | *""
value?: _
}]
}]
}
}
}
]
]
}
#Latest: {
#Dashboard: Family.latest
#Panel: Family.latest._Panel
}

View File

@@ -8,10 +8,10 @@ package scuemata
// the larger Dashboard schema.
#PanelSchema: {
// Defines plugin specific options for a panel
PanelOptions: {...}
PanelOptions: {...} @cuetsy(kind="interface")
// Define the custom properties that exist within standard field config
PanelFieldConfig?: {...}
PanelFieldConfig?: {...} @cuetsy(kind="interface")
// Panels may define their own types
...

View File

@@ -14,6 +14,7 @@ package scuemata
// its position in the list of lineages - e.g., 0.0 corresponds to the first
// schema in the first lineage.
#Family: {
compose?: {...}
lineages: [#Lineage, ...#Lineage]
migrations: [...#Migration]
let lseq = lineages[len(lineages)-1]

View File

@@ -1,93 +0,0 @@
package grafanaschema
TableCellDisplayMode: {
Auto: "auto",
ColorText: "color-text",
ColorBackground: "color-background",
GradientGauge: "gradient-gauge",
LcdGauge: "lcd-gauge",
JSONView: "json-view",
BasicGauge: "basic",
Image: "image",
} @cuetsy(targetType="enum")
TableFieldOptions: {
width?: number
align: FieldTextAlignment | *"auto"
displayMode: TableCellDisplayMode | *"auto"
hidden?: bool // ?? default is missing or false ??
} @cuetsy(targetType="interface")
TableSortByFieldState: {
displayName: string
desc?: bool
} @cuetsy(targetType="interface")
TooltipDisplayMode: "single" | "multi" | "none" @cuetsy(targetType="enum")
FieldTextAlignment: "auto" | "left" | "right" | "center" @cuetsy(targetType="type")
AxisPlacement: "auto" | "top" | "right" | "bottom" | "left" | "hidden" @cuetsy(targetType="enum")
PointVisibility: "auto" | "never" | "always" @cuetsy(targetType="enum")
DrawStyle: "line" | "bars" | "points" @cuetsy(targetType="enum")
LineInterpolation: "linear" | "smooth" | "stepBefore" | "stepAfter" @cuetsy(targetType="enum")
ScaleDistribution: "linear" | "log" @cuetsy(targetType="enum")
GraphGradientMode: "none" | "opacity" | "hue" | "scheme" @cuetsy(targetType="enum")
LineStyle: {
fill?: "solid" | "dash" | "dot" | "square"
dash?: [number]
} @cuetsy(targetType="interface")
LineConfig: {
lineColor?: string
lineWidth?: number
lineInterpolation?: LineInterpolation
lineStyle?: LineStyle
spanNulls?: bool
} @cuetsy(targetType="interface")
FillConfig: {
fillColor?: string
fillOpacity?: number
fillBelowTo?: string
} @cuetsy(targetType="interface")
PointsConfig: {
showPoints?: PointVisibility
pointSize?: number
pointColor?: string
pointSymbol?: string
} @cuetsy(targetType="interface")
ScaleDistributionConfig: {
type: ScaleDistribution
log?: number
} @cuetsy(targetType="interface")
AxisConfig: {
axisPlacement?: AxisPlacement
axisLabel?: string
axisWidth?: number
axisSoftMin?: number
axisSoftMax?: number
scaleDistribution?: ScaleDistributionConfig
} @cuetsy(targetType="interface")
HideSeriesConfig: {
tooltip: bool
legend: bool
graph: bool
} @cuetsy(targetType="interface")
LegendPlacement: "bottom" | "right" @cuetsy(targetType="type")
LegendDisplayMode: "list" | "table" | "hidden" @cuetsy(targetType="enum")
TableFieldOptions: {
width?: number
align: FieldTextAlignment | *"auto"
displayMode: TableCellDisplayMode | *"auto"
hidden?: bool
} @cuetsy(targetType="interface")
GraphFieldConfig: LineConfig & FillConfig & PointsConfig & AxisConfig & {
drawStyle?: DrawStyle
gradientMode?: GraphGradientMode
hideFrom?: HideSeriesConfig
} @cuetsy(targetType="interface")
VizLegendOptions: {
displayMode: LegendDisplayMode
placement: LegendPlacement
calcs: [string]
} @cuetsy(targetType="interface")
VizTooltipOptions: {
mode: TooltipDisplayMode
} @cuetsy(targetType="interface")

View File

@@ -55,15 +55,15 @@ Jaeger block runs both Jaeger and Loki container. Loki container sends traces to
| 1.0 | graphite1 | 8280 | 2203 | 2203 |
| 0.9 | graphite09 | 8380 | 2303 | 2303 |
## Debugging setup in VS Code
An example of launch.json is provided in `devenv/vscode/launch.json`. It basically does what Makefile and .bra.toml do. The 'program' field is set to the folder name so VS Code loads all *.go files in it instead of just main.go.
## Troubleshooting
### Containers fail to start (Mac OS)
### Containers that read from log files fail to start (Mac OS)
If you are running Mac OSX, containers that read from the log files (e.g. Telegraf, Fileabeat, Promtail) can fail to start. This is because the default Docker for Mac does not have permission to create `grafana` folder at the `/var/log` location, as it runs as the current user. To solve this issue, manually create the folder `/var/log/grafana`, then start the containers again.
```
ERROR: for <service_name> Cannot start service <service_name>: OCI runtime create failed: container_linux.go:349: starting container process caused "process_linux.go:449: container init caused \"rootfs_linux.go:58: mounting ... merged/var/log/grafana: operation not permitted\\\"\"": unknown
ERROR: Encountered errors while bringing up the project.
sudo mkdir /var/log/grafana
```
If running Mac OSX the above error might be encountered when starting certain Docker containers that mount `/var/log/`. When first run this causes Docker to try to create the folder `/var/log/grafana` however by default Docker for Mac does not have permission to create folders at this location as it runs as the current user.
To solve this issue manually create the folder `/var/log/grafana` and give your user write permissions then try starting the containers again.

View File

@@ -84,6 +84,14 @@ datasources:
tsdbResolution: 1
tsdbVersion: 1
- name: gdev-opentsdb-v2.3
type: opentsdb
access: proxy
url: http://localhost:4242
jsonData:
tsdbResolution: 1
tsdbVersion: 3
- name: gdev-elasticsearch-v2-metrics
type: elasticsearch
access: proxy

View File

@@ -0,0 +1,235 @@
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": "-- Grafana --",
"enable": true,
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"name": "Annotations & Alerts",
"type": "dashboard"
}
]
},
"editable": true,
"graphTooltip": 0,
"id": 3151,
"links": [],
"panels": [
{
"aliasColors": {},
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "gdev-opentsdb-v2.3",
"fieldConfig": {
"defaults": {
"links": []
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"gridPos": {
"h": 9,
"w": 12,
"x": 0,
"y": 0
},
"hiddenSeries": false,
"id": 2,
"legend": {
"avg": false,
"current": false,
"max": false,
"min": false,
"show": true,
"total": false,
"values": false
},
"lines": true,
"linewidth": 1,
"nullPointMode": "null",
"options": {
"alertThreshold": true
},
"percentage": false,
"pluginVersion": "8.1.0-pre",
"pointradius": 2,
"points": false,
"renderer": "flot",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
"aggregator": "sum",
"alias": "$tag_hostname",
"currentFilterGroupBy": false,
"currentFilterKey": "",
"currentFilterType": "literal_or",
"currentFilterValue": "",
"disableDownsampling": false,
"downsampleAggregator": "avg",
"downsampleFillPolicy": "none",
"explicitTags": false,
"filters": [
{
"filter": "*",
"groupBy": true,
"tagk": "hostname",
"type": "wildcard"
}
],
"metric": "cpu",
"refId": "A",
"shouldComputeRate": false
}
],
"thresholds": [],
"timeRegions": [],
"title": "CPU per host",
"tooltip": {
"shared": true,
"sort": 0,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"mode": "time",
"show": true,
"values": []
},
"yaxes": [
{
"format": "short",
"logBase": 1,
"show": true
},
{
"format": "short",
"logBase": 1,
"show": true
}
],
"yaxis": {
"align": false
}
},
{
"aliasColors": {},
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "gdev-opentsdb-v2.3",
"fieldConfig": {
"defaults": {
"links": []
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"gridPos": {
"h": 9,
"w": 12,
"x": 12,
"y": 0
},
"hiddenSeries": false,
"id": 4,
"legend": {
"avg": false,
"current": false,
"max": false,
"min": false,
"show": true,
"total": false,
"values": false
},
"lines": true,
"linewidth": 1,
"nullPointMode": "null",
"options": {
"alertThreshold": true
},
"percentage": false,
"pluginVersion": "8.1.0-pre",
"pointradius": 2,
"points": false,
"renderer": "flot",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
"aggregator": "sum",
"alias": "$tag_hostname",
"currentFilterGroupBy": false,
"currentFilterKey": "",
"currentFilterType": "literal_or",
"currentFilterValue": "",
"downsampleAggregator": "avg",
"downsampleFillPolicy": "none",
"filters": [
{
"filter": "*",
"groupBy": true,
"tagk": "hostname",
"type": "wildcard"
}
],
"metric": "logins.count",
"refId": "A"
}
],
"thresholds": [],
"timeRegions": [],
"title": "Login Count per host",
"tooltip": {
"shared": true,
"sort": 0,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"mode": "time",
"show": true,
"values": []
},
"yaxes": [
{
"format": "short",
"logBase": 1,
"show": true
},
{
"format": "short",
"logBase": 1,
"show": true
}
],
"yaxis": {
"align": false
}
}
],
"schemaVersion": 30,
"style": "dark",
"tags": [],
"templating": {
"list": []
},
"time": {
"from": "now-1h",
"to": "now"
},
"timepicker": {},
"timezone": "",
"title": "Datasource tests - OpenTSDB v2.3",
"uid": "rZRUGik7k",
"version": 3
}

View File

@@ -511,7 +511,6 @@
},
"id": 41,
"options": {
"graph": {},
"legend": {
"calcs": [],
"displayMode": "list",
@@ -613,7 +612,6 @@
},
"id": 42,
"options": {
"graph": {},
"legend": {
"calcs": [],
"displayMode": "list",
@@ -716,7 +714,6 @@
},
"id": 32,
"options": {
"graph": {},
"legend": {
"calcs": [],
"displayMode": "list",
@@ -819,7 +816,6 @@
},
"id": 44,
"options": {
"graph": {},
"legend": {
"calcs": [],
"displayMode": "list",
@@ -2070,7 +2066,6 @@
"id": 29,
"maxDataPoints": 500,
"options": {
"graph": {},
"legend": {
"calcs": [
"last"

View File

@@ -13,13 +13,11 @@
]
},
"editable": true,
"gnetId": null,
"graphTooltip": 0,
"id": 625,
"links": [],
"panels": [
{
"datasource": null,
"gridPos": {
"h": 4,
"w": 24,
@@ -38,13 +36,10 @@
"target": ""
}
],
"timeFrom": null,
"timeShift": null,
"transparent": true,
"type": "text"
},
{
"cacheTimeout": null,
"datasource": "gdev-testdata",
"gridPos": {
"h": 8,
@@ -107,8 +102,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -166,7 +160,6 @@
"type": "state-timeline"
},
{
"cacheTimeout": null,
"datasource": "gdev-testdata",
"gridPos": {
"h": 15,
@@ -207,8 +200,7 @@
"mode": "absolute",
"steps": [
{
"color": "blue",
"value": null
"color": "blue"
},
{
"color": "green",
@@ -267,10 +259,9 @@
"fillOpacity": 0,
"gradientMode": "none",
"hideFrom": {
"graph": false,
"viz": false,
"legend": false,
"tooltip": false,
"viz": false
"tooltip": false
},
"lineInterpolation": "linear",
"lineWidth": 1,
@@ -293,8 +284,7 @@
"mode": "absolute",
"steps": [
{
"color": "blue",
"value": null
"color": "blue"
},
{
"color": "green",
@@ -343,7 +333,6 @@
"type": "timeseries"
},
{
"cacheTimeout": null,
"datasource": "gdev-testdata",
"gridPos": {
"h": 13,
@@ -386,8 +375,7 @@
"mode": "absolute",
"steps": [
{
"color": "blue",
"value": null
"color": "blue"
},
{
"color": "#EAB839",
@@ -473,8 +461,7 @@
"mode": "absolute",
"steps": [
{
"color": "blue",
"value": null
"color": "blue"
},
{
"color": "#EAB839",
@@ -522,7 +509,6 @@
"type": "status-history"
},
{
"cacheTimeout": null,
"datasource": "gdev-testdata",
"gridPos": {
"h": 3,
@@ -562,7 +548,7 @@
"fillOpacity": 74,
"gradientMode": "none",
"hideFrom": {
"graph": false,
"viz": false,
"legend": false,
"tooltip": false
},
@@ -573,8 +559,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -679,7 +664,7 @@
"fillOpacity": 80,
"gradientMode": "none",
"hideFrom": {
"graph": false,
"viz": false,
"legend": false,
"tooltip": false
},
@@ -713,8 +698,7 @@
"mode": "absolute",
"steps": [
{
"color": "blue",
"value": null
"color": "blue"
}
]
},
@@ -757,7 +741,6 @@
"type": "barchart"
},
{
"cacheTimeout": null,
"datasource": "gdev-testdata",
"gridPos": {
"h": 3,
@@ -783,7 +766,6 @@
"type": "text"
},
{
"cacheTimeout": null,
"datasource": "gdev-testdata",
"gridPos": {
"h": 6,
@@ -823,7 +805,7 @@
"fillOpacity": 50,
"gradientMode": "hue",
"hideFrom": {
"graph": false,
"viz": false,
"legend": false,
"tooltip": false
},
@@ -848,8 +830,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -924,8 +905,6 @@
"stringInput": ""
}
],
"timeFrom": null,
"timeShift": null,
"title": "Interpolation mode: smooth",
"type": "timeseries"
},
@@ -944,7 +923,7 @@
"fillOpacity": 40,
"gradientMode": "hue",
"hideFrom": {
"graph": false,
"viz": false,
"legend": false,
"tooltip": false
},
@@ -969,8 +948,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -1045,8 +1023,6 @@
"stringInput": "1,20,90,30,5,0"
}
],
"timeFrom": null,
"timeShift": null,
"title": "Interpolation mode: Step before",
"type": "timeseries"
},
@@ -1065,7 +1041,7 @@
"fillOpacity": 40,
"gradientMode": "hue",
"hideFrom": {
"graph": false,
"viz": false,
"legend": false,
"tooltip": false
},
@@ -1090,8 +1066,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -1166,13 +1141,10 @@
"stringInput": "1,20,90,30,5,0"
}
],
"timeFrom": null,
"timeShift": null,
"title": "Interpolation mode: Step after",
"type": "timeseries"
},
{
"cacheTimeout": null,
"datasource": "gdev-testdata",
"gridPos": {
"h": 8,
@@ -1210,12 +1182,9 @@
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 10,
"gradientMode": {
"label": "None",
"value": "none"
},
"gradientMode": "none",
"hideFrom": {
"graph": false,
"viz": false,
"legend": false,
"tooltip": false
},
@@ -1240,8 +1209,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -1261,7 +1229,6 @@
},
"id": 41,
"options": {
"graph": {},
"legend": {
"calcs": [],
"displayMode": "list",
@@ -1300,8 +1267,6 @@
"stringInput": "10,11,12,11,10,11,12,12,11,10,9,10,11,12,10,10,11,12,13,11,10,9,10,11,12,13,14,10,10"
}
],
"timeFrom": null,
"timeShift": null,
"title": "Auto min max",
"type": "timeseries"
},
@@ -1319,12 +1284,9 @@
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 10,
"gradientMode": {
"label": "None",
"value": "none"
},
"gradientMode": "none",
"hideFrom": {
"graph": false,
"viz": false,
"legend": false,
"tooltip": false
},
@@ -1351,8 +1313,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -1372,7 +1333,6 @@
},
"id": 32,
"options": {
"graph": {},
"legend": {
"calcs": [],
"displayMode": "list",
@@ -1411,8 +1371,6 @@
"stringInput": "10,11,12,11,10,11,12,12,11,10,9,10,11,12,200,10,11,12,13,11,10,9,10,11,12,13,14,10,10"
}
],
"timeFrom": null,
"timeShift": null,
"title": "Hard min 0, max 30",
"type": "timeseries"
},
@@ -1432,12 +1390,9 @@
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 10,
"gradientMode": {
"label": "None",
"value": "none"
},
"gradientMode": "none",
"hideFrom": {
"graph": false,
"viz": false,
"legend": false,
"tooltip": false
},
@@ -1462,8 +1417,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -1483,7 +1437,6 @@
},
"id": 44,
"options": {
"graph": {},
"legend": {
"calcs": [],
"displayMode": "list",
@@ -1522,13 +1475,10 @@
"stringInput": "10,11,12,11,10,11,12,12,11,10,9,10,11,12,200,10,11,12,13,11,10,9,10,11,12,13,14,10,10"
}
],
"timeFrom": null,
"timeShift": null,
"title": "Soft min 0, soft max 30",
"type": "timeseries"
},
{
"cacheTimeout": null,
"datasource": "gdev-testdata",
"gridPos": {
"h": 5,
@@ -1570,7 +1520,7 @@
"fillOpacity": 0,
"gradientMode": "opacity",
"hideFrom": {
"graph": false,
"viz": false,
"legend": false,
"tooltip": false
},
@@ -1595,8 +1545,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -1769,7 +1718,6 @@
"type": "timeseries"
},
{
"cacheTimeout": null,
"datasource": "gdev-testdata",
"gridPos": {
"h": 5,
@@ -1807,12 +1755,9 @@
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 0,
"gradientMode": {
"label": "None",
"value": "none"
},
"gradientMode": "none",
"hideFrom": {
"graph": false,
"viz": false,
"legend": false,
"tooltip": false
},
@@ -1844,8 +1789,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -2133,12 +2077,9 @@
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 0,
"gradientMode": {
"label": "None",
"value": "none"
},
"gradientMode": "none",
"hideFrom": {
"graph": false,
"viz": false,
"legend": false,
"tooltip": false
},
@@ -2170,8 +2111,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -2461,7 +2401,7 @@
"fillOpacity": 82,
"gradientMode": "hue",
"hideFrom": {
"graph": false,
"viz": false,
"legend": false,
"tooltip": false
},
@@ -2493,8 +2433,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -2573,7 +2512,6 @@
"type": "timeseries"
},
{
"cacheTimeout": null,
"datasource": "gdev-testdata",
"gridPos": {
"h": 3,
@@ -2609,7 +2547,7 @@
"fillOpacity": 80,
"gradientMode": "hue",
"hideFrom": {
"graph": false,
"viz": false,
"legend": false,
"tooltip": false
},
@@ -2620,8 +2558,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -2655,7 +2592,6 @@
"y": 83
},
"id": 49,
"maxDataPoints": null,
"options": {
"bucketOffset": 0,
"bucketSize": 10,
@@ -2719,8 +2655,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -2754,7 +2689,6 @@
"y": 83
},
"id": 77,
"maxDataPoints": null,
"options": {
"showHeader": true
},
@@ -2838,4 +2772,4 @@
"title": "New Features in v8.0",
"uid": "8mux8PqGz",
"version": 17
}
}

View File

@@ -8,127 +8,188 @@
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"name": "Annotations & Alerts",
"target": {
"limit": 100,
"matchAny": false,
"tags": [],
"type": "dashboard"
},
"type": "dashboard"
}
]
},
"editable": true,
"gnetId": null,
"graphTooltip": 0,
"links": [],
"panels": [
{
"folderId": null,
"gridPos": {
"h": 26,
"w": 6,
"x": 0,
"y": 0
},
"headings": true,
"id": 7,
"limit": 100,
"links": [],
"query": "",
"recent": true,
"search": false,
"starred": true,
"options": {
"maxItems": 100,
"query": "",
"showHeadings": true,
"showRecentlyViewed": true,
"showSearch": false,
"showStarred": true,
"tags": []
},
"pluginVersion": "8.1.0-pre",
"tags": [],
"timeFrom": null,
"timeShift": null,
"title": "Starred",
"type": "dashlist"
},
{
"folderId": null,
"gridPos": {
"h": 13,
"w": 6,
"x": 6,
"y": 0
},
"headings": false,
"id": 2,
"limit": 1000,
"links": [],
"query": "",
"recent": false,
"search": true,
"starred": false,
"tags": ["panel-tests"],
"timeFrom": null,
"timeShift": null,
"options": {
"maxItems": 1000,
"query": "",
"showHeadings": false,
"showRecentlyViewed": false,
"showSearch": true,
"showStarred": false,
"tags": [
"panel-tests"
]
},
"pluginVersion": "8.1.0-pre",
"tags": [
"panel-tests"
],
"title": "tag: panel-tests",
"type": "dashlist"
},
{
"folderId": null,
"gridPos": {
"h": 26,
"h": 13,
"w": 6,
"x": 12,
"y": 0
},
"headings": false,
"id": 3,
"limit": 1000,
"links": [],
"query": "",
"recent": false,
"search": true,
"starred": false,
"tags": ["gdev", "demo"],
"timeFrom": null,
"timeShift": null,
"options": {
"maxItems": 1000,
"query": "",
"showHeadings": false,
"showRecentlyViewed": false,
"showSearch": true,
"showStarred": false,
"tags": [
"gdev",
"demo"
]
},
"pluginVersion": "8.1.0-pre",
"tags": [
"gdev",
"demo"
],
"title": "tag: dashboard-demo",
"type": "dashlist"
},
{
"folderId": null,
"gridPos": {
"h": 26,
"w": 6,
"x": 18,
"y": 0
},
"headings": false,
"id": 5,
"limit": 1000,
"links": [],
"query": "",
"recent": false,
"search": true,
"starred": false,
"tags": ["gdev", "datasource-test"],
"timeFrom": null,
"timeShift": null,
"options": {
"maxItems": 1000,
"query": "",
"showHeadings": false,
"showRecentlyViewed": false,
"showSearch": true,
"showStarred": false,
"tags": [
"gdev",
"datasource-test"
]
},
"pluginVersion": "8.1.0-pre",
"tags": [
"gdev",
"datasource-test"
],
"title": "Data source tests",
"type": "dashlist"
},
{
"folderId": null,
"gridPos": {
"h": 13,
"w": 6,
"x": 6,
"y": 13
},
"headings": false,
"id": 4,
"limit": 1000,
"links": [],
"query": "",
"recent": false,
"search": true,
"starred": false,
"tags": ["templating", "gdev"],
"timeFrom": null,
"timeShift": null,
"options": {
"maxItems": 1000,
"query": "",
"showHeadings": false,
"showRecentlyViewed": false,
"showSearch": true,
"showStarred": false,
"tags": [
"templating",
"gdev"
]
},
"pluginVersion": "8.1.0-pre",
"tags": [
"templating",
"gdev"
],
"title": "tag: templating ",
"type": "dashlist"
},
{
"gridPos": {
"h": 13,
"w": 6,
"x": 12,
"y": 13
},
"id": 8,
"links": [],
"options": {
"maxItems": 1000,
"query": "",
"showHeadings": false,
"showRecentlyViewed": false,
"showSearch": true,
"showStarred": false,
"tags": [
"gdev",
"transform"
]
},
"pluginVersion": "8.1.0-pre",
"tags": [
"gdev",
"demo"
],
"title": "tag: transforms",
"type": "dashlist"
}
],
"schemaVersion": 18,
"schemaVersion": 30,
"style": "dark",
"tags": [],
"templating": {
@@ -139,8 +200,29 @@
"to": "now"
},
"timepicker": {
"refresh_intervals": ["5s", "10s", "30s", "1m", "5m", "15m", "30m", "1h", "2h", "1d"],
"time_options": ["5m", "15m", "1h", "6h", "12h", "24h", "2d", "7d", "30d"]
"refresh_intervals": [
"5s",
"10s",
"30s",
"1m",
"5m",
"15m",
"30m",
"1h",
"2h",
"1d"
],
"time_options": [
"5m",
"15m",
"1h",
"6h",
"12h",
"24h",
"2d",
"7d",
"30d"
]
},
"timezone": "",
"title": "Grafana Dev Overview & Home",

View File

@@ -8,17 +8,21 @@
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"name": "Annotations & Alerts",
"target": {
"limit": 100,
"matchAny": false,
"tags": [],
"type": "dashboard"
},
"type": "dashboard"
}
]
},
"editable": true,
"gnetId": null,
"graphTooltip": 0,
"links": [],
"panels": [
{
"datasource": null,
"fieldConfig": {
"defaults": {
"color": {
@@ -31,9 +35,9 @@
"fillOpacity": 80,
"gradientMode": "none",
"hideFrom": {
"graph": false,
"legend": false,
"tooltip": false
"tooltip": false,
"viz": false
},
"lineWidth": 0
},
@@ -42,8 +46,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -73,6 +76,7 @@
},
"orientation": "auto",
"showValue": "auto",
"stacking": "none",
"text": {},
"tooltip": {
"mode": "single"
@@ -80,7 +84,7 @@
},
"targets": [
{
"csvContent": "Name,Stat1,Stat2\nStockholm, 10, 15\nNew York, 19, 5\nLondon, 10, 1\nNegative, 15, -5\nLong value, 15,10",
"csvContent": "Time,Name,Stat1,Stat2\n2020-01-01T00:00:00Z,Stockholm, 10, 15\n2020-01-01T00:00:00Z,New York, 19, 5\n2020-01-01T00:00:00Z,London, 10, 1\n2020-01-01T00:00:00Z,Negative, 15, -5\n2020-01-01T00:00:00Z,Long value, 15,10",
"refId": "A",
"scenarioId": "csv_content"
}
@@ -89,7 +93,6 @@
"type": "barchart"
},
{
"datasource": null,
"description": "Should be smaller given the longer value",
"fieldConfig": {
"defaults": {
@@ -103,9 +106,9 @@
"fillOpacity": 80,
"gradientMode": "none",
"hideFrom": {
"graph": false,
"legend": false,
"tooltip": false
"tooltip": false,
"viz": false
},
"lineWidth": 0
},
@@ -115,8 +118,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -146,6 +148,7 @@
},
"orientation": "auto",
"showValue": "auto",
"stacking": "none",
"text": {},
"tooltip": {
"mode": "single"
@@ -162,7 +165,6 @@
"type": "barchart"
},
{
"datasource": null,
"fieldConfig": {
"defaults": {
"color": {
@@ -175,9 +177,9 @@
"fillOpacity": 80,
"gradientMode": "none",
"hideFrom": {
"graph": false,
"legend": false,
"tooltip": false
"tooltip": false,
"viz": false
},
"lineWidth": 0
},
@@ -186,8 +188,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -217,6 +218,7 @@
},
"orientation": "auto",
"showValue": "auto",
"stacking": "none",
"text": {},
"tooltip": {
"mode": "single"
@@ -233,7 +235,6 @@
"type": "barchart"
},
{
"datasource": null,
"fieldConfig": {
"defaults": {
"color": {
@@ -246,9 +247,9 @@
"fillOpacity": 80,
"gradientMode": "none",
"hideFrom": {
"graph": false,
"legend": false,
"tooltip": false
"tooltip": false,
"viz": false
},
"lineWidth": 0
},
@@ -257,8 +258,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -288,6 +288,7 @@
},
"orientation": "auto",
"showValue": "always",
"stacking": "none",
"text": {},
"tooltip": {
"mode": "single"
@@ -317,9 +318,9 @@
"fillOpacity": 80,
"gradientMode": "none",
"hideFrom": {
"graph": false,
"legend": false,
"tooltip": false
"tooltip": false,
"viz": false
},
"lineWidth": 0
},
@@ -328,8 +329,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -357,8 +357,9 @@
},
"orientation": "auto",
"showValue": "auto",
"stacking": "none",
"text": {
"size": 10,
"titleSize": 10,
"valueSize": 25
},
"tooltip": {
@@ -375,7 +376,6 @@
"type": "barchart"
},
{
"datasource": null,
"fieldConfig": {
"defaults": {
"color": {
@@ -388,19 +388,19 @@
"fillOpacity": 80,
"gradientMode": "none",
"hideFrom": {
"graph": false,
"legend": false,
"tooltip": false
"tooltip": false,
"viz": false
},
"lineWidth": 0
},
"decimals": 7,
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -430,6 +430,7 @@
},
"orientation": "horizontal",
"showValue": "auto",
"stacking": "none",
"text": {},
"tooltip": {
"mode": "single"
@@ -437,7 +438,7 @@
},
"targets": [
{
"csvContent": "Name,Stat1,Stat2\nStockholm, 10, 15\nNew York, 19, 5\nLondon, 10, 1\nLong value, 15,10",
"csvContent": "Name,Stat1,Stat2\nStockholm, 10, 15\nNew York, 19, -5\nLondon, 10, 1\nLong value, 15,10",
"refId": "A",
"scenarioId": "csv_content"
}
@@ -446,7 +447,6 @@
"type": "barchart"
},
{
"datasource": null,
"description": "",
"fieldConfig": {
"defaults": {
@@ -460,9 +460,9 @@
"fillOpacity": 80,
"gradientMode": "none",
"hideFrom": {
"graph": false,
"legend": false,
"tooltip": false
"tooltip": false,
"viz": false
},
"lineWidth": 0
},
@@ -471,8 +471,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -502,6 +501,7 @@
},
"orientation": "horizontal",
"showValue": "auto",
"stacking": "none",
"text": {},
"tooltip": {
"mode": "single"
@@ -537,5 +537,5 @@
"timezone": "",
"title": "BarChart - Panel Tests - Value sizing",
"uid": "WFlOM-jM1",
"version": 3
}
"version": 9
}

View File

@@ -0,0 +1,395 @@
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": "-- Grafana --",
"enable": true,
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"name": "Annotations & Alerts",
"target": {
"limit": 100,
"matchAny": false,
"tags": [],
"type": "dashboard"
},
"type": "dashboard"
}
]
},
"editable": true,
"graphTooltip": 0,
"links": [],
"liveNow": false,
"panels": [
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "continuous-GrYlRd"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 11,
"w": 9,
"x": 0,
"y": 0
},
"id": 62,
"options": {
"basemap": {
"config": {},
"type": "default"
},
"controls": {
"mouseWheelZoom": true,
"showAttribution": true,
"showDebug": false,
"showScale": false,
"showZoom": true
},
"layers": [
{
"config": {
"color": {
"field": "Price",
"fixed": "dark-green"
},
"fillOpacity": 0.4,
"shape": "circle",
"showLegend": true,
"size": {
"field": "Count",
"fixed": 5,
"max": 15,
"min": 2
}
},
"location": {
"gazetteer": "public/gazetteer/usa-states.json",
"lookup": "State",
"mode": "auto"
},
"type": "markers"
}
],
"view": {
"id": "coords",
"lat": 38.297683,
"lon": -99.228359,
"shared": true,
"zoom": 3.98
}
},
"targets": [
{
"csvFileName": "flight_info_by_state.csv",
"refId": "A",
"scenarioId": "csv_file"
}
],
"title": "Size, color mapped to different fields + share view",
"type": "geomap"
},
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
},
{
"color": "#EAB839",
"value": 90
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 11,
"w": 9,
"x": 9,
"y": 0
},
"id": 66,
"options": {
"basemap": {
"config": {},
"type": "default"
},
"controls": {
"mouseWheelZoom": true,
"showAttribution": true,
"showDebug": false,
"showScale": false,
"showZoom": true
},
"layers": [
{
"config": {
"color": {
"field": "Price",
"fixed": "dark-green"
},
"fillOpacity": 0.4,
"shape": "circle",
"showLegend": true,
"size": {
"field": "Count",
"fixed": 5,
"max": 15,
"min": 2
}
},
"location": {
"gazetteer": "public/gazetteer/usa-states.json",
"lookup": "State",
"mode": "auto"
},
"type": "markers"
}
],
"view": {
"id": "coords",
"lat": 38.297683,
"lon": -99.228359,
"shared": true,
"zoom": 3.98
}
},
"targets": [
{
"csvFileName": "flight_info_by_state.csv",
"refId": "A",
"scenarioId": "csv_file"
}
],
"title": "Thresholds legend",
"type": "geomap"
},
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "continuous-BlYlRd"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 11,
"w": 9,
"x": 0,
"y": 11
},
"id": 63,
"options": {
"basemap": {
"config": {},
"type": "default"
},
"controls": {
"mouseWheelZoom": true,
"showAttribution": true,
"showDebug": false,
"showScale": false,
"showZoom": true
},
"layers": [
{
"config": {
"blur": 27,
"radius": 25,
"weight": {
"field": "Count",
"fixed": 1,
"max": 1,
"min": 0
}
},
"location": {
"gazetteer": "public/gazetteer/usa-states.json",
"lookup": "State",
"mode": "auto"
},
"type": "heatmap"
}
],
"view": {
"id": "coords",
"lat": 38.251497,
"lon": -100.932144,
"shared": false,
"zoom": 4.15
}
},
"targets": [
{
"csvFileName": "flight_info_by_state.csv",
"refId": "A",
"scenarioId": "csv_file"
}
],
"title": "Heatmap data layer",
"transformations": [],
"type": "geomap"
},
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "continuous-GrYlRd"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 11,
"w": 9,
"x": 9,
"y": 11
},
"id": 65,
"options": {
"basemap": {
"config": {
"server": "world-imagery"
},
"type": "esri-xyz"
},
"controls": {
"mouseWheelZoom": true,
"showAttribution": true,
"showDebug": false,
"showScale": false,
"showZoom": true
},
"layers": [
{
"config": {
"color": {
"fixed": "#ff001e"
},
"fillOpacity": 0.4,
"shape": "star",
"showLegend": true,
"size": {
"field": "Count",
"fixed": 5,
"max": 15,
"min": 2
}
},
"location": {
"gazetteer": "public/gazetteer/usa-states.json",
"lookup": "State",
"mode": "auto"
},
"type": "markers"
}
],
"view": {
"id": "coords",
"lat": 40.159084,
"lon": -96.508021,
"shared": true,
"zoom": 3.83
}
},
"targets": [
{
"csvFileName": "flight_info_by_state.csv",
"refId": "A",
"scenarioId": "csv_file"
}
],
"title": "Base layer ArcGIS wold imagery + star shape + share view",
"type": "geomap"
}
],
"refresh": "",
"schemaVersion": 30,
"style": "dark",
"tags": [
"gdev",
"panel-tests"
],
"templating": {
"list": []
},
"time": {
"from": "now-6h",
"to": "now"
},
"timepicker": {
"refresh_intervals": [
"10s",
"30s",
"1m",
"5m",
"15m",
"30m",
"1h",
"2h",
"1d"
]
},
"timezone": "",
"title": "Panel Tests - Geomap",
"uid": "2xuwrgV7z",
"version": 5
}

View File

@@ -0,0 +1,846 @@
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": "-- Grafana --",
"enable": true,
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"name": "Annotations & Alerts",
"target": {
"limit": 100,
"matchAny": false,
"tags": [],
"type": "dashboard"
},
"type": "dashboard"
}
]
},
"editable": true,
"graphTooltip": 0,
"links": [],
"panels": [
{
"description": "",
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 37,
"gradientMode": "scheme",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "smooth",
"lineWidth": 3,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "never",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"max": 50,
"min": 0,
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "orange",
"value": 15
},
{
"color": "red",
"value": 30
}
]
},
"unit": "degree"
},
"overrides": []
},
"gridPos": {
"h": 7,
"w": 8,
"x": 0,
"y": 0
},
"id": 11,
"maxDataPoints": 45,
"options": {
"legend": {
"calcs": [],
"displayMode": "hidden",
"placement": "bottom"
},
"tooltip": {
"mode": "single"
}
},
"targets": [
{
"refId": "A",
"scenarioId": "csv_metric_values",
"stringInput": "1,10,20,30,40,50"
}
],
"title": "15 orange, 30 red",
"type": "timeseries"
},
{
"description": "",
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 37,
"gradientMode": "scheme",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "smooth",
"lineWidth": 3,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "never",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"max": 50,
"min": 20,
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "orange",
"value": 15
},
{
"color": "red",
"value": 30
}
]
},
"unit": "degree"
},
"overrides": []
},
"gridPos": {
"h": 7,
"w": 8,
"x": 8,
"y": 0
},
"id": 12,
"maxDataPoints": 45,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"tooltip": {
"mode": "single"
}
},
"targets": [
{
"refId": "A",
"scenarioId": "csv_metric_values",
"stringInput": "1,10,20,30,40,50"
}
],
"title": "15 orange, 30 red",
"type": "timeseries"
},
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 37,
"gradientMode": "scheme",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "smooth",
"lineWidth": 2,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "never",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"max": 50,
"min": 20,
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "orange",
"value": 15
},
{
"color": "red",
"value": 50
}
]
},
"unit": "degree"
},
"overrides": []
},
"gridPos": {
"h": 7,
"w": 8,
"x": 16,
"y": 0
},
"id": 13,
"maxDataPoints": 45,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"tooltip": {
"mode": "single"
}
},
"targets": [
{
"refId": "A",
"scenarioId": "csv_metric_values",
"stringInput": "1,10,20,30,40,50"
}
],
"title": "15 orange, 50 red",
"type": "timeseries"
},
{
"datasource": "-- Dashboard --",
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 5,
"gradientMode": "scheme",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "smooth",
"lineWidth": 3,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "never",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"max": 50,
"min": 0,
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "orange",
"value": 20
},
{
"color": "red",
"value": 30
}
]
},
"unit": "degree"
},
"overrides": []
},
"gridPos": {
"h": 7,
"w": 12,
"x": 0,
"y": 7
},
"id": 9,
"maxDataPoints": 45,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"tooltip": {
"mode": "single"
}
},
"targets": [
{
"panelId": 4,
"refId": "A"
}
],
"title": "Color line by discrete tresholds",
"type": "timeseries"
},
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "bars",
"fillOpacity": 84,
"gradientMode": "scheme",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "smooth",
"lineWidth": 0,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "never",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"max": 50,
"min": 0,
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "orange",
"value": 20
},
{
"color": "red",
"value": 30
}
]
},
"unit": "degree"
},
"overrides": []
},
"gridPos": {
"h": 7,
"w": 12,
"x": 12,
"y": 7
},
"id": 4,
"interval": "80s",
"maxDataPoints": 42,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"tooltip": {
"mode": "single"
}
},
"targets": [
{
"max": 40,
"min": 0,
"noise": 1,
"refId": "A",
"scenarioId": "random_walk",
"spread": 20,
"startValue": 1
}
],
"title": "Color bars by discrete thresholds",
"type": "timeseries"
},
{
"datasource": "-- Dashboard --",
"fieldConfig": {
"defaults": {
"color": {
"mode": "continuous-GrYlRd"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 10,
"gradientMode": "scheme",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "smooth",
"lineWidth": 3,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "never",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"max": 50,
"min": 0,
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "blue"
},
{
"color": "green",
"value": 0
},
{
"color": "orange",
"value": 20
},
{
"color": "red",
"value": 30
}
]
},
"unit": "degree"
},
"overrides": []
},
"gridPos": {
"h": 7,
"w": 12,
"x": 0,
"y": 14
},
"id": 6,
"maxDataPoints": 50,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"tooltip": {
"mode": "single"
}
},
"targets": [
{
"panelId": 4,
"refId": "A"
}
],
"title": "Color line by color scale",
"type": "timeseries"
},
{
"datasource": "-- Dashboard --",
"fieldConfig": {
"defaults": {
"color": {
"mode": "continuous-GrYlRd"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "bars",
"fillOpacity": 64,
"gradientMode": "scheme",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "smooth",
"lineWidth": 1,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "never",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"max": 50,
"min": 0,
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "blue"
},
{
"color": "green",
"value": 0
},
{
"color": "orange",
"value": 20
},
{
"color": "red",
"value": 30
}
]
},
"unit": "degree"
},
"overrides": []
},
"gridPos": {
"h": 7,
"w": 12,
"x": 12,
"y": 14
},
"id": 10,
"maxDataPoints": 45,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"tooltip": {
"mode": "single"
}
},
"targets": [
{
"panelId": 4,
"refId": "A"
}
],
"title": "Color bars by color scale",
"type": "timeseries"
},
{
"datasource": "-- Dashboard --",
"fieldConfig": {
"defaults": {
"color": {
"mode": "continuous-GrYlRd"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 64,
"gradientMode": "scheme",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "smooth",
"lineWidth": 1,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "never",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"max": 50,
"min": 0,
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "blue"
},
{
"color": "green",
"value": 0
},
{
"color": "orange",
"value": 20
},
{
"color": "red",
"value": 30
}
]
},
"unit": "degree"
},
"overrides": []
},
"gridPos": {
"h": 7,
"w": 12,
"x": 0,
"y": 21
},
"id": 7,
"maxDataPoints": 50,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"tooltip": {
"mode": "single"
}
},
"targets": [
{
"panelId": 4,
"refId": "A"
}
],
"title": "Color line by color scale",
"type": "timeseries"
},
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "continuous-GrYlRd"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "points",
"fillOpacity": 10,
"gradientMode": "scheme",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "smooth",
"lineWidth": 3,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "never",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"max": 50,
"min": 0,
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "blue"
},
{
"color": "green",
"value": 0
},
{
"color": "orange",
"value": 20
},
{
"color": "red",
"value": 30
}
]
},
"unit": "degree"
},
"overrides": []
},
"gridPos": {
"h": 7,
"w": 12,
"x": 12,
"y": 21
},
"id": 8,
"maxDataPoints": 250,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"tooltip": {
"mode": "single"
}
},
"targets": [
{
"max": 45,
"min": 20,
"noise": 0,
"refId": "A",
"scenarioId": "random_walk",
"spread": 12,
"startValue": 40
},
{
"hide": false,
"max": 20,
"min": 1,
"noise": 0,
"refId": "B",
"scenarioId": "random_walk",
"spread": 10
}
],
"title": "Color line by color scale",
"type": "timeseries"
}
],
"refresh": false,
"schemaVersion": 30,
"style": "dark",
"tags": [
"gdev",
"panel-tests"
],
"templating": {
"list": []
},
"time": {
"from": "now-6h",
"to": "now"
},
"timepicker": {},
"timezone": "",
"title": "Panel Tests - Graph NG - By value color schemes",
"uid": "aBXrJ0R7z",
"version": 11
}

View File

@@ -92,7 +92,6 @@
"interval": "1m",
"links": [],
"options": {
"graph": {},
"legend": {
"displayMode": "hidden",
"placement": "bottom"
@@ -181,7 +180,6 @@
"links": [],
"maxDataPoints": 10,
"options": {
"graph": {},
"legend": {
"displayMode": "hidden",
"placement": "bottom"
@@ -270,7 +268,6 @@
"links": [],
"maxDataPoints": 20,
"options": {
"graph": {},
"legend": {
"displayMode": "hidden",
"placement": "bottom"
@@ -358,7 +355,6 @@
"interval": "1m",
"links": [],
"options": {
"graph": {},
"legend": {
"displayMode": "hidden",
"placement": "bottom"
@@ -447,7 +443,6 @@
"links": [],
"maxDataPoints": 80,
"options": {
"graph": {},
"legend": {
"displayMode": "hidden",
"placement": "bottom"
@@ -536,7 +531,6 @@
"links": [],
"maxDataPoints": 50,
"options": {
"graph": {},
"legend": {
"displayMode": "hidden",
"placement": "bottom"

View File

@@ -99,7 +99,6 @@
"links": [],
"maxDataPoints": 9,
"options": {
"graph": {},
"legend": {
"calcs": [],
"displayMode": "hidden",
@@ -194,7 +193,6 @@
"links": [],
"maxDataPoints": 9,
"options": {
"graph": {},
"legend": {
"calcs": [],
"displayMode": "hidden",
@@ -289,7 +287,6 @@
"links": [],
"maxDataPoints": 9,
"options": {
"graph": {},
"legend": {
"calcs": [],
"displayMode": "hidden",
@@ -384,7 +381,6 @@
"links": [],
"maxDataPoints": 9,
"options": {
"graph": {},
"legend": {
"calcs": [],
"displayMode": "hidden",
@@ -479,7 +475,6 @@
"links": [],
"maxDataPoints": 9,
"options": {
"graph": {},
"legend": {
"calcs": [],
"displayMode": "hidden",
@@ -574,7 +569,6 @@
"links": [],
"maxDataPoints": 9,
"options": {
"graph": {},
"legend": {
"calcs": [],
"displayMode": "hidden",
@@ -669,7 +663,6 @@
"links": [],
"maxDataPoints": 100,
"options": {
"graph": {},
"legend": {
"calcs": [],
"displayMode": "hidden",
@@ -764,7 +757,6 @@
"links": [],
"maxDataPoints": 100,
"options": {
"graph": {},
"legend": {
"calcs": [],
"displayMode": "hidden",
@@ -859,7 +851,6 @@
"links": [],
"maxDataPoints": 100,
"options": {
"graph": {},
"legend": {
"calcs": [],
"displayMode": "hidden",

View File

@@ -8,20 +8,28 @@
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"name": "Annotations & Alerts",
"target": {
"limit": 100,
"matchAny": false,
"tags": [],
"type": "dashboard"
},
"type": "dashboard"
}
]
},
"editable": true,
"gnetId": null,
"graphTooltip": 0,
"links": [
{
"icon": "external link",
"tags": ["gdev", "graph-ng"],
"type": "dashboards",
"asDropdown": true,
"title": "Graph Tests"
"icon": "external link",
"tags": [
"gdev",
"graph-ng"
],
"title": "Graph Tests",
"type": "dashboards"
}
],
"panels": [
@@ -35,13 +43,14 @@
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillGradient": "none",
"fillOpacity": 0,
"gradientMode": "none",
"hideFrom": {
"graph": false,
"legend": false,
"tooltip": false
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineWidth": 2,
@@ -50,16 +59,21 @@
"type": "linear"
},
"showPoints": "auto",
"spanNulls": false
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"nullValueMode": "null",
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -80,8 +94,8 @@
"id": 3,
"links": [],
"options": {
"graph": {},
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
@@ -120,8 +134,6 @@
"target": ""
}
],
"timeFrom": null,
"timeShift": null,
"title": "Show gaps",
"type": "timeseries"
},
@@ -136,13 +148,14 @@
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillGradient": "none",
"fillOpacity": 0,
"gradientMode": "none",
"hideFrom": {
"graph": false,
"legend": false,
"tooltip": false
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineWidth": 2,
@@ -151,17 +164,22 @@
"type": "linear"
},
"showPoints": "auto",
"spanNulls": false
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"max": 120,
"nullValueMode": "null",
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -182,8 +200,8 @@
"id": 2,
"links": [],
"options": {
"graph": {},
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
@@ -230,8 +248,6 @@
"target": ""
}
],
"timeFrom": null,
"timeShift": null,
"title": "Gaps & null between every point for series B",
"type": "timeseries"
},
@@ -246,13 +262,14 @@
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillGradient": "none",
"fillOpacity": 0,
"gradientMode": "none",
"hideFrom": {
"graph": false,
"legend": false,
"tooltip": false
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineWidth": 2,
@@ -261,17 +278,22 @@
"type": "linear"
},
"showPoints": "auto",
"spanNulls": false
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"max": 120,
"nullValueMode": "null",
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -292,8 +314,8 @@
"id": 6,
"links": [],
"options": {
"graph": {},
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
@@ -360,8 +382,6 @@
"target": ""
}
],
"timeFrom": null,
"timeShift": null,
"title": "No nulls but unaligned series",
"type": "timeseries"
},
@@ -375,13 +395,14 @@
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillGradient": "none",
"fillOpacity": 0,
"gradientMode": "none",
"hideFrom": {
"graph": false,
"legend": false,
"tooltip": false
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineWidth": 2,
@@ -390,16 +411,21 @@
"type": "linear"
},
"showPoints": "auto",
"spanNulls": true
"spanNulls": true,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"nullValueMode": "null",
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -420,8 +446,8 @@
"id": 4,
"links": [],
"options": {
"graph": {},
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
@@ -460,8 +486,6 @@
"target": ""
}
],
"timeFrom": null,
"timeShift": null,
"title": "Connected",
"type": "timeseries"
},
@@ -476,13 +500,14 @@
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillGradient": "none",
"fillOpacity": 0,
"gradientMode": "none",
"hideFrom": {
"graph": false,
"legend": false,
"tooltip": false
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineWidth": 2,
@@ -491,17 +516,22 @@
"type": "linear"
},
"showPoints": "auto",
"spanNulls": true
"spanNulls": true,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"max": 120,
"nullValueMode": "null",
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -522,8 +552,8 @@
"id": 5,
"links": [],
"options": {
"graph": {},
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
@@ -570,8 +600,6 @@
"target": ""
}
],
"timeFrom": null,
"timeShift": null,
"title": "Same as above but connected",
"type": "timeseries"
},
@@ -586,13 +614,14 @@
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillGradient": "none",
"fillOpacity": 0,
"gradientMode": "none",
"hideFrom": {
"graph": false,
"legend": false,
"tooltip": false
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineWidth": 2,
@@ -601,17 +630,22 @@
"type": "linear"
},
"showPoints": "auto",
"spanNulls": true
"spanNulls": true,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"max": 120,
"nullValueMode": "null",
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -632,8 +666,8 @@
"id": 7,
"links": [],
"options": {
"graph": {},
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
@@ -700,8 +734,6 @@
"target": ""
}
],
"timeFrom": null,
"timeShift": null,
"title": "Same as above but connected",
"type": "timeseries"
},
@@ -713,56 +745,39 @@
"mode": "palette-classic"
},
"custom": {
"axis": {
"grid": true,
"label": "Temperature",
"side": 3,
"width": 60
},
"axisLabel": "",
"axisPlacement": "auto",
"bars": {
"show": false
},
"barAlignment": 0,
"drawStyle": "line",
"fill": {
"alpha": 0
},
"fillGradient": "none",
"fillOpacity": 10,
"gradientMode": "none",
"hideFrom": {
"graph": false,
"legend": false,
"tooltip": false
},
"line": {
"color": {
"mode": "palette-classic"
},
"show": true,
"width": 1
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineWidth": 2,
"nullValues": "null",
"pointSize": 5,
"points": {
"radius": 8,
"show": true
},
"scaleDistribution": {
"type": "linear"
},
"showPoints": "auto",
"spanNulls": false
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -813,11 +828,9 @@
},
"id": 11,
"options": {
"graph": {
"realTimeUpdates": false
},
"legend": {
"asTable": false,
"calcs": [],
"displayMode": "list",
"isVisible": true,
"placement": "bottom"
@@ -860,8 +873,6 @@
"stringInput": "1,20,90,30,5,0"
}
],
"timeFrom": null,
"timeShift": null,
"title": "Null values in first series & show gaps ",
"transformations": [],
"type": "timeseries"
@@ -874,56 +885,39 @@
"mode": "palette-classic"
},
"custom": {
"axis": {
"grid": true,
"label": "Temperature",
"side": 3,
"width": 60
},
"axisLabel": "",
"axisPlacement": "auto",
"bars": {
"show": false
},
"barAlignment": 0,
"drawStyle": "line",
"fill": {
"alpha": 0
},
"fillGradient": "none",
"fillOpacity": 10,
"gradientMode": "none",
"hideFrom": {
"graph": false,
"legend": false,
"tooltip": false
},
"line": {
"color": {
"mode": "palette-classic"
},
"show": true,
"width": 1
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineWidth": 2,
"nullValues": "null",
"pointSize": 5,
"points": {
"radius": 8,
"show": true
},
"scaleDistribution": {
"type": "linear"
},
"showPoints": "auto",
"spanNulls": false
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -974,11 +968,9 @@
},
"id": 9,
"options": {
"graph": {
"realTimeUpdates": false
},
"legend": {
"asTable": false,
"calcs": [],
"displayMode": "list",
"isVisible": true,
"placement": "bottom"
@@ -1021,14 +1013,11 @@
"stringInput": "10,25,null,null,50,10"
}
],
"timeFrom": null,
"timeShift": null,
"title": "Null values in second series show gaps (bugged)",
"transformations": [],
"type": "timeseries"
},
{
"datasource": null,
"fieldConfig": {
"defaults": {
"color": {
@@ -1042,9 +1031,9 @@
"fillOpacity": 10,
"gradientMode": "none",
"hideFrom": {
"graph": false,
"legend": false,
"tooltip": false
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineWidth": 1,
@@ -1053,15 +1042,21 @@
"type": "linear"
},
"showPoints": "never",
"spanNulls": 3600000
"spanNulls": 3600000,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -1081,7 +1076,6 @@
},
"id": 13,
"options": {
"graph": {},
"legend": {
"calcs": [],
"displayMode": "list",
@@ -1120,15 +1114,97 @@
"stringInput": "1,20,90,null,30,5,0"
}
],
"timeFrom": null,
"timeShift": null,
"title": "Span nulls below 1hr",
"type": "timeseries"
},
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 0,
"gradientMode": "none",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineStyle": {
"fill": "solid"
},
"lineWidth": 1,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "never",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 8,
"w": 7,
"x": 0,
"y": 22
},
"id": 15,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"tooltip": {
"mode": "single"
}
},
"targets": [
{
"refId": "A",
"scenarioId": "csv_metric_values",
"stringInput": "30,null,1,20,90,null,30,null,5,0,null,30"
}
],
"title": "Always show points between gaps",
"type": "timeseries"
}
],
"schemaVersion": 27,
"schemaVersion": 30,
"style": "dark",
"tags": ["gdev", "panel-tests", "graph-ng"],
"tags": [
"gdev",
"panel-tests",
"graph-ng"
],
"templating": {
"list": []
},
@@ -1140,5 +1216,5 @@
"timezone": "",
"title": "Panel Tests - Graph NG - Gaps and Connected",
"uid": "8mmCAF1Mz",
"version": 1
"version": 2
}

View File

@@ -80,7 +80,6 @@
"id": 2,
"maxDataPoints": 50,
"options": {
"graph": {},
"legend": {
"calcs": [],
"displayMode": "hidden",
@@ -151,7 +150,6 @@
"id": 3,
"maxDataPoints": 50,
"options": {
"graph": {},
"legend": {
"calcs": [],
"displayMode": "hidden",
@@ -222,7 +220,6 @@
"id": 4,
"maxDataPoints": 50,
"options": {
"graph": {},
"legend": {
"calcs": [],
"displayMode": "hidden",
@@ -293,7 +290,6 @@
"id": 5,
"maxDataPoints": 50,
"options": {
"graph": {},
"legend": {
"calcs": [],
"displayMode": "hidden",
@@ -364,7 +360,6 @@
"id": 6,
"maxDataPoints": 50,
"options": {
"graph": {},
"legend": {
"calcs": [],
"displayMode": "hidden",
@@ -435,7 +430,6 @@
"id": 7,
"maxDataPoints": 50,
"options": {
"graph": {},
"legend": {
"calcs": [],
"displayMode": "hidden",

View File

@@ -113,9 +113,6 @@
"id": 47,
"maxDataPoints": 500,
"options": {
"graph": {
"realTimeUpdates": false
},
"legend": {
"asTable": false,
"displayMode": "hidden",
@@ -237,9 +234,6 @@
"id": 48,
"maxDataPoints": 20,
"options": {
"graph": {
"realTimeUpdates": false
},
"legend": {
"asTable": false,
"displayMode": "hidden",
@@ -361,9 +355,6 @@
"id": 55,
"maxDataPoints": 20,
"options": {
"graph": {
"realTimeUpdates": false
},
"legend": {
"asTable": false,
"displayMode": "hidden",
@@ -485,9 +476,6 @@
"id": 56,
"maxDataPoints": 90,
"options": {
"graph": {
"realTimeUpdates": false
},
"legend": {
"asTable": false,
"displayMode": "hidden",
@@ -609,9 +597,6 @@
"id": 52,
"maxDataPoints": 10,
"options": {
"graph": {
"realTimeUpdates": false
},
"legend": {
"asTable": false,
"displayMode": "hidden",
@@ -733,9 +718,6 @@
"id": 53,
"maxDataPoints": 10,
"options": {
"graph": {
"realTimeUpdates": false
},
"legend": {
"asTable": false,
"displayMode": "hidden",
@@ -857,9 +839,6 @@
"id": 54,
"maxDataPoints": 10,
"options": {
"graph": {
"realTimeUpdates": false
},
"legend": {
"asTable": false,
"displayMode": "hidden",
@@ -981,9 +960,6 @@
"id": 57,
"maxDataPoints": 10,
"options": {
"graph": {
"realTimeUpdates": false
},
"legend": {
"asTable": false,
"displayMode": "hidden",
@@ -1184,9 +1160,6 @@
},
"id": 60,
"options": {
"graph": {
"realTimeUpdates": false
},
"legend": {
"asTable": false,
"displayMode": "hidden",
@@ -1468,7 +1441,6 @@
"interval": null,
"maxDataPoints": 100,
"options": {
"graph": {},
"legend": {
"displayMode": "list",
"placement": "right"
@@ -1599,9 +1571,6 @@
"id": 63,
"maxDataPoints": 10,
"options": {
"graph": {
"realTimeUpdates": false
},
"legend": {
"asTable": false,
"displayMode": "hidden",
@@ -1737,9 +1706,6 @@
"id": 64,
"maxDataPoints": 10,
"options": {
"graph": {
"realTimeUpdates": false
},
"legend": {
"asTable": false,
"displayMode": "hidden",
@@ -1875,9 +1841,6 @@
"id": 65,
"maxDataPoints": 10,
"options": {
"graph": {
"realTimeUpdates": false
},
"legend": {
"asTable": false,
"displayMode": "hidden",
@@ -2013,9 +1976,6 @@
"id": 66,
"maxDataPoints": 100,
"options": {
"graph": {
"realTimeUpdates": false
},
"legend": {
"asTable": false,
"displayMode": "hidden",
@@ -2179,9 +2139,6 @@
"id": 32,
"maxDataPoints": 100,
"options": {
"graph": {
"realTimeUpdates": false
},
"legend": {
"asTable": false,
"displayMode": "list",
@@ -2319,9 +2276,6 @@
"id": 35,
"maxDataPoints": 100,
"options": {
"graph": {
"realTimeUpdates": false
},
"legend": {
"asTable": false,
"displayMode": "list",
@@ -2473,9 +2427,6 @@
"id": 31,
"maxDataPoints": 200,
"options": {
"graph": {
"realTimeUpdates": false
},
"legend": {
"asTable": true,
"displayMode": "table",
@@ -2626,9 +2577,6 @@
"id": 51,
"maxDataPoints": 200,
"options": {
"graph": {
"realTimeUpdates": false
},
"legend": {
"asTable": true,
"displayMode": "table",
@@ -2768,9 +2716,6 @@
},
"id": 19,
"options": {
"graph": {
"realTimeUpdates": false
},
"legend": {
"asTable": false,
"displayMode": "hidden",
@@ -2876,9 +2821,6 @@
},
"id": 20,
"options": {
"graph": {
"realTimeUpdates": false
},
"legend": {
"asTable": false,
"displayMode": "hidden",
@@ -2983,9 +2925,6 @@
},
"id": 21,
"options": {
"graph": {
"realTimeUpdates": false
},
"legend": {
"asTable": false,
"displayMode": "hidden",
@@ -3091,9 +3030,6 @@
},
"id": 9,
"options": {
"graph": {
"realTimeUpdates": false
},
"legend": {
"asTable": false,
"displayMode": "hidden",
@@ -3215,9 +3151,6 @@
},
"id": 46,
"options": {
"graph": {
"realTimeUpdates": false
},
"legend": {
"asTable": false,
"displayMode": "list",
@@ -3358,7 +3291,6 @@
},
"id": 68,
"options": {
"graph": {},
"legend": {
"displayMode": "hidden",
"placement": "bottom"

View File

@@ -13,13 +13,11 @@
]
},
"editable": true,
"gnetId": null,
"graphTooltip": 0,
"id": 632,
"links": [],
"panels": [
{
"datasource": null,
"fieldConfig": {
"defaults": {
"color": {
@@ -29,7 +27,7 @@
"fillOpacity": 80,
"gradientMode": "none",
"hideFrom": {
"graph": false,
"viz": false,
"legend": false,
"tooltip": false
},
@@ -40,8 +38,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -89,7 +86,7 @@
"fillOpacity": 80,
"gradientMode": "none",
"hideFrom": {
"graph": false,
"viz": false,
"legend": false,
"tooltip": false
},
@@ -100,8 +97,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -139,7 +135,6 @@
"type": "histogram"
},
{
"datasource": null,
"fieldConfig": {
"defaults": {
"color": {
@@ -149,7 +144,7 @@
"fillOpacity": 80,
"gradientMode": "none",
"hideFrom": {
"graph": false,
"viz": false,
"legend": false,
"tooltip": false
},
@@ -160,8 +155,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -212,7 +206,6 @@
"type": "histogram"
},
{
"datasource": null,
"fieldConfig": {
"defaults": {
"color": {
@@ -222,7 +215,7 @@
"fillOpacity": 80,
"gradientMode": "none",
"hideFrom": {
"graph": false,
"viz": false,
"legend": false,
"tooltip": false
},
@@ -233,8 +226,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -285,7 +277,6 @@
"type": "histogram"
},
{
"datasource": null,
"fieldConfig": {
"defaults": {
"color": {
@@ -300,8 +291,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -353,7 +343,6 @@
"type": "table"
},
{
"datasource": null,
"fieldConfig": {
"defaults": {
"color": {
@@ -368,8 +357,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -439,4 +427,4 @@
"title": "Panel Tests - Histogram",
"uid": "UTv--wqMk",
"version": 4
}
}

View File

@@ -14,7 +14,7 @@
},
"editable": true,
"gnetId": null,
"graphTooltip": 0,
"graphTooltip": 1,
"id": 479,
"links": [],
"panels": [

View File

@@ -8,17 +8,21 @@
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"name": "Annotations & Alerts",
"target": {
"limit": 100,
"matchAny": false,
"tags": [],
"type": "dashboard"
},
"type": "dashboard"
}
]
},
"editable": true,
"gnetId": null,
"graphTooltip": 0,
"links": [],
"panels": [
{
"datasource": null,
"fieldConfig": {
"defaults": {
"color": {
@@ -55,8 +59,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -82,9 +85,12 @@
"displayMode": "list",
"placement": "bottom"
},
"mode": "changes",
"mergeValues": true,
"rowHeight": 0.98,
"showValue": "always"
"showValue": "always",
"tooltip": {
"mode": "single"
}
},
"pluginVersion": "7.5.0-pre",
"targets": [
@@ -113,7 +119,6 @@
"type": "state-timeline"
},
{
"datasource": null,
"fieldConfig": {
"defaults": {
"color": {
@@ -151,8 +156,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -173,9 +177,17 @@
"options": {
"alignValue": "center",
"colWidth": 1,
"legend": {
"displayMode": "list",
"placement": "bottom"
},
"mergeValues": true,
"mode": "changes",
"rowHeight": 0.98,
"showValue": "always"
"showValue": "always",
"tooltip": {
"mode": "single"
}
},
"targets": [
{
@@ -207,7 +219,6 @@
"type": "state-timeline"
},
{
"datasource": null,
"description": "Should show gaps",
"fieldConfig": {
"defaults": {
@@ -246,8 +257,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -268,9 +278,17 @@
"options": {
"alignValue": "center",
"colWidth": 1,
"legend": {
"displayMode": "list",
"placement": "bottom"
},
"mergeValues": true,
"mode": "changes",
"rowHeight": 0.98,
"showValue": "always"
"showValue": "always",
"tooltip": {
"mode": "single"
}
},
"targets": [
{
@@ -301,7 +319,6 @@
"type": "state-timeline"
},
{
"datasource": null,
"fieldConfig": {
"defaults": {
"color": {
@@ -319,8 +336,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -339,7 +355,6 @@
"y": 19
},
"id": 4,
"interval": null,
"maxDataPoints": 20,
"options": {
"alignValue": "center",
@@ -349,9 +364,11 @@
"displayMode": "list",
"placement": "bottom"
},
"mode": "samples",
"rowHeight": 0.98,
"showValue": "always"
"showValue": "always",
"tooltip": {
"mode": "single"
}
},
"pluginVersion": "7.5.0-pre",
"targets": [
@@ -410,5 +427,5 @@
"timezone": "utc",
"title": "Timeline Demo",
"uid": "mIJjFy8Kz",
"version": 13
}
"version": 3
}

View File

@@ -8,18 +8,22 @@
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"name": "Annotations & Alerts",
"target": {
"limit": 100,
"matchAny": false,
"tags": [],
"type": "dashboard"
},
"type": "dashboard"
}
]
},
"editable": true,
"gnetId": null,
"graphTooltip": 0,
"id": 329,
"links": [],
"panels": [
{
"datasource": null,
"fieldConfig": {
"defaults": {
"color": {
@@ -34,8 +38,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -63,7 +66,10 @@
},
"mergeValues": true,
"rowHeight": 0.9,
"showValue": "always"
"showValue": "always",
"tooltip": {
"mode": "single"
}
},
"pluginVersion": "7.5.0-pre",
"targets": [
@@ -165,7 +171,6 @@
1616557148000
],
[
null,
1616558756000
],
[
@@ -173,7 +178,6 @@
1616561658000
],
[
null,
1616562446000
],
[
@@ -181,7 +185,6 @@
1616564104000
],
[
null,
1616564548000
],
[
@@ -197,7 +200,6 @@
"type": "state-timeline"
},
{
"datasource": null,
"fieldConfig": {
"defaults": {
"color": {
@@ -212,8 +214,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -241,7 +242,10 @@
},
"mergeValues": true,
"rowHeight": 0.9,
"showValue": "always"
"showValue": "always",
"tooltip": {
"mode": "single"
}
},
"pluginVersion": "7.5.0-pre",
"targets": [
@@ -267,7 +271,6 @@
"type": "state-timeline"
},
{
"datasource": null,
"fieldConfig": {
"defaults": {
"color": {
@@ -282,8 +285,7 @@
"mode": "percentage",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "#EAB839",
@@ -306,7 +308,6 @@
"y": 21
},
"id": 4,
"interval": null,
"maxDataPoints": 20,
"options": {
"colWidth": 0.9,
@@ -316,7 +317,10 @@
"placement": "bottom"
},
"rowHeight": 0.9,
"showValue": "always"
"showValue": "always",
"tooltip": {
"mode": "single"
}
},
"pluginVersion": "7.5.0-pre",
"targets": [
@@ -371,5 +375,5 @@
"timezone": "utc",
"title": "Timeline Modes",
"uid": "mIJjFy8Gz",
"version": 12
"version": 13
}

View File

@@ -0,0 +1,551 @@
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": "-- Grafana --",
"enable": true,
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"name": "Annotations & Alerts",
"target": {
"limit": 100,
"matchAny": false,
"tags": [],
"type": "dashboard"
},
"type": "dashboard"
}
]
},
"description": "",
"editable": true,
"graphTooltip": 0,
"links": [],
"panels": [
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 0,
"gradientMode": "none",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineWidth": 1,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "auto",
"spanNulls": false,
"thresholdsStyle": {
"mode": "line"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 9,
"w": 12,
"x": 0,
"y": 0
},
"id": 2,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"tooltip": {
"mode": "single"
}
},
"targets": [
{
"hide": false,
"max": 100,
"min": 1,
"refId": "A",
"scenarioId": "random_walk",
"startValue": 50
},
{
"alias": "",
"csvContent": "min,max,threshold1\n1000,1000,8000\n0,100,80\n\n",
"refId": "config",
"scenarioId": "csv_content"
}
],
"title": "Min, max, threshold from separate query",
"transformations": [
{
"id": "configFromData",
"options": {
"configRefId": "config",
"mappings": []
}
}
],
"type": "timeseries"
},
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"align": "left",
"displayMode": "auto"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": [
{
"matcher": {
"id": "byName",
"options": "SensorA"
},
"properties": [
{
"id": "custom.displayMode",
"value": "color-text"
}
]
}
]
},
"gridPos": {
"h": 9,
"w": 12,
"x": 12,
"y": 0
},
"id": 5,
"options": {
"showHeader": true
},
"pluginVersion": "8.1.0-pre",
"targets": [
{
"csvContent": "Name, Value, SensorA, MyUnit, MyColor\nGoogle, 10, 50, km/h, blue\nGoogle, 100, 100,km/h, orange\n",
"hide": false,
"refId": "A",
"scenarioId": "csv_content"
}
],
"title": "Custom mappings and apply to self",
"transformations": [
{
"id": "configFromData",
"options": {
"applyTo": {
"id": "byName",
"options": "SensorA"
},
"applyToConfig": true,
"configRefId": "A",
"mappings": [
{
"configProperty": "unit",
"fieldName": "MyUnit",
"handlerKey": "unit"
},
{
"fieldName": "MyColor",
"handlerKey": "color"
}
]
}
}
],
"type": "table"
},
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"align": "center",
"displayMode": "auto"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": [
{
"matcher": {
"id": "byName",
"options": "Value"
},
"properties": [
{
"id": "custom.displayMode",
"value": "color-background-solid"
}
]
}
]
},
"gridPos": {
"h": 5,
"w": 12,
"x": 0,
"y": 9
},
"id": 7,
"options": {
"showHeader": true
},
"pluginVersion": "8.1.0-pre",
"targets": [
{
"csvContent": "ID, DisplayText\n21412312312, Homer\n12421412413, Simpsons \n12321312313, Bart",
"hide": false,
"refId": "A",
"scenarioId": "csv_content"
}
],
"title": "Mapping data",
"transformations": [
{
"id": "configFromData",
"options": {
"applyToConfig": true,
"configRefId": "A",
"mappings": [
{
"fieldName": "Color",
"handlerKey": "mappings.color"
},
{
"fieldName": "Value",
"handlerKey": "mappings.value"
}
]
}
}
],
"type": "table"
},
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"align": "center",
"displayMode": "auto"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": [
{
"matcher": {
"id": "byName",
"options": "Value"
},
"properties": [
{
"id": "custom.displayMode",
"value": "color-background-solid"
}
]
}
]
},
"gridPos": {
"h": 10,
"w": 12,
"x": 12,
"y": 9
},
"id": 6,
"options": {
"showHeader": true
},
"pluginVersion": "8.1.0-pre",
"targets": [
{
"csvContent": "Value, Color\nOK, blue\nPretty bad, red\nYay it's green, green\nSomething is off, orange\nNo idea, #88AA00\nAm I purple?, purple",
"hide": false,
"refId": "A",
"scenarioId": "csv_content"
}
],
"title": "Value mappings from query result applied to itself",
"transformations": [
{
"id": "configFromData",
"options": {
"applyTo": {
"id": "byName",
"options": "Value"
},
"applyToConfig": true,
"configRefId": "A",
"mappings": [
{
"fieldName": "Color",
"handlerKey": "mappings.color"
},
{
"fieldName": "Value",
"handlerKey": "mappings.value"
}
]
}
}
],
"type": "table"
},
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"align": "center",
"displayMode": "auto"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 5,
"w": 12,
"x": 0,
"y": 14
},
"id": 8,
"options": {
"showHeader": true
},
"pluginVersion": "8.1.0-pre",
"targets": [
{
"csvContent": "ID, Value\n21412312312, 100\n12421412413, 20\n12321312313, 10",
"hide": false,
"refId": "A",
"scenarioId": "csv_content"
}
],
"title": "Display data",
"transformations": [
{
"id": "configFromData",
"options": {
"applyToConfig": true,
"configRefId": "A",
"mappings": [
{
"fieldName": "Color",
"handlerKey": "mappings.color"
},
{
"fieldName": "Value",
"handlerKey": "mappings.value"
}
]
}
}
],
"type": "table"
},
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"axisSoftMin": 0,
"fillOpacity": 80,
"gradientMode": "none",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineWidth": 1
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 10,
"w": 12,
"x": 0,
"y": 19
},
"id": 9,
"options": {
"barWidth": 0.97,
"groupWidth": 0.7,
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"orientation": "horizontal",
"showValue": "auto",
"text": {},
"tooltip": {
"mode": "single"
}
},
"pluginVersion": "8.1.0-pre",
"targets": [
{
"csvContent": "ID, Value\nA21412312312, 100\nA12421412413, 20\nA12321312313, 10\n",
"hide": false,
"refId": "data",
"scenarioId": "csv_content"
},
{
"csvContent": "ID, DisplayText\nA21412312312, Homer\nA12421412413, Marge \nA12321312313, Bart",
"hide": false,
"refId": "mappings",
"scenarioId": "csv_content"
}
],
"title": "Value mapping ID -> DisplayText from separate query",
"transformations": [
{
"id": "configFromData",
"options": {
"applyTo": {
"id": "byName",
"options": "ID"
},
"applyToConfig": false,
"configRefId": "mappings",
"mappings": [
{
"fieldName": "ID",
"handlerKey": "mappings.value"
},
{
"fieldName": "DisplayText",
"handlerKey": "mappings.text"
}
]
}
}
],
"type": "barchart"
}
],
"refresh": "",
"schemaVersion": 30,
"style": "dark",
"tags": [
"gdev",
"transform"
],
"templating": {
"list": []
},
"time": {
"from": "now-6h",
"to": "now"
},
"timepicker": {},
"timezone": "",
"title": "Transforms - Config from query",
"uid": "Juj4_7ink",
"version": 1
}

View File

@@ -0,0 +1,600 @@
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": "-- Grafana --",
"enable": true,
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"name": "Annotations & Alerts",
"target": {
"limit": 100,
"matchAny": false,
"tags": [],
"type": "dashboard"
},
"type": "dashboard"
}
]
},
"editable": true,
"graphTooltip": 0,
"links": [],
"panels": [
{
"datasource": "-- Dashboard --",
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"align": "left",
"displayMode": "auto"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 5,
"w": 12,
"x": 0,
"y": 0
},
"id": 8,
"options": {
"showHeader": true
},
"pluginVersion": "8.1.0-pre",
"targets": [
{
"panelId": 2,
"refId": "A"
}
],
"title": "Raw data",
"type": "table"
},
{
"datasource": "-- Dashboard --",
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"align": "left",
"displayMode": "auto"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": [
{
"matcher": {
"id": "byName",
"options": "Value"
},
"properties": [
{
"id": "custom.width",
"value": 82
}
]
},
{
"matcher": {
"id": "byName",
"options": "Unit"
},
"properties": [
{
"id": "custom.width",
"value": 108
}
]
}
]
},
"gridPos": {
"h": 5,
"w": 12,
"x": 12,
"y": 0
},
"id": 7,
"options": {
"showHeader": true,
"sortBy": []
},
"pluginVersion": "8.1.0-pre",
"targets": [
{
"panelId": 3,
"refId": "A"
}
],
"title": "Raw data",
"type": "table"
},
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 7,
"w": 12,
"x": 0,
"y": 5
},
"id": 2,
"options": {
"colorMode": "value",
"graphMode": "none",
"justifyMode": "auto",
"orientation": "auto",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"text": {},
"textMode": "auto"
},
"pluginVersion": "8.1.0-pre",
"targets": [
{
"csvContent": "Name,Value,Unit,Color\nTemperature,10,degree,green\nPressure,100,bar,blue\nSpeed,30,km/h,red",
"refId": "A",
"scenarioId": "csv_content"
}
],
"title": "Unit and color from data",
"transformations": [
{
"id": "rowsToFields",
"options": {}
}
],
"type": "stat"
},
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [],
"min": 0,
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 7,
"w": 12,
"x": 12,
"y": 5
},
"id": 3,
"options": {
"orientation": "auto",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"showThresholdLabels": true,
"showThresholdMarkers": true,
"text": {}
},
"pluginVersion": "8.1.0-pre",
"targets": [
{
"csvContent": "Name,Value,Unit,min,max, threshold1\nTemperature,10,degree,0,50,30\nPressure,100,Pa,0,300,200\nSpeed,30,km/h,0,150,110",
"refId": "A",
"scenarioId": "csv_content"
}
],
"title": "Min, Max & Thresholds from data",
"transformations": [
{
"id": "rowsToFields",
"options": {}
}
],
"type": "gauge"
},
{
"datasource": "-- Dashboard --",
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"align": "left",
"displayMode": "auto"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 5,
"w": 12,
"x": 0,
"y": 12
},
"id": 10,
"options": {
"showHeader": true
},
"pluginVersion": "8.1.0-pre",
"targets": [
{
"panelId": 9,
"refId": "A"
}
],
"title": "Raw data",
"type": "table"
},
{
"datasource": "-- Dashboard --",
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"align": "left",
"displayMode": "auto"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": [
{
"matcher": {
"id": "byName",
"options": "Value"
},
"properties": [
{
"id": "custom.width",
"value": 82
}
]
},
{
"matcher": {
"id": "byName",
"options": "Unit"
},
"properties": [
{
"id": "custom.width",
"value": 108
}
]
}
]
},
"gridPos": {
"h": 5,
"w": 12,
"x": 12,
"y": 12
},
"id": 12,
"options": {
"showHeader": true,
"sortBy": []
},
"pluginVersion": "8.1.0-pre",
"targets": [
{
"panelId": 11,
"refId": "A"
}
],
"title": "Raw data (Custom mapping)",
"type": "table"
},
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "continuous-GrYlRd"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 7,
"w": 12,
"x": 0,
"y": 17
},
"id": 9,
"options": {
"displayMode": "gradient",
"orientation": "auto",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"showUnfilled": true,
"text": {}
},
"pluginVersion": "8.1.0-pre",
"targets": [
{
"csvContent": "Name,Value,Unit,Min,Max\nTemperature,20,degree,0,50\nPressure,150,Pa,0,300\nSpeed,100,km/h,0,110",
"refId": "A",
"scenarioId": "csv_content"
}
],
"title": "Min max from data",
"transformations": [
{
"id": "rowsToFields",
"options": {}
}
],
"type": "bargauge"
},
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [],
"min": 0,
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 7,
"w": 12,
"x": 12,
"y": 17
},
"id": 11,
"options": {
"orientation": "auto",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"showThresholdLabels": true,
"showThresholdMarkers": true,
"text": {}
},
"pluginVersion": "8.1.0-pre",
"targets": [
{
"csvContent": "Name,Value,Type,Quota, Warning\nTemperature,25,degree,50,30\nPressure,100,Pa,300,200\nSpeed,30,km/h,150,130",
"refId": "A",
"scenarioId": "csv_content"
}
],
"title": "Custom mapping",
"transformations": [
{
"id": "rowsToFields",
"options": {
"mappings": [
{
"configProperty": "unit",
"fieldName": "Type",
"handlerKey": "unit"
},
{
"configProperty": "max",
"fieldName": "Quota",
"handlerKey": "max"
},
{
"configProperty": "threshold1",
"fieldName": "Warning",
"handlerKey": "threshold1"
}
]
}
}
],
"type": "gauge"
},
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 7,
"w": 12,
"x": 0,
"y": 24
},
"id": 13,
"options": {
"colorMode": "value",
"graphMode": "none",
"justifyMode": "auto",
"orientation": "horizontal",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"text": {},
"textMode": "auto"
},
"pluginVersion": "8.1.0-pre",
"targets": [
{
"csvContent": "Name, City, Country, Value\nSensorA, Stockholm, Sweden, 20\nSensorB, London, England, 50\nSensorC, New York, USA,100",
"refId": "A",
"scenarioId": "csv_content"
}
],
"title": "Extra string fields to labels",
"transformations": [
{
"id": "rowsToFields",
"options": {}
}
],
"type": "stat"
}
],
"refresh": "",
"schemaVersion": 30,
"style": "dark",
"tags": [
"gdev",
"transform"
],
"templating": {
"list": []
},
"time": {
"from": "now-6h",
"to": "now"
},
"timepicker": {},
"timezone": "",
"title": "Transforms - Rows to fields",
"uid": "PMtIInink",
"version": 1
}

View File

@@ -1,15 +1,19 @@
elasticsearch:
image: elasticsearch:2.4.1
command: elasticsearch -Des.network.host=0.0.0.0
ports:
- "9200:9200"
- "9300:9300"
volumes:
- ./docker/blocks/elastic/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml
# You need to run 'sysctl -w vm.max_map_count=262144' on the host machine
fake-elastic-data:
image: grafana/fake-data-gen
network_mode: bridge
elasticsearch-latest:
image: docker.elastic.co/elasticsearch/elasticsearch:7.13.2
command: elasticsearch
environment:
FD_DATASOURCE: elasticsearch
FD_PORT: 9200
- "discovery.type=single-node"
ports:
- "14200:9200"
- "14300:9300"
fake-elastic-latest-data:
image: grafana/fake-data-gen
links:
- elasticsearch-latest
environment:
FD_SERVER: elasticsearch-latest
FD_DATASOURCE: elasticsearch7
FD_PORT: 9200

View File

@@ -1,2 +1,3 @@
script.inline: on
script.indexed: on
xpack.license.self_generated.type: basic

View File

@@ -0,0 +1,15 @@
elasticsearch2:
image: elasticsearch:2.4.1
command: elasticsearch -Des.network.host=0.0.0.0
ports:
- "9200:9200"
- "9300:9300"
volumes:
- ./docker/blocks/elastic2/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml
fake-elastic-data:
image: grafana/fake-data-gen
network_mode: bridge
environment:
FD_DATASOURCE: elasticsearch2
FD_PORT: 9200

View File

@@ -0,0 +1,2 @@
script.inline: on
script.indexed: on

View File

@@ -0,0 +1,44 @@
# You need to run 'sysctl -w vm.max_map_count=262144' on the host machine
elasticsearch77:
image: docker.elastic.co/elasticsearch/elasticsearch:7.7.1
command: elasticsearch
environment:
- "discovery.type=single-node"
ports:
- "13200:9200"
- "13300:9300"
fake-elastic77-data:
image: grafana/fake-data-gen
links:
- elasticsearch77
environment:
FD_SERVER: elasticsearch77
FD_DATASOURCE: elasticsearch7
FD_PORT: 9200
filebeat77:
image: docker.elastic.co/beats/filebeat:7.7.1
command: filebeat -e -strict.perms=false
volumes:
- ./docker/blocks/elastic77/filebeat.yml:/usr/share/filebeat/filebeat.yml:ro
- /var/log:/var/log:ro
- ../data/log:/var/log/grafana:ro
metricbeat77:
image: docker.elastic.co/beats/metricbeat:7.7.1
command: metricbeat -e -strict.perms=false
user: root
volumes:
- ./docker/blocks/elastic77/metricbeat.yml:/usr/share/metricbeat/metricbeat.yml:ro
- /var/run/docker.sock:/var/run/docker.sock:ro
kibana77:
image: docker.elastic.co/kibana/kibana:7.7.1
ports:
- "5601:5601"
links:
- elasticsearch77
environment:
ELASTICSEARCH_HOSTS: http://elasticsearch77:9200

View File

@@ -0,0 +1,3 @@
script.inline: on
script.indexed: on
xpack.license.self_generated.type: basic

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,38 @@
metricbeat.config:
modules:
path: ${path.config}/modules.d/*.yml
# Reload module configs as they change:
reload.enabled: false
metricbeat.autodiscover:
providers:
- type: docker
hints.enabled: true
metricbeat.modules:
- module: docker
metricsets:
- "container"
- "cpu"
- "diskio"
- "healthcheck"
- "info"
#- "image"
- "memory"
- "network"
hosts: ["unix:///var/run/docker.sock"]
period: 10s
enabled: true
processors:
- add_cloud_metadata: ~
output.elasticsearch:
hosts: ["elasticsearch77:9200"]
index: "metricbeat-%{+yyyy.MM.dd}"
setup.template.name: "metricbeat"
setup.template.pattern: "metricbeat-*"
setup.template.settings:
index.number_of_shards: 1
index.number_of_replicas: 1

View File

@@ -24,12 +24,12 @@
- influxdb
telegraf:
image: telegraf:1.10.4
image: telegraf:latest
links:
- influxdb
depends_on:
- influxdb_cli
volumes:
- ./docker/blocks/influxdb/telegraf.conf:/etc/telegraf/telegraf.conf:ro
- /var/log:/var/log
- /var/log:/var/log/host
- ../data/log:/var/log/grafana

View File

@@ -44,7 +44,7 @@
[[inputs.logparser]]
files = [
"/var/log/*.log",
"/var/log/host/*.log",
"/var/log/grafana/*.log"
]
[inputs.logparser.grok]

View File

@@ -1,5 +1,5 @@
influxdb1:
image: influxdb:1.8.4-alpine
image: influxdb:1.8
container_name: influxdb1
ports:
- '2004:2004'
@@ -22,11 +22,11 @@
FD_PORT: 8086
telegraf-influxdb1:
image: telegraf:1.10.4
image: telegraf:latest
links:
- influxdb1
volumes:
- ./docker/blocks/influxdb1/telegraf.conf:/etc/telegraf/telegraf.conf:ro
- /var/log:/var/log
- /var/log:/var/log/host
- ../data/log:/var/log/grafana

View File

@@ -52,7 +52,7 @@
[[inputs.logparser]]
files = [
"/var/log/*.log",
"/var/log/host/*.log",
"/var/log/grafana/*.log"
]
[inputs.logparser.grok]

View File

@@ -1,7 +1,7 @@
jaeger:
image: jaegertracing/all-in-one:latest
ports:
- "6831:6831"
- "6831:6831/udp"
- "16686:16686"
# Additional loki to generate some traces
# datasource URL: http://localhost:3100/

View File

@@ -1,11 +1,11 @@
# datasource URL: http://localhost:3100/
loki:
image: grafana/loki:master
image: grafana/loki:latest
ports:
- "3100:3100"
command: -config.file=/etc/loki/local-config.yaml
promtail:
image: grafana/promtail:master
image: grafana/promtail:latest
volumes:
- ./docker/blocks/loki/config.yaml:/etc/promtail/docker-config.yaml
- /var/log:/var/log

View File

@@ -1,18 +1,13 @@
# This Dockerfile builds an image for a client_golang example.
# Builder image, where we build the example.
FROM golang:1.15.1 AS builder
FROM golang:1.17 AS builder
# Download prometheus/client_golang/examples/random first
RUN go get github.com/prometheus/client_golang/examples/random
WORKDIR /go/src/github.com/prometheus/client_golang
WORKDIR /go/src/github.com/prometheus/client_golang/prometheus
RUN go get -d
WORKDIR /go/src/github.com/prometheus/client_golang/examples/random
RUN CGO_ENABLED=0 GOOS=linux go build -a -tags netgo -ldflags '-w'
RUN CGO_ENABLED=0 GOOS=linux go install -tags netgo -ldflags '-w' github.com/prometheus/client_golang/examples/random@latest
# Final image.
FROM scratch
LABEL maintainer "The Prometheus Authors <prometheus-developers@googlegroups.com>"
COPY --from=builder /go/src/github.com/prometheus/client_golang/examples/random .
COPY --from=builder /go/bin/random .
EXPOSE 8080
ENTRYPOINT ["/random"]

View File

@@ -1,2 +1,2 @@
ORIGIN_SERVER=http://localhost:9090/
ORIGIN_SERVER=http://host.docker.internal:9090/
SLEEP_DURATION=60s

View File

@@ -1,7 +1,11 @@
FROM golang:latest
FROM golang:latest as builder
ADD main.go /
WORKDIR /
RUN GO111MODULE=off go build -o main .
RUN go mod init proxy
RUN CGO_ENABLED=0 go build -o main .
FROM scratch
WORKDIR /
EXPOSE 3011
COPY --from=builder /main /main
ENTRYPOINT ["/main"]

View File

@@ -1,8 +1,9 @@
slow_proxy:
build: docker/blocks/slow_proxy
network_mode: host
ports:
- "3011:3011"
extra_hosts:
- "host.docker.internal:host-gateway"
environment:
ORIGIN_SERVER: ${ORIGIN_SERVER}
SLEEP_DURATION: ${SLEEP_DURATION}

View File

@@ -12,12 +12,14 @@ import (
func main() {
origin := os.Getenv("ORIGIN_SERVER")
if origin == "" {
origin = "http://localhost:9090/"
// it is never not-set, the default is in the `.env` file
log.Fatalf("missing env-variable ORIGIN_SERVER")
}
sleepDurationStr := os.Getenv("SLEEP_DURATION")
if sleepDurationStr == "" {
sleepDurationStr = "60s"
// it is never not-set, the default is in the `.env` file
log.Fatalf("missing env-variable SLEEP_DURATION")
}
sleep, err := time.ParseDuration(sleepDurationStr)

View File

@@ -1,7 +0,0 @@
FROM golang:latest
ADD main.go /
WORKDIR /
RUN GO111MODULE=off go build -o main .
EXPOSE 3011
ENTRYPOINT ["/main"]

View File

@@ -1,6 +0,0 @@
slow_proxy_mac:
build: docker/blocks/slow_proxy_mac
ports:
- '3011:3011'
environment:
ORIGIN_SERVER: 'http://host.docker.internal:9090/'

View File

@@ -1,31 +0,0 @@
package main
import (
"fmt"
"log"
"net/http"
"net/http/httputil"
"net/url"
"os"
"time"
)
func main() {
origin := os.Getenv("ORIGIN_SERVER")
if origin == "" {
origin = "http://host.docker.internal:9090/"
}
sleep := time.Minute
originURL, _ := url.Parse(origin)
proxy := httputil.NewSingleHostReverseProxy(originURL)
http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
fmt.Printf("sleeping for %s then proxying request: %s", sleep.String(), r.RequestURI)
<-time.After(sleep)
proxy.ServeHTTP(w, r)
})
log.Fatal(http.ListenAndServe(":3011", nil))
}

View File

@@ -0,0 +1 @@
grafana/provisioning/dashboards/alerts/alert-*

View File

@@ -0,0 +1,66 @@
# Grafana Unified Alerting High Availability (HA) test setup
A set of docker compose services which together creates a Grafana HA test setup for unified alerting.
Included services
- Grafana
- Mysql - Grafana configuration database, exporter for metrics and session storage
- Prometheus - Monitoring of Grafana and used as data source
- Nginx - Reverse proxy for Grafana and Prometheus. Enables browsing Grafana/Prometheus UI using a hostname
## Prerequisites
### Build grafana docker container
Build a Grafana docker container from current branch and commit and tag it as grafana/grafana:dev.
```bash
$ cd <grafana repo>
$ make build-docker-full
```
### Virtual host names
#### Alternative 1 - Use dnsmasq
```bash
$ sudo apt-get install dnsmasq
$ echo 'address=/loc/127.0.0.1' | sudo tee /etc/dnsmasq.d/dnsmasq-loc.conf > /dev/null
$ sudo /etc/init.d/dnsmasq restart
$ ping whatever.loc
PING whatever.loc (127.0.0.1) 56(84) bytes of data.
64 bytes from localhost (127.0.0.1): icmp_seq=1 ttl=64 time=0.076 ms
--- whatever.loc ping statistics ---
1 packet transmitted, 1 received, 0% packet loss, time 1998ms
```
#### Alternative 2 - Manually update /etc/hosts
Update your `/etc/hosts` to be able to access Grafana and/or Prometheus UI using a hostname.
```bash
$ cat /etc/hosts
127.0.0.1 grafana.loc
127.0.0.1 prometheus.loc
```
## Start services
```bash
$ docker-compose up -d
```
Browse
- http://grafana.loc/
- http://prometheus.loc/
## Test alerting
### Create contact points
TBD
### Create alerts
TBD
### Create silences
TBD

View File

@@ -0,0 +1,90 @@
version: "2.1"
services:
db:
image: mysql:5.6
platform: linux/x86_64
environment:
MYSQL_ROOT_PASSWORD: rootpass
MYSQL_DATABASE: grafana
MYSQL_USER: grafana
MYSQL_PASSWORD: password
command: [mysqld, --character-set-server=utf8mb4, --collation-server=utf8mb4_unicode_ci, --innodb_monitor_enable=all, --max-connections=1001]
ports:
- 3306
healthcheck:
test: ["CMD", "mysqladmin" ,"ping", "-h", "localhost"]
timeout: 10s
retries: 10
mysqld-exporter:
image: prom/mysqld-exporter
environment:
- DATA_SOURCE_NAME=root:rootpass@(db:3306)/
ports:
- 9104
depends_on:
db:
condition: service_healthy
prometheus:
image: prom/prometheus:v2.4.2
volumes:
- ./prometheus/:/etc/prometheus/
environment:
- VIRTUAL_HOST=prometheus.loc
ports:
- 909
nginx-proxy:
image: jwilder/nginx-proxy
ports:
- "80:80"
volumes:
- /var/run/docker.sock:/tmp/docker.sock:ro
depends_on:
db:
condition: service_healthy
grafana1:
image: grafana/grafana:dev
volumes:
- ./grafana/provisioning/:/etc/grafana/provisioning/
environment:
- VIRTUAL_HOST=grafana.loc
- GF_FEATURE_TOGGLES_ENABLE=ngalert
- GF_UNIFIED_ALERTING_HA_PEERS=ha-test-unified-alerting_grafana2_1:9094,ha-test-unified-alerting_grafana1_1:9094
- GF_SERVER_ROOT_URL=http://grafana.loc
- GF_DATABASE_NAME=grafana
- GF_DATABASE_USER=grafana
- GF_DATABASE_PASSWORD=password
- GF_DATABASE_TYPE=mysql
- GF_DATABASE_HOST=db:3306
- GF_DATABASE_MAX_OPEN_CONN=300
- GF_SESSION_PROVIDER=mysql
- GF_SESSION_PROVIDER_CONFIG=grafana:password@tcp(db:3306)/grafana?allowNativePasswords=true
ports:
- 3010:3000
depends_on:
db:
condition: service_healthy
grafana2:
image: grafana/grafana:dev
volumes:
- ./grafana/provisioning/:/etc/grafana/provisioning/
environment:
- VIRTUAL_HOST=grafana.loc
- GF_FEATURE_TOGGLES_ENABLE=ngalert
- GF_UNIFIED_ALERTING_HA_PEERS=ha-test-unified-alerting_grafana2_1:9094,ha-test-unified-alerting_grafana1_1:9094
- GF_SERVER_ROOT_URL=http://grafana.loc
- GF_DATABASE_NAME=grafana
- GF_DATABASE_USER=grafana
- GF_DATABASE_PASSWORD=password
- GF_DATABASE_TYPE=mysql
- GF_DATABASE_HOST=db:3306
- GF_DATABASE_MAX_OPEN_CONN=300
- GF_SESSION_PROVIDER=mysql
- GF_SESSION_PROVIDER_CONFIG=grafana:password@tcp(db:3306)/grafana?allowNativePasswords=true
ports:
- 3020:3000
depends_on:
db:
condition: service_healthy

View File

@@ -0,0 +1,203 @@
local numAlerts = std.extVar('alerts');
local condition = std.extVar('condition');
local arr = std.range(1, numAlerts);
local alertDashboardTemplate = {
"editable": true,
"gnetId": null,
"graphTooltip": 0,
"id": null,
"links": [],
"panels": [
{
"alert": {
"conditions": [
{
"evaluator": {
"params": [
65
],
"type": "gt"
},
"operator": {
"type": "and"
},
"query": {
"params": [
"A",
"5m",
"now"
]
},
"reducer": {
"params": [],
"type": "avg"
},
"type": "query"
}
],
"executionErrorState": "alerting",
"frequency": "10s",
"handler": 1,
"for": "1m",
"name": "bulk alerting",
"noDataState": "no_data",
"notifications": [
{
"id": 2
}
]
},
"aliasColors": {},
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "Prometheus",
"fill": 1,
"gridPos": {
"h": 9,
"w": 12,
"x": 0,
"y": 0
},
"id": 2,
"legend": {
"avg": false,
"current": false,
"max": false,
"min": false,
"show": true,
"total": false,
"values": false
},
"lines": true,
"linewidth": 1,
"nullPointMode": "null",
"percentage": false,
"pointradius": 5,
"points": false,
"renderer": "flot",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
"$$hashKey": "object:117",
"expr": "go_goroutines",
"format": "time_series",
"intervalFactor": 1,
"refId": "A"
}
],
"thresholds": [
{
"colorMode": "critical",
"fill": true,
"line": true,
"op": "gt",
"value": 50
}
],
"timeFrom": null,
"timeShift": null,
"title": "Panel Title",
"tooltip": {
"shared": true,
"sort": 0,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
}
]
}
],
"schemaVersion": 16,
"style": "dark",
"tags": [],
"templating": {
"list": []
},
"time": {
"from": "now-6h",
"to": "now"
},
"timepicker": {
"refresh_intervals": [
"5s",
"10s",
"30s",
"1m",
"5m",
"15m",
"30m",
"1h",
"2h",
"1d"
],
"time_options": [
"5m",
"15m",
"1h",
"6h",
"12h",
"24h",
"2d",
"7d",
"30d"
]
},
"timezone": "",
"title": "New dashboard",
"uid": null,
"version": 0
};
{
['alert-' + std.toString(x) + '.json']:
alertDashboardTemplate + {
panels: [
alertDashboardTemplate.panels[0] +
{
alert+: {
name: 'Alert rule ' + x,
conditions: [
alertDashboardTemplate.panels[0].alert.conditions[0] +
{
evaluator+: {
params: [condition]
}
},
],
},
},
],
uid: 'alert-' + x,
title: 'Alert ' + x
},
for x in arr
}

View File

@@ -0,0 +1,172 @@
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": "-- Grafana --",
"enable": true,
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"name": "Annotations & Alerts",
"type": "dashboard"
}
]
},
"editable": true,
"gnetId": null,
"graphTooltip": 0,
"links": [],
"panels": [
{
"aliasColors": {
"Active alerts": "#bf1b00"
},
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "Prometheus",
"fill": 1,
"gridPos": {
"h": 12,
"w": 24,
"x": 0,
"y": 0
},
"id": 2,
"interval": "",
"legend": {
"alignAsTable": true,
"avg": false,
"current": true,
"max": false,
"min": false,
"rightSide": true,
"show": true,
"total": false,
"values": true
},
"lines": true,
"linewidth": 2,
"links": [],
"nullPointMode": "null",
"percentage": false,
"pointradius": 5,
"points": false,
"renderer": "flot",
"seriesOverrides": [
{
"alias": "Active grafana instances",
"dashes": true,
"fill": 0
}
],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
"expr": "sum(increase(grafana_alerting_notification_sent_total[1m])) by(job)",
"format": "time_series",
"instant": false,
"interval": "1m",
"intervalFactor": 1,
"legendFormat": "Notifications sent",
"refId": "A"
},
{
"expr": "min(grafana_alerting_active_alerts) without(instance)",
"format": "time_series",
"interval": "1m",
"intervalFactor": 1,
"legendFormat": "Active alerts",
"refId": "B"
},
{
"expr": "count(up{job=\"grafana\"})",
"format": "time_series",
"intervalFactor": 1,
"legendFormat": "Active grafana instances",
"refId": "C"
}
],
"thresholds": [],
"timeFrom": null,
"timeShift": null,
"title": "Notifications sent vs active alerts",
"tooltip": {
"shared": true,
"sort": 0,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": "0",
"show": true
},
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
}
],
"yaxis": {
"align": false,
"alignLevel": 3
}
}
],
"schemaVersion": 16,
"style": "dark",
"tags": [],
"templating": {
"list": []
},
"time": {
"from": "now-1h",
"to": "now"
},
"timepicker": {
"refresh_intervals": [
"5s",
"10s",
"30s",
"1m",
"5m",
"15m",
"30m",
"1h",
"2h",
"1d"
],
"time_options": [
"5m",
"15m",
"1h",
"6h",
"12h",
"24h",
"2d",
"7d",
"30d"
]
},
"timezone": "",
"title": "Overview",
"uid": "xHy7-hAik",
"version": 6
}

View File

@@ -0,0 +1,14 @@
apiVersion: 1
providers:
- name: 'Alerts'
folder: 'Alerts'
type: file
options:
path: /etc/grafana/provisioning/dashboards/alerts
- name: 'MySQL'
folder: 'MySQL'
type: file
options:
path: /etc/grafana/provisioning/dashboards/mysql

View File

@@ -0,0 +1,16 @@
apiVersion: 1
datasources:
- name: Prometheus
type: prometheus
access: proxy
url: http://prometheus:9090
jsonData:
timeInterval: 10s
queryTimeout: 30s
httpMethod: POST
- name: Loki
type: loki
access: proxy
url: http://loki:3100

View File

@@ -0,0 +1,47 @@
# my global config
global:
scrape_interval: 10s # By default, scrape targets every 15 seconds.
evaluation_interval: 10s # By default, scrape targets every 15 seconds.
# scrape_timeout is set to the global default (10s).
# Load and evaluate rules in this file every 'evaluation_interval' seconds.
#rule_files:
# - "alert.rules"
# - "first.rules"
# - "second.rules"
# alerting:
# alertmanagers:
# - scheme: http
# static_configs:
# - targets:
# - "127.0.0.1:9093"
scrape_configs:
- job_name: 'prometheus'
static_configs:
- targets: ['localhost:9090']
- job_name: 'grafana'
dns_sd_configs:
- names:
- 'grafana'
type: 'A'
port: 3000
refresh_interval: 10s
- job_name: 'mysql'
dns_sd_configs:
- names:
- 'mysqld-exporter'
type: 'A'
port: 9104
refresh_interval: 10s
- job_name: 'loki'
dns_sd_configs:
- names:
- 'loki'
type: 'A'
port: 3100
refresh_interval: 10s

21
devenv/vscode/launch.json Normal file
View File

@@ -0,0 +1,21 @@
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "grafana-server",
"type": "go",
"request": "launch",
"mode": "auto",
"program": "${workspaceFolder}/pkg/cmd/grafana-server",
"env": {},
"args": [
"--homepath=${workspaceFolder}",
"--packaging=dev",
"cfg:app_mode=development",
]
}
]
}

Some files were not shown because too many files have changed in this diff Show More