Compare commits

..

567 Commits

Author SHA1 Message Date
Grot (@grafanabot)
14c494085e Drone: Publish NPM packages after Storybook to avoid race condition (#29340) (#29343)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
(cherry picked from commit 7d8cb6869a)

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-11-24 15:17:31 +01:00
Grot (@grafanabot)
3a50fc8db0 Docs: Fix editor role and alert notification channel description (#29301) (#29337)
* Docs: Fix editor role and alert notification channel description

* Update docs/sources/permissions/organization_roles.md

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

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
(cherry picked from commit 27b4390484)

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2020-11-24 11:52:49 +01:00
Grot (@grafanabot)
7472e37cf9 "Release: Updated versions in package to 7.3.4" (#29336) 2020-11-24 11:20:38 +01:00
Grot (@grafanabot)
be6425d461 Security: Fixes minor security issue with alert notification webhooks that allowed GET & DELETE requests #29330 (#29335)
(cherry picked from commit d796c61946)

Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
2020-11-24 10:45:09 +01:00
Torkel Ödegaard
f34fecbca0 Backport of InfluxDB: update flux library and support boolean label values #29333 2020-11-24 10:41:15 +01:00
Torkel Ödegaard
509174df31 ReleaseNotes: Update link in package.json (#29328) 2020-11-24 10:24:03 +01:00
Grot (@grafanabot)
6ada37b445 Login: Fixes redirect url encoding issues of # %23 being unencoded after login (#29299) (#29323)
(cherry picked from commit 763e958d9d)

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
2020-11-24 07:52:04 +01:00
Grot (@grafanabot)
6d79790397 Drone: Upgrade build pipeline tool (#29308) (#29309)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
(cherry picked from commit e293dd40b0)

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-11-23 17:36:01 +01:00
Grot (@grafanabot)
089c636acf Annotations: fixing so when changing annotations query links submenu will be updated. (#28990) (#29285)
* fixing so changes to annotations query links will update submenu.

* Refactored so we dont use the events to trigger a refresh but instead recreating the annotations list instead of mutating the existing list.

* updated snapshot.

* uppdates according to feedback.

* fixed so it also works to update a annotation.

(cherry picked from commit 81859880d3)

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2020-11-21 17:26:57 +01:00
Grot (@grafanabot)
fcd66eef29 Dashboard: Fixes kiosk state after being redirected to login page and back (#29273) (#29278)
* Login: Fixes issue where url parameters where modified by golang url code

* Add tests

* Fix test cases

* Update pkg/middleware/auth_test.go

Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>

* fixed formatting

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>
(cherry picked from commit 1076f47509)

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
2020-11-20 20:40:11 +01:00
Grot (@grafanabot)
cffb1cd98d Increase search limit on team add user and improve placeholder (#29258) (#29261)
(cherry picked from commit a312f1ae80)

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-11-20 13:17:59 +01:00
Arve Knudsen
881a595651 Drone: Sync with master (#29205)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-11-18 16:00:58 +01:00
Arve Knudsen
004104717c Drone: Fix publish-packages invocation (#29179) (#29184)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-11-18 10:12:34 +01:00
Arve Knudsen
b345e28a2d Chore: Upgrade grafana/build-ci-deploy image to latest Go (#29171) (#29180)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-11-18 09:13:12 +01:00
Grot (@grafanabot)
fa1db4dc12 Table: Fix incorrect condtition for rendering table filter (#29165) (#29181)
(cherry picked from commit f28ba27ca2)

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-11-18 09:05:14 +01:00
Grot (@grafanabot)
9a3fbb8782 DashboardLinks: will only refresh dashboard search when changing tags for link. (#29040) (#29177)
* fixing so we dont run multiple dashboard links searches when changing variables.

* changed so we fetch the list when open the dashboard links dropdown.

* removed verification of unneccesary requests.

(cherry picked from commit 4c0aa4acd5)

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2020-11-18 07:28:57 +01:00
Arve Knudsen
7292e1508e Drone: Upgrade build pipeline tool and build image (#29161) (#29162)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-11-17 20:40:19 +01:00
Grot (@grafanabot)
2489dc4d3a Release: Updated versions in package to 7.3.3 (#29126) 2020-11-17 13:18:22 +01:00
Torkel Ödegaard
ca8de25f0c git cherry-pick -x 0f3bebb38d (#29155)
Backport of https://github.com/grafana/grafana/pull/29031
2020-11-17 12:05:11 +01:00
Grot (@grafanabot)
ff7c462600 Build: support custom build tags (#28609) (#29128)
* Build: support custom build tags

* Update build.go

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
(cherry picked from commit 63c230b670)

Co-authored-by: Leonard Gram <leo@xlson.com>
2020-11-17 11:09:19 +01:00
Torkel Ödegaard
41bbafe979 Revert "Graph: Fixes stacking issues like floating bars when data is not aligned (#29051) (#29088)" (#29151)
This reverts commit 697e4f7037.
2020-11-17 10:27:10 +01:00
Grot (@grafanabot)
37e4a19ea8 Provisioning: always pin app to the sidebar when enabled (#29084) (#29146)
(cherry picked from commit 4f9123ebe2)

Co-authored-by: Alexander Zobnin <alexanderzobnin@gmail.com>
2020-11-17 10:27:49 +03:00
Grot (@grafanabot)
f04131c9c6 build paths in an os independent way (#29143) (#29147)
Use filepath instead of path to manipulate filename paths in a way compatible with the target operating system-defined file paths.

(cherry picked from commit 4430ca2317)

Co-authored-by: Andrew Mattheisen <amattheisen@users.noreply.github.com>
2020-11-17 08:24:12 +01:00
Grot (@grafanabot)
7e6c34fc20 Chore: Upgrade Go dev tools (#29124) (#29132)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
(cherry picked from commit 115f38f5c3)

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-11-16 08:34:17 +01:00
Torkel Ödegaard
0e5da44bc1 Automatin: set node version 2020-11-15 12:18:02 +01:00
Torkel Ödegaard
fc44872ca2 Automation: Adding version bump action 2020-11-15 11:52:34 +01:00
Grot (@grafanabot)
c88fc42fc6 Drone: Fix Drone config verification for enterprise on Windows (#29118) (#29119)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
(cherry picked from commit 01df8f177c)

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-11-14 12:04:03 +01:00
Grot (@grafanabot)
d05c3462da [v7.3.x] Drone: Verify Drone config at beginning of pipelines (#29111)
* Drone: Verify Drone config at beginning of pipelines (#29071)

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
(cherry picked from commit 113e288668)

* Sync .drone.yml

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Drone: Remove Windows testing of PRs

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-11-14 07:36:28 +01:00
Grot (@grafanabot)
8db22cef96 Test Datasource/Bug: Fixes division by zero in csv metric values scenario (#29029) (#29068)
Closes #8705

(cherry picked from commit 9659c98d61)

Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
2020-11-13 15:52:58 +01:00
Grot (@grafanabot)
edfe914cb0 [v7.3.x] StatPanel: Fixes hanging issue when all values are zero (#29087)
* StatPanel: Fixes hanging issue when all values are zero (#29077)

* StatPanel: Fixes hanging issue when all values are zero

* Minor tweak

(cherry picked from commit 01a4951da0)

* Fixed test

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-11-13 15:51:38 +01:00
Arve Knudsen
4cf6c916c7 Data source proxy: Convert 401 from data source to 400 (#28962) (#29095)
* Data source proxy: Convert 401 from data source to 400

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-11-13 15:06:38 +01:00
Grot (@grafanabot)
697e4f7037 Graph: Fixes stacking issues like floating bars when data is not aligned (#29051) (#29088)
* Graph: Remove interpolation logic from graph stacking

* Improving tooltip

(cherry picked from commit dff451992d)

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
2020-11-13 14:16:16 +01:00
Grot (@grafanabot)
ca4fdc46fd Auth: Enable more complete credential chain for SigV4 default SDK auth option (#29065) (#29086)
* Force more complete credential chain for default auth option

* simplify

* allow assume role for default

(cherry picked from commit eba046d3cb)

Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
2020-11-13 11:23:52 +01:00
Grot (@grafanabot)
e086a96161 Fix for multi-value template variable for project selector (#29042) (#29054)
(cherry picked from commit 0c054d1a9f)

Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>
2020-11-12 11:54:08 +02:00
Grot (@grafanabot)
945573eb93 Thresholds: Fixes color assigned to null values (#29010) (#29018)
* Thresholds: Fixes color assigned to null values

* Updates

(cherry picked from commit 145901c0db)

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
2020-11-12 09:39:49 +01:00
Emil Tullstedt
b8ad4eaab3 [v7.3.x] Chore: Bump build pipeline version (#29025) 2020-11-11 14:20:01 +01:00
Leonard Gram
f034cbef50 Release v7.3.2 (#29024) 2020-11-11 14:09:57 +01:00
David
23be6e3898 Fix conflict (#29020) 2020-11-11 12:57:07 +01:00
Grot (@grafanabot)
7798f01cc9 StatPanels: Fixes auto min max when latest value is zero (#28982) (#29007)
(cherry picked from commit 10f226c4c2)

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
2020-11-11 11:56:33 +01:00
Grot (@grafanabot)
38b96278c8 Tracing: Add setting for sampling server (#29011) (#29015)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
(cherry picked from commit e3c7d66324)

Co-authored-by: Carl Bergquist <carl@grafana.com>
2020-11-11 10:42:38 +01:00
Marcus Andersson
f142752ad6 Gauge: making sure threshold panel json is correct before render (#28898) (#28984)
* making sure we work with a proper data structure.

* added test to verify functionality.

* removed unused variables.

Co-authored-by: Leonard Gram <leo@xlson.com>
2020-11-10 17:32:49 +01:00
Marcus Andersson
1cfe644d51 Variables: make sure that we support both old and new syntax for custom variables. (#28896) (#28985)
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-11-10 17:32:37 +01:00
Grot (@grafanabot)
d8ac457ebc Explore: Remove redundant decodeURI and fix urls (#28697) (#28963)
* Remove redundant path URIdecoding

* Remove redundant comments

(cherry picked from commit f71f03bf94)

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2020-11-10 17:30:20 +01:00
Grot (@grafanabot)
3d4ff87721 [v7.3.x] Drone: Fix docs building (#28987)
* Drone: Fix docs building (#28986)

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
(cherry picked from commit 9582e0afd9)

* Updated

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-11-10 16:49:05 +01:00
Marcus Andersson
0c5524786b Alerting: Append appSubUrl to back button on channel form (#28282) (#28983)
Co-authored-by: Mikhail Snetkov <ufoproger@gmail.com>
2020-11-10 16:19:47 +01:00
Grot (@grafanabot)
c0adf1022b Plugins: allow override when allowing unsigned plugins (#28901) (#28927)
* Plugins: allow override when allowing unsigned plugins

* Update pkg/plugins/plugins.go

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

* Plugins: removed java-style setter

* Plugins: cleanup

* Update pkg/plugins/plugins.go

Co-authored-by: Agnès Toulet <35176601+AgnesToulet@users.noreply.github.com>

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
Co-authored-by: Agnès Toulet <35176601+AgnesToulet@users.noreply.github.com>
(cherry picked from commit 8fb06da34e)

Co-authored-by: Leonard Gram <leo@xlson.com>
2020-11-10 15:05:53 +01:00
Grot (@grafanabot)
706cc59d1d CloudWatch Logs: Change what we use to measure progress (#28912) (#28964)
(cherry picked from commit 76f4c11430)

Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com>
2020-11-10 12:12:26 +01:00
Sofia Papagiannaki
f9f3b9d953 Tracing: log traceID in request logger (#28952) (#28959)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
2020-11-10 09:33:48 +01:00
Grot (@grafanabot)
1b14c6b8db Panel inspect: Interpolate variables in panel inspect title (#28779) (#28801)
* Interpolate variables in panel inspect title

* Update public/app/features/dashboard/components/Inspector/InspectContent.tsx

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>

* fix typo

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

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-11-10 09:23:26 +01:00
Grot (@grafanabot)
d8674013cb UsageStats: start tracking usage stats for tempo (#28948) (#28951)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
(cherry picked from commit afb06ec21a)

Co-authored-by: Carl Bergquist <carl@grafana.com>
2020-11-10 09:20:13 +01:00
Grot (@grafanabot)
fc86862533 Short URL: Cleanup unvisited/stale short URLs (#28867) (#28944)
* cleanup stale short urls

* refactor test case names

* service injection

* fix query

* add docs

* remove comma

(cherry picked from commit a7ea8de47e)

Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
2020-11-09 19:01:02 +01:00
Grot (@grafanabot)
3636749a43 Plugins signing: Fix docs urls (#28930) (#28934)
(cherry picked from commit 2ddda8f452)

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-11-09 15:10:37 +01:00
Grot (@grafanabot)
f30f6d8a35 Chore: Fix spelling issue (#28904) (#28925)
(cherry picked from commit 5b00b500a7)

Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>
2020-11-09 10:10:41 +02:00
Grot (@grafanabot)
202b9e5ca9 API: replace SendLoginLogCommand with LoginHook (#28777) (#28891)
* API: replace SendLoginLogCommand with LoginHook

* LoginInfo: Query -> LoginUsername

(cherry picked from commit 2c246276fd)

Co-authored-by: Agnès Toulet <35176601+AgnesToulet@users.noreply.github.com>
2020-11-06 11:33:27 +01:00
Grot (@grafanabot)
c9a6e09235 Elasticsearch: Exclude pipeline aggregations from order by options (#28620) (#28873)
(cherry picked from commit 135b83e17f)

Co-authored-by: Chris Cowan <chris@chriscowan.us>
2020-11-06 09:23:52 +00:00
Grot (@grafanabot)
c03fbac5db Dashboards / Folders: delete related data (permissions, stars, tags, versions, annotations) when deleting a dashboard or a folder (#28826) (#28890)
* Dashboard: delete related data when deleting a dashboard or a folder

* fix migrations order

* apply PR feedback

(cherry picked from commit f0421ed08e)

Co-authored-by: Agnès Toulet <35176601+AgnesToulet@users.noreply.github.com>
2020-11-06 09:58:58 +01:00
Grot (@grafanabot)
de19ba97cb Disable selecting enterprise plugins with no license (#28758) (#28859)
* Add unlicensed property to plugins

* Disable selecting unlicensed plugin

* Add customizable plugin market place url

* License: workaround enabled only in enterprise

* linter

* Move licensing info to front end

* Update pkg/services/licensing/oss.go

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Update pkg/services/licensing/oss.go

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Update pkg/setting/setting.go

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Update pkg/setting/setting.go

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Update pkg/api/frontendsettings.go

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Update sample.ini

* Update docs

* Update packages/grafana-runtime/src/config.ts

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>

* Update public/app/features/datasources/state/buildCategories.ts

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>

* Update pkg/api/frontendsettings.go

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Update pkg/setting/setting.go

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Fix spelling

Co-authored-by: Leonard Gram <leo@xlson.com>
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
(cherry picked from commit 9b90ff2961)

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2020-11-05 13:22:02 +02:00
Grot (@grafanabot)
e5be54b0f0 Tempo: fix test data source (#28836) (#28856)
(cherry picked from commit 62138e8ad4)

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2020-11-05 12:02:09 +01:00
Grot (@grafanabot)
70bf01f4f9 Prometheus: fix missing labels from value (#28842) (#28855)
(cherry picked from commit 9155f46315)

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2020-11-05 12:01:07 +01:00
Grot (@grafanabot)
0ee8427386 Units: added support to handle negative fractional numbers. (#28849) (#28851)
(cherry picked from commit abe96f4f89)

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2020-11-05 10:59:41 +01:00
Grot (@grafanabot)
7995ab999f increase blob column size for encrypted dashboard data (#28831) (#28832)
(cherry picked from commit 65554269ed)

Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
2020-11-04 21:30:37 +01:00
Grot (@grafanabot)
b51303b83d Gauge: Improve font size auto sizing (#28797) (#28828)
* Gauge: Improved font size calculations

* Added some comments

* update

* Moving to variable

(cherry picked from commit 2b7a570273)

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
2020-11-04 18:36:27 +01:00
Grot (@grafanabot)
c14ee2d245 Variables: Fixes URL values for dependent variables (#28798) (#28800)
(cherry picked from commit 50b3409474)

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
2020-11-04 09:38:20 +01:00
Grot (@grafanabot)
d394be2555 grafana/toolkit: Extract CHANGELOG when building plugin (#28773) (#28774)
(cherry picked from commit 651ab5677c)

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-11-03 15:18:20 +01:00
Grot (@grafanabot)
f523500df2 Templating: Custom variable edit UI, change text input into textarea (#28312) (#28322) (#28704)
(cherry picked from commit 0f97925c1a)

Co-authored-by: Darryl <5493333+darrylsepeda@users.noreply.github.com>
2020-11-03 12:54:35 +01:00
Grot (@grafanabot)
d55ca82f0b Cloudwatch: Fix issue with field calculation transform not working properly with Cloudwatch data (#28761) (#28775)
* Cloudwatch: Fix issue with reducer transform not working properly with Cloudwatch data

* Updated go sdk and updated code

* CloudWatch: Improve test

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
(cherry picked from commit fa567de9b8)

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
2020-11-03 12:07:18 +01:00
Grot (@grafanabot)
7f9990c889 Plugin page: Fix dom validation warning (#28737) (#28741)
(cherry picked from commit e93cb06604)

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-11-02 17:23:55 +01:00
Grot (@grafanabot)
6a2d9224f1 Dashboard: fix view panel mode for Safari / iOS (#28702) (#28755)
* fix(dashboard): flex-basis so child height percentages are respected

* fix(dashboard): reset scrollTop when entering view panel mode

(cherry picked from commit 87ba1b67b7)

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
2020-11-02 17:23:31 +01:00
Grot (@grafanabot)
88ae4c0e64 Fix typo in unsigned plugin warning (#28709) (#28722)
Typo fix!

(cherry picked from commit 5b1dbe0b0c)

Co-authored-by: Éamon Ryan <eamonryan@users.noreply.github.com>
2020-11-02 11:13:01 +01:00
Grot (@grafanabot)
f11bfe95da TableFilters: Fixes filtering with field overrides (#28690) (#28727)
* TableFilters: Fixes filtering with field overrides

* Refactor: changes after PR comments

(cherry picked from commit ba12a6a42a)

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
2020-11-02 07:52:47 +01:00
Grot (@grafanabot)
49dd35f8d9 Templating: Speeds up certain variable queries for Postgres, MySql and MSSql (#28686) (#28726)
(cherry picked from commit 04565d497e)

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
2020-11-02 06:51:39 +01:00
Grot (@grafanabot)
557639a458 Prometheus: Fix copy paste behaving as cut and paste (#28622) (#28691)
(cherry picked from commit 43a0167b01)

Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com>
2020-10-30 15:07:18 +01:00
Dominik Prokop
6668161a88 Release 7.3.1 2020-10-30 11:13:21 +01:00
Grot (@grafanabot)
f81257c2f2 Loki: Fix error when some queries return zero results (#28645) (#28689)
* Fix logSeriesToLogsModel when some data frames have empty fields

* Update test

* Update public/app/core/logs_model.ts

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

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
(cherry picked from commit 05644e7042)

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2020-10-30 10:05:27 +01:00
Grot (@grafanabot)
e8d399ef94 TextPanel: Fixes problems where text panel would show old content (#28643) (#28687)
(cherry picked from commit 16a1d2f744)

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
2020-10-30 08:44:14 +01:00
Grot (@grafanabot)
03563abba0 PanelMenu: Fixes panel submenu not being accessible for panels close to the right edge of the screen (#28666) (#28676)
* Dropdowns: Trying to fix dropdown menus

* Dropdowns: Trying to fix dropdown menus

* removed now unnessary wrapper ref

* Upodates

* Remove export

(cherry picked from commit 5a83fc574a)

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
2020-10-29 20:33:16 +01:00
Grot (@grafanabot)
43928c4c88 Cloudwatch: Fix duplicate metric data (#28642) (#28668)
* Cloudwatch: Fix duplicate metric data

* Refactor reduce function to for of

(cherry picked from commit 6dbf1f830a)

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2020-10-29 17:31:14 +01:00
Grot (@grafanabot)
3069d764f8 Plugins: Fix descendent frontend plugin signature validation (#28638) (#28662)
* move plugin root check to earlier in validation process

* remove comment

* only check root if necessary

(cherry picked from commit b9d71f5cdd)

Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
2020-10-29 15:28:20 +01:00
Grot (@grafanabot)
de9ac280b2 StatPanel: Fixed value being under graph and reduced likley hood for white and dark value text mixing (#28641) (#28655)
* StatPanel: Fixed value being under graph and reduced likley hood for white and dark value text mixing

* Updated snapshot

* Updated storybook config

(cherry picked from commit b46ac2891d)

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
2020-10-29 14:59:00 +01:00
Grot (@grafanabot)
4ff80d541b Table: Fix image cell mode so that it works with value mappings (#28644) (#28651)
(cherry picked from commit 1e51d33d85)

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
2020-10-29 14:58:38 +01:00
Grot (@grafanabot)
4f4fcf6331 Plugin signing: Fix copy on signed plugin notice (#28633) (#28637)
* Fix copy on signed plugin notice

* Update public/app/features/plugins/PluginPage.tsx

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Update public/app/features/plugins/PluginPage.tsx

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
(cherry picked from commit a2b3e63705)

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-10-29 11:32:12 +01:00
kyle
bf8837f6f8 Release v7.3.0 2020-10-28 08:03:43 -04:00
Grot (@grafanabot)
95a3c6a024 Live: updated the reference to use lazy loaded Monaco in code editor. (#28597) (#28599)
(cherry picked from commit c258ee86eb)

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2020-10-28 07:59:22 -04:00
Grot (@grafanabot)
1ff5718af9 AddDatasource: Improve plugin categories (#28584) (#28589)
* add IoT category to datasources

* add more enterprise plugins

* add more enterprise plugins

(cherry picked from commit 33ef71d81e)

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2020-10-28 10:55:19 +01:00
Grot (@grafanabot)
e123e50d27 StatPanel: Fixes BizChart error max: yyy should not be less than min zzz (#28587) (#28588)
(cherry picked from commit 0d803613d6)

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
2020-10-28 08:24:31 +01:00
Kyle Brandt
44f691ff91 Alerting: Log alert warnings for obsolete notifiers when extracting alerts and remove spammy error (#28162) (#28582)
* Lower level of notification translation messages

* API: Log alert warnings when saving dashboard

* Remove spammy error

* Rename function parameter

* Apply suggestions from code review

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Apply suggestions from code review

* Fix test

* Change alertValidator return type

* Small fix

* Rename symbol

* Revert "Rename symbol"

This reverts commit 40b619b21a.

* Revert "Small fix"

This reverts commit 2df8319d1d.

* Revert "Change alertValidator return type"

This reverts commit ad933863e3.

* Revert "Fix test"

This reverts commit f728ece2db.

* Revert "Apply suggestions from code review"

This reverts commit f35c5f52af.

* Revert "Apply suggestions from code review"

This reverts commit 7f95800c5f.

* Revert "Rename function parameter"

This reverts commit 95d3e75b00.

* Revert "API: Log alert warnings when saving dashboard"

This reverts commit 1ac5c3f281.

* Conditionally log translation failures

* Fix issue causing test to fail

* Fix test

* Log instead of propagating translations failures due to database errors

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-10-27 15:57:01 -04:00
Grot (@grafanabot)
12a69876c7 Plugin signing: UI information (#28469) (#28563)
* first pass

* return list

* types and cleanup

* add to plugin page and add styles

* update comment

* update comment

* fix component path

* simplify error component

* simplify error struct

* fix tests

* don't export and fix string()

* update naming

* remove frontend

* introduce phantom loader

* track single error

* remove error from base

* remove unused struct

* remove unnecessary filter

* add errors endpoint

* Update set log to use id field

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* skip adding BE plugins

* remove errs from plugin + ds list

* remove unnecessary fields

* add signature state to panels

* Fetch plugins errors

* grafana/ui component tweaks

* DS Picker - add unsigned badge

* VizPicker - add unsigned badge

* PluginSignatureBadge tweaks

* Plugins list - add signatures info box

* New datasource page - add signatures info box

* Plugin page - add signatures info box

* Fix test

* Do not show Core label in viz picker

* Update public/app/features/plugins/PluginsErrorsInfo.tsx

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>

* Update public/app/features/plugins/PluginListPage.test.tsx

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

* Update public/app/features/plugins/PluginListPage.tsx

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

* Update public/app/features/datasources/NewDataSourcePage.tsx

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

* Review comments 1

* Review comments 2

* Update public/app/features/plugins/PluginsErrorsInfo.tsx

* Update public/app/features/plugins/PluginPage.tsx

* Prettier fix

* remove stale backend code

* Docs issues fix

Co-authored-by: Will Browne <will.browne@grafana.com>
Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
(cherry picked from commit 4468d41417)

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-10-27 15:28:56 -04:00
Grot (@grafanabot)
5bb203df99 Short URL: Update last seen at when visiting a short URL (#28565) (#28573)
Ref #28248

Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>
(cherry picked from commit 60d40fa99b)

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2020-10-27 12:16:56 -04:00
Grot (@grafanabot)
23ae63913f Grafana/ui: auto focus threshold editor input (#28360) (#28538)
* feat(grafana-ui): autofocus threshold editor input

* refactor(grafana-ui): remove commented out css

* feat(grafana-ui): use ref for autofocus new thresholds editor input

* refactor(grafana-ui): conditionally set input ref for latest threshold

* refactor(grafana-ui): put back createRef for input ref

(cherry picked from commit a8a3686785)

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
2020-10-27 09:04:55 +01:00
Grot (@grafanabot)
9b3981fb3c API: add login username in SendLoginLogCommand (#28544) (#28545)
* API: add login username in Login actions

* LoginUser -> LoginUsername

* fix test

(cherry picked from commit 65b5086a59)

Co-authored-by: Agnès Toulet <35176601+AgnesToulet@users.noreply.github.com>
2020-10-26 18:52:48 +02:00
Will Browne
c933d58893 Docs: SigV4 What's New and AWS Elasticsearch documentation (#28506) (#28543)
* add what's new entry and elastic docs

* update docs

* remove caps

* fix image path

* fix md link

Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>

* fix link case

Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>

* fix md link

* docs fixes

* update config ref

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

Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2020-10-26 14:52:29 +01:00
Grot (@grafanabot)
1c61f3fd45 AzureMonitor: Support decimal (as float64) type in analytics/logs (#28480) (#28540)
loss of precision but will make the response work instead of erroring
follows work already done in the ADX plugin
fixes #28278

(cherry picked from commit 96e6524a7d)

Co-authored-by: Kyle Brandt <kyle@grafana.com>
2020-10-26 08:46:08 -04:00
Grot (@grafanabot)
be4b32270a Auth: Fix SigV4 request verification step for Amazon Elasticsearch Service (#28481) (#28539)
* remove forward header and add extra steps for encoding

* add comment

* re-use forwarded header

* fix service param

* Make SDK the default auth option in UI

* use SDK code instead

* propagate err

* refactor flow

* fix prom service namespace

(cherry picked from commit 4d2b20f727)

Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
2020-10-26 13:09:03 +01:00
Grot (@grafanabot)
1e027f5289 Drone: Upgrade build pipeline tool (#28533) (#28536)
* Drone: Upgrade grabpl

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
(cherry picked from commit 1571579c1d)

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-10-26 12:16:41 +01:00
Grot (@grafanabot)
99613f86f8 Drone: Upgrade build-pipeline tool (#28520) (#28530)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
(cherry picked from commit c3917e6525)

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-10-26 09:49:10 +01:00
Grot (@grafanabot)
43a1cb25b9 Elasticsearch: Fix handling of errors when testing data source (#28498) (#28504)
#24999 changed the error response payload, but the test data source
was not adapted to this change and broke the feature of displaying
any errors to the user in the UI. This change should resolve this
problem.

Ref #24999
Ref #28481

(cherry picked from commit c8b7ccc66c)

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2020-10-24 01:53:42 +02:00
Grot (@grafanabot)
648a149813 Plugins: Track plugin signing errors and expose them to the frontend (#28219) (#28505)
* first pass

* return list

* types and cleanup

* add to plugin page and add styles

* update comment

* update comment

* fix component path

* simplify error component

* simplify error struct

* fix tests

* don't export and fix string()

* update naming

* remove frontend

* introduce phantom loader

* track single error

* remove error from base

* remove unused struct

* remove unnecessary filter

* add errors endpoint

* Update set log to use id field

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* skip adding BE plugins

* remove errs from plugin + ds list

* remove unnecessary fields

* add signature state to panels

* remove unused code

* apply PR feedback

* update comment

* merge dto with model

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
(cherry picked from commit 1bee9f4168)

Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
2020-10-23 17:54:34 +02:00
Grot (@grafanabot)
d8ed14f5a5 Cloud Monitoring: Fix help section for aliases (#28499) (#28509)
(cherry picked from commit 8327dd500f)

Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>
2020-10-23 18:43:25 +03:00
Grot (@grafanabot)
8f5c9b192f Auth: Should redirect to login when anonymous enabled and URL with different org than anonymous specified (#28158) (#28503)
If anonymous access is enabled for an org and there are multiple
orgs. When requesting a page that requires user to be logged in
and orgId query string is set in the request url to an org not
equal the anonymous org, if the user is not logged in should
be redirected to the login page.

Fixes #26120

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>
(cherry picked from commit 3be82ecd4e)

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2020-10-23 16:57:19 +02:00
Grot (@grafanabot)
0a184cb84f Drone: Don't build Windows installer for version branches (#28494) (#28495)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
(cherry picked from commit 090c683fea)

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-10-23 12:30:11 +02:00
Grot (@grafanabot)
be4ef1dcd8 Drone: Add version branch pipeline (#28490) (#28492)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
(cherry picked from commit 07897c7e1e)

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-10-23 10:37:26 +02:00
Grot (@grafanabot)
de86b51fb5 Explore: parse time range fix (#28467) (#28470)
* Explore: parse time range fix

* Remove commented out code

* Fix cases for string epoch and ISO strings

Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com>
(cherry picked from commit ce1f7908c8)

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2020-10-22 17:02:58 +02:00
Grot (@grafanabot)
25653e15a6 Circle: Remove release pipeline (#28474) (#28477)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
(cherry picked from commit 77cbb4f0f9)

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-10-22 16:42:12 +02:00
Arve Knudsen
fce221a7d3 Release v7.3.0-beta2
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-10-22 12:47:29 +02:00
Krzysztof Warunek
6c5e139d8f CloudWatch/Athena - valid metrics and dimensions. (#28436)
* CloudWatch/Athena - valid metrics and dimensions.
In accordance with https://docs.aws.amazon.com/athena/latest/ug/query-metrics-viewing.html.

* Athena: add ProcessedBytes dimension instead of DataScannedInBytes

(cherry picked from commit a71eadf379)
2020-10-22 12:47:29 +02:00
Carl Bergquist
194362c302 Database; Remove database metric feature flag and update changelog (#28438)
* adds note about broken feature flag

* remove code to enable feature flag

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
(cherry picked from commit 62f5641aa9)
2020-10-22 12:47:29 +02:00
Aliaksei Tuzik
11eb920e87 Prometheus: fix parsing of infinite sample values (#28287) (#28288)
* Prometheus: fix parsing of infinite sample values (#28287)

* Prometheus: Use common function to parse both sample values and histogram "le" label

(cherry picked from commit f3c09e8bcc)
2020-10-22 12:47:29 +02:00
Jack Westbrook
bb555684b1 Grafana/ui: pass html attributes to segment (#28316)
* feat(grafana-ui): introduce rest props to segment components

* docs(grafana-ui): add segment stories for html attributes

(cherry picked from commit 04c06f2286)
2020-10-22 12:47:29 +02:00
Hugo Häggmark
f2fac78c0b Docs: Adds basic frontend data request concepts (#28253)
* Docs: Adds frontend data request docs

* Update contribute/architecture/frontend-data-requests.md

Co-authored-by: Marcus Olsson <marcus.olsson@hey.com>

* Update contribute/architecture/frontend-data-requests.md

Co-authored-by: Marcus Olsson <marcus.olsson@hey.com>

* Update contribute/architecture/frontend-data-requests.md

Co-authored-by: Marcus Olsson <marcus.olsson@hey.com>

* Update contribute/architecture/frontend-data-requests.md

Co-authored-by: Marcus Olsson <marcus.olsson@hey.com>

* Docs: changes after PR comments

* Docs: changes after PR comments

* Docs: changes after PR comments

* Update contribute/architecture/frontend-data-requests.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

Co-authored-by: Marcus Olsson <marcus.olsson@hey.com>
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
Co-authored-by: achatterjee-grafana <34888589+ashishagarwal06@users.noreply.github.com>
(cherry picked from commit b497063f64)
2020-10-22 12:47:29 +02:00
Carl Bergquist
08be99fa45 Instrumentation: Add histogram for request duration (#28364)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
(cherry picked from commit edbaa9d681)
2020-10-22 12:47:29 +02:00
Carl Bergquist
df2fda3f88 remove status label from histogram (#28387)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
(cherry picked from commit b036112444)
2020-10-22 12:47:29 +02:00
Andrej Ocenas
983d6c8ef8 Explore: Fix date formatting in url for trace logs link (#28381)
* Fix url formatting

* Reverse the overhang buffers

* Fix range when opening split

(cherry picked from commit ad657dcdc3)
2020-10-22 12:47:29 +02:00
Carl Bergquist
12dc0ea111 Instrumentation: Add counters and histograms for database queries (#28236)
Signed-off-by: bergquist <carl.bergquist@gmail.com>

Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
(cherry picked from commit 74d1d3c6a8)
2020-10-22 12:47:29 +02:00
Marcus Efraimsson
103765c349 CloudWatch: Adding support for additional Amazon CloudFront metrics (#28378)
Follow up to #28069 where some metrics was missed.

Ref #28069

(cherry picked from commit 0e17a15fbd)
2020-10-22 12:47:29 +02:00
Alex Khomenko
6b4fd2d33c Add unique ids to query editor fields (#28376)
* Add unique ids to query editor fields

* Update public/app/plugins/datasource/testdata/components/RandomWalkEditor.tsx

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
(cherry picked from commit 1cce13b501)
2020-10-22 12:47:29 +02:00
maknik
1a0500bbeb Dashboard links: Places drop down list so it's always visible (#28330)
* calculating whether to place the list on the right or left edge of the parent

* change naming and add import of createRef

(cherry picked from commit cdab6028e1)
2020-10-22 12:47:29 +02:00
Andrej Ocenas
f1b9c6cde1 Loki: Run instant query only when doing metric query (#28325)
* Run instant query only when doing metric query

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

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 8e9181e7d1)
2020-10-22 12:47:29 +02:00
Andrej Ocenas
fd851af389 Loki: Base maxDataPoints limits on query type (#28298)
* Base maxLines and maxDataPoints based on query type

* Allow overriding the limit to higher value

(cherry picked from commit 8db5d750d0)
2020-10-22 12:47:29 +02:00
Elliot Pryde
8f7eb69db6 Explore: respect min_refresh_interval (#27988)
* Explore: respect min_refresh_interval

Fixes #27494

* fixup! Explore: respect min_refresh_interval

* fixup! Explore: respect min_refresh_interval

* UI: export defaultIntervals from refresh picker

* fixup! Explore: respect min_refresh_interval

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
(cherry picked from commit 1760fdd55d)
2020-10-22 12:47:29 +02:00
Arve Knudsen
bf74c1fe3f Drone: Use ${DRONE_TAG} in release pipelines, since it should work (#28299)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
(cherry picked from commit 392c5bdf73)
2020-10-22 12:47:29 +02:00
Jack Westbrook
c60ea5f25f fix: for graph size not taking up full height or width
(cherry picked from commit 448114f649)
2020-10-22 12:47:29 +02:00
Arve Knudsen
12dc9ea49f Drone: Fix grafana-mixin linting (#28308)
* Drone: Fix Starlark script

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* grafana-mixin: Move build logic to scripts

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Drone: Use mixin scripts

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* CI build image: Install jsonnetfmt and mixtool

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Makefile: Print commands

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
(cherry picked from commit 847dc0bec7)
2020-10-22 12:47:29 +02:00
Sofia Papagiannaki
e5f12afda2 SQLStore: Run tests as integration tests (#28265)
* sqlstore: Run tests as integration tests

* Truncate database instead of re-creating it on each test

* Fix test description

See https://github.com/grafana/grafana/pull/12129

* Fix lint issues

* Fix postgres dialect after review suggestion

* Rename and document functions after review suggestion

* Add periods

* Fix auto-increment value for mysql dialect

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
(cherry picked from commit 4937f0daab)
2020-10-22 12:47:29 +02:00
Arve Knudsen
77ab9f4331 API: Fix short URLs (#28300)
* API: Fix short URLs

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
(cherry picked from commit a2c7c5b912)
2020-10-22 12:47:29 +02:00
The Rock Guy
0f0d860ed3 CloudWatch: Add EC2CapacityReservations Namespace (#28309)
(cherry picked from commit c9cc82ea55)
2020-10-22 12:47:29 +02:00
Zoltán Bedi
ec0383c9ff Jaeger: timeline collapser to show icons (#28284)
* Fix: timeline collapser to show icons

* Use IconButton

* Export named component instead of default

(cherry picked from commit e93bd23353)
2020-10-22 12:47:29 +02:00
Carl Bergquist
c510f30eb3 Add monitoring mixing for Grafana (#28285)
Co-authored-by: Tom Wilkie <tom.wilkie@gmail.com>
(cherry picked from commit 6002df580f)
2020-10-22 12:47:29 +02:00
Grot (@grafanabot)
f0dafad5cb SAML: IdP-initiated SSO docs (#28280) (#28462)
* SAML: IdP-initiated SSO docs

* Update docs/sources/enterprise/saml.md

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

* Apply suggestions from code review

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

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
(cherry picked from commit 2087ff6003)

Co-authored-by: Alexander Zobnin <alexanderzobnin@gmail.com>
2020-10-22 12:12:00 +02:00
Grot (@grafanabot)
6b056c527f AzureMonitor: Fix capitalization of NetApp 'volumes' namespace (#28369) (#28459)
'Microsoft.NetApp/netAppAccounts/capacityPools/Volumes'  -> 'Microsoft.NetApp/netAppAccounts/capacityPools/volumes'

(cherry picked from commit d2a792ea3b)

Co-authored-by: Sean Luce <lucesean@gmail.com>
2020-10-22 12:11:44 +02:00
Grot (@grafanabot)
c9513c5e81 Loki: Visually distinguish error logs for LogQL2 (#28359) (#28460)
* Loki: Add errored logs and update UI

* Update messaging

* Add icon and tooltip for errored logs

* Update name of variable for more semantic meaning

* Add tests

* Update test

* Refactor, remove unnecessary state

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

* Update packages/grafana-ui/src/components/Logs/LogDetails.tsx

Co-authored-by: Giordano Ricci <gio.ricci@grafana.com>

Co-authored-by: Giordano Ricci <gio.ricci@grafana.com>
(cherry picked from commit 3f39b4b601)

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2020-10-22 12:11:02 +02:00
Grot (@grafanabot)
9153d2146b Explore: Support wide data frames (#28393) (#28454)
* Change how isTimeSeries work

* Simplify the decorators and update tests

(cherry picked from commit 8f4be08b00)

Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com>
2020-10-22 11:52:16 +02:00
Grot (@grafanabot)
f3fa16706c Live: support real time measurements (alpha) (#28022) (#28451)
* improve reduce transformer

* add measurment classes

* sync with new grafana measure format

* use address for live

* use plural in URL

* set the field name

* fix build

* find changes

* POST http to channel

* Yarn: Update lock file (#28014)

* Loki: Run instant query only in Explore (#27974)

* Run instant query only in Explore

* Replace forEach with for loop

* don't cast

* Docs: Fixed row display in table (#28031)

* Plugins: Let descendant plugins inherit their root's signature (#27970)

* plugins: Let descendant plugins inherit their root's signature

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Registry: Fix service shutdown mode trigger location (#28025)

* Add Alex Khomenko as member (#28032)

* show history

* fix confirm

* fix confirm

* add tests

* fix lint

* add more errors

* set values

* remove unrelated changes

* unrelated changes

* Update pkg/models/live.go

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Update pkg/models/live.go

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Update pkg/services/live/live.go

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Update pkg/services/live/pluginHandler.go

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Update pkg/services/live/pluginHandler.go

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Update pkg/services/live/pluginHandler.go

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* use measurments for testdata endpoints

* add live to testdata

* add live to testdata

* Update pkg/services/live/channel.go

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Apply suggestions from code review

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* update comment formats

* uprevert testdata

* Apply suggestions from code review

Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>

* Apply suggestions from code review

* CloudWatch: Add EC2CapacityReservations Namespace (#28309)

* API: Fix short URLs (#28300)

* API: Fix short URLs

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Chore: Add cloud-middleware as code owners (#28310)

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* SQLStore: Run tests as integration tests (#28265)

* sqlstore: Run tests as integration tests

* Truncate database instead of re-creating it on each test

* Fix test description

See https://github.com/grafana/grafana/pull/12129

* Fix lint issues

* Fix postgres dialect after review suggestion

* Rename and document functions after review suggestion

* Add periods

* Fix auto-increment value for mysql dialect

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

* Drone: Fix grafana-mixin linting (#28308)

* Drone: Fix Starlark script

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* grafana-mixin: Move build logic to scripts

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Drone: Use mixin scripts

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* CI build image: Install jsonnetfmt and mixtool

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Makefile: Print commands

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* should only ignore the file in the grafana mixin root folder (#28306)

Signed-off-by: bergquist <carl.bergquist@gmail.com>

* fix: for graph size not taking up full height or width

* Graph NG: fix toggling queries and extract Graph component from graph3 panel (#28290)

* Fix issue when data and config is not in sync

* Extract GraphNG component from graph panel and add some tests coverage

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

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

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

* Fix grid color and annotations refresh

* Drone: Use ${DRONE_TAG} in release pipelines, since it should work (#28299)

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Explore: respect min_refresh_interval (#27988)

* Explore: respect min_refresh_interval

Fixes #27494

* fixup! Explore: respect min_refresh_interval

* fixup! Explore: respect min_refresh_interval

* UI: export defaultIntervals from refresh picker

* fixup! Explore: respect min_refresh_interval

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

* Loki: Base maxDataPoints limits on query type (#28298)

* Base maxLines and maxDataPoints based on query type

* Allow overriding the limit to higher value

* Bump tree-kill from 1.2.1 to 1.2.2 (#27405)

Bumps [tree-kill](https://github.com/pkrumins/node-tree-kill) from 1.2.1 to 1.2.2.
- [Release notes](https://github.com/pkrumins/node-tree-kill/releases)
- [Commits](https://github.com/pkrumins/node-tree-kill/compare/v1.2.1...v1.2.2)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump handlebars from 4.4.3 to 4.7.6 (#27416)

Bumps [handlebars](https://github.com/wycats/handlebars.js) from 4.4.3 to 4.7.6.
- [Release notes](https://github.com/wycats/handlebars.js/releases)
- [Changelog](https://github.com/handlebars-lang/handlebars.js/blob/master/release-notes.md)
- [Commits](https://github.com/wycats/handlebars.js/compare/v4.4.3...v4.7.6)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps): Bump http-proxy from 1.18.0 to 1.18.1 (#27507)

Bumps [http-proxy](https://github.com/http-party/node-http-proxy) from 1.18.0 to 1.18.1.
- [Release notes](https://github.com/http-party/node-http-proxy/releases)
- [Changelog](https://github.com/http-party/node-http-proxy/blob/master/CHANGELOG.md)
- [Commits](https://github.com/http-party/node-http-proxy/compare/1.18.0...1.18.1)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Automation: Add backport github action (#28318)

* BackendSrv: Fixes queue countdown when unsubscribe is before response (#28323)

* GraphNG: Use AxisSide enum (#28320)

* IssueTriage: Needs more info automation and messages (#28137)

* IssueTriage: Needs more info automation and messages

* Updated

* Updated

* Updated wording

* SAML: IdP-initiated SSO docs (#28280)

* SAML: IdP-initiated SSO docs

* Update docs/sources/enterprise/saml.md

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

* Apply suggestions from code review

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

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

* Loki: Run instant query only when doing metric query (#28325)

* Run instant query only when doing metric query

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

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

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

* Automation: Tweaks to more info message (#28332)

* AlertingNG: remove warn/crit from eval prototype (#28334)

and misc cleanup

* area/grafana/toolkit: update e2e docker image (#28335)

* add xvfb to image

* comment out toolkit inclusion

* add latest tag

* update packages for cypress

* cleanup script

* Update auth-proxy.md (#28339)

Fix a minor grammar mistake: 'handling' to 'handle'.

* Git: Create .gitattributes for windows line endings (#28340)

With this set, Windows users will have text files converted from Windows style line endings (\r\n) to Unix style line endings (\n) when they’re added to the repository.
https://www.edwardthomson.com/blog/git_for_windows_line_endings.html

* Docs: Add docs for valuepicker (#28327)

* Templating: Replace all '$tag' in tag values query (#28343)

* Docs: Add missing records from grafana-ui 7.2.1 CHANGELOG (#28302)

* Dashboard links: Places drop down list so it's always visible (#28330)

* calculating whether to place the list on the right or left edge of the parent

* change naming and add import of createRef

* Automation: Update backport github action trigger (#28352)

It seems like GitHub has solved the problem of running github actions on PRs from forks with access to secrets.

https://github.blog/2020-08-03-github-actions-improvements-for-fork-and-pull-request-workflows/#improvements-for-public-repository-forks

If I change the event that triggers it to pull_request_target the action is run in the context of the base instead of the merged PR branch

* ColorSchemes: Adds more color schemes and text colors that depend on the background (#28305)

* Adding more color modes and text colors that depend on the background color

* Updates

* Updated

* Another big value fix

* Fixing unit tests

* Updated

* Updated test

* Update

* Updated

* Updated

* Updated

* Updated

* Added new demo dashboard

* Updated

* updated

* Updated

* Updateed

* added beta notice

* Fixed e2e test

* Fix typos

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* revert pseduo code

* apply feedback

* remove HTTP for now

* fix backend test

* change to datasource

* clear input for streams

* fix docs?

* consistent measure vs measurements

* better jsdocs

* fix a few jsdoc errors

* fix comment style

* Remove commented out code

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Clean up code

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Clean up code

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Clean up code

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Clean up code

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Clean up code

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Clean up code

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Clean up code

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Update pkg/models/live.go

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Fix build

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* set the stringField

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
Co-authored-by: ozhuang <ozhuang.95@gmail.com>
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
Co-authored-by: Amos Law <ahlaw.dev@gmail.com>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
Co-authored-by: The Rock Guy <fabian.bracco@gvcgroup.com.au>
Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>
Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
Co-authored-by: Carl Bergquist <carl@grafana.com>
Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
Co-authored-by: Elliot Pryde <elliot.pryde@elliotpryde.com>
Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Alexander Zobnin <alexanderzobnin@gmail.com>
Co-authored-by: Kyle Brandt <kyle@grafana.com>
Co-authored-by: Brian Gann <briangann@users.noreply.github.com>
Co-authored-by: J-F-Far <joel.f.farthing@gmail.com>
Co-authored-by: acoder77 <73009264+acoder77@users.noreply.github.com>
Co-authored-by: Peter Holmberg <peterholmberg@users.noreply.github.com>
Co-authored-by: Krzysztof Dąbrowski <krzysdabro@live.com>
Co-authored-by: maknik <mooniczkam@gmail.com>
(cherry picked from commit 2aafa39879)

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2020-10-22 09:27:49 +02:00
Grot (@grafanabot)
9d7eaedb2b TestData: multiple arrow requests should return multiple frames (#28417) (#28441)
(cherry picked from commit f32d47a535)

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2020-10-21 18:16:06 +02:00
Grot (@grafanabot)
2221c2bbad Plugins: do not remount app plugin on nav change (#28105) (#28426)
* do not remount app plugin on nav change

* test for not mounting app plugin twice

(cherry picked from commit 97526fc492)

Co-authored-by: Domas <domas.lapinskas@grafana.com>
2020-10-21 16:22:47 +02:00
Grot (@grafanabot)
363d0a9588 plugins: Don't exit on duplicate plugin (#28390) (#28430)
* plugins: Don't exit on duplicate plugin

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Add missing files

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Fix test

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
(cherry picked from commit 4084b53f91)

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-10-21 13:04:25 +02:00
Grot (@grafanabot)
d18ac27126 App Plugins: Add backend support (#28272) (#28423)
* Add backend support for app plugins

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
(cherry picked from commit 68efedfa88)

Co-authored-by: Joan López de la Franca Beltran <joanjan14@gmail.com>
2020-10-21 10:52:08 +02:00
Grot (@grafanabot)
37327d74f5 FieldColor: Remove inverted color scheme (#28408) (#28418)
(cherry picked from commit 84992adf2a)

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
2020-10-21 09:02:49 +02:00
Torkel Ödegaard
5757bd80d3 ColorSchemes: Adds more color schemes and text colors that depend on the background (#28305) (#28414)
* Adding more color modes and text colors that depend on the background color

* Updates

* Updated

* Another big value fix

* Fixing unit tests

* Updated

* Updated test

* Update

* Updated

* Updated

* Updated

* Updated

* Added new demo dashboard

* Updated

* updated

* Updated

* Updateed

* added beta notice

* Fixed e2e test

(cherry picked from commit 566cd2c6af)
2020-10-21 07:23:13 +02:00
Grot (@grafanabot)
f071817b95 CloudWatch: Fix custom metrics (#28391) (#28401)
* CloudWatch: Fix querying for custom metrics

Co-authored by Mitch McKenzie <mitch.mckenzie@outlook.com>

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
(cherry picked from commit af17f9fd9b)

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-10-20 15:31:17 +02:00
Grot (@grafanabot)
2110d4e9b4 Instrumentation: Adds environment_info metric (#28355) (#28388)
Signed-off-by: bergquist <carl.bergquist@gmail.com>

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
(cherry picked from commit 89ebb97fca)

Co-authored-by: Carl Bergquist <carl@grafana.com>
2020-10-20 09:59:52 +02:00
Grot (@grafanabot)
5ac4ae37a2 BackendSrv: Fixes queue countdown when unsubscribe is before response (#28323) (#28328)
(cherry picked from commit 9305117902)

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
2020-10-16 16:45:38 +02:00
Arve Knudsen
c11c8b0b4a Drone: Fixes
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-10-15 13:56:46 +02:00
Arve Knudsen
0df7b25a49 Drone: Fixes
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-10-15 13:47:14 +02:00
Arve Knudsen
68a3631ed0 Release 7.3.0-beta1
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-10-15 13:14:47 +02:00
Arve Knudsen
2e9a0d4755 Chore: Update what's new and release notes URL in package.json
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-10-15 13:09:34 +02:00
Arve Knudsen
7ee8f91e17 Drone: Use DRONE_COMMIT_REF to get release tag (#28283)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-10-15 12:55:25 +02:00
Will Browne
a49c72ae09 Docs: Add What's New 7.3 (#28268)
* add base

* Update docs/sources/whatsnew/whats-new-in-v7-3.md

* Update What's new in 7.3 with CM OOTB dashboards

* Docs: enterprise whats new placeholders

* Add short url info

* Update shorten url after pull

* Update docs/sources/whatsnew/whats-new-in-v7-3.md

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: Sofia Papagiannaki <sofia@grafana.com>
Co-authored-by: Leonard Gram <leo@xlson.com>
Co-authored-by: Ivana <ivana.huckova@gmail.com>
2020-10-15 11:01:45 +02:00
Levente Balogh
d58dc96f3d feat(grafana/ui): export FieldArray (#28251) 2020-10-15 10:54:16 +03:00
Hugo Häggmark
280bf9387c BackendSrv: Reloads page instead of redirect on Unauthorized Error (#28276) 2020-10-15 08:19:51 +02:00
Chris Morrow
7ad468ba82 Prometheus: Data source settings page help wording. (#28274)
* Add a space between: "handled." and "Server".

This text is .. a little ambiguous, is it:
  "handled.Server()..."

or:
  "handled. Server should...."

Punctuation it matters.
  https://i.pinimg.com/originals/ad/db/a1/addba11374256fd0b1d679a595f57d9b.jpg

* Fix the sentence to be readable.
2020-10-15 08:06:53 +02:00
Andrej Ocenas
c8658f3ee8 Explore: Add link to logs from trace span (#28229)
* Add trace to logs link

* Do a bit of refactor and allow for custom time range in split

* Add margin and noopener to the link

* Fix tests

* Fix tests
2020-10-15 00:03:14 +02:00
ashishagarwal06
26e2faa779 Added Hyperlink to annotations (#28261)
Hi -  Added Hyperlink to annotations for quick redirection.

Thanks,
Ashish
2020-10-14 17:35:22 -04:00
Arve Knudsen
86adc2241e Drone: Fix enterprise config (#28270)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-10-14 20:19:55 +02:00
Ryan McKinley
fe423644ae Transformations: add Concatenate fields transformer (#28237) 2020-10-14 10:34:04 -07:00
Giordano Ricci
cb72242d95 Chore: use new Input component in Share Modal (#28269)
* Chore: Add dashboard-alt icon

* Chore: use new Input component in Share Modal

* Update packages/grafana-ui/src/types/icon.ts

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

* Update public/app/features/dashboard/components/ShareModal/ShareLink.tsx

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

* Update packages/grafana-ui/src/types/icon.ts

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

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2020-10-14 18:11:19 +01:00
Agnès Toulet
c3336e6ecf Chore: clean up Enterprise feature toggles (#28264) 2020-10-14 19:08:52 +02:00
Ryan McKinley
f8e0adb168 Transformations: improve the reduce transformer (#27875) 2020-10-14 08:27:58 -07:00
Ivana Huckova
db071e4939 Explore: Allow shortlink generation (#28222)
* Add short link functionality to Explore and Rich history

* Update documentation

* Implement short url for explore

* Implement short link in Rich history

* Update docs

* Add error alert
2020-10-14 17:08:27 +02:00
Hugo Häggmark
fe15d90e98 Variables: Fixes so constants set from url get completed state (#28257)
* Variables: Fixes so constant set from url get completed state

* Tests: fixes broken test
2020-10-14 17:07:42 +02:00
Marcus Andersson
f334cc4576 Docs: generate packages docs before syncing to website (#27879)
* updated to latest version of api-documenter.

* saved lockfile after upgrade.

* adding yarn to docker environment.

* adding packages to trigger paths.

* added steps to workflow for generating docs.

* reverted back to api-documenter 0.9.3
2020-10-14 17:03:35 +02:00
Torkel Ödegaard
a20875bd6c Dashboard: Fixed issue accessing horizontal table scrollbar when placed at bottom of dashboard (#28250) 2020-10-14 16:47:31 +02:00
Torkel Ödegaard
3fed829b8b Gauge: Improve text sizing and support non threshold color modes (#28256)
* Gauge: Improve text sizing and support non threshold color modes

* Updated tests
2020-10-14 16:17:41 +02:00
Marcus Andersson
31001a016c Docs: remove checked-in generated package api docs. (#27880) 2020-10-14 15:58:20 +02:00
Jack Westbrook
df28cc69b4 fix: prevent graph-panel legend overflowing container (#28254) 2020-10-14 15:39:39 +02:00
ashishagarwal06
64f46d6a28 Added hyperlink to Data Source Proxy (#28246)
Hi - Added hyperlink to Data Source Proxy. Pls review and approve.

Thanks,
Ashish
2020-10-14 09:20:47 -04:00
Sofia Papagiannaki
aae4ca7544 Cloud monitoring: out-of-the-box dashboards (#27864)
* Cloud monitoring: out-of-the-box dashboards

* Remove redundant information related to dev account

* Update docs/sources/features/datasources/cloudmonitoring.md

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

* Rename JSON files

* Fix docs

* Fixe docs

* Parameterise dashboards by CM datasource

* Fix metric kind in CloudSQL dashboard

* Set alias to instance name for GCE dashboard panels

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-10-14 16:05:17 +03:00
Marcus Andersson
b5196f531c Build: added steps to generate packages api documentation. (#27930)
* added steps to generate docs.

* re-generated the drone.yml file.

* removed metrics reporting from pr pipeline.

* fixed spelling issues.

* fixed so package generation should work.

* some small refactorings.

* fixed spelling error.

* adding echo to verify that we execute the correct script.

* removed echo statement.

* changed scripts a bit.

* added ci flag to script.

* adding exit 1

* increased the limit.

* added missing space.

* fixed shellcheck error.

* fixing lint errors.

* renamed build step.

* changed logic.

* increased limit.

* changed to echo instead of echo -e

* fixed shellcheck errors.

* trying to debug script,

* trying to simplify the find statement.

* fixed issue with text formatting on linux.

* imported build step.

* Update scripts/ci-reference-docs-lint.sh

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* removed cleanup of packages.

* increased limit.

* will build frontend docs on master but not lint it.

* will always run the linting step.

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-10-14 14:35:55 +02:00
Torkel Ödegaard
f22b768ce4 Dashboard: Do not allow users without edit permission to a folder to see new dashboard page (#28249) 2020-10-14 14:07:42 +02:00
Leonard Gram
fa45731b7f Docker: OpenShift compatability (#27813)
* openshift wip

* Docker: switches from grafana group to root group

* Docker: make group fully configurable

* Docker: create custom grafana group if needed

* Docker: removes duplicated group permission

* Docker: more unneccesary changes
2020-10-14 13:38:04 +02:00
Marcus Andersson
a779622982 Variables: prevent adhoc filters from crashing when they are not loaded properly (#28226)
* fixing so we will present a better error message when loading ad hoc filter variables.

* added tests to verify url parsing.

* added a test to make sure it works the oppisite way.
2020-10-14 12:55:28 +02:00
Pete Davids
65940c7726 Dashboard: Allow shortlink generation (#27409)
* intial frontend resolution/redirection logic

* backend scaffolding

* enough of the frontend to actually test end to end

* bugfixes

* add tests

* cleanup

* explore too hard for now

* fix build

* Docs: add docs

* FE test

* redirect directly from backend

* validate incoming uids

* add last_seen_at

* format documentation

* more documentation feedback

* very shaky migration of get route to middleware

* persist unix timestamps

* add id, orgId to table

* fixes for orgId scoping

* whoops forgot the middleware

* only redirect to absolute URLs under the AppUrl domain

* move lookup route to /goto/:uid, stop manually setting 404 response code

* renaming things according to PR feedback

* tricky deletion

* sneaky readd

* fix test

* more BE renaming

* FE updates -- no more @ts-ignore hacking :) and accounting for subpath

* Simplify code

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Short URLs: Drop usage of bus

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* ShortURLService: Make injectable

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Rename file

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Add handling of url parsing and creating of full shortURL to backend

* Update test, remove unused imports

* Update pkg/api/short_urls.go

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Add correct import

* Pass context to short url service

* Remove not needed error log

* Rename dto and field to denote URL rather than path

* Update api docs based on feedback/suggestion

* Rename files to singular

* Revert to send relative path to backend

* Fixes after review

* Return dto when creating short URL that includes the full url

Use full url to provide shorten URL to the user

* Fix after review

* Fix relative url path when creating new short url

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
Co-authored-by: Ivana <ivana.huckova@gmail.com>
Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2020-10-14 12:48:48 +02:00
Alex Khomenko
3225b119d4 Migration: TestData Query Editor (#27997)
* Use new editor

* Add basic fields

* Add labels

* Add ids

* Add ManualEntryEditor

* Use tooltip prop

* Switch to inline labels

* Fix inline label tooltip position

* Allow resetting max-width

* Replace form inputs

* Add random walk editor

* separate editors

* Add logs and endpoints fields

* Add PredictablePulseEditor

* Add CSVWaveEditor

* Add grow prop

* Add default query

* Fix types

* Fix manual editor

* Fix type issues

* Handle scenario change

* Sort scenarios by label

* Add ManualEditor test

* Fix label height

* test manual editor

* Update test

* Setup QueryEditor tests

* Fix selected value

* Connect CSVWaveEditor

* Convert stream data to numbers

* Fix random walk editor

* Cleanup

* Convert scenarios to ts

* Remove extra icon styles

* Minor tweaks

* Update e2e tests

* Remove useEffect

* Add missing aria-labels

* Use new button components
2020-10-14 13:08:35 +03:00
Arve Knudsen
b10e39a7e1 Chore: Add Dockerfile for Windows CI build environment (#28241)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-10-14 11:22:12 +02:00
ashishagarwal06
a870101471 Docs: Change grafana to Grafana (#28242)
Hi - Made minor change grafana to Grafana.

Thanks,
Ashish
2020-10-14 10:46:22 +02:00
Ivana Huckova
e269445d79 Loki: LogQL v2 support (#27884)
* Add new logql v2 functions

* Fix autocompletion if missing ending }

* Refactor operators regex, add pipe operator and tests

* Add parsers

* Update tests

* Add parsers to suggestions, add test

* Add operators to syntax

* Create pipe operator autocomplete + highlighting + add tests

* Add to documentation that pipe operations are available in in Loki 2.0+

* Update snapshot test

* Update operators list, add regex quotes and move cursor

* Fix spelling

* Update documentation

* Update
2020-10-14 10:22:39 +02:00
Torkel Ödegaard
451836a86a NamedColors: Named colors refactors (#28235)
* NamedColors: Refactoring, performance improvements, and simplifications

* More simplifification

* Updated to use new function

* Updates

* Updates

* Updated BarGauge to use fallback color intead of magic string

* Updates

* Fixed unused import
2020-10-14 10:21:45 +02:00
ashishagarwal06
66def25c6d Docs: Change grafana to Grafana (#28243)
Hi - There is minor change grafana to Grafana in scripted-dashboards page.

Thanks,
Ashish
2020-10-14 07:53:06 +02:00
ashishagarwal06
f39b3a19c8 change grafana to Grafana (#28244)
Hi - Made minor change grafana to Grafana in More examples section.

Thanks,
Ashish
2020-10-14 07:52:35 +02:00
Hugo Häggmark
39d06f2625 Azure: Fixes merging of requests with different Azure sources (#28221)
* Azure: Fixes merging of requests with different Azure sources

* Refactor: Changes return type
2020-10-14 06:48:39 +02:00
ashishagarwal06
4cbc1565de Added Dot at the end of line (#28233)
Hi - Added Dot at the end of line to make it consistent.

Thanks,
Ashish
2020-10-13 14:22:46 -04:00
Leonard Gram
f87da29aa4 Build: handles verify-repos failures correctly (#28227)
* Build: handles verify-repos failures correctly

* shellcheck
2020-10-13 19:27:03 +02:00
ashishagarwal06
583dbb3155 Added Dot(.) at the end of line. (#28198)
Hi - Added Dot(.) to end the paragraph.

Thanks
2020-10-13 13:15:10 -04:00
Andrej Ocenas
b7fee71049 Tracing: Add Tempo data source (#28204)
* Add tempo datasource, mostly copy of jaeger datasource code

* Add label to input field

* Add logo

* Remove access option from configuration

* Add white space to field label

* Add documentation

* Fix link in docs

* Update public/app/plugins/datasource/tempo/ConfigEditor.tsx

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

* Update public/app/plugins/datasource/tempo/QueryField.tsx

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

* Add data source to the docs menu

* Add simple implementation for testDatasource

* Wording updates to the docs.

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2020-10-13 19:12:49 +02:00
ashishagarwal06
25393e20aa Added hyperlink to Prometheus (#28196)
Hi - I have added hyperlink to Prometheus. Pls review and merge.

Thanks,
Ashish
2020-10-13 13:03:20 -04:00
Steven Vachon
830e8b64c3 @grafana/eslint-config bump (#28230)
* Use latest @grafana/eslint-config

* Version bump
2020-10-13 12:45:22 -04:00
Torkel Ödegaard
558ce5fd7f Theme: Deprecate selectThemeVariant util function (#28223) 2020-10-13 18:02:07 +02:00
ashishagarwal06
597aeff493 Added Hyperlink to Alert Notification (#28197)
Hi, I have added hyperlink to alert notification for quick redirection.

Thanks,
Ashish
2020-10-13 11:33:32 -04:00
Steven Vachon
0c7fb0cf90 Use latest @grafana/eslint-config (#28225)
* Use latest @grafana/eslint-config

* Updated lockfile
2020-10-13 11:23:39 -04:00
Sofia Papagiannaki
b633916436 Docs: Fix typo in cloud monitoring docs (#28213) 2020-10-13 18:16:19 +03:00
Nitesh Koushik S
0c57ca44e2 Removal of repeated words (#28194)
Removal of repeated words
2020-10-13 11:15:38 -04:00
ashishagarwal06
8c81592f12 Added link to Plugins (#28149)
* Added link to Plugins

HI - Added link to Plugins for quick redirection

Thanks,
Ashish

* Update configuration.md
2020-10-13 11:08:29 -04:00
ashishagarwal06
278f821282 Added Dot(.) at the end of line (#28150)
Hi - Added Dot(.) at the end of line.

Thanks,
Ashish
2020-10-13 10:53:16 -04:00
ashishagarwal06
b23e7e660a Added DOT(.) at end of line (#28161)
Hi - I have observed Dot(.) is missing in many places of paragraphs in document. So raising this PR.

Added Dot(.) to below line
This page shows how to use regex to filter/modify values in the variable dropdown.

Thanks,
Ashish
2020-10-13 10:51:15 -04:00
Sofia Papagiannaki
8760627eb0 Cloudwatch: Fix regression with profile datasource field (#28138)
* Fallback to the old field only if new field is undefined
2020-10-13 15:22:00 +03:00
Karine Valença
e1e05cad7d Database: Adds new indices to alert_notification_state and alert_rule_tag tables (#28166)
Add non-unique indices to alert_notification_state and alert_rule_tag tables for 
column alert_id.

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

Fixes #22890
2020-10-13 13:51:54 +02:00
Torkel Ödegaard
0a58ecbacd Automation: New label command to close issue that has no new info & activity (#28201)
* Automation: New label command

Adds a label command "no new info" 

That closes issue with standard message. 

We could also add an automated scheduled task that does this automatically: 
https://github.com/microsoft/vscode/blob/master/.github/workflows/needs-more-info-closer.yml

* Update .github/commands.json

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Update .github/commands.json

Co-authored-by: Marcus Olsson <marcus.olsson@hey.com>

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
Co-authored-by: Marcus Olsson <marcus.olsson@hey.com>
2020-10-13 12:48:43 +02:00
Will Browne
a189cd1832 Users: Expire old user invites (#27361)
* expire with existng cleanup service

* expire with new temp user service

* make Drone happy :)

* add expiry status

* remove other approach

* cleanup

* add test for idempotency

* add migration from datetime to unix ts

* update cmd names

* change lifetime config to duration

* remove unnecessart formatting

* add comment

* update docs

* remove max bound and introduce min error

* simplify sql

* remove comment

* allow any outstanding to exist for at least 24 hours

* revert created ts change

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

* add extra state check to cleanup step

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2020-10-13 12:30:09 +02:00
Nitesh Koushik S
8e56dd0279 JSON syntax update (#28193)
JSON syntax update
2020-10-13 11:10:48 +02:00
Will Browne
ef22ff7315 Snapshots: Store dashboard data encrypted in the database (#28129)
* end 2 end

* fix import

* refactor

* introduce securedata

* check err

* use testify instead of convey

* cleanup test

* cleanup test

* blob time

* rename funcs
2020-10-13 10:19:42 +02:00
Peter Holmberg
87d6f90acb Fix: Dynamically add ShowWhen fields to the form watch (#28135) 2020-10-13 09:11:15 +02:00
Sofia Papagiannaki
4ab90f9397 Fix linting: remove commented code (#28208) 2020-10-13 08:35:41 +02:00
Sofia Papagiannaki
4acbcd7053 AlertingNG: POC of evaluator under feature flag. (#27922)
* New feature toggle for enabling alerting NG

* Initial commit

* Modify evaluate alert API request

* Check for unique labels in alert execution result dataframes

* Remove print statement

* Additional minor fixes/comments

* Fix lint issues

* Add API endpoint for evaluating panel queries

* Push missing renaming

* add refId for condition to API

* add refId for condition to API

* switch dashboard based eval to get method

* add from/to params to dashboard based eval

* add from/to params to  eval endpoint

Co-authored-by: kyle <kyle@grafana.com>
2020-10-12 21:51:39 +03:00
Sofia Papagiannaki
3928d0c531 Alerting: remove obsolete notifiers (after user confirmation) (#28190)
* Alerting: remove obsolete notifiers (after user confirmation)

* Additional text in confirmation modal
2020-10-12 21:14:08 +03:00
Arve Knudsen
957c88eaca CloudWatch: Re-implement authentication (#25548)
* CloudWatch: Revisit authentication

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* CloudWatch: Simplify auth code

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Use ARN

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Add Drone configuration

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Remove unused code

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Remove .drone.yml

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Fix external ID usage

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* CloudWatch: Fix issues after merge

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Remove stale code

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Remove stale code

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Use auth type enum

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Fix test snapshot

* Coordinate frontend and backend option names

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Remove old comments

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Fix front-end tests

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Introduce session cache

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Use constants

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Fix field alignment

* CloudWatch: Fix log message

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Tidy go.mod

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* CloudWatch: Handle arn auth type

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* CloudWatch: Fix role assumption duration

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Fix test

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* CloudWatch: Inline unnecessary constants

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* CloudWatch: Use serial comma in UI

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* CloudWatch: Inline unnecessary constants

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* CloudWatch: Fail if missing region

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* CloudWatch: Handle unconfigured region

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* CloudWatch: Log when using cached session

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* CloudWatch: Include region in cache key

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Add UI warnings for lecagy support

* Do not clear ARN fields whenging change authentication provider

* Graph NG: annotations display (#27972)

* Annotations support POC

* Fix markers memoization

* dev dashboard update

* Update public/app/plugins/panel/graph3/plugins/AnnotationsPlugin.tsx

* CloudWatch: Remove errors.BadRequest

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* CloudWatch: Undo unintentional change

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Remove log line

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Fix cache key computation

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Add region to cache key

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Improve log messages

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* CloudWatch: Add documentation

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Improve tooltip

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Improve docs

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Improve docs

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Improve docs

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Improve tooltip

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Add role assumption provisioning example

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Add upgrade notes

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Improve docs

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Apply suggestions from code review

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

* backend: use latest sdk (#28147)

fixes #27713 via https://github.com/grafana/grafana-plugin-sdk-go/pull/227

* Docs: Update Permissions documentation (#28144)

* removed overview.md

* content updates

* Update datasource_permissions.md

* update content

* content updates

* Update organization_roles.md

* Update docs/sources/enterprise/saml.md

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

* Update dashboard_folder_permissions.md

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

* area/grafana/toolkit: ci-package needs to use synchronous writes (#28148)

* ci needs to use synchronous writes or the file ends up with zero length

* <Enterprise Docs> Add instructions to upload license via UI (#28067)

* Add UI license upload option, reformat Enterprise license activation section

Added the option to upload a license file through the Server Admin UI, and did a little reformatting to make license activation look more like a process.

* Headers not bold, hyphens not asterisks

* Github: run metrics collector workflow every 10min (#28153)

* GithubActions: Updated cron schedule

* Updated

* Docs: Update explore docs: remove dot at the end of line (#28151)

HI - Removed Dot(.) at the end of line to make it consistent with other 2 points.

Thanks,
Ashish

* Fix frontend tests

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Fix frontend tests

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Docs: Update upgrade notes

Co-authored-by: Sofia Papagiannaki <sofia@grafana.com>
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: Kyle Brandt <kyle@grafana.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
Co-authored-by: Brian Gann <briangann@users.noreply.github.com>
Co-authored-by: Mitch Seaman <mjseaman@users.noreply.github.com>
Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
Co-authored-by: ashishagarwal06 <34888589+ashishagarwal06@users.noreply.github.com>
2020-10-12 17:58:58 +02:00
Marcus Efraimsson
519ec93c7d Datasource: Prefix SigV4 json data keys with sigV4 (#28195)
Prefixes SigV4 json data and secure json data keys with sigV4 to make 
sure they don't collide with any other settings. Also minor fixes to UI.

Ref #27552
2020-10-12 17:52:17 +02:00
Hugo Häggmark
7b5decdbb0 Azure: Fixes cancellation of requests with different Azure sources (#28180)
* Azure: Fixes cancellation of requests whit different Azure query types

* Azure: Fixes cancellation of requests whit different Azure query types
2020-10-12 14:59:21 +02:00
Sofia Papagiannaki
83a6a5144d Cloud monitoring: Add REDUCE_MEAN reducer for cumulative metrics (#28192)
* Cloud monitoring: Add REDUCE_MEAN reducer for cumulative metrics

* Fix tests
2020-10-12 15:28:18 +03:00
Torkel Ödegaard
21ed77d7a5 TemplateSrv: Fix interpolating strings with object variables (#28171) 2020-10-12 14:22:26 +02:00
Kyle Hinton
92c2a6c239 Fix: Add additional settings for dataproxy to help with network proxy timeouts (#27841)
* adding additional settings for datasource cache transport

* added documentation for the new changes

* fixing small typo in defaults.ini comment

* fixing small typo in configuration.md comment

* Update conf/defaults.ini keepalive comment per review

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

* Update conf/defaults.ini idle conn comment per review

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

* Update conf/defaults.ini anon user comment per review

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

* Update docs/sources/administration/configuration.md idle conn comment per review

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

* adding suggestions from papagian

* fixing configuration.md

* fixing configuration.md typo

* Apply suggestions from code review aknuds1

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* updating sample.ini

* Apply suggestions for docs from code review papagian

Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>

* Update docs/sources/administration/configuration.md fix typo

Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>
2020-10-12 11:36:47 +03:00
Nitesh Koushik S
effb62d709 Grammar correction (#28185)
Grammar correction
2020-10-12 10:34:10 +02:00
Torkel Ödegaard
4fc6b2cb5e Docs: Update issue triage doc with new automation behaviors (#28181)
* Docs: Update issue triage doc with new automation behaviors

* Update ISSUE_TRIAGE.md

* Update ISSUE_TRIAGE.md
2020-10-12 10:09:52 +02:00
Peter Holmberg
ac88da14d3 Docs: Add Storybook docs for BigValue (#27814)
* first things

* finishing docs

* display mode docs
2020-10-12 08:15:09 +02:00
Nitesh Koushik S
0cb3c7e340 Grammar correction (#28179)
Grammar correction
2020-10-12 07:42:29 +02:00
Arve Knudsen
4d9374a051 grafana-toolkit: Remove stale reference to grafana-build-container (#28178)
* grafana-toolkit: Remove stale reference to grafana-build-container

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Update packages/grafana-toolkit/src/cli/tasks/nodeVersionChecker.ts

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

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
2020-10-12 07:31:19 +02:00
Nitesh Koushik S
bcfddb83ea Grammar correction (#28177)
Grammar correction
2020-10-12 07:25:47 +02:00
Arve Knudsen
a5c03b1772 Chore: Upgrade Node to 12.19.0 (#28168)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-10-12 07:10:50 +02:00
ashishagarwal06
f393e66a5a Docs: Update explore docs: remove dot at the end of line (#28151)
HI - Removed Dot(.) at the end of line to make it consistent with other 2 points.

Thanks,
Ashish
2020-10-09 21:10:23 +02:00
Torkel Ödegaard
68e925c9c7 Updated 2020-10-09 20:53:54 +02:00
Torkel Ödegaard
934e2a626f GithubActions: Updated cron schedule 2020-10-09 20:46:15 +02:00
Torkel Ödegaard
5b0495ea6a Github: run metrics collector workflow every 10min (#28153) 2020-10-09 20:43:41 +02:00
Mitch Seaman
7d5712ca68 <Enterprise Docs> Add instructions to upload license via UI (#28067)
* Add UI license upload option, reformat Enterprise license activation section

Added the option to upload a license file through the Server Admin UI, and did a little reformatting to make license activation look more like a process.

* Headers not bold, hyphens not asterisks
2020-10-09 11:45:15 -06:00
Brian Gann
a9ef0f84b8 area/grafana/toolkit: ci-package needs to use synchronous writes (#28148)
* ci needs to use synchronous writes or the file ends up with zero length
2020-10-09 12:16:12 -05:00
Diana Payton
1a0690c837 Docs: Update Permissions documentation (#28144)
* removed overview.md

* content updates

* Update datasource_permissions.md

* update content

* content updates

* Update organization_roles.md

* Update docs/sources/enterprise/saml.md

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

* Update dashboard_folder_permissions.md

Co-authored-by: Kyle Brandt <kyle@grafana.com>
2020-10-09 10:08:29 -07:00
Kyle Brandt
768392f45f backend: use latest sdk (#28147)
fixes #27713 via https://github.com/grafana/grafana-plugin-sdk-go/pull/227
2020-10-09 12:05:11 -04:00
Diana Payton
90303b5a03 Docs: Move files (#27983)
* moved datasources folder

* Update menu.yaml

* updated Azuremonitor

* Update azuremonitor.md

* Update cloudmonitoring.md

* Update cloudwatch.md

* updated content

* Update elasticsearch.md

* Update graphite.md

* Update elasticsearch.md

* Update azuremonitor.md

* Update cloudmonitoring.md

* Update influxdb.md

* Update jaeger.md

* Update loki.md

* Update mssql.md

* Update mysql.md

* Update opentsdb.md

* Update postgres.md

* Update prometheus.md

* Update postgres.md

* Update jaeger.md

* Update mysql.md

* Update mssql.md

* added aliases

* Update testdata.md

* Update zipkin.md

* link fixes

* link fixing

* moved files out of guides

* Delete archive.md

* updated links

* updated aliases

* updated aliases

* link updates

* Update _index.md

* deleted archive.md

* Update azuremonitor.md

* Update azuremonitor.md
2020-10-09 08:16:25 -07:00
Peter Holmberg
873c32bc97 Docs: Pagination component (#28143)
* Add basic docs for pagination component

* Update packages/grafana-ui/src/components/Pagination/Pagination.tsx

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

* Update packages/grafana-ui/src/components/Pagination/Pagination.mdx

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

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2020-10-09 16:45:16 +02:00
Jess
670b8512bf Add docs for IconButton (#28136)
* Update IconButton.story.tsx

* Create IconButton.mdx

* Add missing row

* Add props table

* Expand docs

Co-authored-by: Clarity-89 <homes89@ukr.net>
2020-10-09 16:25:27 +03:00
Torkel Ödegaard
ec215e18bc Automation: Adds github action to collect issue metrics (#28139) 2020-10-09 15:20:04 +02:00
Ivana Huckova
a3ef101618 Explore: Fix showing of Prometheus data in Query inspector (#28128)
* Fix showing of data in explore's query inspector

* Add test

* Add test

* Updat etest

* Implement react-testing-library and remove props export

* Update tests for consistency
2020-10-09 14:49:14 +02:00
Kyle Brandt
e16637793d Alerting: Add labels to name when converting data frame to series (#28085)
* also move conversion func to alerting package since it is not used in other places

Fixes #28068
2020-10-09 08:21:16 -04:00
Kyle Brandt
c9a5d1ad4b AzureMonitor: pass through null values instead of 0 (#28126)
fixes #28001
2020-10-09 08:15:19 -04:00
Amos Law
7e18ca7ed1 Docs: Update Elasticsearch and InfluxDB logs info (#28027) 2020-10-09 12:23:49 +02:00
Dominik Prokop
a3d1d9a9c5 Graph NG: EventsCanvas & WIP exemplars support (#28071)
* Use annotations data observable

* WIP exemplars

* Refactor usePlotContext to use getters instead of properties

* Use DataFrame in EventsCanvas instead of custom type

* Minor tweaks
2020-10-09 11:38:30 +02:00
Tom Daly
dc662025cd Panel Inspect: Allow CSV download for Excel (#27284)
* fix: Use locale to find delimiter for CSV export

* Add sep= Excel header to CSV exporter

* Add modal for Excel export

* Move Excel download to 'Data options' as toggle

* Add 'Download for Excel' documentation
2020-10-09 10:42:57 +02:00
Torkel Ödegaard
d181782943 FieldColor: Adds new standard color option for color (#28039)
* FieldColor: Added field color option

* Progress

* FieldColor: Added custom schemes

* move to fieldColor

* move to fieldColor

* add back the standard color picker

* FieldColor: Added registry for field color modes

* wip refactor

* Seperate scale from color mode

* Progress

* schemes working

* Stuff is working

* Added fallback

* Updated threshold tests

* Added unit tests

* added more tests

* Made it work with new graph panel

* Use scale calculator from graph panel

* Updates

* Updated test

* Renaming things

* Update packages/grafana-data/src/field/displayProcessor.ts

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>

* updated according to feedback, added docs

* Updated docs

* Updated

* Update docs/sources/panels/field-options/standard-field-options.md

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

* Update docs/sources/panels/field-options/standard-field-options.md

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

* Updated docs according to feedback

* fixed test

* Updated

* Updated wording

* Change to fieldState.seriesIndex

* Updated tests

* Updates

* New names

* More work needed to support bar gauge and showing the color modes in the picker

* Now correct gradients work in bar gauge

* before rename

* Unifying the concept

* Updates

* review feedback

* Updated

* Skip minification

* Updated

* UI improvements

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-10-09 09:34:57 +02:00
Hugo Häggmark
c052abed87 Variables: hides dropdown before refreshing starts (#28112) 2020-10-09 06:31:45 +02:00
Michał Sochoń
3b44276504 Docs: Update configure-docker.md (#28127)
Bumpt container image to 7.2.x
2020-10-08 13:56:03 -07:00
Steven Vachon
77242b7264 Use latest @grafana/eslint-config (#28124)
* Use latest @grafana/eslint-config

* Updated lockfile
2020-10-08 13:56:30 -04:00
Ryan McKinley
2e42ae5236 Chore: update jest to 25 (#28096) 2020-10-08 09:58:05 -07:00
Torkel Ödegaard
71d72cc973 Snapshots: Fixed issue loading graphs in snapshots (#28111) 2020-10-08 18:38:20 +02:00
Ryan McKinley
2567e5202a Live: remove admin pages, add alpha panel (#28101) 2020-10-08 08:42:15 -07:00
Ryan McKinley
e69fe93e85 Live: improve dashboard editing notifications (#28094) 2020-10-08 08:18:37 -07:00
Alexander Zobnin
b55a51e270 SAML Single Logout (#27995)
* SAML: single logout WIP

* SAML: sign SAML requests

* SAML: remove unnecessary logs

* fix go mod file

* Docs: Single Logout

* SAML: use api endpoint for single logout

* Apply suggestions from code review

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

* SAML: save context for single logout

* Chore: add SAML dependencies

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2020-10-08 17:42:55 +03:00
Torkel Ödegaard
46a91f2b94 Automation: Add sending metrics to Grafana Cloud (#28119)
Sends metrics from github automation actions to Grafana Cloud
2020-10-08 16:06:24 +02:00
Sofia Papagiannaki
0b0f5bd65c Chore: Update latest.json for 7.2.1 (#28117) 2020-10-08 16:41:26 +03:00
Agnès Toulet
de9f55cb3e Table: don't format React components values (#28116) 2020-10-08 15:25:51 +02:00
Peter Holmberg
36f3edc477 Fix: Ensure Notification types loaded before loading notification channel (#28115) 2020-10-08 15:17:27 +02:00
Sofia Papagiannaki
15cb07de04 Changelog 7.2.1 (#28113)
* Changelog 7.2.1

* Fix Changelog
2020-10-08 15:57:58 +03:00
Arve Knudsen
26ac672854 Drone: Fix test-release pipeline (#28108)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-10-08 13:28:20 +02:00
Chris Cowan
3af193358c Elasticsearch: Support chained pipeline aggregations (#27945)
* Elasticsearch: Support multiple pipeline aggregations for a query

* Ensuring descendents are deleted with their parents.

* Update public/app/plugins/datasource/elasticsearch/metric_agg.ts

Co-authored-by: Giordano Ricci <grdnricci@gmail.com>

* Update public/app/plugins/datasource/elasticsearch/query_def.ts

Co-authored-by: Giordano Ricci <grdnricci@gmail.com>

* Update public/app/plugins/datasource/elasticsearch/specs/query_def.test.ts

Co-authored-by: Giordano Ricci <grdnricci@gmail.com>

* Fixing typo

Co-authored-by: Giordano Ricci <grdnricci@gmail.com>
2020-10-08 11:24:54 +01:00
Will Browne
7d63b2c473 Auth: Add Sigv4 auth option to datasources (#27552)
* create transport chain

* add frontend

* remove log

* inline field updates

* allow ARN, Credentials + Keys auth in frontend

* configure credentials

* add tests and refactor

* update frontend json field names

* fix tests

* fix comment

* add app config flag

* refactor tests

* add return field for tests

* add flag for UI display

* update comment

* move logic

* fix config

* pass config through props

* update docs

* pr feedback and add docs coverage

* shorten settings filename

* fix imports

* revert docs changes

* remove log line

* wrap up next as round tripper

* only propagate required config

* remove unused import

* remove ARN option and replace with default chain

* make ARN role assume as supplemental

* update docs

* refactor flow

* sign body when necessary

* remove unnecessary wrapper

* remove newline

* Apply suggestions from code review

* PR fixes

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-10-08 10:03:20 +02:00
Marcus Andersson
ab33e46789 Bugfix: improved the way of checking if browser supports Intl.DateTimeFormat (#28086) 2020-10-08 09:47:08 +02:00
Arve Knudsen
c064c16e83 Drone: Fix test-release pipeline (#28102)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-10-08 09:21:27 +02:00
Arve Knudsen
4751923442 Drone: Fix release pipelines (#28100)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-10-08 07:39:00 +02:00
Arve Knudsen
c2059e8f0c Drone: Fix release pipelines (#28098)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-10-08 06:51:31 +02:00
Steven Vachon
7a65b1e8bb @grafana/toolkit: fix plugin test errors with react-testing-library (#28092) 2020-10-07 15:29:59 -07:00
Diana Payton
54c503dcc3 Docs: Update stat-panel.md (#28088) 2020-10-07 11:21:28 -07:00
Darryl
21fc3e702b Cloudwatch: Adding support for additional Amazon CloudFront. (#27891) (#28069)
* Cloudwatch: Adding support for additional Amazon CloudFront metrics.
2020-10-07 19:03:05 +02:00
Darryl
2b312d24c4 Docs: Remove and update vague link text #27824 (#28055) 2020-10-07 09:31:16 -07:00
Arve Knudsen
98b94d3824 Drone: Fix release pipelines (#28084)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-10-07 16:22:41 +02:00
Marcus Olsson
a2e676f675 Automation: Update bot comments (#28079)
* Update bot comments

* Fix review comments
2020-10-07 14:25:46 +02:00
Arve Knudsen
d2b957b726 Drone: Add release pipelines (#28083)
* Drone: Implement release pipeline

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Drone: Implement test-release pipeline

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-10-07 14:22:15 +02:00
garanews
61749dee23 Fix typos (#28074)
Parsed all repo with a regexp of common misspelled words and fixed.
2020-10-07 11:29:30 +01:00
Alex Khomenko
9c112cd785 Grafana-UI: Form elements fixes (#27858)
* Fix inline label tooltip position

* Allow resetting max-width

* Fix label alignment and props

* Fix label line height
2020-10-07 13:20:32 +03:00
Giordano Ricci
09574547b8 Elasticsearch: Fix ad-hoc filter support for Raw Data query and new table panel (#28064) 2020-10-07 09:37:31 +01:00
Torkel Ödegaard
f46694479f GithubCommands: Updated the issue link 2020-10-07 09:41:38 +02:00
Torkel Ödegaard
253c183430 GithubActions: Fixed workflow 2020-10-07 09:35:40 +02:00
Torkel Ödegaard
810d171bf5 Automation: Adds github automation commands, and base architecture to build more automation on (#28072)
* Automation: Adds github automation commands, and base architecture to build more automation on

* Updated commmand

* updated commands

* Updated token name
2020-10-07 09:33:05 +02:00
jgulick48
9cd3ab0340 Cloudwatch: Adding support for Amazon ElastiCache Redis metrics. (#28040)
* Cloudwatch: Adding support for Amazon ElastiCache Redis metrics.
2020-10-06 19:52:02 +02:00
Spencer Taylor
3606e282ba CloudWatch: Add missing TransitGateway dimension (#28061)
Adding missing TransitGatewayAttachment dimension to the AWS/TransitGateway namespace.
2020-10-06 19:22:03 +02:00
Arve Knudsen
0a2ef086b3 Chore: Convert CloudWatch metrics to data frames (#27449)
* CloudWatch: Convert metrics results to data frames

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

Co-authored-by: kay delaney <kay@grafana.com>
2020-10-06 13:45:58 +02:00
Dominik Prokop
810c327e31 Use annotations data observable (#28050) 2020-10-06 12:43:45 +02:00
Dominik Prokop
aa6c98f7ff Graph NG: annotations display (#27972)
* Annotations support POC

* Fix markers memoization

* dev dashboard update

* Update public/app/plugins/panel/graph3/plugins/AnnotationsPlugin.tsx
2020-10-06 11:39:06 +02:00
Arve Knudsen
a2816ee64a Add codeql-analysis.yml (#28029) 2020-10-06 09:58:25 +02:00
Hugo Häggmark
de1b2bdc4c Transformations: Use Observable (#27584)
* WIP: changes transformer API to Observable

* Refactor: changes ResultProcessor

* WIP: TransformationUI

* wip

* Refactor: Cleaning up code in CalculateFieldTransformerEditorProps

* Refactor: pushing editor and input output down to TransformationEditor

* Refactor: renaming props

* Refactor: makes transformDataFrame more readable

* Refactor: fixes editor issues

* Refactor: changes after merge with master and first tests

* Tests: completes the tests for the Explore changes

* Tests: fixes all transform tests

* Tests: fixed annotations test

* Tests: fixed typechecks

* Refactor: changes transform interface to MonoTypeOperatorFunction

* Chore: cleans up typings

* Update packages/grafana-data/src/transformations/transformDataFrame.ts

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

* Tests: fixes broken tests

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2020-10-06 07:55:09 +02:00
Diana Payton
0bf67612d1 Docs: Update menu.yaml (#28044) 2020-10-05 15:20:27 -07:00
Matthew Helmke
16b8f60e38 Update documentation-style-guide.md (#28038)
Just a typo fix.
2020-10-05 15:57:49 -04:00
Diana Payton
81ec13b76d Update documentation-style-guide.md (#28037) 2020-10-05 12:03:12 -07:00
Steven Vachon
1c865b5bcb @grafana/e2e: timing improvements (#27861) 2020-10-05 11:19:53 -07:00
jgulick48
7c2999709c Cloudwatch: Add support for AWS DirectConnect virtual interface metrics and add missing dimensions (#28008)
* Cloudwatch: Add support for AWS DirectConnect virtual interface metrics.

* Cloudwatch: Adding dimentions to the AWS/DX namespace for virtual network interface based DirectConnect.
2020-10-05 19:19:40 +03:00
Torkel Ödegaard
d097c7dafb FieldDisplayName: Make field display names unique if field name exists more than once (#27963)
* FieldDisplayName: Make field display names unique if fields with same name exists

* Updated tests

* Minor optimization

* Updated seriesToColumns test

* Fixed arrow data frame test
2020-10-05 18:05:06 +02:00
achatterjee-grafana
c70291de5d Updated relref link to Anonymous authentication section in grafana/latest/auth/grafana/ (#28034) 2020-10-05 11:31:49 -04:00
Dan Cech
4629c44d49 Toolkit: implement plugin signing in grafana-toolkit (#27907)
* implement plugin signing in grafana-toolkit
2020-10-05 11:27:43 -04:00
Nitesh Koushik S
ad0f071159 Docs: Document Update (#27786)
* Document Update 

Changes made from "are" to "is"

* Document Update

Changes from "are" to "is"

* Document Update

Changes from "are" to "is"

* Document Update

Proper punctuations

* Document Update

Changes as per suggestion

* Document update

Changes as per the suggestion

* Document Update

Changes as per the suggestion

* Document Changes

Changes made as per @achatterjee-grafana suggestion

* Document Update

Changes made as per @oddlittlebird suggestion.
2020-10-05 08:24:52 -07:00
David C
1f389d72b2 Docs: Added $__rate_interval to Prometheus help (#28030)
* Docs: Added $__rate_interval to Prometheus help

The variable '$__rate_interval' was added in Grafana 7.2.0. This commit
adds the missing help information to Grafana's Prometheus PromQueryEditor.

Signed-off-by: David Calvert <davidcalvertfr@gmail.com>

* Docs: Fixed line length in PromQueryEditor.tsx

This commit will fix line length of my previous commit to make CI green
again.

Signed-off-by: David Calvert <davidcalvertfr@gmail.com>

* Docs: Fixed ci error

Fixed CI error due to my previous commits

Signed-off-by: David Calvert <davidcalvertfr@gmail.com>
2020-10-05 11:14:33 -04:00
Alex Khomenko
11e6cc10d4 Add Alex Khomenko as member (#28032) 2020-10-05 15:08:16 +03:00
Amos Law
3a498e80ff Registry: Fix service shutdown mode trigger location (#28025) 2020-10-05 13:30:46 +02:00
Arve Knudsen
531c579341 Plugins: Let descendant plugins inherit their root's signature (#27970)
* plugins: Let descendant plugins inherit their root's signature

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-10-05 13:28:18 +02:00
ozhuang
65d0468806 Docs: Fixed row display in table (#28031) 2020-10-05 10:54:17 +02:00
Ryan McKinley
726bb4477b Live: cleanup and simple changes (#28028) 2020-10-04 23:53:52 -07:00
Ivana Huckova
0ffd9a9a3c Loki: Run instant query only in Explore (#27974)
* Run instant query only in Explore

* Replace forEach with for loop
2020-10-04 21:41:12 +02:00
Torkel Ödegaard
301d298bff Yarn: Update lock file (#28014) 2020-10-04 20:21:40 +02:00
Zoltán Bedi
b1186d693a Stackdriver: fix project name change regression (#27909)
* Update stackdriver query editor not to overwrite project name

* Fix legacy select form no options didn't show

* Update config link to docs
2020-10-03 11:55:09 +02:00
Zoltán Bedi
b00755a2d9 Fix errors in grafana-ui's storybook files (#28004) 2020-10-03 11:53:01 +02:00
Alex Khomenko
6173aa70b7 UserPicker: Use clearable AsyncSelect for the UserPicker (#27994) 2020-10-03 07:19:45 +02:00
Torkel Ödegaard
dfe04ea3e8 Packages: Fixed npm dependency issue (#27996)
* Packages: Fixed npm dependency issue

* Updated yarn.lock

* Fixes

* Updated
2020-10-03 07:13:19 +02:00
Linus Groh
9d422fc400 Storybook: Fix typo in ThemeColors component (#27999) 2020-10-03 07:07:53 +02:00
Fredrik Enestad
266aba71eb Add Fredrik Enestad as member (#27959) 2020-10-02 20:26:50 +02:00
John S
4d3067e139 Docs: Refactor inconsistent unordered lists (#27826)
* Docs: Refactor inconsistent unordered lists

* add requested changes

* Update docs/sources/linking/data-link-variables.md

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

* Update docs/sources/http_api/_index.md

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

* Update docs/sources/guides/whats-new-in-v6-0.md

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

* Update docs/sources/auth/auth-proxy.md

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

* resolve weird line breaks

* revert unintentional change

* Update docs/sources/auth/auth-proxy.md

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

* Update docs/sources/auth/auth-proxy.md

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

* Update docs/sources/auth/auth-proxy.md

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

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-10-02 11:02:11 -07:00
Matheus Alcantara
7d7e727f22 Cloudwatch: Convert go convey tests to standard test library (#28003)
* Cloudwatch: Convert go convey tests to standard test library

* Fix tests

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-10-02 19:40:15 +02:00
Steven Vachon
89ebab6377 Don't use process.chdir (#27915)
... because it's global
2020-10-02 10:43:39 -04:00
Arve Knudsen
a078e40238 Settings: Rename constants/variables to follow Go naming standards (#28002)
* settings: Rename constants/variables to follow Go naming standards
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-10-02 15:45:45 +02:00
vin01
a5e12f653d Use read_api scope in gitlab oauth config sample (#27992) 2020-10-02 09:42:57 -04:00
Lundbyit
2c1c4d613c Storybook: Fix checkbox spacing (#27980)
* Remove <br> and add line-height

* use theme line-height instead of custom
2020-10-02 16:07:47 +03:00
Matheus Alcantara
b4b3f6a088 Test: Create unit test to SplitEmails (#27985) 2020-10-02 08:42:10 +02:00
Carl Bergquist
a28a2fba51 healthchecks should work regardless domain (#27981) 2020-10-02 07:14:26 +02:00
Hugo Häggmark
845bc7c444 Variables: Adds loading state and indicators (#27917)
* Refactor: Replaces initLock with state machine

* Refactor: removes some states for now

* Refactor: adds loading state in OptionsPicker

* Refactor: major refactor of load state

* Refactor: fixes updating graph in parallell

* Refactor: moves error handling to updateOptions

* Refactor: fixes the last cases

* Tests: disables variable e2e again

* Chore: removes nova config

* Refactor: small changes when going through the code again

* Refactor: fixes typings

* Refactor: changes after PR comments

* Refactor: split up onTimeRangeUpdated and fixed some error handling

* Tests: removes unused func

* Tests: fixes typing
2020-10-02 07:02:06 +02:00
achatterjee-grafana
add777ad40 Change metadata of doc topics (#27943)
* Changes. to metadata in Manage users

* changes to install section

* Added titile

* More changes.

* Updated administration folder metadata, moved 2 files from installation folder.

* Added links to Administration landing page, other metadata changes worked out.

* Updated alerting section metadata.

* Updated metadata of Auth section. Broke index and created separate Grafana Authentication section.

* Added correct weight.

* Updated metadata for the Best practices section.

* Updated metadata in templates, broke Overview topic.

* Updated subment Variable types metadata

* Fixed yaml file and H1 description of Variables syntax topic.

* Couple more metadata changes.

* Added aliases files, as suggested by Diana.
2020-10-01 17:37:26 -04:00
Diana Payton
715f0133ee Docs: Remove reference folder (#27944)
* Delete stack_guide_graphite.md

* moved json-model

* Moved Export and import

* Delete _index.md

* Moved Scripted dashboards

* Moved Share dashboard

* fixed links
2020-10-01 14:13:39 -07:00
Marcus Andersson
5f41818766 Build: restoring temporary commit so we can get lerna to publish the frontend packages. (#27979)
* restoring commit function.

* removed spacing.
2020-10-01 20:50:17 +02:00
vin01
78a2026a82 Use read_api scope for GitLab OAuth (#27976)
`read_api` seems to be the minimal scope currently which can be used, it shall be preferred over `api` which grants complete read/write access.

- https://gitlab.com/gitlab-org/gitlab/-/merge_requests/28944#note_322904691
- https://gitlab.com/gitlab-org/gitlab/-/issues/21909
2020-10-01 14:29:48 -04:00
kay delaney
185442115c Chore: Remove angular dependency from data sources (#27735)
* Chore: Remove angular dependency from data sources

* Removes default export for time and template srvs
Also uses @grafana/runtime versions of the interfaces where possible

* Replace usage of internal templateSrv where possible

* Use runtime templateSrv in a couple more places
2020-10-01 18:51:23 +01:00
Ryan McKinley
8a5fc00330 Live: broadcast events when dashboard is saved (#27583)
Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
2020-10-01 10:46:14 -07:00
Marcus Andersson
44c9aea28c skipping the verification of a clean workspace. (#27978) 2020-10-01 19:35:41 +02:00
DECarreras
54df058b95 Docs: Fixed lazy numbering in all documentation files (#27975) 2020-10-01 12:45:05 -04:00
Arve Knudsen
c3f277a6fe Drone: Fix releasing of next NPM packages (#27965)
* CI: Upgrade build pipeline tool

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Drone: Don't bump NPM package version as part of script

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* cleaned up release next packages script.

* made the comment a bit better.

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2020-10-01 17:37:56 +02:00
Stefan
cf071a36f9 Docs: Update whats-new-in-v7-2.md (#27950)
* Update whats-new-in-v7-2.md

Grafana 7.2.0 was released 2020-09-23 and isn't in beta anymore, see https://github.com/grafana/grafana/blob/master/CHANGELOG.md

* Update docs/sources/guides/whats-new-in-v7-2.md

Remove warning about article being incomplete

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

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
2020-10-01 07:58:24 -07:00
Andrej Ocenas
26ba7ab598 Chore: Remove loki version hack in explore (#27966) 2020-10-01 15:41:05 +02:00
Ivana Huckova
43c389d119 Revert "Update refId for instant queries (#27954)" (#27960)
This reverts commit 9546da3189.
2020-10-01 14:39:32 +02:00
Zoltán Bedi
a230aa1031 Prometheus: refactor to DataFrame (#27737)
* Add typing to prometheus response

* Refactor result_transformer to return DataFrame

* Refactor + test fixes

* Fix Prometheus data source test

* Modify heatmap function + add back tests

* Update performInstantQuery return type

* Remove duplicate code from result_transformer

* Address review comments

* Update metric labels retrival logic to be safer
2020-10-01 12:58:06 +02:00
Arve Knudsen
f97f12f69d Drone: Don't use npx (#27955)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-10-01 12:56:48 +02:00
Ivana Huckova
9546da3189 Update refId for instant queries (#27954) 2020-10-01 12:19:24 +02:00
Ivana Huckova
2f5a60f561 Explore: Remove ui params from url (#27753)
* Remove ui from url

* Update tests

* Update changeDedupStrategy

* Add test coverage
2020-10-01 12:18:21 +02:00
Domas
bd9add72de toolkit: expose maxWorkers option for plugin build & test tasks (#27724) 2020-10-01 10:50:56 +02:00
Amal
22b2d4d412 Minor change for readability (#27938) 2020-10-01 10:43:59 +02:00
Amal
f05ec42bd5 Minor change for better readability of docs (#27937)
* Minor change for better readability of docs

* Update docs/sources/developers/plugins/backend/plugin-protocol.md

Accepting review suggestions

Co-authored-by: Marcus Olsson <marcus.olsson@hey.com>

Co-authored-by: Marcus Olsson <marcus.olsson@hey.com>
2020-10-01 10:43:09 +02:00
Marcus Efraimsson
747513d444 Plugins: Fix loading of backend plugins (#27951)
Ref #27921
2020-10-01 10:39:42 +02:00
Arve Knudsen
298ac20dc5 Drone: Upgrade build pipeline tool (#27949)
* Drone: Don't use npx

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Drone: Upgrade build pipeline tool

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-10-01 10:00:11 +02:00
Hugo Häggmark
fa2781391a DashboardLinks: values in links are updated when variables change (#27926)
* DashboardLinks: values in links are updated when variable changes

* Tests: adds e2e test that verifies links
2020-10-01 08:44:56 +02:00
Sartaj Singh Baveja
4e4242d475 Variables: Adds support for key/value mapping in Custom variable (#27829)
* Initial work on adding new mapping variable type

* Remove add button

* Update custom variable type to include key/value mapping

* Update custom variable docs

* Try to fix failing build

* Update reducer.ts

* Fix failing build

* Remove expansion of the colon

* Update docs

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

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-10-01 06:06:52 +02:00
Marcus Efraimsson
c028d3047c CI: Notify failures in separate pipeline (#27936)
* Notify failures in separate pipeline

* Include branch and event in triggers

* Use snake case

* Use snake case

* Fix enterprise/downstream

* Apply suggestions from code review

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-09-30 22:14:47 +02:00
denominator
1d2b839a1d Docs: Fix note format for documentation (#27940) 2020-09-30 12:45:07 -07:00
Amal
1586baf55a Correcting case in docs (#27941) 2020-09-30 15:03:25 -04:00
Carl Bergquist
7b891d10ee Instrumentation: Removes invalid chars from label names (#27921) 2020-09-30 20:12:57 +02:00
Amal
e26b8636a9 Typo correction in documentation (#27935) 2020-09-30 13:50:02 -04:00
Arve Knudsen
833903bd00 Drone: Sync with enterprise (#27939)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-09-30 19:28:28 +02:00
Diana Payton
75d1c16f0b Docs: Update time-range-controls.md (#27914) 2020-09-30 09:39:32 -07:00
Amal
ca4e48a8e4 Typo correction in docs (#27934) 2020-09-30 17:35:54 +02:00
Amal
831fe2d2b3 Update plugin-protocol.md (#27932) 2020-09-30 17:35:16 +02:00
Marcus Olsson
016ec7343a Add marcusolsson as code owner for plugin docs (#27810) 2020-09-30 15:08:01 +02:00
Marcus Olsson
902ecc9a06 Docs: Add trace and exemplar to glossary (#27854)
* Format glossary table

* Add trace and examplar to glossary

* Fix typo

* Fix review comments

* Fix review comment

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

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

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-09-30 15:07:44 +02:00
Arve Knudsen
b892aa2eb7 Drone: Don't ignore failure to publish next NPM packages (#27927)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-09-30 14:11:40 +02:00
Arve Knudsen
a59a89dfb8 Drone: Fix publishing of next NPM packages (#27925)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-09-30 13:36:09 +02:00
Marcus Andersson
b59be220ce Build: fixing failing release packaged build due to uPlot dependency not properly setup (#27887)
* removed dependency from grafana/ui on public/app.

* fixed so we don't get rollup issues when building the packages.

* fixed so import path is working properly.

* removed uncommented code.
2020-09-30 12:59:02 +02:00
Arve Knudsen
34a355fe54 Drone: Add Slack failure notifier (#27920)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-09-30 11:04:37 +02:00
Arve Knudsen
739395abb6 Drone: Don't build enterprise Windows installer unless downstream (#27919)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-09-30 10:36:33 +02:00
Torkel Ödegaard
d105db3e5b Graph: Fixed histogram bucket calculations to avoid missing buckets (#27883)
* Graph: Fixed histogram bucket calculations to avoid missing buckets

* Removed testdata

* Updated tests
2020-09-30 09:26:06 +02:00
Arve Knudsen
7a12094ddc Drone: Ignore failure to publish front-end metrics (#27918)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-09-30 09:23:48 +02:00
Agnès Toulet
05cb049733 Dashboard: Don't send analytics for explore or edit events (#27789)
* Dashboard: don't send analytics for explore or edit event

* AnalyticsProcessor: merge subsequent conditions

* Add analyticsProcessor tests

* apply PR feedback
2020-09-30 08:29:33 +02:00
Joan López de la Franca Beltran
e03da3760e Add index at user_auth_token.user_id column (#27908) 2020-09-30 01:20:29 +02:00
Arve Knudsen
702fb1edd1 Drone: Upgrade drone-grafana-docker image (#27911)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-09-29 21:34:34 +02:00
Steven Vachon
d745a66a18 @grafana/toolkit: cleanup (#27906)
* Simplify `useSpinner` to run immediately, instead of returning a function

* Removed unnecessary exports

* Avoid mutating input arguments
2020-09-29 15:05:07 -04:00
Ryan McKinley
f60f1c3fc7 Chore: use Array.isArray rather than lodash (#27898) 2020-09-29 10:39:52 -07:00
Ryan McKinley
71a01a1053 Chore: Convert internal grafana datasource from angular to react (#27870) 2020-09-29 10:39:31 -07:00
Arve Knudsen
26f86ba823 Drone: Fix publishing of master artifacts (#27902)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-09-29 18:15:25 +02:00
Marcus Olsson
03f059b7c5 Docs: Fix typo and clarify need for query editor (#27796)
* Fix typo and clarify need for query editor

* Update docs/sources/developers/plugins/add-support-for-annotations.md

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

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-09-29 17:26:01 +02:00
Arve Knudsen
a9afb750d9 Drone: Fix master build (#27897)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-09-29 16:34:49 +02:00
MorgeMoensch
74de2475ca Fix Link to OWASP SameSite information (#27895)
The old link (https://owasp.org/index.php/SameSite) no longer works, so I suggest to use this one instead: https://owasp.org/www-community/SameSite
2020-09-29 10:32:22 -04:00
Ryan McKinley
4f3be31e1a Chore: show error/warning notice with a different icon (#27872) 2020-09-29 07:27:57 -07:00
Steven Vachon
15a3b97dbb @grafana/toolkit: run npm "next" publish file system functions serially (#27894)
... to hopefully avoid race conditions with working directory changes
2020-09-29 10:16:16 -04:00
Arve Knudsen
6671e4ec32 Chore: Upgrade build pipeline tool (#27893)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-09-29 16:09:46 +02:00
Arve Knudsen
3f728501df Drone: Fix Windows installer upload (#27890)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-09-29 15:45:59 +02:00
Arve Knudsen
262a6faad0 Chore: Upgrade build-pipeline tool (#27888)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-09-29 14:24:18 +02:00
Jess
339ef7a1a8 Add docs for TagsInput (#27881)
* Add docs for TagsInput

* Add import to TagsInput.story.tsx

* Update packages/grafana-ui/src/components/TagsInput/TagsInput.mdx

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

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2020-09-29 14:30:57 +03:00
Dominik Prokop
b995381816 Proposal: Declarative API for axes, scales and series configuration in Graph NG (#27862)
* Fix gdev dashboard

* API for declarative Axis, Series and Scales configuration

* Bring back time zone change support

* Update tests and fix type errors

* Review comments and fixes
2020-09-29 13:25:10 +02:00
Kemal Akkoyun
0c70308870 Prometheus: Add time range parameters to labels API (#27548)
* Add time range parameters to labels API

Signed-off-by: Kemal Akkoyun <kakkoyun@gmail.com>

* Fix minor issues

Signed-off-by: Kemal Akkoyun <kakkoyun@gmail.com>

* Add range to explore component

Signed-off-by: Kemal Akkoyun <kakkoyun@gmail.com>

* Add range to query component

Signed-off-by: Kemal Akkoyun <kakkoyun@gmail.com>

* Cache metric names for time range

Signed-off-by: Kemal Akkoyun <kakkoyun@gmail.com>

* Update public/app/plugins/datasource/prometheus/components/PromQueryField.tsx

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

* Remove unused method

Signed-off-by: Kemal Akkoyun <kakkoyun@gmail.com>

* Only compare the ranges

Signed-off-by: Kemal Akkoyun <kakkoyun@gmail.com>

* Update public/app/plugins/datasource/prometheus/components/PromQueryField.tsx

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

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2020-09-29 11:05:57 +02:00
Heliodor Jalba
5c1c5f4178 Fix how multiplication is displayed (#27825)
Asterisk character is used for italicizing by the styling engine. It needs to be escaped with a backslash.
2020-09-29 08:53:37 +02:00
Steven Vachon
4fd8ff092e @grafana-toolkit: promise improvements (#27868)
* Default `useSpinner` to a void argument

* Use promise-based file system functions in package:build
2020-09-28 15:43:01 -04:00
Ivana Huckova
d7e192a8fe Prometheus/Explore: Update position of fields in editor (#27816)
* Update position of buttons

* Refactor, add tests

* Pass onKeydown func

* Update public/app/plugins/datasource/prometheus/components/PromQueryField.tsx

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

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2020-09-28 21:25:16 +02:00
Zoltán Bedi
e82e3f27a5 Add X-Ray to whats new (#27867)
* Add X-Ray to whats new

* Update docs/sources/guides/whats-new-in-v7-2.md

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

* Add missing titles

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-09-28 21:08:38 +02:00
Berbe
7c0bd29fcc Fix: bps & Bps default scale remains decimal (backwards-compatibility) (#27838) 2020-09-28 19:24:09 +02:00
Nitesh Koushik S
c6502afa77 Docs: Document Update (#27851)
* Document Update

Changes from 'being" to "be"

* Document Change

Changes from "exporation" to "exploration"
2020-09-28 09:32:40 -07:00
Nitesh Koushik S
ed4e47df11 Docs: Document update (#27783)
* Document update

Change in key word "to" to "two"

* Document Update

Grammer correction

* Document Update

Changes made as per the suggestion
2020-09-28 09:28:00 -07:00
Nitesh Koushik S
5be468eda5 Docs: Document update (#27785)
* Document update

Proper punctuations

* Document update

Punctuations and grammar correction

* Document Update 

Proper punctuations.

* Document Update

Changes as per the suggestion
2020-09-28 09:27:22 -07:00
Nitesh Koushik S
bbd3e5041e Document Update (#27850)
* Document Update

Capitalization and grammar change

* Document change

Spelling and grammar correction
2020-09-28 11:30:55 -04:00
Phil Nichol
7473e2ae60 Docs: Corrected incorrect uses of (setup|set up) (#27835) 2020-09-28 08:27:50 -07:00
Peter Holmberg
2114614197 GEL: Editor UI updates (#27859)
* use new inline form styles

* remove fragment

* rename some of the GEL form labels

* s/gel type/operation for label

Co-authored-by: kyle <kyle@grafana.com>
2020-09-28 16:44:52 +02:00
Alex Khomenko
c35bd84ff1 Grafana-UI: Refactor legacy inline form components (#27660)
* Move styles to emotion

* Move FormLabel to forms

* Add mdx file

* Setup InlineField

* Add InlineField docs

* Add grow prop

* Add isKeyword prop

* Add filled Field

* Keep legacy form label

* InlineFormLabel => InlineLabel

* Update references

* Add multiple elements example

* Revert label

* Add InlineFieldRow

* Adjust label width

* Export InlineFieldRow

* Expand props from base components

* Remove isKeyword prop

* Remove fill prop

* Update docs

* Update docs [2]
2020-09-28 14:24:25 +03:00
mshaferweb
d40bfd4f10 Update timeseries-dimensions.md (#27844)
typo ... without or without
2020-09-28 10:12:01 +02:00
Alex Khomenko
3188524f1f Grafana-UI: Add docs for FormattedValueDisplay (#27759)
* Add docs for FormattedValueDisplay

* Move to visualizations
2020-09-28 10:16:20 +03:00
Peter Holmberg
244c28750c Fix: Update badges on PanelEditor tabs when adding a query/transformation/alert (#27729)
* minor nits in paneleditor

* add events for queries and transformations

* fix spelling

* add event to alertctrl

* revert alert changes

* re add force update

* reduce events
2020-09-28 09:06:46 +02:00
Nitesh Koushik S
336636572b Document Update (#27795)
* Document Update

Changes from "advice" to "advise"

* Document Update

Changes made as per the suggestion
2020-09-26 12:41:52 -04:00
Marcus Olsson
e746e52bda Add Share query results docs (#27792) 2020-09-26 15:29:08 +02:00
achatterjee-grafana
d35b78a023 Removed bookmarks. (#27833) 2020-09-25 20:22:33 -04:00
achatterjee-grafana
c73d7db092 Mac os install changes (#27779)
* Reorganized topic. Added section on how to install Grafana using standalone binary files.

* Added next steps section.

* Updated list numbering.
2020-09-25 19:55:53 -04:00
Diana Payton
552e4cb84d Docs: Remove feature folder (#27830)
* moved files out of tutorials folder

* link update

* updated weights

* moved Explore

* move files and fix links

* moved files out of features

* Revert "moved files out of features"

This reverts commit 5e44cbcc95.

* fixed links
2020-09-25 13:53:13 -07:00
Steven Vachon
f38e431632 @grafana/e2e: selectOption flow now accepts a config object (#27827) 2020-09-25 16:10:55 -04:00
Nitesh Koushik S
1dc658f521 Document Update (#27782)
* Document Update

Proper punctuations

* Document Update

Proper punctuations

* Document Update

Adding punctuations
2020-09-25 14:45:32 -04:00
Diana Payton
c635807cf1 Docs: Fix link in share_panel.md (#27823)
* Update share_panel.md

* Update share_panel.md
2020-09-25 10:41:04 -07:00
Diana Payton
0138bbee3d Update documentation-markdown-guide.md (#27817) 2020-09-25 10:16:11 -07:00
Nitesh Koushik S
9335c92e0b Document update (#27798)
Changes made form "visualisation" to "visualization"
2020-09-25 11:56:29 -04:00
Diana Payton
447169fb59 Docs: Fix bullet list (#27815)
* Update _index.md

* Revert "Update _index.md"

This reverts commit 5a5052691d.

* Update _index.md
2020-09-25 08:49:57 -07:00
Will Browne
c764e3c37b remove org deprecation logs (#27788) 2020-09-25 16:51:12 +02:00
kay delaney
d322417217 Chore: Upgrade typescript and related packages (#27316)
* Chore: Upgrade typescript and related packages
Closes #27115

* Apply suggestions from code review

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

* fixes some tests

* Fix failing tests

* Apply suggestions from code review

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-09-25 15:48:41 +01:00
Marcus Olsson
3b8701a35d Docs: Add reference to plugin examples (#27809)
* Add reference to plugin examples

* Remove unintended whitespace
2020-09-25 16:47:52 +02:00
Nitesh Koushik S
d6ed7c2344 Document Changes (#27812)
Removal of repeated keywords.
2020-09-25 10:29:15 -04:00
Nitesh Koushik S
f9ab6975ba Document Update (#27806)
* Document Update

Capitalizing the words

* Document Update

Changes made as per the suggestion
2020-09-25 10:22:43 -04:00
Nitesh Koushik S
b6ae70e66d Document Update (#27799)
Removal of additional ". (dot)"
2020-09-25 10:22:00 -04:00
Nitesh Koushik S
e3aecb086f Document Update (#27811)
* Document Update 

Grammar correction

* Document correction

Spelling correction from "Gooogle" to "Google"

* Document update

adding a comma, as per suggestion
2020-09-25 10:18:21 -04:00
Nitesh Koushik S
5af2634c34 Document Change (#27797)
* Document Change

Changes made form "contains" to "contain"

* Document Update

Changes from "returns" to "return"
2020-09-25 10:17:15 -04:00
Nitesh Koushik S
14895aeaba Document change (#27808)
Change in keyword "cryptogtraphic" to "cryptographic"
2020-09-25 09:57:03 -04:00
Nitesh Koushik S
4da2fa9973 Document update (#27807)
Grammar correction
2020-09-25 09:49:21 -04:00
Bill Oley
334cb41a99 Move error log in social.go inside err != nil (#27804) 2020-09-25 15:24:16 +02:00
Nitesh Koushik S
69ba7bff82 Document Update (#27801)
* Document Update

Correcting the JSON syntax

* Document Update

Correcting the JSON syntax
2020-09-25 15:21:45 +02:00
Ivana Huckova
336699c575 Fix formating of results from instant queries in Explore (#27767) 2020-09-25 14:34:33 +02:00
Hugo Häggmark
204641a202 Variables: Prevents unnecessary calls to update options (#27790)
* Variables: Prevents unnecessary calls to update options

* Tests: adds tests for QueryVariableEditor
2020-09-25 13:40:03 +02:00
Torkel Ödegaard
193565ca26 BarGauge: Fixed scrollbar showing for bar gague in Firefox (#27784) 2020-09-25 13:32:28 +02:00
Hugo Häggmark
0bb8b32821 Mysql: Support request cancellation properly (Uses new backendSrv.fetch Observable request API) (#27649) 2020-09-25 12:46:28 +02:00
Ryan McKinley
3ae6ba034d Graph NG: make series color easy to clear (#27778) 2020-09-25 11:46:39 +02:00
William Assis
8a22111a8e Toolkit: Add --coverage flag to plugin build command (#27743)
* Add --coverage option to build script

* Update README
2020-09-25 08:12:00 +02:00
Nitesh Koushik S
dde5b724e8 Docs: Document Update (#27693)
* Document Update

"an SQLite" to "a SQLite"

* Document Update

Capitalization
2020-09-24 14:30:11 -07:00
Arve Knudsen
19c1428103 Drone: Ignore release-next-npm-packages failure (#27775)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-09-24 22:21:58 +02:00
Heds Simons
0f862d6507 Documentation: Fix 'Group by' table markdown in Transformations section. (#27773)
Signed-off-by: Heds Simons <heds@whaleway.net>
2020-09-24 12:32:24 -07:00
Arve Knudsen
02e648c42d Drone: Separate pipeline for publishing packages (#27774)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-09-24 21:31:09 +02:00
John Belmonte
9ca12a7663 prometheus grafana dashboard: use newer info metric (#27240)
Fixes #24952.
2020-09-24 21:10:57 +02:00
Torkel Ödegaard
adc1b965f3 PanelData: Adds annotations and QueryResultMeta dataTopic (#27757)
* topics round two

* more props

* remove Data from enum

* PanelData: Simplify ideas a bit to only focus on the addition of annotations in panel data

* Test data scenario

* Old graph panel showing annotations from PanelData

* Fixed comment

* Fixed issues trying to remove use of event.source

* Added unit test

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2020-09-24 21:01:31 +02:00
Torkel Ödegaard
f06dcfc9ee Table: New cell hover behavior and major refactoring of table cells & style build (#27669)
* Table: Image cell and new hover behavior

* ImageCell: progress

* Table: refactoring cell style generation, tricky stuff

* About to do something

* Getting close

* Need another big change

* Almost everything working

* Filter actions working

* Updated

* Updated

* removed unused prop from interface

* Fixed unit test

* remove unused type
2020-09-24 20:09:01 +02:00
achatterjee-grafana
8018059fc4 Fixed Heading 2 "General resources" format. (#27771) 2020-09-24 13:29:40 -04:00
Giordano Ricci
d4f785d20a Elasticsearch: Add query's refId to each series returned by a query (#27614) 2020-09-24 18:06:19 +01:00
Marcus Andersson
7feaddea8f Chore: adding platform independent typings for e2e tests. (#27768)
* added typings that are platform independent in the tests.

* fixing nits.
2020-09-24 18:47:25 +02:00
Sofia Papagiannaki
42476811a4 Cloudwatch: Fix loading custom credentials profile (#27684)
* Store credentials profile in JSON

* Update docs example

* Apply suggestions from code review

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-09-24 19:21:17 +03:00
Nitesh Koushik S
f0a586a914 Document Change (#27764)
* Document Change

Change in key word from "exterrnal" to "external"

* Document update

Change in key word "you" to "your"
2020-09-24 10:53:39 -04:00
kay delaney
267f3e7389 Chore: Remove leftover console.log (#27766) 2020-09-24 15:51:38 +01:00
Dominik Prokop
844dd9e8f0 Graph NG WIP (#27572)
* Squash merge Ryans uPlot work

* uPlot - wrap into composable API

* Remove MicroPlot.tsx

* Add missing uPlot stylesheet import

* Use field config for axes config

* Min selection distance for Zoom

* WIP Tooltip behaviour

* Some progress on rendering plot

* gdev dashboard for graph ng tests

* Update custom field config interface for graph options

* Add support for paths in default field config setup (+2 squashed commits)
Squashed commits:
[93fc3afbfc] Typecheck fix
[a07ef86a8b] Add support for paths in default field config setup

* Include IANA timezone canonical name in TimeZoneInfo

* Use correct time zone on time axis

* Default axis width

* Use system date time formats for time axis ticks

* Graph panel layout

* Respect config paths when rendering default value of field config property

* Fix mismatch in field config editor types

* Color field option editor

* Refactor plot context to a single one

* First version of new graph legend plugin

* Fix mutable data frame

* Multiple ui fixes, layout is still slightly problematic

* Remove unused

* Fix tooltip test

* Some perf optimisations

* Update dev dashboard

* Typecheck fix

* Do not use color value editor as standard property editor, add custom field config to graph panel to control series color

* Update dev dashboard with correct tags

* Fix undefined issues

* Update devenv/dev-dashboards/panel-graph/graph-ng.json
2020-09-24 16:44:35 +02:00
Nitesh Koushik S
033feebbf9 Document Update (#27694)
* Document Update

Where to were

* Document Update

"re enter" to "reenter"

* Document Update

"an" to "a"

* Document Update

"an" to "a"

* Document update

"can not " to cannot

* Document update

Changes made from "and by that not function as expected." to "and by that it do not function as expected."

* Document update

Change made from "by that not function as expected" to "by that it does not function as expected"

* Update docs/sources/installation/upgrading.md

Commit, the document based on suggestion

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Update docs/sources/installation/upgrading.md

Commit the changes as per the suggestion

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Document update

Changes reverted from "cannot" to "can not" as per the suggestion

* Document Update

Changes as per the suggestion

* Document changes

Changes as per the suggestion

* Document Change

Changes made as per the suggestion

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-09-24 10:25:27 -04:00
Arve Knudsen
c65aea5569 Drone: Fix master build (#27765)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-09-24 16:22:41 +02:00
Nitesh Koushik S
a8d97f6666 Document Update (#27762)
* Document Update

"dashboards definition" to "dashboard's definition"

* Document Change

Betweens to Between
2020-09-24 06:54:20 -07:00
Chiang Fong Lee
bb7c1d22b7 Docs: Fix sidebar link typo for "Filter table columns" (#27754) 2020-09-24 06:53:14 -07:00
Harald Kubota
81bf9fc278 LINE Notify to have Alerts and OK notifications (#27639)
* Get Alerts AND OKs for LINE Notify

* Get Alerts AND OKs for LINE Notify

* Get Alerts AND OKs for LINE Notify
2020-09-24 15:45:53 +02:00
Arve Knudsen
755f3d0de7 CI: Migrate to Drone for master builds (#27087)
* CI: Migrate to Drone for master builds
2020-09-24 15:20:48 +02:00
Zoltán Bedi
b98c85d81c Chore: eslint plugin react hooks fix in jeager (#27580)
* Use eslintignore instead of gitignore

* Fix jaeger errors
2020-09-24 14:41:57 +02:00
Hong
92c804fd55 Docs: Fix "Field options and overrides" page links (#27758)
What this PR does / why we need it:

Fix [Field options and overrides](https://grafana.com/docs/grafana/latest/panels/field-options/) several links.

Which issue(s) this PR fixes:

None.

Special notes for your reviewer:
2020-09-24 13:29:22 +02:00
Tiago Mota Santos
17a1e78754 Dashboard: Honour root_url for Explore link (#27654)
* Dashboard: Add subUrl to explore url

Honour subUrl when opening explore in new window

* Dashboard: Add tests to onNavigateToExplore

* Dashboard: Remove condition from tests
2020-09-24 06:15:57 +02:00
Amal
ed185ea0f2 Correcting case in docs (#27739)
* Correcting case in documentation

* Correcting case in docs
2020-09-23 16:20:22 -04:00
Amal
9c624b82c4 Minor Grammatical correction (#27742)
* Minor Grammatical correction

* Correcting, as per PR suggestion
2020-09-23 16:19:58 -04:00
Amal
febb9e1699 Correcting case in documentation (#27740)
* Correcting case in documentation

* Correcting case in documentation

* Correcting case in documentation

* Suggested changes on PR
2020-09-23 16:12:24 -04:00
Amal
3579957cc2 Inserting a comma, for better readability (#27738) 2020-09-23 16:06:42 -04:00
Diana Payton
14cd3f3872 Docs: 7.2 queries (#27688)
* Update whats-new-in-v7-2.md

* added content

* Update queries.md

* Update queries.md
2020-09-23 11:27:49 -07:00
Zoltán Bedi
36875b7839 Update working-with-data-frames.md (#27736)
Fix bad url for dataframe
2020-09-23 19:49:55 +02:00
Diana Payton
5d77d96d7b Docs: 7.2 filter options (#27689)
* Update field-options.md

* Update menu.yaml

* Create _index.md

* Update _index.md

* added files

* moving content

* updated links

* fixed links and deleted old file

* content changes

* Update configure-all-fields.md

* Content updates

* contnet updates

* updated content

* Update whats-new-in-v7-2.md

* content updates

* added content

* Update filter-table-columns.md

* Update standard-field-options.md

* moved files

* content edits

* Update _index.md

* Update _index.md

* fixed links and merge conflicts

* Update menu.yaml

* Update menu.yaml
2020-09-23 10:48:30 -07:00
achatterjee-grafana
08147e19a5 Transformtion changes 2 (#27732)
* Removed prereq.md, updated description in Overview topic.

* Fixed relref for manage users.

* Update docs/sources/panels/transformations/_index.md

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>

* Removed extra "the"

* Changed "In case" to "If"

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
2020-09-23 11:43:13 -04:00
Ryan McKinley
93a01eb1d9 Live: improved channel state (#27672) 2020-09-23 08:02:01 -07:00
Diana Payton
83050b9ccc Docs: Added parsed fields content (#27715) 2020-09-23 07:01:57 -07:00
Leonard Gram
d8507dc28a updated latest to 7.2.0 (#27731) 2020-09-23 15:45:35 +02:00
Leonard Gram
7b77a1b1fb changelog 7.2.0 (#27728)
* changelog 7.2.0

* Update CHANGELOG.md

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

* Update CHANGELOG.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Update packages/grafana-toolkit/CHANGELOG.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Update CHANGELOG.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-09-23 15:19:17 +02:00
Giordano Ricci
4c7131425b Revert "Elasticsearch: add frozen indices search support (#27472)" (#27726)
This reverts commit 61a3160c34.
2020-09-23 12:24:46 +01:00
Joan López de la Franca Beltran
3fb4a51404 Update Contribute/Architecture/Services documentation (#27722) 2020-09-23 12:34:00 +02:00
Arve Knudsen
80f0066a27 CI: Upgrade build image (#27720)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-09-23 11:44:33 +02:00
Torkel Ödegaard
f285569316 ValueMappings: Fix issue with value mappings in override applying to all columns (#27718)
* ValueMappings: Fix issue with value mappings override creating default value mapping for all fields

* Fixed unit tests
2020-09-23 11:43:43 +02:00
Arve Knudsen
f5c2b771ee Chore: Upgrade golangci-lint (#27719)
* Chore: Upgrade golangci-lint to latest
* ci-build: Upgrade Node/Yarn

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-09-23 10:55:25 +02:00
kennytm
ed054c205d grafana-toolkit: avoid path.resolve with globby in moveStaticFiles (#27670) 2020-09-23 10:48:13 +02:00
Torkel Ödegaard
52a501c205 DateFormatting: Use system date by default in display processor (#27699) 2020-09-23 09:16:43 +02:00
Nitesh Koushik S
6e80c229fd Improve language in configuration docs (#27695)
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-09-23 08:02:30 +02:00
Hugo Häggmark
a58a9e8e6d PanelEditor: Prevents adding transformations in panels with alerts (#27706) 2020-09-23 07:47:20 +02:00
Torkel Ödegaard
35a145dd63 Docs: Updated table docs, moved annotations notice down (#27708)
* Docs: Updated table docs, moved annotations notice down

* Removed unnessary notices

* Updated wording
2020-09-23 07:33:12 +02:00
achatterjee-grafana
c4c0e0253d Transformations changes (#27716)
* Chunking out the long Transformation topic. Also, updated TOC. Local build looks fine.

* More changes.

* More re-arranging of content. Fixed links in Types and Options page.

* Capitalization changes.

* Changes to Overview section.

* Fixed merge conflicts.

* Fixed typo to fix build failure.

* Update docs/sources/panels/transformations/types-options.md

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

* Changes from Diana.

* Fixed a typo in a relref.

* Fixed broken link.

* Update link in Troubleshooting topic.

* Added changes.

* Fixed a bunch of broken links.

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-09-22 18:41:32 -04:00
achatterjee-grafana
042e5564ab Transformations changes (#27690)
* Chunking out the long Transformation topic. Also, updated TOC. Local build looks fine.

* More changes.

* More re-arranging of content. Fixed links in Types and Options page.

* Capitalization changes.

* Changes to Overview section.

* Fixed merge conflicts.

* Fixed typo to fix build failure.

* Update docs/sources/panels/transformations/types-options.md

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

* Changes from Diana.

* Fixed a typo in a relref.

* Fixed broken link.

* Update link in Troubleshooting topic.

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-09-22 17:51:18 -04:00
Andrej Ocenas
0fe3b78a50 Show full traceID and better discern multiple stackTraces (#27710) 2020-09-22 22:53:45 +02:00
Jorge Vallecillo
9e3def4214 Fix typos (#27711) 2020-09-22 11:00:59 -07:00
Ryan McKinley
d46f33c34c Annotations: check for null or undefined fields before conversion (#27712) 2020-09-22 10:45:26 -07:00
Ivana Huckova
f6c91d1318 Explore: Remove not running query for collapsed elements (#27026)
* Make graph and table collapsing just a UI thing

* Remove showingGraph and showingTable, set them defaultly to true

* Remove collaapsing for panels in Explore

* UI toggle WiP

* WIP, add query type

* Refactor, clean up

* Update tests

* Clean uo

* Update rangeAll to range and instant

* Remove console logs

* Update packages/grafana-data/src/types/datasource.ts

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

* Update public/app/core/utils/explore.ts

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

* Fix prettier error

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2020-09-22 17:31:42 +02:00
Ivana Huckova
32deddbf0b Docs: Promehteus Explore query editor (#27683)
* Add docs for explore query editor

* Update text

* Reverse changed linting

* Update docs/sources/features/datasources/prometheus.md

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

* Update docs/sources/features/datasources/prometheus.md

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

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-09-22 17:30:21 +02:00
Chuck Wilson
0b9c925463 Docs: Correct typo: "LDAO" --> "LDAP" (#27692) 2020-09-22 07:48:03 -07:00
Arve Knudsen
a5d9196a53 Chore/fix lint issues (#27704)
* Chore: Fix linting issues

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-09-22 16:22:19 +02:00
Arve Knudsen
ffc11cb63c Server: Don't clutter trace.Stop by exiting (#27700)
* Server: Don't clutter trace.Stop by exiting

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-09-22 15:28:54 +02:00
Torkel Ödegaard
a9e49c24c2 UX: Increase default form width (#27680) 2020-09-22 13:27:35 +02:00
kennytm
7a77eb7635 grafana/ui: Do not bundle jQuery (#27667) 2020-09-22 10:43:57 +02:00
Hugo Häggmark
5f2deb2497 Select: Adds labels to select styles (#27698) 2020-09-22 10:35:26 +02:00
Nitesh Koushik S
0de926b1ac Document update (#27696)
Singular to plural (is to are)
2020-09-22 09:58:28 +02:00
Steven Vachon
abb015bad6 @grafana/e2e: flaky chart data workaround (#27687)
Don't expect initial chart data when creating a panel that hasn't yet populated its query editor
2020-09-21 19:40:23 -04:00
kevin.xu
98f7a2ace0 Update app.ts (#27673)
fix typo
2020-09-21 16:56:33 +01:00
Russ
1f1d7d7f11 Explore: Keep typeahead suggestions for exact label matches in Loki q… (#27201)
* Explore: Keep typeahead suggestions for exact label matches in Loki query editor

* Simplify some typing

* Explore: filter selected loki label option from suggestions

Co-authored-by: kay delaney <kay@grafana.com>
2020-09-21 16:56:20 +01:00
Arve Knudsen
1ec8eb3fc3 CircleCI: Fix master pipeline wrt front-end tests (#27681)
* CircleCI: Fix master pipeline wrt front-end tests

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Appease shellcheck

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-09-21 17:04:58 +02:00
Peter Holmberg
6a14f830ba Fix: Show an ellipsis if Query row title is too long (#27648)
* add overflow hidden to titleWrapper

* show ellipsis and css labels for components

* readd drag handle after bad merge

* rewrite userpicker test with rtl

* update test after adding css label to icon component

* fix more tests..
2020-09-21 15:33:50 +02:00
Torkel Ödegaard
1e5309a788 DashboardRow: Update to use the new replaceWithText method (#27671)
* DashboardRow: Update to use the new replaceWithText method

* Fixed panel header as well
2020-09-21 15:27:23 +02:00
Arve Knudsen
04a09dc60a CircleCI: Fix build (#27678)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-09-21 14:49:38 +02:00
Arve Knudsen
02ab019165 CircleCI: Execute enterprise tests (#27675)
* CircleCI: Execute enterprise tests

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-09-21 14:15:41 +02:00
Joan López de la Franca Beltran
b33dcf8213 Proposal to include a tidy check (#27204)
* Initial tidy-check proposal

* Add tidy check to Drone & CircleCI definitions

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-09-21 10:00:44 +02:00
Peter Holmberg
60cf95fa21 Docs: Basic docs for FormValidationMessage (#27658) 2020-09-21 09:05:38 +02:00
Dominik Prokop
e8a6b9db10 Fix mismatch in field config editor types (#27657) 2020-09-21 08:45:00 +02:00
calebsmac
e32aa99f26 Clarify status of annotation list panel (#27663)
It is confusing as the marketplace plugin is deprecated, and this page indicates that it is **included**, but it is not visible/discoverable by default.
2020-09-21 06:10:09 +02:00
Spencer McMaster
1269fa5cf6 PanelEditor: fix button position when dragging row (#27666) 2020-09-20 14:18:09 +02:00
Peter Holmberg
232ad5c42e FieldConfig: Apply Thresholds for string values (#27656)
* apply thresholds for strings

* apply thresholds for all FieldTypes
2020-09-19 08:26:56 +02:00
Giordano Ricci
61a3160c34 Elasticsearch: add frozen indices search support (#27472)
* Elasticsearch: Add frozen indices support for alerting
2020-09-18 18:27:25 +01:00
Diana Payton
590f1407f9 Update whats-new-in-v7-2.md (#27641) 2020-09-18 06:56:30 -07:00
Dominik Prokop
e5b16952c7 Field config: Respect config paths when rendering default value of field config property (#27652) 2020-09-18 15:46:16 +02:00
Domas
564d7ecea7 DataProxy: Ignore empty URL's in plugin routes (#27653)
This adds a check to see if plugin route URL is empty, and in such case 
does not modify request schema and host of the request to be proxied.
This behavior is now the same as in the plugin proxy.
2020-09-18 13:22:07 +02:00
Carl Bergquist
6dc73a6712 add /healthz endpoint (#27536)
kuberentes (and Im sure other orchastrators does as well) support two
kind of checks. readiness checks and liveness checks. Grafanas current
`/api/health` endpoint requires database access which might not
always be required for the instance to be considered active.
2020-09-18 13:03:18 +02:00
Alvaro Olmedo Rodriguez
20292bdb0e Alerting: Ensuring notifications displayed correctly in mobile device with Google Chat (#27578)
* Added previewText to Google Chat notifier
2020-09-18 09:41:34 +03:00
Diana Payton
7e96b1f38b Update CONTRIBUTING.md (#27344) 2020-09-17 08:18:05 -07:00
kay delaney
ca7263d898 Explore/Actions: Stop loadExploreDatasourcesAndSetDatasource from running queries twice (#27577) 2020-09-17 14:34:28 +01:00
Hugo Häggmark
8a9ae60a8d Update latest.json (#27637) 2020-09-17 14:36:11 +02:00
Hugo Häggmark
9ab7a0d8c0 Chore: Update CHANGELOG.md for 7.2.0-beta2 (#27636)
* Update CHANGELOG.md

* Update CHANGELOG.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Update CHANGELOG.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-09-17 14:33:24 +02:00
Marcus Olsson
4189b196ff Docs: Add missing properties to plugin metadata schema (#27445)
* Update plugin metadata schema

* Add missing properties to plugin schema

* Fix review comments
2020-09-17 13:19:40 +02:00
Dominik Prokop
7db050d9a4 Include IANA timezone canonical name in TimeZoneInfo (#27591) 2020-09-17 08:59:20 +02:00
Giordano Ricci
0e34474099 Elasticsearch: Add support for date_nanos type (#27538) 2020-09-17 08:16:58 +02:00
Hugo Häggmark
e86ff52d44 DataLinks: Respects display name and adds field quoting (#27616)
* DataLinks: Adds field quoting and respects DisplayName

* Update public/app/features/panel/panellinks/link_srv.ts

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

Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
2020-09-17 08:08:32 +02:00
Zoltán Bedi
8475bd2fae Add new explore/observability related features to whats new docs (#27540)
* Add new explore/observability related features to whats new docs

* Apply suggestions from code review

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

* Address review comments

* Update docs/sources/guides/whats-new-in-v7-2.md

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

* Change new loki feature title

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-09-17 08:05:58 +02:00
Nick Svanidze
5a06ed431c ApiKeys: Fixes close('X') button layout issue (#27625)
* ApiKeys: Fixes add API key layout

* ApiKeys: snapshot tests updated
2020-09-17 07:36:47 +02:00
Torkel Ödegaard
31e2b7e7c8 SharedQuery: Error when switching to -- Dashboard -- data source caused "no data" no matter what source panel was selected (#27627)
* SharedQuery: Error when switching to -- Dashboard -- data source made observable subscription error and subsequent data results not update visualization

* added null check just in case
2020-09-17 07:36:18 +02:00
Torkel Ödegaard
c450ffd711 ImageRendering: Fix rendering panel using shared query in png, PDF reports and embedded scenarios (#27628)
* ImageRendering: Fixed issue rendering panel using shared query

* Fixed spelling
2020-09-17 07:35:24 +02:00
Diana Payton
078eb3c728 Docs: What's new in 7.2 edits (#27607)
* Update configuration.md

* Update whats-new-in-v7-2.md

* edited content

* Update whats-new-in-v7-2.md

* Update docs/sources/guides/whats-new-in-v7-2.md

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>

* Update table-panel.md

* Update whats-new-in-v7-2.md

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
2020-09-16 11:21:53 -07:00
Torkel Ödegaard
fcfd5cf0bc DataLinks: Fixes issue with data links not interpolating values with correct field config (#27622)
* DataLinks: Fixes issue with data links not having access to other fields field config

* Fixed test
2020-09-16 20:07:14 +02:00
Ryan McKinley
e3b79ac428 Chore: remove version from text panel (#27624) 2020-09-16 11:04:27 -07:00
Kyle Brandt
50c680f3d7 BackendPlugins: Point to request Headers in the wrapper (#27599)
In particular, so plugins can see the FromAlert header
2020-09-16 10:12:39 -04:00
Marcus Olsson
e6453198a9 Docs: Add data frames plugin guide (#27430) 2020-09-16 14:39:46 +02:00
Torkel Ödegaard
2ed9124736 InputControl: Fixed using InputControl in unit tests from plugins (#27615) 2020-09-16 13:29:59 +02:00
Torkel Ödegaard
b58864792d NewsPanel: Fixed XSS issue when rendering rss links (#27612) 2020-09-16 11:15:56 +02:00
Torkel Ödegaard
58124efdb5 Docs: Rename field configuration options page to field options (#27604) 2020-09-16 09:38:28 +02:00
Diana Payton
9e19f4d683 Update _index.md (#27605) 2020-09-15 16:55:39 -04:00
achatterjee-grafana
b9b96e4d25 Updated Grafana requirements topic (#27602)
* Updated file to change description of Enterprise.

* Removed duplicate content w.r.t Grafana installation and support.

* Replaced "not" with "neither".
2020-09-15 16:03:56 -04:00
Steven Vachon
ed4ef0862d @grafana/e2e: annotation improvements (#27582)
* Removed Datadog-specific fields from config for annotation creation

* Added a custom form config option for annotation creation

* Added regex support to `selectOption`
2020-09-15 15:10:56 -04:00
Ryan McKinley
54b677bda4 Graph: show range warning when all data is outside time range (#27603) 2020-09-15 11:55:34 -07:00
achatterjee-grafana
a524c57261 Updated file to change description of Enterprise. (#27601) 2020-09-15 13:44:31 -04:00
Sofia Papagiannaki
30ee860a18 Docs: Fix dashboard provisioning example (#27595)
Remove unsupported editable field
removed in SHA: d6faa3d06f
2020-09-15 18:56:53 +03:00
Emil Tullstedt
2e4191afca Chore(crewjam/saml): go get -u (#27598) 2020-09-15 16:38:23 +02:00
Lenahilin
13ef1bea74 Fixing args order for admin password reset command (#27594)
Putting the optional argument "--homepath"  after the command. The previous one throws the following error: "Incorrect Usage. flag provided but not defined: -homepath". See also https://community.grafana.com/t/admin-password-reset/19455/9
2020-09-15 09:22:37 -04:00
Wouter Smeenk
39eba5065b Dashboard: Support configuring default timezone via config file (#27404)
Add a default timezone that the administrator can set in the settings. 
This setting is be used as default for the users timezone preference.
Can be used when creating Grafana instances without administrator 
intervention, in order to give user the correct default timezone.

Fixes #25654
2020-09-15 15:20:53 +02:00
Dan Cech
53153c82fc add method to get usage report (#27555) 2020-09-15 09:01:15 -04:00
Torkel Ödegaard
cade6dd010 Docs: Field config docs update, Table docs update, Override matcher naming issue (#27558)
* Docs: Field Config Docs Update, Table Docs update, Override matcher naming sync

* removed sentance that feels duplicated

* Update docs/sources/panels/field-configuration-options.md

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

* Update docs/sources/panels/field-configuration-options.md

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

* Update docs/sources/panels/field-configuration-options.md

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

* Update docs/sources/panels/field-configuration-options.md

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

* removed bad newlines and minor tweaks, still need to figure out naming for matchers in UI and docs

* Updated matcher names and descriptions, and UX

* Updated field override docs

* Fixed plural

* Updated wording

* removed plurals for the selectors heading

* Updated names

* Updated docs

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-09-15 14:49:16 +02:00
Ryan McKinley
1e4846d443 Annotation: use DataFrame[] rather than a single DataFrame (#27587) 2020-09-15 01:43:31 -07:00
Dominik Prokop
e04e3e7d46 Field config: Add support for paths in default field config setup (#27570)
* Add support for paths in default field config setup

* Typecheck fix
2020-09-15 10:17:58 +02:00
Giordano Ricci
e350e1fff6 Elasticsearch: Increase maximum geohash aggregation precision to 12 (#27539) 2020-09-15 09:15:18 +01:00
Giordano Ricci
a0beaa3bbe Elasticsearch: Allow fields starting with underscore (#27520) 2020-09-15 09:14:47 +01:00
jonny
0d2fbd2acd Variables: Limit rendering of options in dropdown to improve search performance (#27525)
* fixed: bigdata dropdown first limit 1000

* fixed: change to use function of  applylimit

* fixed: remove both applyLimit callers

* feat: test for new logic with applimit

* feat: test showOptions  with the applyLimit logic

* fixed: test equal fixed
2020-09-15 09:52:45 +02:00
Ryan McKinley
aa40320b45 Live: check logged-in-user for grafana live (#27436) 2020-09-15 00:01:14 -07:00
Hugo Häggmark
a587bf4f56 Postgres: Support request cancellation properly (Uses new backendSrv.fetch Observable request API) (#27478)
* Postgres: Replaces dataSourceRequest with fetch

* Postgres: Replaces dataSourceRequest with fetch

* Tests: removes unnecessary import
2020-09-15 08:06:04 +02:00
Diana Payton
19c5c96d4c Update documentation-style-guide.md (#27581)
* Update documentation-style-guide.md

* Update documentation-style-guide.md
2020-09-14 12:52:59 -07:00
Ryan McKinley
c180facba5 Chore: use visualization name in field config header (#27579) 2020-09-14 11:27:17 -07:00
Amal
0ae534a7f0 Minor correction in docs (#27576)
* Minor correction in docs

* Accepting review recommendation
2020-09-14 14:02:49 -04:00
Amal
6ce7cf8241 Docs: Minor grammatical correction (#27575)
* Minor grammatical correction

* Typo correction in docs
2020-09-14 10:46:54 -07:00
Hansuuuuuuuuuu
8d971ab2f2 Auth: Replace maximum inactive/lifetime settings of days to duration (#27150)
Allows login_maximum_inactive_lifetime_duration and 
login_maximum_lifetime_duration to be configured using 
time.Duration-compatible values while retaining backward compatibility.

Fixes #17554

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2020-09-14 15:57:38 +02:00
Sofia Papagiannaki
f529223455 Fix instrumentation panic if there is no response (#27567) 2020-09-14 14:05:47 +03:00
Torkel Ödegaard
7f6e979056 Fixes typescript issues (#27565) 2020-09-14 10:02:25 +02:00
Torkel Ödegaard
b37e132cec Annotations: Fixes issue with showing error notice for cancelled annotation queries (#27557) 2020-09-14 09:59:12 +02:00
Agnès Toulet
eb970a4985 Org API: enrich add user to org endpoints with user ID in the response (#27551) 2020-09-14 08:58:23 +02:00
Torkel Ödegaard
8759a91222 PanelEdit: Drag and drop query order & UI tweaks (#27502)
* PanelEdit: Drag and drop query order & UI tweaks

* Fixed width of title issue

* added correct color and hover

* Updated e2e tests
2020-09-14 08:54:42 +02:00
Marcus Andersson
0c8390cea2 Templating: global/system variables should be properly replaced in templated values. (#27394)
* Fixed so we try to use the variables in the redux store to replace values in template variables.

* First draft of working version.

* Including fieldPath when adding :text format.

* cleaned up code by introducing helper function.

* some minor refactoring.

* Added tests and support for multi variables.

* added test and code to handle the All scenario of a multivariable.

* fixed according to feedback.

* added docs.

* added text format to gdev dashboard.

* updated e2e tests.

* make sure we use the same function for formatting och variable lable.

* increased the number to 22.

* changed label for tests to be All.

* existing format should be respected.
2020-09-14 08:05:51 +02:00
Ryan McKinley
b3b72b8ae6 Toolkit: clean node_modules/@grafana/data/node_modules in prepare (#27554) 2020-09-12 16:45:33 -07:00
Arve Knudsen
b6172b11b3 Docs: Fix Docker docs wrt. master images (#27508)
* Docs: Fix Docker docs wrt. master images

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-09-12 11:27:13 +02:00
Agnès Toulet
0c4b7d3f5d Alerting API: send 404 not found error and enrich delete with UID endpoint response with alert notification ID (#27550)
* Alerting API: Send back 404 not found error for update and delete endpoints

* Alerting API: send back alert notification id for delete with uid endpoint
2020-09-11 18:04:43 +02:00
Bill Oley
19caa100dc OAuth: Fix token refresh failure when custom SSL settings are configured for OAuth provider (#27523)
OAuth token refresh fails when custom SSL settings are configured for 
oauth provider. These changes makes sure that custom SSL settings 
are applied for HTTP client before refreshing token.

Fixes #27514
2020-09-11 17:25:03 +02:00
Ryan McKinley
5d11d8faa3 Annotations: add standard annotations support (and use it for flux queries) (#27375) 2020-09-11 08:09:44 -07:00
Peter Holmberg
4707508f4b grafana/ui: Documenting DataSourceHttpSettings (#27547)
* documenting component

* Update packages/grafana-ui/src/components/DataSourceSettings/DataSourceHttpSettings.mdx

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

* text updates

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2020-09-11 15:53:55 +02:00
Alex Khomenko
126683929c Grafana-UI: Expand ConfirmModal docs (#27541) 2020-09-11 16:45:39 +03:00
Marcus Efraimsson
1983de962c BootData: Fix nav tree sort regression (#27533)
#26395 introduced a regression regarding sort order of nav tree
items set in Grafana boot data and used for rendering the sidemenu.
This fixes so that sort happens after RunIndexDataHooks is called
in case the hook make changes to the nav tree.
2020-09-11 15:17:41 +02:00
Torkel Ödegaard
61463aa123 Transform: Fixed issue in labels to fields and update docs (#27501) 2020-09-11 15:03:10 +02:00
Leonard Gram
6932b459f5 What's New: some minor edits in the enterprise section (#27532)
* What's New: some minor edits in the enterprise section

* Update docs/sources/guides/whats-new-in-v7-2.md

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

* Update docs/sources/guides/whats-new-in-v7-2.md

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

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
2020-09-11 14:48:20 +02:00
Sofia Papagiannaki
924224eefb Revert "Alerting: New feature toggle for enabling standalone alerts (#25984)" (#27531)
This reverts commit 20b603ee1a.
2020-09-11 13:57:46 +03:00
Marcus Andersson
367a403406 Docs: "7.2 what's new article" updated with images and information about ADX. (#27504)
* Added images for transformation and some extra information about ADX.

* updated the adx text a bit more.!
2020-09-11 12:21:32 +02:00
Berbe
794333de3d Binary-prefixed data rates (#27022)
* Dashboard: Merge Data units categories

Prefixes already allow to distinguish IEC units from SI ones
+ Prefer using binary function over decimal one when equal

* Dashboard: Clarify SI & binary prefixes

* Dashboard: Homogeneise rate units

* Dashboard: Add Binary (IEC) prefix for data rates
2020-09-11 10:42:54 +02:00
Alex Khomenko
4167f9d8d7 Docs: Add 7.2 Enterprise features (#27497)
* Docs: Add new Enterprise features

* Docs: Fix spelling

* Update docs/sources/guides/whats-new-in-v7-2.md

Co-authored-by: Agnès Toulet <35176601+AgnesToulet@users.noreply.github.com>

* Docs: Add top links

Co-authored-by: Agnès Toulet <35176601+AgnesToulet@users.noreply.github.com>
2020-09-11 09:33:52 +02:00
Maksim Nabokikh
6e3e0dead8 Provisioning: Remove provisioned dashboards without parental reader (#26143) 2020-09-11 09:19:44 +02:00
Torkel Ödegaard
0132bca93a Notifications: UX tweak to redesign of form and sections to make it left aligned and cleaner (#27479)
* UX: Redesign of form and sections to make it left aligned and cleaner

* reduced padding

* design tweaks
2020-09-11 08:10:07 +02:00
Zoltán Bedi
a7ac3f1419 Prometheus: Fix min step variable interpolation (#27505)
* Add missing dependency to lockfile

* Prometheus: Fix min step variable interpolation
2020-09-10 20:31:53 +02:00
Marcus Efraimsson
9928f925ae Docs: Alert notification channel secure settings update (#27515)
Adds some updated upgrade notes for 7.2 regarding secure 
settings for alert notification channels. Also adds a section 
about this in the What's new article.

Ref #26172
2020-09-10 20:23:53 +02:00
Marcus Efraimsson
e85b266f2e Azure/Insights: Fix handling of none dimension values (#27513)
Properly handle legacy dimension values in the backend.

Fixes #27512
2020-09-10 18:21:56 +02:00
Marcus Efraimsson
91a8937e6c Alerting: Fix integration key so it's stored encrypted for Pagerduty notifier (#27484)
Fixes an issue introduced by migration in #25980 which 
removed storing the Pagerduty integrating key encrypted.
2020-09-10 17:43:49 +02:00
Steven Vachon
d9320e37f4 @grafana/e2e: avoid query data flakiness (#27511) 2020-09-10 11:40:44 -04:00
Marcus Efraimsson
ee91fc365e Changelog: 7.2.0-beta1 update (#27498)
Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2020-09-10 11:51:03 +02:00
Marcus Andersson
be8bc512cb Chore: latest.json for v7.2.0-beta1. (#27481) 2020-09-09 18:36:03 +02:00
Marcus Andersson
027a11210d Chore: change log for v7.2.0-beta1. (#27480) 2020-09-09 17:40:51 +02:00
Torkel Ödegaard
964fb8a5b1 Docs: What's new in 7.2 (#27462)
* Docs: What's new for 7.2 initial draft

* Updated content and images

* Updated with a top toc / links section
2020-09-09 16:59:34 +02:00
Oana Mangiurea
b01a64e146 Update Input.mdx (#26226)
* Update Input.mdx

clarify form validation text

* Update packages/grafana-ui/src/components/Input/Input.mdx

Align with textArea

Co-authored-by: Peter Holmberg <peterholmberg@users.noreply.github.com>

Co-authored-by: Peter Holmberg <peterholmberg@users.noreply.github.com>
Co-authored-by: Clarity-89 <homes89@ukr.net>
2020-09-09 17:24:31 +03:00
Alex Khomenko
1a5c049883 Grafana-UI: Add docs for ConfirmButton (#27477)
* Grafana-UI: Add docs for ConfirmButton

* Grafana-UI: Add comment

* Update packages/grafana-ui/src/components/ConfirmButton/ConfirmButton.mdx

Co-authored-by: Peter Holmberg <peterholmberg@users.noreply.github.com>

Co-authored-by: Peter Holmberg <peterholmberg@users.noreply.github.com>
2020-09-09 17:07:53 +03:00
Marcus Andersson
d75758071b Chore: bumped to next version 7.3.0-pre (#27476)
* bumped version to the next minor.

* bumped packages version to the next minor.
2020-09-09 15:43:37 +02:00
Steven Vachon
2e3b6b6850 Docs: E2E (#27461)
* Separated generalized E2E docs from that of core

… and rewrote some minor things to be more concise for faster reads.

* Added plugins E2E document
2020-09-09 08:55:42 -04:00
2003 changed files with 48744 additions and 55038 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -1,5 +1,9 @@
load('scripts/lib.star', 'pr_pipelines', 'master_pipelines')
load('scripts/pr.star', 'pr_pipelines')
load('scripts/master.star', 'master_pipelines')
load('scripts/release.star', 'release_pipelines', 'test_release_pipelines')
load('scripts/version.star', 'version_branch_pipelines')
def main(ctx):
edition = 'oss'
return pr_pipelines(edition=edition) + master_pipelines(edition=edition)
return pr_pipelines(edition=edition) + master_pipelines(edition=edition) + release_pipelines() + \
test_release_pipelines() + version_branch_pipelines()

2484
.drone.yml

File diff suppressed because it is too large Load Diff

7
.eslintignore Normal file
View File

@@ -0,0 +1,7 @@
node_modules
compiled
build
vendor
devenv
data
dist

View File

@@ -3,7 +3,7 @@
"root": true,
"overrides": [
{
"files": ["packages/**/*.{ts,tsx}", "public/app/**/*.{ts,tsx}"],
"files": ["packages/grafana-ui/**/*/!(*.story).{ts,tsx}", "public/app/**/*.{ts,tsx}"],
"rules": {
"react-hooks/rules-of-hooks": "off",
"react-hooks/exhaustive-deps": "off"

2
.github/CODEOWNERS vendored
View File

@@ -14,7 +14,7 @@
# Documentation owner: Diana Payton
/docs/ @oddlittlebird @achatterjee-grafana
/contribute/ @oddlittlebird @marcusolsson @achatterjee-grafana
/docs/sources/developers/plugins/ @marcusolsson
# Backend code
*.go @grafana/backend-platform

View File

@@ -9,9 +9,9 @@ Please use this template to create your bug report. By providing as much info as
PROTIP: record your screen and attach it as a gif to showcase the issue.
* Questions should be posted to: https://community.grafana.com
* Use query inspector to troubleshoot issues: https://bit.ly/2XNF6YS
* How to record and attach gif: https://bit.ly/2Mi8T6K
- Questions should be posted to: https://community.grafana.com
- Use query inspector to troubleshoot issues: https://bit.ly/2XNF6YS
- How to record and attach gif: https://bit.ly/2Mi8T6K
-->
**What happened**:

View File

@@ -22,7 +22,7 @@ Thank you for sending a pull request! Here are some tips:
<!--
* Automatically closes linked issue when the Pull Request is merged.
- Automatically closes linked issue when the Pull Request is merged.
Usage: "Fixes #<issue number>", or "Fixes (paste link of issue)"

View File

@@ -8,7 +8,7 @@ This can be especially useful for publishing static website, such as with
[GitHub Pages](https://pages.github.com/), from built files in other job
steps, such as [Doxygen](http://www.doxygen.nl/) generated HTML files.
**NOTE**: GitHub currently requires the use of a Personal Access Token for
> **Note:** GitHub currently requires the use of a Personal Access Token for
pushing to other repositories. Pushing to the current repository should work
with the always-available GitHub Token (available via
`{{ secrets.GITHUB_TOKEN }}`. If pushing to another repository, a Personal

27
.github/commands.json vendored Normal file
View File

@@ -0,0 +1,27 @@
[
{
"type": "label",
"name": "type/question",
"action": "close",
"comment": "Please ask your question on [community.grafana.com/](https://community.grafana.com/). To avoid having your issue closed in the future, please read our [CONTRIBUTING](https://github.com/grafana/grafana/blob/master/CONTRIBUTING.md) guidelines.\n\nHappy graphing!"
},
{
"type": "comment",
"name": "duplicate",
"allowUsers": [],
"action": "updateLabels",
"addLabel": "type/duplicate"
},
{
"type": "label",
"name": "type/duplicate",
"action": "close",
"comment": "Thanks for creating this issue! It looks like this has already been reported by another user. Weve closed this in favor of the existing one. Please consider adding any details you think is missing to that issue.\n\nTo avoid having your issue closed in the future, please read our [CONTRIBUTING](https://github.com/grafana/grafana/blob/master/CONTRIBUTING.md) guidelines.\n\nHappy graphing!"
},
{
"type": "label",
"name": "no new info",
"action": "close",
"comment": "We've closed this issue since it needs more information and hasn't had any activity recently. We can re-open it after you you add more information. To avoid having your issue closed in the future, please read our [CONTRIBUTING](https://github.com/grafana/grafana/blob/master/CONTRIBUTING.md) guidelines.\n\nHappy graphing!"
}
]

27
.github/workflows/bump-version.yml vendored Normal file
View File

@@ -0,0 +1,27 @@
name: Bump version
on:
workflow_dispatch:
inputs:
version:
required: true
default: '7.x.x'
jobs:
main:
runs-on: ubuntu-latest
steps:
- name: Checkout Actions
uses: actions/checkout@v2
with:
repository: "grafana/grafana-github-actions"
path: ./actions
ref: main
- uses: actions/setup-node@v1
with:
node-version: '12'
- name: Install Actions
run: npm install --production --prefix ./actions
- name: Run bump version
uses: ./actions/bump-version
with:
token: ${{secrets.GH_BOT_ACCESS_TOKEN}}
metricsWriteAPIKey: ${{secrets.GRAFANA_MISC_STATS_API_KEY}}

71
.github/workflows/codeql-analysis.yml vendored Normal file
View File

@@ -0,0 +1,71 @@
# For most projects, this workflow file will not need changing; you simply need
# to commit it to your repository.
#
# You may wish to alter this file to override the set of languages analyzed,
# or to provide custom queries or build logic.
name: "CodeQL"
on:
push:
branches: [master, v1.8.x, v2.0.x, v2.1.x, v2.6.x, v3.0.x, v3.1.x, v4.0.x, v4.1.x, v4.2.x, v4.3.x, v4.4.x, v4.5.x, v4.6.x, v4.7.x, v5.0.x, v5.1.x, v5.2.x, v5.3.x, v5.4.x, v6.0.x, v6.1.x, v6.2.x, v6.3.x, v6.4.x, v6.5.x, v6.6.x, v6.7.x, v7.0.x, v7.1.x, v7.2.x]
pull_request:
# The branches below must be a subset of the branches above
branches: [master]
schedule:
- cron: '0 4 * * 6'
jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
# Override automatic language detection by changing the below list
# Supported options are ['csharp', 'cpp', 'go', 'java', 'javascript', 'python']
language: ['javascript', 'go', 'python']
# Learn more...
# https://docs.github.com/en/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#overriding-automatic-language-detection
steps:
- name: Checkout repository
uses: actions/checkout@v2
with:
# We must fetch at least the immediate parents so that if this is
# a pull request then we can checkout the head.
fetch-depth: 2
# If this run was triggered by a pull request event, then checkout
# the head of the pull request instead of the merge commit.
- run: git checkout HEAD^2
if: ${{ github.event_name == 'pull_request' }}
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v1
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
# By default, queries listed here will override any specified in a config file.
# Prefix the list here with "+" to use these queries and those in the config file.
# queries: ./path/to/local/query, your-org/your-repo/queries@main
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@v1
# Command-line programs to run using the OS shell.
# 📚 https://git.io/JvXDl
# ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
# and modify them (or add more) to build your code if your project
# uses a compiled language
#- run: |
# make bootstrap
# make release
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v1

25
.github/workflows/commands.yml vendored Normal file
View File

@@ -0,0 +1,25 @@
name: Run commands when issues are labeled or comments added
on:
issues:
types: [labeled]
issue_comment:
types: [created]
jobs:
main:
runs-on: ubuntu-latest
steps:
- name: Checkout Actions
uses: actions/checkout@v2
with:
repository: "grafana/grafana-github-actions"
path: ./actions
ref: main
- name: Install Actions
run: npm install --production --prefix ./actions
- name: Run Commands
uses: ./actions/commands
with:
metricsWriteAPIKey: ${{secrets.GRAFANA_MISC_STATS_API_KEY}}
token: ${{secrets.GH_BOT_ACCESS_TOKEN}}
config-path: commands

34
.github/workflows/metrics-collector.yml vendored Normal file
View File

@@ -0,0 +1,34 @@
#
# When triggered by the cron job it will also collect metrics for:
# * number of issues without label
# * number of issues with "needs more info"
# * number of issues with "needs investigation"
# * number of issues with label type/bug
# * number of open issues in current milestone
#
# https://github.com/grafana/grafana-github-actions/blob/main/metrics-collector/index.ts
#
name: Github issue metrics collection
on:
schedule:
- cron: "*/10 * * * *"
issues:
types: [opened, closed]
jobs:
main:
runs-on: ubuntu-latest
steps:
- name: Checkout Actions
uses: actions/checkout@v2
with:
repository: "grafana/grafana-github-actions"
path: ./actions
ref: main
- name: Install Actions
run: npm install --production --prefix ./actions
- name: Run metrics collector
uses: ./actions/metrics-collector
with:
metricsWriteAPIKey: ${{secrets.GRAFANA_MISC_STATS_API_KEY}}
token: ${{secrets.GH_BOT_ACCESS_TOKEN}}

View File

@@ -6,6 +6,7 @@ on:
- master
paths:
- 'docs/sources/**'
- 'packages/grafana-*/**'
jobs:
build:
@@ -14,6 +15,13 @@ jobs:
steps:
- uses: actions/checkout@v1
- name: generate-packages-docs
uses: actions/setup-node@v1
id: generate-docs
with:
node-version: '12'
- run: yarn install --pure-lockfile --no-progress
- run: ./scripts/ci-reference-docs-build.sh
- name: publish-to-git
uses: ./.github/actions/gha-publish-to-git
id: publish

View File

@@ -6,4 +6,4 @@ node_modules
public/vendor/
vendor/
data/
e2e/tmp

View File

@@ -1,221 +1,432 @@
# 7.2.0-beta1 (unreleased)
# 7.3.0-beta1 (2020-10-15)
### Breaking changes
* **Units**: The date time units `YYYY-MM-DD HH:mm:ss` and `MM/DD/YYYY h:mm:ss a` have been renamed to `Datetime ISO`
- **CloudWatch**: The AWS CloudWatch data source's authentication scheme has changed. See the [upgrade notes](https://grafana.com/docs/grafana/latest/installation/upgrading/#upgrading-to-v73) for details and how this may affect you.
### Features / Enhancements
* **Alerting**: Add labels to name when converting data frame to series. [#28085](https://github.com/grafana/grafana/pull/28085), [@kylebrandt](https://github.com/kylebrandt)
* **Alerting**: Ensuring LINE Notify notifications are sent for all alert states. [#27639](https://github.com/grafana/grafana/pull/27639), [@haraldkubota](https://github.com/haraldkubota)
* **Auth**: Add SigV4 auth option to datasources. [#27552](https://github.com/grafana/grafana/pull/27552), [@wbrowne](https://github.com/wbrowne)
* **AzureMonitor**: Pass through null values instead of setting 0. [#28126](https://github.com/grafana/grafana/pull/28126), [@kylebrandt](https://github.com/kylebrandt)
* **Cloud Monitoring**: Out-of-the-box dashboards. [#27864](https://github.com/grafana/grafana/pull/27864), [@papagian](https://github.com/papagian)
* **CloudWatch**: Add support for AWS DirectConnect virtual interface metrics and add missing dimensions. [#28008](https://github.com/grafana/grafana/pull/28008), [@jgulick48](https://github.com/jgulick48)
* **CloudWatch**: Adding support for Amazon ElastiCache Redis metrics. [#28040](https://github.com/grafana/grafana/pull/28040), [@jgulick48](https://github.com/jgulick48)
* **CloudWatch**: Adding support for additional Amazon CloudFront metrics. [#28069](https://github.com/grafana/grafana/pull/28069), [@darrylsepeda](https://github.com/darrylsepeda)
* **CloudWatch**: Re-implement authentication. [#25548](https://github.com/grafana/grafana/pull/25548), [@aknuds1](https://github.com/aknuds1),[@patstrom](https://github.com/patstrom)
* **Dashboard**: Allow shortlink generation. [#27409](https://github.com/grafana/grafana/pull/27409), [@MisterSquishy](https://github.com/MisterSquishy)
* **Docker**: OpenShift compatability. [#27813](https://github.com/grafana/grafana/pull/27813), [@xlson](https://github.com/xlson)
* **Elasticsearch**: Support multiple pipeline aggregations for a query. [#27945](https://github.com/grafana/grafana/pull/27945), [@simianhacker](https://github.com/simianhacker)
* **Explore**: Allow shortlink generation. [#28222](https://github.com/grafana/grafana/pull/28222), [@ivanahuckova](https://github.com/ivanahuckova)
* **Explore**: Remove collapsing of visualisations. [#27026](https://github.com/grafana/grafana/pull/27026), [@ivanahuckova](https://github.com/ivanahuckova)
* **FieldColor**: Adds new standard color option for color. [#28039](https://github.com/grafana/grafana/pull/28039), [@torkelo](https://github.com/torkelo)
* **Gauge**: Improve text sizing and support non threshold color modes. [#28256](https://github.com/grafana/grafana/pull/28256), [@torkelo](https://github.com/torkelo)
* **NamedColors**: Named colors refactors. [#28235](https://github.com/grafana/grafana/pull/28235), [@torkelo](https://github.com/torkelo)
* **Panel Inspect**: Allow CSV download for Excel. [#27284](https://github.com/grafana/grafana/pull/27284), [@tomdaly](https://github.com/tomdaly)
* **Prometheus**: Add time range parameters to labels API. [#27548](https://github.com/grafana/grafana/pull/27548), [@kakkoyun](https://github.com/kakkoyun)
* **Snapshots**: Store dashboard data encrypted in the database. [#28129](https://github.com/grafana/grafana/pull/28129), [@wbrowne](https://github.com/wbrowne)
* **Table**: New cell hover behavior and image cell display mode. [#27669](https://github.com/grafana/grafana/pull/27669), [@torkelo](https://github.com/torkelo)
* **Timezones**: Include IANA timezone canonical name in TimeZoneInfo. [#27591](https://github.com/grafana/grafana/pull/27591), [@dprokop](https://github.com/dprokop)
* **Tracing**: Add Tempo data source. [#28204](https://github.com/grafana/grafana/pull/28204), [@aocenas](https://github.com/aocenas)
* **Transformations**: Add Concatenate fields transformer. [#28237](https://github.com/grafana/grafana/pull/28237), [@ryantxu](https://github.com/ryantxu)
* **Transformations**: improve the reduce transformer. [#27875](https://github.com/grafana/grafana/pull/27875), [@ryantxu](https://github.com/ryantxu)
* **Users**: Expire old user invites. [#27361](https://github.com/grafana/grafana/pull/27361), [@wbrowne](https://github.com/wbrowne)
* **Variables**: Adds loading state and indicators. [#27917](https://github.com/grafana/grafana/pull/27917), [@hugohaggmark](https://github.com/hugohaggmark)
* **Variables**: Adds support for key/value mapping in Custom variable. [#27829](https://github.com/grafana/grafana/pull/27829), [@sartaj10](https://github.com/sartaj10)
* **grafana/toolkit**: expose Jest maxWorkers arg for plugin test & build tasks. [#27724](https://github.com/grafana/grafana/pull/27724), [@domasx2](https://github.com/domasx2)
### Bug Fixes
* **Azure Analytics**: FormatAs Time series groups bool columns wrong. [#27713](https://github.com/grafana/grafana/issues/27713)
* **Azure**: Fixes cancellation of requests with different Azure sources. [#28180](https://github.com/grafana/grafana/pull/28180), [@hugohaggmark](https://github.com/hugohaggmark)
* **BackendSrv**: Reloads page instead of redirect on Unauthorized Error. [#28276](https://github.com/grafana/grafana/pull/28276), [@hugohaggmark](https://github.com/hugohaggmark)
* **Dashboard**: Do not allow users without edit permission to a folder to see new dashboard page. [#28249](https://github.com/grafana/grafana/pull/28249), [@torkelo](https://github.com/torkelo)
* **Dashboard**: Fixed issue accessing horizontal table scrollbar when placed at bottom of dashboard. [#28250](https://github.com/grafana/grafana/pull/28250), [@torkelo](https://github.com/torkelo)
* **DataProxy**: Add additional settings for dataproxy to help with network proxy timeouts. [#27841](https://github.com/grafana/grafana/pull/27841), [@kahinton](https://github.com/kahinton)
* **Database**: Adds new indices to alert_notification_state and alert_rule_tag tables. [#28166](https://github.com/grafana/grafana/pull/28166), [@KarineValenca](https://github.com/KarineValenca)
* **Explore**: Fix showing of Prometheus data in Query inspector. [#28128](https://github.com/grafana/grafana/pull/28128), [@ivanahuckova](https://github.com/ivanahuckova)
* **Explore**: Show results of Prometheus instant queries in formatted table. [#27767](https://github.com/grafana/grafana/pull/27767), [@ivanahuckova](https://github.com/ivanahuckova)
* **Graph**: Prevent legend from overflowing container. [#28254](https://github.com/grafana/grafana/pull/28254), [@jackw](https://github.com/jackw)
* **OAuth**: Fix token refresh failure when custom SSL settings are configured for OAuth provider. [#27523](https://github.com/grafana/grafana/pull/27523), [@billoley](https://github.com/billoley)
* **Plugins**: Let descendant plugins inherit their root's signature. [#27970](https://github.com/grafana/grafana/pull/27970), [@aknuds1](https://github.com/aknuds1)
* **Runtime**: Fix handling of short-lived background services. [#28025](https://github.com/grafana/grafana/pull/28025), [@ahlaw](https://github.com/ahlaw)
* **TemplateSrv**: Fix interpolating strings with object variables. [#28171](https://github.com/grafana/grafana/pull/28171), [@torkelo](https://github.com/torkelo)
* **Variables**: Fixes so constants set from url get completed state. [#28257](https://github.com/grafana/grafana/pull/28257), [@hugohaggmark](https://github.com/hugohaggmark)
* **Variables**: Prevent adhoc filters from crashing when they are not loaded properly. [#28226](https://github.com/grafana/grafana/pull/28226), [@mckn](https://github.com/mckn)
# 7.2.2 (2020-10-21)
### Features / Enhancements
**Caution:** Please do not use/enable the `database_metrics` feature flag. It will corrupt MySQL database tables. See [#28440](https://github.com/grafana/grafana/issues/28440) for more information.
~~**Instrumentation**: Add counters and histograms for database queries. [#28236](https://github.com/grafana/grafana/pull/28236), [@bergquist](https://github.com/bergquist)~~
- **Instrumentation**: Add histogram for request duration. [#28364](https://github.com/grafana/grafana/pull/28364), [@bergquist](https://github.com/bergquist)
- **Instrumentation**: Adds environment_info metric. [#28355](https://github.com/grafana/grafana/pull/28355), [@bergquist](https://github.com/bergquist)
### Bug Fixes
- **CloudWatch**: Fix custom metrics. [#28391](https://github.com/grafana/grafana/pull/28391), [@aknuds1](https://github.com/aknuds1)
# 7.2.1 (2020-10-08)
### Features / Enhancements
* **Api**: Add /healthz endpoint for health checks. [#27536](https://github.com/grafana/grafana/pull/27536), [@bergquist](https://github.com/bergquist)
* **Api**: Healthchecks should not be rejected due to domain enforcement checks. [#27981](https://github.com/grafana/grafana/pull/27981), [@bergquist](https://github.com/bergquist)
* **Instrumentation**: Removes invalid chars from label names. [#27921](https://github.com/grafana/grafana/pull/27921), [@bergquist](https://github.com/bergquist)
* **Orgs**: Remove organisations deprecation notice from backend. [#27788](https://github.com/grafana/grafana/pull/27788), [@wbrowne](https://github.com/wbrowne)
* **Toolkit**: Add --coverage flag to plugin build command. [#27743](https://github.com/grafana/grafana/pull/27743), [@gassiss](https://github.com/gassiss)
### Bug Fixes
* **BarGauge**: Fixed scrollbar showing for bar gauge in Firefox. [#27784](https://github.com/grafana/grafana/pull/27784), [@torkelo](https://github.com/torkelo)
* **Dashboard**: Honour root_url for Explore link. [#27654](https://github.com/grafana/grafana/pull/27654), [@tiagomotasantos](https://github.com/tiagomotasantos)
* **DashboardLinks**: values in links are updated when variables change. [#27926](https://github.com/grafana/grafana/pull/27926), [@hugohaggmark](https://github.com/hugohaggmark)
* **Elasticsearch**: Add query's refId to each series returned by a query. [#27614](https://github.com/grafana/grafana/pull/27614), [@Elfo404](https://github.com/Elfo404)
* **Elasticsearch**: Fix ad-hoc filter support for Raw Data query and new table panel. [#28064](https://github.com/grafana/grafana/pull/28064), [@Elfo404](https://github.com/Elfo404)
* **Graph**: Fixed histogram bucket calculations to avoid missing buckets. [#27883](https://github.com/grafana/grafana/pull/27883), [@torkelo](https://github.com/torkelo)
* **Loki**: Run instant query only in Explore. [#27974](https://github.com/grafana/grafana/pull/27974), [@ivanahuckova](https://github.com/ivanahuckova)
* **Units**: bps & Bps default scale remains decimal (backwards-compatibility). [#27838](https://github.com/grafana/grafana/pull/27838), [@Berbe](https://github.com/Berbe)
* **ValueMappings**: Fix issue with value mappings in override applying to all columns. [#27718](https://github.com/grafana/grafana/pull/27718), [@torkelo](https://github.com/torkelo)
# 7.2.0 (2020-09-23)
### Features / Enhancements
- **Alerting**: Ensuring notifications displayed correctly in mobile device with Google Chat. [#27578](https://github.com/grafana/grafana/pull/27578), [@alvarolmedo](https://github.com/alvarolmedo)
- **TraceView**: Show full traceID and better discern multiple stackTraces in span details. [#27710](https://github.com/grafana/grafana/pull/27710), [@aocenas](https://github.com/aocenas)
### Bug Fixes
- **DataLinks**: Fixes issue with data links not interpolating values with correct field config. [#27622](https://github.com/grafana/grafana/pull/27622), [@torkelo](https://github.com/torkelo)
- **DataProxy**: Ignore empty URL's in plugin routes. [#27653](https://github.com/grafana/grafana/pull/27653), [@domasx2](https://github.com/domasx2)
- **Field config**: Respect config paths when rendering default value of field config property. [#27652](https://github.com/grafana/grafana/pull/27652), [@dprokop](https://github.com/dprokop)
- **Field config**: Fix mismatch in field config editor types. [#27657](https://github.com/grafana/grafana/pull/27657), [@dprokop](https://github.com/dprokop)
- **Panel editor**: Prevents adding transformations in panels with alerts. [#27706](https://github.com/grafana/grafana/pull/27706), [@hugohaggmark](https://github.com/hugohaggmark)
- **Stat panel**: Fix problem where string values where always green. [#27656](https://github.com/grafana/grafana/pull/27656), [@peterholmberg](https://github.com/peterholmberg)
# 7.2.0-beta2 (2020-09-17)
### Features / Enhancements
- **API**: Enrich add user to org endpoints with user ID in the response. [#27551](https://github.com/grafana/grafana/pull/27551), [@AgnesToulet](https://github.com/AgnesToulet)
- **API**: Enrich responses and improve error handling for alerting API endpoints. [#27550](https://github.com/grafana/grafana/pull/27550), [@AgnesToulet](https://github.com/AgnesToulet)
- **Auth**: Replace maximum inactive/lifetime settings of days to duration. [#27150](https://github.com/grafana/grafana/pull/27150), [@Hansuuuuuuuuuu](https://github.com/Hansuuuuuuuuuu)
- **Dashboard**: Support configuring default timezone via config file. [#27404](https://github.com/grafana/grafana/pull/27404), [@woutersmeenk](https://github.com/woutersmeenk)
- **Elasticsearch**: Add support for date_nanos type. [#27538](https://github.com/grafana/grafana/pull/27538), [@Elfo404](https://github.com/Elfo404)
- **Elasticsearch**: Allow fields starting with underscore. [#27520](https://github.com/grafana/grafana/pull/27520), [@Elfo404](https://github.com/Elfo404)
- **Elasticsearch**: Increase maximum geohash aggregation precision to 12. [#27539](https://github.com/grafana/grafana/pull/27539), [@Elfo404](https://github.com/Elfo404)
- **Field config**: Add support for paths in default field config setup. [#27570](https://github.com/grafana/grafana/pull/27570), [@dprokop](https://github.com/dprokop)
- **Postgres**: Support request cancellation properly (Uses new backendSrv.fetch Observable request API). [#27478](https://github.com/grafana/grafana/pull/27478), [@hugohaggmark](https://github.com/hugohaggmark)
- **Provisioning**: Remove provisioned dashboards without parental reader. [#26143](https://github.com/grafana/grafana/pull/26143), [@nabokihms](https://github.com/nabokihms)
- **Variables**: Limit rendering of options in dropdown to improve search performance. [#27525](https://github.com/grafana/grafana/pull/27525), [@guoqn](https://github.com/guoqn)
- **Units**: Binary-prefixed data rates. [#27022](https://github.com/grafana/grafana/pull/27022), [@Berbe](https://github.com/Berbe)
### Bug Fixes
- **Admin**: Fixes close('X') button layout issue in API keys page. [#27625](https://github.com/grafana/grafana/pull/27625), [@nikasvan](https://github.com/nikasvan)
- **Alerting**: Fix integration key so it's stored encrypted for Pagerduty notifier. [#27484](https://github.com/grafana/grafana/pull/27484), [@marefr](https://github.com/marefr)
- **Annotations**: Fixes issue with showing error notice for cancelled annotation queries. [#27557](https://github.com/grafana/grafana/pull/27557), [@torkelo](https://github.com/torkelo)
- **Azure/Insights**: Fix handling of legacy dimension values. [#27513](https://github.com/grafana/grafana/pull/27513), [@marefr](https://github.com/marefr)
- **DataLinks**: Respects display name and adds field quoting. [#27616](https://github.com/grafana/grafana/pull/27616), [@hugohaggmark](https://github.com/hugohaggmark)
- **ImageRendering**: Fix rendering panel using shared query in png, PDF reports and embedded scenarios. [#27628](https://github.com/grafana/grafana/pull/27628), [@torkelo](https://github.com/torkelo)
- **InputControl**: Fixed using InputControl in unit tests from plugins. [#27615](https://github.com/grafana/grafana/pull/27615), [@torkelo](https://github.com/torkelo)
- **NewsPanel**: Fixed XSS issue when rendering rss links. [#27612](https://github.com/grafana/grafana/pull/27612), [@torkelo](https://github.com/torkelo)
- **Transforms**: Fix for issue in labels to fields transform where the new option value field name did not work properly. [#27501](https://github.com/grafana/grafana/pull/27501), [@torkelo](https://github.com/torkelo)
# 7.2.0-beta1 (2020-09-09)
### Breaking changes
- **Units**: The date time units `YYYY-MM-DD HH:mm:ss` and `MM/DD/YYYY h:mm:ss a` have been renamed to `Datetime ISO`
and `Datetime US` respectively. This is no breaking change just a visual name change (the unit id is unchanged). The
unit behavior is different however, it no longer hides the date part if the date is today. If you want this old
behavior you need to change unit to `Datetime ISO (No date if today)` or `Datetime US (No date if today)`.
### Features / Enhancements
- **API**: Return ID of the deleted resource for dashboard, datasource and folder DELETE endpoints. [#26691](https://github.com/grafana/grafana/pull/26691), [@AgnesToulet](https://github.com/AgnesToulet)
- **API**: Support paging in the admin orgs list API. [#26932](https://github.com/grafana/grafana/pull/26932), [@benjaminjb](https://github.com/benjaminjb)
- **API**: return resource ID for auth key creation, folder permissions update and user invite complete endpoints. [#27419](https://github.com/grafana/grafana/pull/27419), [@AgnesToulet](https://github.com/AgnesToulet)
- **Alerting**: Add toggle to disable alert threshold visibility in graph panel. [#25705](https://github.com/grafana/grafana/pull/25705), [@jpalpant](https://github.com/jpalpant)
- **Alerting**: Adds support for overriding 'dedup_key' via alert tags when using the Pagerduty notifier. [#27356](https://github.com/grafana/grafana/pull/27356), [@alavrovinfb](https://github.com/alavrovinfb)
- **Alerting**: Change alert rule link in alert notifications to open panel in view mode. [#27378](https://github.com/grafana/grafana/pull/27378), [@robertlestak](https://github.com/robertlestak)
- **Alerting**: Support storing sensitive notifier settings securely/encrypted. [#25114](https://github.com/grafana/grafana/pull/25114), [@mtanda](https://github.com/mtanda)
- **Annotation**: Add clean up job for old annotations. [#26156](https://github.com/grafana/grafana/pull/26156), [@bergquist](https://github.com/bergquist)
- **AzureMonitor**: select plugin route from cloudname. [#27273](https://github.com/grafana/grafana/pull/27273), [@kylebrandt](https://github.com/kylebrandt)
- **BackendSrv**: Uses credentials, deprecates withCredentials & defaults to same-origin. [#27385](https://github.com/grafana/grafana/pull/27385), [@hugohaggmark](https://github.com/hugohaggmark)
- **Chore**: Upgrade to Go 1.15.1. [#27326](https://github.com/grafana/grafana/pull/27326), [@aknuds1](https://github.com/aknuds1)
- **CloudWatch**: Update list of AmazonMQ metrics and dimensions. [#27332](https://github.com/grafana/grafana/pull/27332), [@szymonpk](https://github.com/szymonpk)
- **Cloudwatch**: Add Support for external ID in assume role. [#23685](https://github.com/grafana/grafana/pull/23685), [@gdhananjay](https://github.com/gdhananjay)
- **Cloudwatch**: Add af-south-1 region. [#26513](https://github.com/grafana/grafana/pull/26513), [@ruanbekker](https://github.com/ruanbekker)
- **Dashboard**: Add Duplicate dashboard links button to links list. [#26600](https://github.com/grafana/grafana/pull/26600), [@Hmerac](https://github.com/Hmerac)
- **Dashboard**: Adds folder name and link to the dashboard overview on the homepage. [#27214](https://github.com/grafana/grafana/pull/27214), [@michelengelen](https://github.com/michelengelen)
- **Database**: Set 0640 permissions on SQLite database file. [#26339](https://github.com/grafana/grafana/pull/26339), [@aknuds1](https://github.com/aknuds1)
- **DateFormats**: Default ISO & US formats never omit date part even if date is today (breaking change). [#27300](https://github.com/grafana/grafana/pull/27300), [@torkelo](https://github.com/torkelo)
- **Explore/Loki**: POC for toggling parsed fields in the list view. [#26178](https://github.com/grafana/grafana/pull/26178), [@fredr](https://github.com/fredr)
- **Explore**: Sort order of log results. [#26669](https://github.com/grafana/grafana/pull/26669), [@ivanahuckova](https://github.com/ivanahuckova)
- **Explore**: Transform prometheus query to elasticsearch query. [#23670](https://github.com/grafana/grafana/pull/23670), [@melchiormoulin](https://github.com/melchiormoulin)
- **Field overrides**: Overrides UI improvements. [#27073](https://github.com/grafana/grafana/pull/27073), [@dprokop](https://github.com/dprokop)
- **Heatmap**: Reduce the aggressiveness of hiding ticks/labels when panel is small. [#27016](https://github.com/grafana/grafana/pull/27016), [@lrstanley](https://github.com/lrstanley)
- **Image Store**: Add support for using signed URLs when uploading images to GCS. [#26840](https://github.com/grafana/grafana/pull/26840), [@marcosrmendezthd](https://github.com/marcosrmendezthd)
- **Image Store**: Fallback to application default credentials when no key file is specified for GCS. [#25948](https://github.com/grafana/grafana/pull/25948), [@Eraac](https://github.com/Eraac)
- **InfluxDB/Flux**: Increase series limit for Flux datasource. [#26746](https://github.com/grafana/grafana/pull/26746), [@sneddrs](https://github.com/sneddrs)
- **InfluxDB**: exclude result and table column from Flux table results. [#27081](https://github.com/grafana/grafana/pull/27081), [@ryantxu](https://github.com/ryantxu)
- **InfluxDB**: return a table rather than an error when timeseries is missing time. [#27320](https://github.com/grafana/grafana/pull/27320), [@ryantxu](https://github.com/ryantxu)
- **Instrumentation**: Adds instrumentation for outgoing datasource requests. [#27427](https://github.com/grafana/grafana/pull/27427), [@bergquist](https://github.com/bergquist)
- **Loki**: Add scopedVars support in legend formatting for repeated variables. [#27046](https://github.com/grafana/grafana/pull/27046), [@ivanahuckova](https://github.com/ivanahuckova)
- **Loki**: Re-introduce running of instant queries. [#27213](https://github.com/grafana/grafana/pull/27213), [@ivanahuckova](https://github.com/ivanahuckova)
- **Loki**: Support request cancellation properly (Uses new backendSrv.fetch Observable request API). [#27265](https://github.com/grafana/grafana/pull/27265), [@hugohaggmark](https://github.com/hugohaggmark)
- **MixedDatasource**: Shows retrieved data even if a data source fails. [#27024](https://github.com/grafana/grafana/pull/27024), [@hugohaggmark](https://github.com/hugohaggmark)
- **OAuth**: Handle DEFLATE compressed payloads in JWT for Generic OAuth. [#26969](https://github.com/grafana/grafana/pull/26969), [@billoley](https://github.com/billoley)
- **OAuth**: Increase state cookie max age. [#27258](https://github.com/grafana/grafana/pull/27258), [@bergquist](https://github.com/bergquist)
- **Orgs**: Remove org deprecation notice as we have decided to preserve multi-org support. [#26853](https://github.com/grafana/grafana/pull/26853), [@torkelo](https://github.com/torkelo)
- **PanelInspector**: Adds a Raw display mode but defaults to Formatted display mode. [#27306](https://github.com/grafana/grafana/pull/27306), [@hugohaggmark](https://github.com/hugohaggmark)
- **Postgres**: Support Unix socket for host. [#25778](https://github.com/grafana/grafana/pull/25778), [@aknuds1](https://github.com/aknuds1)
- **Prometheus**: Add scopedVars support in legend formatting for repeated variables. [#27047](https://github.com/grafana/grafana/pull/27047), [@ivanahuckova](https://github.com/ivanahuckova)
- **Prometheus**: Support request cancellation properly (Uses new backendSrv.fetch Observable request API). [#27090](https://github.com/grafana/grafana/pull/27090), [@hugohaggmark](https://github.com/hugohaggmark)
- **Prometheus**: add $__rate_interval variable. [#26937](https://github.com/grafana/grafana/pull/26937), [@zoltanbedi](https://github.com/zoltanbedi)
- **Provisioning**: Validate that datasource access field equals to direct or proxy. [#26440](https://github.com/grafana/grafana/pull/26440), [@nabokihms](https://github.com/nabokihms)
- **RangeUtils**: migrate logic from kbn to grafana/data. [#27347](https://github.com/grafana/grafana/pull/27347), [@ryantxu](https://github.com/ryantxu)
- **Table**: Adds column filtering. [#27225](https://github.com/grafana/grafana/pull/27225), [@hugohaggmark](https://github.com/hugohaggmark)
- **Table**: Support showing numbers in strings with full original value. [#27097](https://github.com/grafana/grafana/pull/27097), [@torkelo](https://github.com/torkelo)
- **TablePanel**: Add support for basic gauge as a cell display mode. [#26595](https://github.com/grafana/grafana/pull/26595), [@jutley](https://github.com/jutley)
- **Transformations**: Group by and aggregate on multiple fields. [#25498](https://github.com/grafana/grafana/pull/25498), [@Totalus](https://github.com/Totalus)
- **Transformations**: enable transformations reorder. [#27197](https://github.com/grafana/grafana/pull/27197), [@dprokop](https://github.com/dprokop)
- **Units**: Allow re-scaling nanoseconds up to days. [#26458](https://github.com/grafana/grafana/pull/26458), [@kaydelaney](https://github.com/kaydelaney)
- **grafana-cli**: Add ability to read password from stdin to reset admin password. [#26016](https://github.com/grafana/grafana/pull/26016), [@nabokihms](https://github.com/nabokihms)
- **Reporting**: add branding options. (Enterprise)
- **Reporting**: allow setting custom timerange. (Enterprise)
### Bug Fixes
- **Auth**: Fix signup workflow and UI when verify email is enabled. [#26263](https://github.com/grafana/grafana/pull/26263), [@KamalGalrani](https://github.com/KamalGalrani)
- **AzureMonitor**: Change filterDimensions property to match what is stored. [#27459](https://github.com/grafana/grafana/pull/27459), [@kylebrandt](https://github.com/kylebrandt)
- **Cloud Monitoring**: Fix missing title and text from cloud monitoring annotations. [#27187](https://github.com/grafana/grafana/pull/27187), [@atotto](https://github.com/atotto)
- **CloudWatch**: Fix error message returned from tag:GetResources. [#27205](https://github.com/grafana/grafana/pull/27205), [@kichik](https://github.com/kichik)
- **Cloudwatch**: Update AWS/MediaConnect metrics and dimensions. [#26093](https://github.com/grafana/grafana/pull/26093), [@papagian](https://github.com/papagian)
- **DashboardSettings**: Fixes auto refresh crash with space in interval. [#27438](https://github.com/grafana/grafana/pull/27438), [@hugohaggmark](https://github.com/hugohaggmark)
- **Elasticsearch**: Fix localized dates in index pattern. [#27351](https://github.com/grafana/grafana/pull/27351), [@domasx2](https://github.com/domasx2)
- **Elasticsearch**: Fix using multiple bucket script aggregations when only grouping by terms. [#24064](https://github.com/grafana/grafana/pull/24064), [@MarceloNunesAlves](https://github.com/MarceloNunesAlves)
- **Explore**: Expand template variables when redirecting from dashboard panel. [#27354](https://github.com/grafana/grafana/pull/27354), [@Elfo404](https://github.com/Elfo404)
- **FolderPicker**: Fixes not being able to create new folder. [#27092](https://github.com/grafana/grafana/pull/27092), [@hugohaggmark](https://github.com/hugohaggmark)
- **Graphite**: Show and hide query editor function popup on click. [#26923](https://github.com/grafana/grafana/pull/26923), [@ivanahuckova](https://github.com/ivanahuckova)
- **InfluxDB/Flux**: Fix for Alerts on InfluxDB Flux datasources only use the first series. [#27463](https://github.com/grafana/grafana/pull/27463), [@ryantxu](https://github.com/ryantxu)
- **Loki**: Send current time range when fetching labels and values. [#26622](https://github.com/grafana/grafana/pull/26622), [@ivanahuckova](https://github.com/ivanahuckova)
- **Prometheus**: Add backslash escaping for template variables. [#26205](https://github.com/grafana/grafana/pull/26205), [@ivanahuckova](https://github.com/ivanahuckova)
- **Prometheus**: Correctly format multi values variables in queries. [#26896](https://github.com/grafana/grafana/pull/26896), [@ivanahuckova](https://github.com/ivanahuckova)
- **Provisioning**: Add validation for missing organisations in datasource, dashboard, and notifier configurations. [#26601](https://github.com/grafana/grafana/pull/26601), [@nabokihms](https://github.com/nabokihms)
- **Rendering**: Fixed issue rendering text panel to image via image renderer plugin. [#27083](https://github.com/grafana/grafana/pull/27083), [@torkelo](https://github.com/torkelo)
- **Stats**: Use more efficient SQL and add timeouts. [#27390](https://github.com/grafana/grafana/pull/27390), [@sakjur](https://github.com/sakjur)
- **Table**: Support date unit formats on string values. [#26879](https://github.com/grafana/grafana/pull/26879), [@torkelo](https://github.com/torkelo)
- **Thresholds**: Fixed issue with thresholds in overrides not working after save and reload. [#27297](https://github.com/grafana/grafana/pull/27297), [@torkelo](https://github.com/torkelo)
- **Transformations**: Fixes outer join transformation when frames are missing field to join by. [#27453](https://github.com/grafana/grafana/pull/27453), [@hugohaggmark](https://github.com/hugohaggmark)
- **Transformations**: merge will properly handle empty frames and frames with multiple rows where values are overlapping. [#27362](https://github.com/grafana/grafana/pull/27362), [@mckn](https://github.com/mckn)
- **grafana-cli**: Fix installing of plugins missing directory entries in zip. [#26945](https://github.com/grafana/grafana/pull/26945), [@adrianlzt](https://github.com/adrianlzt)
# 7.1.5 (2020-08-25)
### Features / Enhancements
* **Stats**: Stop counting the same user multiple times. [#26777](https://github.com/grafana/grafana/pull/26777), [@sakjur](https://github.com/sakjur)
- **Stats**: Stop counting the same user multiple times. [#26777](https://github.com/grafana/grafana/pull/26777), [@sakjur](https://github.com/sakjur)
### Bug Fixes
* **Alerting**: remove LongToWide call in alerting. [#27140](https://github.com/grafana/grafana/pull/27140), [@kylebrandt](https://github.com/kylebrandt)
* **AzureMonitor**: fix panic introduced in 7.1.4 when unit was unspecified and alias was used. [#27113](https://github.com/grafana/grafana/pull/27113), [@kylebrandt](https://github.com/kylebrandt)
* **Variables**: Fixes issue with All variable not being resolved. [#27151](https://github.com/grafana/grafana/pull/27151), [@hugohaggmark](https://github.com/hugohaggmark)
- **Alerting**: remove LongToWide call in alerting. [#27140](https://github.com/grafana/grafana/pull/27140), [@kylebrandt](https://github.com/kylebrandt)
- **AzureMonitor**: fix panic introduced in 7.1.4 when unit was unspecified and alias was used. [#27113](https://github.com/grafana/grafana/pull/27113), [@kylebrandt](https://github.com/kylebrandt)
- **Variables**: Fixes issue with All variable not being resolved. [#27151](https://github.com/grafana/grafana/pull/27151), [@hugohaggmark](https://github.com/hugohaggmark)
# 7.1.4 (2020-08-20)
### Features / Enhancements
* **Azure App Insights Alert error - tsdb.HandleRequest() failed to convert dataframe "" to tsdb.TimeSeriesSlice**. [#26897](https://github.com/grafana/grafana/issues/26897)
* **AzureMonitor**: map more units. [#26990](https://github.com/grafana/grafana/pull/26990), [@kylebrandt](https://github.com/kylebrandt)
* **Azuremonitor**: do not set unit if literal "Unspecified". [#26839](https://github.com/grafana/grafana/pull/26839), [@kylebrandt](https://github.com/kylebrandt)
* **Dataframe/Alerting**: to tsdb.TimeSeriesSlice - accept "empty" time series. [#26903](https://github.com/grafana/grafana/pull/26903), [@kylebrandt](https://github.com/kylebrandt)
* **Field overrides**: Filter by field name using regex. [#27070](https://github.com/grafana/grafana/pull/27070), [@dprokop](https://github.com/dprokop)
* **Overrides**: expose byType matcher UI. [#27056](https://github.com/grafana/grafana/pull/27056), [@ryantxu](https://github.com/ryantxu)
- **Azure App Insights Alert error - tsdb.HandleRequest() failed to convert dataframe "" to tsdb.TimeSeriesSlice**. [#26897](https://github.com/grafana/grafana/issues/26897)
- **AzureMonitor**: map more units. [#26990](https://github.com/grafana/grafana/pull/26990), [@kylebrandt](https://github.com/kylebrandt)
- **Azuremonitor**: do not set unit if literal "Unspecified". [#26839](https://github.com/grafana/grafana/pull/26839), [@kylebrandt](https://github.com/kylebrandt)
- **Dataframe/Alerting**: to tsdb.TimeSeriesSlice - accept "empty" time series. [#26903](https://github.com/grafana/grafana/pull/26903), [@kylebrandt](https://github.com/kylebrandt)
- **Field overrides**: Filter by field name using regex. [#27070](https://github.com/grafana/grafana/pull/27070), [@dprokop](https://github.com/dprokop)
- **Overrides**: expose byType matcher UI. [#27056](https://github.com/grafana/grafana/pull/27056), [@ryantxu](https://github.com/ryantxu)
### Bug Fixes
* **CloudWatch**: Add FreeStorageCapacity metric. [#26503](https://github.com/grafana/grafana/pull/26503), [@waqark3389](https://github.com/waqark3389)
* **CloudWatch**: Fix sorting of metrics results. [#26835](https://github.com/grafana/grafana/pull/26835), [@aknuds1](https://github.com/aknuds1)
* **Cloudwatch**: Add FileSystemId as a dimension key for the AWS/FSx namespace. [#26662](https://github.com/grafana/grafana/pull/26662), [@waqark3389](https://github.com/waqark3389)
* **InfluxDB**: Update Flux placeholder URL with respect to latest Go client. [#27086](https://github.com/grafana/grafana/pull/27086), [@aknuds1](https://github.com/aknuds1)
* **InfluxDB**: Upgrade Go client, use data source HTTP client. [#27012](https://github.com/grafana/grafana/pull/27012), [@aknuds1](https://github.com/aknuds1)
* **Proxy**: Fix updating refresh token in OAuth pass-thru. [#26885](https://github.com/grafana/grafana/pull/26885), [@seanlaff](https://github.com/seanlaff)
* **Templating**: Fixes so texts show in picker not the values. [#27002](https://github.com/grafana/grafana/pull/27002), [@hugohaggmark](https://github.com/hugohaggmark)
- **CloudWatch**: Add FreeStorageCapacity metric. [#26503](https://github.com/grafana/grafana/pull/26503), [@waqark3389](https://github.com/waqark3389)
- **CloudWatch**: Fix sorting of metrics results. [#26835](https://github.com/grafana/grafana/pull/26835), [@aknuds1](https://github.com/aknuds1)
- **Cloudwatch**: Add FileSystemId as a dimension key for the AWS/FSx namespace. [#26662](https://github.com/grafana/grafana/pull/26662), [@waqark3389](https://github.com/waqark3389)
- **InfluxDB**: Update Flux placeholder URL with respect to latest Go client. [#27086](https://github.com/grafana/grafana/pull/27086), [@aknuds1](https://github.com/aknuds1)
- **InfluxDB**: Upgrade Go client, use data source HTTP client. [#27012](https://github.com/grafana/grafana/pull/27012), [@aknuds1](https://github.com/aknuds1)
- **Proxy**: Fix updating refresh token in OAuth pass-thru. [#26885](https://github.com/grafana/grafana/pull/26885), [@seanlaff](https://github.com/seanlaff)
- **Templating**: Fixes so texts show in picker not the values. [#27002](https://github.com/grafana/grafana/pull/27002), [@hugohaggmark](https://github.com/hugohaggmark)
# 7.1.3 (2020-08-06)
### Bug Fixes
* **Templating**: Templating: Fix undefined result when using raw interpolation format [#26818](https://github.com/grafana/grafana/pull/26818)
- **Templating**: Templating: Fix undefined result when using raw interpolation format [#26818](https://github.com/grafana/grafana/pull/26818)
# 7.1.2 (2020-08-05)
### Features / Enhancements
* **Explore**: Don't run queries on datasource change. [#26033](https://github.com/grafana/grafana/pull/26033), [@davkal](https://github.com/davkal)
* **TemplateSrv**: Formatting options for ${__from} and ${__to}, unix seconds epoch, ISO 8601/RFC 3339. [#26466](https://github.com/grafana/grafana/pull/26466), [@torkelo](https://github.com/torkelo)
* **Toolkit/Plugin**: throw an Error instead of a string. [#26618](https://github.com/grafana/grafana/pull/26618), [@leventebalogh](https://github.com/leventebalogh)
- **Explore**: Don't run queries on datasource change. [#26033](https://github.com/grafana/grafana/pull/26033), [@davkal](https://github.com/davkal)
- **TemplateSrv**: Formatting options for ${__from} and ${__to}, unix seconds epoch, ISO 8601/RFC 3339. [#26466](https://github.com/grafana/grafana/pull/26466), [@torkelo](https://github.com/torkelo)
- **Toolkit/Plugin**: throw an Error instead of a string. [#26618](https://github.com/grafana/grafana/pull/26618), [@leventebalogh](https://github.com/leventebalogh)
### Bug Fixes
* **Dashbard**: Fix refresh interval settings to allow setting it to equal min_refresh_interval. [#26615](https://github.com/grafana/grafana/pull/26615), [@torkelo](https://github.com/torkelo)
* **Flux**: Ensure connections to InfluxDB are closed. [#26735](https://github.com/grafana/grafana/pull/26735), [@sneddrs](https://github.com/sneddrs)
* **Query history**: Fix search filtering if null value. [#26768](https://github.com/grafana/grafana/pull/26768), [@ivanahuckova](https://github.com/ivanahuckova)
* **QueryOptions**: Fix not being able to change cache timeout setting. [#26614](https://github.com/grafana/grafana/pull/26614), [@torkelo](https://github.com/torkelo)
* **StatPanel**: Fix stat panel display name not showing when explicitly set. [#26616](https://github.com/grafana/grafana/pull/26616), [@torkelo](https://github.com/torkelo)
* **Templating**: Fixed access to system variables like __dashboard, __user & __org during dashboard load & variable queries. [#26637](https://github.com/grafana/grafana/pull/26637), [@torkelo](https://github.com/torkelo)
* **TextPanel**: Fix content overflowing panel boundaries. [#26612](https://github.com/grafana/grafana/pull/26612), [@torkelo](https://github.com/torkelo)
* **TimePicker**: Fix position and responsive behavior. [#26570](https://github.com/grafana/grafana/pull/26570), [@torkelo](https://github.com/torkelo)
* **TimePicker**: Fixes app crash when changing custom range to nothing. [#26775](https://github.com/grafana/grafana/pull/26775), [@hugohaggmark](https://github.com/hugohaggmark)
* **Units**: Remove duplicate SI prefix from mSv and µSv. [#26598](https://github.com/grafana/grafana/pull/26598), [@tofurky](https://github.com/tofurky)
- **Dashbard**: Fix refresh interval settings to allow setting it to equal min_refresh_interval. [#26615](https://github.com/grafana/grafana/pull/26615), [@torkelo](https://github.com/torkelo)
- **Flux**: Ensure connections to InfluxDB are closed. [#26735](https://github.com/grafana/grafana/pull/26735), [@sneddrs](https://github.com/sneddrs)
- **Query history**: Fix search filtering if null value. [#26768](https://github.com/grafana/grafana/pull/26768), [@ivanahuckova](https://github.com/ivanahuckova)
- **QueryOptions**: Fix not being able to change cache timeout setting. [#26614](https://github.com/grafana/grafana/pull/26614), [@torkelo](https://github.com/torkelo)
- **StatPanel**: Fix stat panel display name not showing when explicitly set. [#26616](https://github.com/grafana/grafana/pull/26616), [@torkelo](https://github.com/torkelo)
- **Templating**: Fixed access to system variables like __dashboard, __user & __org during dashboard load & variable queries. [#26637](https://github.com/grafana/grafana/pull/26637), [@torkelo](https://github.com/torkelo)
- **TextPanel**: Fix content overflowing panel boundaries. [#26612](https://github.com/grafana/grafana/pull/26612), [@torkelo](https://github.com/torkelo)
- **TimePicker**: Fix position and responsive behavior. [#26570](https://github.com/grafana/grafana/pull/26570), [@torkelo](https://github.com/torkelo)
- **TimePicker**: Fixes app crash when changing custom range to nothing. [#26775](https://github.com/grafana/grafana/pull/26775), [@hugohaggmark](https://github.com/hugohaggmark)
- **Units**: Remove duplicate SI prefix from mSv and µSv. [#26598](https://github.com/grafana/grafana/pull/26598), [@tofurky](https://github.com/tofurky)
# 7.1.1 (2020-07-24)
### Features / Enhancements
* **Graph**: Support setting field unit & override data source (automatic) unit. [#26529](https://github.com/grafana/grafana/pull/26529), [@ryantxu](https://github.com/ryantxu)
* **Tracing**: Add errorIconColor prop to TraceSpanData. [#26509](https://github.com/grafana/grafana/pull/26509), [@zoltanbedi](https://github.com/zoltanbedi)
- **Graph**: Support setting field unit & override data source (automatic) unit. [#26529](https://github.com/grafana/grafana/pull/26529), [@ryantxu](https://github.com/ryantxu)
- **Tracing**: Add errorIconColor prop to TraceSpanData. [#26509](https://github.com/grafana/grafana/pull/26509), [@zoltanbedi](https://github.com/zoltanbedi)
### Bug Fixes
* **Branding**: Fix login app title. [#26425](https://github.com/grafana/grafana/pull/26425), [@benrubson](https://github.com/benrubson)
* **Bring back scripts evaluation in TextPanel**. [#26413](https://github.com/grafana/grafana/pull/26413), [@dprokop](https://github.com/dprokop)
* **Dashboard**: Fix empty panels after scrolling on Safari/iOS. [#26495](https://github.com/grafana/grafana/pull/26495), [@torkelo](https://github.com/torkelo)
* **Dashboard**: Fix for viewer can enter panel edit mode by modifying url (but cannot not save anything). [#26556](https://github.com/grafana/grafana/pull/26556), [@torkelo](https://github.com/torkelo)
* **Elasticsearch**: Fix displaying of bucket script input. [#26552](https://github.com/grafana/grafana/pull/26552), [@ivanahuckova](https://github.com/ivanahuckova)
* **Explore**: parse queryType from explore url. [#26349](https://github.com/grafana/grafana/pull/26349), [@zoltanbedi](https://github.com/zoltanbedi)
* **Tracing**: upstream fix for hovering on log lines. [#26426](https://github.com/grafana/grafana/pull/26426), [@zoltanbedi](https://github.com/zoltanbedi)
- **Branding**: Fix login app title. [#26425](https://github.com/grafana/grafana/pull/26425), [@benrubson](https://github.com/benrubson)
- **Bring back scripts evaluation in TextPanel**. [#26413](https://github.com/grafana/grafana/pull/26413), [@dprokop](https://github.com/dprokop)
- **Dashboard**: Fix empty panels after scrolling on Safari/iOS. [#26495](https://github.com/grafana/grafana/pull/26495), [@torkelo](https://github.com/torkelo)
- **Dashboard**: Fix for viewer can enter panel edit mode by modifying url (but cannot not save anything). [#26556](https://github.com/grafana/grafana/pull/26556), [@torkelo](https://github.com/torkelo)
- **Elasticsearch**: Fix displaying of bucket script input. [#26552](https://github.com/grafana/grafana/pull/26552), [@ivanahuckova](https://github.com/ivanahuckova)
- **Explore**: parse queryType from explore url. [#26349](https://github.com/grafana/grafana/pull/26349), [@zoltanbedi](https://github.com/zoltanbedi)
- **Tracing**: upstream fix for hovering on log lines. [#26426](https://github.com/grafana/grafana/pull/26426), [@zoltanbedi](https://github.com/zoltanbedi)
# 7.1.0 (2020-07-16)
### Features / Enhancements
* **Backend**: Use latest go plugin sdk (0.74.0) to sort wide frames. [#26207](https://github.com/grafana/grafana/pull/26207), [@kylebrandt](https://github.com/kylebrandt)
* **Elasticsearch**: Create Raw Doc metric to render raw JSON docs in columns in the new table panel. [#26233](https://github.com/grafana/grafana/pull/26233), [@ivanahuckova](https://github.com/ivanahuckova)
* **PluginsListPage**: More plugins button should open in new window. [#26305](https://github.com/grafana/grafana/pull/26305), [@zoltanbedi](https://github.com/zoltanbedi)
- **Backend**: Use latest go plugin sdk (0.74.0) to sort wide frames. [#26207](https://github.com/grafana/grafana/pull/26207), [@kylebrandt](https://github.com/kylebrandt)
- **Elasticsearch**: Create Raw Doc metric to render raw JSON docs in columns in the new table panel. [#26233](https://github.com/grafana/grafana/pull/26233), [@ivanahuckova](https://github.com/ivanahuckova)
- **PluginsListPage**: More plugins button should open in new window. [#26305](https://github.com/grafana/grafana/pull/26305), [@zoltanbedi](https://github.com/zoltanbedi)
### Bug Fixes
* **AdminUsers**: Reset page to zero on query change. [#26293](https://github.com/grafana/grafana/pull/26293), [@hshoff](https://github.com/hshoff)
* **CloudWatch Logs**: Fixes grouping of results by numeric field. [#26298](https://github.com/grafana/grafana/pull/26298), [@kaydelaney](https://github.com/kaydelaney)
* **DashboardLinks**: Do not over-query search endpoint. [#26311](https://github.com/grafana/grafana/pull/26311), [@torkelo](https://github.com/torkelo)
* **Docker**: Make sure to create default plugin provisioning directory. [#26017](https://github.com/grafana/grafana/pull/26017), [@marefr](https://github.com/marefr)
* **Elastic**: Fix error "e.buckets[Symbol.iterator] is not a function" when using filter. [#26217](https://github.com/grafana/grafana/pull/26217), [@ivanahuckova](https://github.com/ivanahuckova)
* **Explore/Loki**: Escape \ in labels for show context queries. [#26116](https://github.com/grafana/grafana/pull/26116), [@ivanahuckova](https://github.com/ivanahuckova)
* **Jaeger/Zipkin**: URL-encode service names and trace ids for API calls. [#26115](https://github.com/grafana/grafana/pull/26115), [@ivanahuckova](https://github.com/ivanahuckova)
* **Prometheus**: Fix prom links in mixed mode. [#26244](https://github.com/grafana/grafana/pull/26244), [@zoltanbedi](https://github.com/zoltanbedi)
* **Provisioning**: Fix bug when provision app plugins using Enterprise edition. [#26340](https://github.com/grafana/grafana/pull/26340), [@marefr](https://github.com/marefr)
* **Sign In** Use correct url for the Sign In button. [#26239](https://github.com/grafana/grafana/pull/26239), [@dprokop](https://github.com/dprokop)
- **AdminUsers**: Reset page to zero on query change. [#26293](https://github.com/grafana/grafana/pull/26293), [@hshoff](https://github.com/hshoff)
- **CloudWatch Logs**: Fixes grouping of results by numeric field. [#26298](https://github.com/grafana/grafana/pull/26298), [@kaydelaney](https://github.com/kaydelaney)
- **DashboardLinks**: Do not over-query search endpoint. [#26311](https://github.com/grafana/grafana/pull/26311), [@torkelo](https://github.com/torkelo)
- **Docker**: Make sure to create default plugin provisioning directory. [#26017](https://github.com/grafana/grafana/pull/26017), [@marefr](https://github.com/marefr)
- **Elastic**: Fix error "e.buckets[Symbol.iterator] is not a function" when using filter. [#26217](https://github.com/grafana/grafana/pull/26217), [@ivanahuckova](https://github.com/ivanahuckova)
- **Explore/Loki**: Escape \ in labels for show context queries. [#26116](https://github.com/grafana/grafana/pull/26116), [@ivanahuckova](https://github.com/ivanahuckova)
- **Jaeger/Zipkin**: URL-encode service names and trace ids for API calls. [#26115](https://github.com/grafana/grafana/pull/26115), [@ivanahuckova](https://github.com/ivanahuckova)
- **Prometheus**: Fix prom links in mixed mode. [#26244](https://github.com/grafana/grafana/pull/26244), [@zoltanbedi](https://github.com/zoltanbedi)
- **Provisioning**: Fix bug when provision app plugins using Enterprise edition. [#26340](https://github.com/grafana/grafana/pull/26340), [@marefr](https://github.com/marefr)
- **Sign In** Use correct url for the Sign In button. [#26239](https://github.com/grafana/grafana/pull/26239), [@dprokop](https://github.com/dprokop)
# 7.1.0-beta3 (2020-07-13)
### Features / Enhancements
* **Explore**: Unification of logs/metrics/traces user interface. [#25890](https://github.com/grafana/grafana/pull/25890), [@aocenas](https://github.com/aocenas)
* **Graph panel**: Move Stacking and null values before Hover tooltip options (#26035). [#26037](https://github.com/grafana/grafana/pull/26037), [@jsoref](https://github.com/jsoref)
* **LDAP**: Get all groups for all group base search DNs. [#25825](https://github.com/grafana/grafana/pull/25825), [@Annegies](https://github.com/Annegies)
* **Table**: JSON Cell should try to convert strings to JSON. [#26024](https://github.com/grafana/grafana/pull/26024), [@ryantxu](https://github.com/ryantxu)
* **Transform**: adding missing "table"-transform and "series to rows"-transform to Grafana v7-transforms. [#26042](https://github.com/grafana/grafana/pull/26042), [@mckn](https://github.com/mckn)
- **Explore**: Unification of logs/metrics/traces user interface. [#25890](https://github.com/grafana/grafana/pull/25890), [@aocenas](https://github.com/aocenas)
- **Graph panel**: Move Stacking and null values before Hover tooltip options (#26035). [#26037](https://github.com/grafana/grafana/pull/26037), [@jsoref](https://github.com/jsoref)
- **LDAP**: Get all groups for all group base search DNs. [#25825](https://github.com/grafana/grafana/pull/25825), [@Annegies](https://github.com/Annegies)
- **Table**: JSON Cell should try to convert strings to JSON. [#26024](https://github.com/grafana/grafana/pull/26024), [@ryantxu](https://github.com/ryantxu)
- **Transform**: adding missing "table"-transform and "series to rows"-transform to Grafana v7-transforms. [#26042](https://github.com/grafana/grafana/pull/26042), [@mckn](https://github.com/mckn)
### Bug Fixes
* **AdminUsersTable**: Fix width issues. [#26019](https://github.com/grafana/grafana/pull/26019), [@tskarhed](https://github.com/tskarhed)
* **BarGauge**: Fix space bug in single series mode. [#26176](https://github.com/grafana/grafana/pull/26176), [@torkelo](https://github.com/torkelo)
* **Dashboard**: Allow removing min refresh interval from refresh options (5s or other). [#26150](https://github.com/grafana/grafana/pull/26150), [@torkelo](https://github.com/torkelo)
* **DataLinks**: Fixed interpolation of repeated variables used in Graph data links. [#26147](https://github.com/grafana/grafana/pull/26147), [@torkelo](https://github.com/torkelo)
* **Do not break dashboard settings UI when time intervals end with trailing comma**. [#26126](https://github.com/grafana/grafana/pull/26126), [@dprokop](https://github.com/dprokop)
* **Elastic**: Display correct log message based on selected log field. [#26020](https://github.com/grafana/grafana/pull/26020), [@ivanahuckova](https://github.com/ivanahuckova)
* **InfluxDB**: Fixed new group by dropdown now showing after first use. [#26031](https://github.com/grafana/grafana/pull/26031), [@torkelo](https://github.com/torkelo)
* **StatPanel**: Fixes issue with name showing for single series / field results. [#26070](https://github.com/grafana/grafana/pull/26070), [@torkelo](https://github.com/torkelo)
* **Templating**: Fix recursive loop of template variable queries when changing ad-hoc-variable. [#26191](https://github.com/grafana/grafana/pull/26191), [@torkelo](https://github.com/torkelo)
- **AdminUsersTable**: Fix width issues. [#26019](https://github.com/grafana/grafana/pull/26019), [@tskarhed](https://github.com/tskarhed)
- **BarGauge**: Fix space bug in single series mode. [#26176](https://github.com/grafana/grafana/pull/26176), [@torkelo](https://github.com/torkelo)
- **Dashboard**: Allow removing min refresh interval from refresh options (5s or other). [#26150](https://github.com/grafana/grafana/pull/26150), [@torkelo](https://github.com/torkelo)
- **DataLinks**: Fixed interpolation of repeated variables used in Graph data links. [#26147](https://github.com/grafana/grafana/pull/26147), [@torkelo](https://github.com/torkelo)
- **Do not break dashboard settings UI when time intervals end with trailing comma**. [#26126](https://github.com/grafana/grafana/pull/26126), [@dprokop](https://github.com/dprokop)
- **Elastic**: Display correct log message based on selected log field. [#26020](https://github.com/grafana/grafana/pull/26020), [@ivanahuckova](https://github.com/ivanahuckova)
- **InfluxDB**: Fixed new group by dropdown now showing after first use. [#26031](https://github.com/grafana/grafana/pull/26031), [@torkelo](https://github.com/torkelo)
- **StatPanel**: Fixes issue with name showing for single series / field results. [#26070](https://github.com/grafana/grafana/pull/26070), [@torkelo](https://github.com/torkelo)
- **Templating**: Fix recursive loop of template variable queries when changing ad-hoc-variable. [#26191](https://github.com/grafana/grafana/pull/26191), [@torkelo](https://github.com/torkelo)
# 7.0.6 (2020-07-09)
### Bug fixes
* **Templating**: Fixed recursive queries triggered when switching dashboard settings view [#26137](https://github.com/grafana/grafana/pull/26137)
* **Templating**: Fix recursive loop of template variable queries when changing ad-hoc-variable [#26191](https://github.com/grafana/grafana/pull/26191)
* **Auth**: Add support for forcing authentication in anonymous mode and modify SignIn to use it instead of redirect [#25567](https://github.com/grafana/grafana/pull/25567)
* **Auth**: Fix POST request failures with anonymous access [#26049](https://github.com/grafana/grafana/pull/26049)
- **Templating**: Fixed recursive queries triggered when switching dashboard settings view [#26137](https://github.com/grafana/grafana/pull/26137)
- **Templating**: Fix recursive loop of template variable queries when changing ad-hoc-variable [#26191](https://github.com/grafana/grafana/pull/26191)
- **Auth**: Add support for forcing authentication in anonymous mode and modify SignIn to use it instead of redirect [#25567](https://github.com/grafana/grafana/pull/25567)
- **Auth**: Fix POST request failures with anonymous access [#26049](https://github.com/grafana/grafana/pull/26049)
# 7.1.0-beta 2 (2020-07-02)
### Features / Enhancements
* **Loki**: Allow aliasing Loki queries in dashboard. [#25706](https://github.com/grafana/grafana/pull/25706), [@bastjan](https://github.com/bastjan)
- **Loki**: Allow aliasing Loki queries in dashboard. [#25706](https://github.com/grafana/grafana/pull/25706), [@bastjan](https://github.com/bastjan)
### Bug Fixes
* **Explore**: Fix href when jumping from Explore to Add data source. [#25991](https://github.com/grafana/grafana/pull/25991), [@ivanahuckova](https://github.com/ivanahuckova)
* **Fix**: Build-in plugins failed to load in windows. [#25982](https://github.com/grafana/grafana/pull/25982), [@papagian](https://github.com/papagian)
- **Explore**: Fix href when jumping from Explore to Add data source. [#25991](https://github.com/grafana/grafana/pull/25991), [@ivanahuckova](https://github.com/ivanahuckova)
- **Fix**: Build-in plugins failed to load in windows. [#25982](https://github.com/grafana/grafana/pull/25982), [@papagian](https://github.com/papagian)
# 7.1.0-beta 1 (2020-07-01)
### Features / Enhancements
* **Alerting**: Adds support for multiple URLs in Alertmanager notifier. [#24196](https://github.com/grafana/grafana/pull/24196), [@alistarle](https://github.com/alistarle)
* **Alerting**: updating the victorops alerter to handle the no_data alert type. [#23761](https://github.com/grafana/grafana/pull/23761), [@rrusso1982](https://github.com/rrusso1982)
* **Azure**: Application Insights metrics to Frame and support multiple query dimensions. [#25849](https://github.com/grafana/grafana/pull/25849), [@kylebrandt](https://github.com/kylebrandt)
* **Azure**: Multiple dimension support for Azure Monitor Service. [#25947](https://github.com/grafana/grafana/pull/25947), [@kylebrandt](https://github.com/kylebrandt)
* **Azure**: Split Insights into two services. [#25410](https://github.com/grafana/grafana/pull/25410), [@kylebrandt](https://github.com/kylebrandt)
* **Backend plugins**: Refactor to allow shared contract between core and external backend plugins. [#25472](https://github.com/grafana/grafana/pull/25472), [@marefr](https://github.com/marefr)
* **Branding**: Use AppTitle as document title. [#25271](https://github.com/grafana/grafana/pull/25271), [@benrubson](https://github.com/benrubson)
* **Chore**: upgrade to typescript 3.9.3. [#25154](https://github.com/grafana/grafana/pull/25154), [@ryantxu](https://github.com/ryantxu)
* **CloudWatch**: Add Route53 DNSQueries metric and dimension. [#25125](https://github.com/grafana/grafana/pull/25125), [@erkolson](https://github.com/erkolson)
* **CloudWatch**: Added AWS DataSync metrics and dimensions. [#25054](https://github.com/grafana/grafana/pull/25054), [@ilyastoli](https://github.com/ilyastoli)
* **CloudWatch**: Added AWS MediaStore metrics and dimensions. [#25492](https://github.com/grafana/grafana/pull/25492), [@ilyastoli](https://github.com/ilyastoli)
* **CloudWatch**: Added AWS RoboMaker metrics and dimensions. [#25090](https://github.com/grafana/grafana/pull/25090), [@ilyastoli](https://github.com/ilyastoli)
* **CloudWatch**: Added AWS SDKMetrics metrics and dimensions. [#25150](https://github.com/grafana/grafana/pull/25150), [@ilyastoli](https://github.com/ilyastoli)
* **CloudWatch**: Added AWS ServiceCatalog metrics and dimensions. [#25812](https://github.com/grafana/grafana/pull/25812), [@ilyastoli](https://github.com/ilyastoli)
* **CloudWatch**: Added AWS WAFV2 metrics. [#24048](https://github.com/grafana/grafana/pull/24048), [@mikkokupsu](https://github.com/mikkokupsu)
* **Dashboards**: Make path to default dashboard configurable. [#25595](https://github.com/grafana/grafana/pull/25595), [@bergquist](https://github.com/bergquist)
* **Elastic**: Internal data links. [#25942](https://github.com/grafana/grafana/pull/25942), [@aocenas](https://github.com/aocenas)
* **Elasticsearch**: Add support for template variable in date histogram min_doc_count. [#21064](https://github.com/grafana/grafana/pull/21064), [@faxm0dem](https://github.com/faxm0dem)
* **Elasticsearch**: Adds cumulative sum aggregation support. [#24820](https://github.com/grafana/grafana/pull/24820), [@retzkek](https://github.com/retzkek)
* **Elasticsearch**: Support using a variable for histogram and terms min doc count. [#25392](https://github.com/grafana/grafana/pull/25392), [@marefr](https://github.com/marefr)
* **Explore/Loki**: Show results of instant queries only in table and time series only in graph. [#25845](https://github.com/grafana/grafana/pull/25845), [@ivanahuckova](https://github.com/ivanahuckova)
* **Explore**: Remove legend formatting when switching from panel to Explore. [#25848](https://github.com/grafana/grafana/pull/25848), [@ivanahuckova](https://github.com/ivanahuckova)
* **Footer**: Add back footer to login page. [#25656](https://github.com/grafana/grafana/pull/25656), [@torkelo](https://github.com/torkelo)
* **ForgottenPassword**: Move view to login screen. [#25366](https://github.com/grafana/grafana/pull/25366), [@tskarhed](https://github.com/tskarhed)
* **Gauge**: Hide orientation option in panel options. [#25511](https://github.com/grafana/grafana/pull/25511), [@torkelo](https://github.com/torkelo)
* **Grafana-UI**: Add FileUpload. [#25835](https://github.com/grafana/grafana/pull/25835), [@Clarity-89](https://github.com/Clarity-89)
* **GraphPanel**: Make legend values clickable series toggles. [#25581](https://github.com/grafana/grafana/pull/25581), [@hshoff](https://github.com/hshoff)
* **Influx**: Support flux in the influx datasource. [#25308](https://github.com/grafana/grafana/pull/25308), [@ryantxu](https://github.com/ryantxu)
* **Migration**: Select org. [#24739](https://github.com/grafana/grafana/pull/24739), [@tskarhed](https://github.com/tskarhed)
* **Migration**: Settings forms. [#24741](https://github.com/grafana/grafana/pull/24741), [@tskarhed](https://github.com/tskarhed)
* **Panel Inspect**: use Monaco editor for json display. [#25251](https://github.com/grafana/grafana/pull/25251), [@ryantxu](https://github.com/ryantxu)
* **Panel edit**: Clicking twice on a visualization closes the VizPicker. [#25739](https://github.com/grafana/grafana/pull/25739), [@peterholmberg](https://github.com/peterholmberg)
* **PanelInspect**: Update UI for Data display options. [#25478](https://github.com/grafana/grafana/pull/25478), [@tskarhed](https://github.com/tskarhed)
* **Plugins**: move jaeger trace type to grafana data. [#25403](https://github.com/grafana/grafana/pull/25403), [@zoltanbedi](https://github.com/zoltanbedi)
* **Provisioning**: Adds support for enabling app plugins. [#25649](https://github.com/grafana/grafana/pull/25649), [@marefr](https://github.com/marefr)
* **Provisioning**: Use folders structure from the file system to create desired folders in dashboard provisioning. [#23117](https://github.com/grafana/grafana/pull/23117), [@nabokihms](https://github.com/nabokihms)
* **Query history**: Add keyboard shortcut support for commenting. [#24736](https://github.com/grafana/grafana/pull/24736), [@ivanahuckova](https://github.com/ivanahuckova)
* **Query history**: Add search for query history and starred queries. [#25747](https://github.com/grafana/grafana/pull/25747), [@ivanahuckova](https://github.com/ivanahuckova)
* **Rich history**: Updates for default settings and starred queries deletion. [#25732](https://github.com/grafana/grafana/pull/25732), [@ivanahuckova](https://github.com/ivanahuckova)
* **Search**: support URL query params. [#25541](https://github.com/grafana/grafana/pull/25541), [@Clarity-89](https://github.com/Clarity-89)
* **Stackdriver**: Deep linking from Grafana panels to the Metrics Explorer. [#25858](https://github.com/grafana/grafana/pull/25858), [@papagian](https://github.com/papagian)
* **Stackdriver**: Rename Stackdriver to Google Cloud Monitoring. [#25807](https://github.com/grafana/grafana/pull/25807), [@papagian](https://github.com/papagian)
* **StatPanel**: Option showing name instead of value and more. [#25676](https://github.com/grafana/grafana/pull/25676), [@torkelo](https://github.com/torkelo)
* **Switch**: Deprecate checked prop in favor of value. [#25862](https://github.com/grafana/grafana/pull/25862), [@tskarhed](https://github.com/tskarhed)
* **Tab**: Make active tab clickable and add hyperlink functionality. [#25546](https://github.com/grafana/grafana/pull/25546), [@tskarhed](https://github.com/tskarhed)
* **Table**: Adds adhoc filtering. [#25467](https://github.com/grafana/grafana/pull/25467), [@hugohaggmark](https://github.com/hugohaggmark)
* **Teams**: Add index for permission check. [#25736](https://github.com/grafana/grafana/pull/25736), [@sakjur](https://github.com/sakjur)
* **Template variable filters**: Hide overflowing text. [#25801](https://github.com/grafana/grafana/pull/25801), [@tskarhed](https://github.com/tskarhed)
* **Templating**: Add bult in __user {name, id, login, email} variable to templating system. [#23378](https://github.com/grafana/grafana/pull/23378), [@aidanmountford](https://github.com/aidanmountford)
* **Templating**: removes old Angular variable system and featureToggle. [#24779](https://github.com/grafana/grafana/pull/24779), [@hugohaggmark](https://github.com/hugohaggmark)
* **TextPanel**: Adds proper editor for markdown and html. [#25618](https://github.com/grafana/grafana/pull/25618), [@hugohaggmark](https://github.com/hugohaggmark)
* **TextPanel**: Removes Angular Text Panel. [#25504](https://github.com/grafana/grafana/pull/25504), [@hugohaggmark](https://github.com/hugohaggmark)
* **TextPanel**: Removes text mode. [#25589](https://github.com/grafana/grafana/pull/25589), [@hugohaggmark](https://github.com/hugohaggmark)
* **TimeZone**: unify the time zone pickers to one that can rule them all. [#24803](https://github.com/grafana/grafana/pull/24803), [@mckn](https://github.com/mckn)
* **Transform**: added merge transform that will merge multiple series/tables into one table. [#25490](https://github.com/grafana/grafana/pull/25490), [@mckn](https://github.com/mckn)
* **Units**: add base-pascals and rotational speed units. [#22879](https://github.com/grafana/grafana/pull/22879), [@sakjur](https://github.com/sakjur)
* **Units**: add new unit for duration, it is optimized for displaying days, hours, minutes and seconds. [#24175](https://github.com/grafana/grafana/pull/24175), [@pabigot](https://github.com/pabigot)
* **Variables**: enables cancel for slow query variables queries. [#24430](https://github.com/grafana/grafana/pull/24430), [@hugohaggmark](https://github.com/hugohaggmark)
* **switches default value for security settings**. [#25175](https://github.com/grafana/grafana/pull/25175), [@bergquist](https://github.com/bergquist)
* **Reporting:** add monthly schedule option. (Enterprise)
- **Alerting**: Adds support for multiple URLs in Alertmanager notifier. [#24196](https://github.com/grafana/grafana/pull/24196), [@alistarle](https://github.com/alistarle)
- **Alerting**: updating the victorops alerter to handle the no_data alert type. [#23761](https://github.com/grafana/grafana/pull/23761), [@rrusso1982](https://github.com/rrusso1982)
- **Azure**: Application Insights metrics to Frame and support multiple query dimensions. [#25849](https://github.com/grafana/grafana/pull/25849), [@kylebrandt](https://github.com/kylebrandt)
- **Azure**: Multiple dimension support for Azure Monitor Service. [#25947](https://github.com/grafana/grafana/pull/25947), [@kylebrandt](https://github.com/kylebrandt)
- **Azure**: Split Insights into two services. [#25410](https://github.com/grafana/grafana/pull/25410), [@kylebrandt](https://github.com/kylebrandt)
- **Backend plugins**: Refactor to allow shared contract between core and external backend plugins. [#25472](https://github.com/grafana/grafana/pull/25472), [@marefr](https://github.com/marefr)
- **Branding**: Use AppTitle as document title. [#25271](https://github.com/grafana/grafana/pull/25271), [@benrubson](https://github.com/benrubson)
- **Chore**: upgrade to typescript 3.9.3. [#25154](https://github.com/grafana/grafana/pull/25154), [@ryantxu](https://github.com/ryantxu)
- **CloudWatch**: Add Route53 DNSQueries metric and dimension. [#25125](https://github.com/grafana/grafana/pull/25125), [@erkolson](https://github.com/erkolson)
- **CloudWatch**: Added AWS DataSync metrics and dimensions. [#25054](https://github.com/grafana/grafana/pull/25054), [@ilyastoli](https://github.com/ilyastoli)
- **CloudWatch**: Added AWS MediaStore metrics and dimensions. [#25492](https://github.com/grafana/grafana/pull/25492), [@ilyastoli](https://github.com/ilyastoli)
- **CloudWatch**: Added AWS RoboMaker metrics and dimensions. [#25090](https://github.com/grafana/grafana/pull/25090), [@ilyastoli](https://github.com/ilyastoli)
- **CloudWatch**: Added AWS SDKMetrics metrics and dimensions. [#25150](https://github.com/grafana/grafana/pull/25150), [@ilyastoli](https://github.com/ilyastoli)
- **CloudWatch**: Added AWS ServiceCatalog metrics and dimensions. [#25812](https://github.com/grafana/grafana/pull/25812), [@ilyastoli](https://github.com/ilyastoli)
- **CloudWatch**: Added AWS WAFV2 metrics. [#24048](https://github.com/grafana/grafana/pull/24048), [@mikkokupsu](https://github.com/mikkokupsu)
- **Dashboards**: Make path to default dashboard configurable. [#25595](https://github.com/grafana/grafana/pull/25595), [@bergquist](https://github.com/bergquist)
- **Elastic**: Internal data links. [#25942](https://github.com/grafana/grafana/pull/25942), [@aocenas](https://github.com/aocenas)
- **Elasticsearch**: Add support for template variable in date histogram min_doc_count. [#21064](https://github.com/grafana/grafana/pull/21064), [@faxm0dem](https://github.com/faxm0dem)
- **Elasticsearch**: Adds cumulative sum aggregation support. [#24820](https://github.com/grafana/grafana/pull/24820), [@retzkek](https://github.com/retzkek)
- **Elasticsearch**: Support using a variable for histogram and terms min doc count. [#25392](https://github.com/grafana/grafana/pull/25392), [@marefr](https://github.com/marefr)
- **Explore/Loki**: Show results of instant queries only in table and time series only in graph. [#25845](https://github.com/grafana/grafana/pull/25845), [@ivanahuckova](https://github.com/ivanahuckova)
- **Explore**: Remove legend formatting when switching from panel to Explore. [#25848](https://github.com/grafana/grafana/pull/25848), [@ivanahuckova](https://github.com/ivanahuckova)
- **Footer**: Add back footer to login page. [#25656](https://github.com/grafana/grafana/pull/25656), [@torkelo](https://github.com/torkelo)
- **ForgottenPassword**: Move view to login screen. [#25366](https://github.com/grafana/grafana/pull/25366), [@tskarhed](https://github.com/tskarhed)
- **Gauge**: Hide orientation option in panel options. [#25511](https://github.com/grafana/grafana/pull/25511), [@torkelo](https://github.com/torkelo)
- **Grafana-UI**: Add FileUpload. [#25835](https://github.com/grafana/grafana/pull/25835), [@Clarity-89](https://github.com/Clarity-89)
- **GraphPanel**: Make legend values clickable series toggles. [#25581](https://github.com/grafana/grafana/pull/25581), [@hshoff](https://github.com/hshoff)
- **Influx**: Support flux in the influx datasource. [#25308](https://github.com/grafana/grafana/pull/25308), [@ryantxu](https://github.com/ryantxu)
- **Migration**: Select org. [#24739](https://github.com/grafana/grafana/pull/24739), [@tskarhed](https://github.com/tskarhed)
- **Migration**: Settings forms. [#24741](https://github.com/grafana/grafana/pull/24741), [@tskarhed](https://github.com/tskarhed)
- **Panel Inspect**: use Monaco editor for json display. [#25251](https://github.com/grafana/grafana/pull/25251), [@ryantxu](https://github.com/ryantxu)
- **Panel edit**: Clicking twice on a visualization closes the VizPicker. [#25739](https://github.com/grafana/grafana/pull/25739), [@peterholmberg](https://github.com/peterholmberg)
- **PanelInspect**: Update UI for Data display options. [#25478](https://github.com/grafana/grafana/pull/25478), [@tskarhed](https://github.com/tskarhed)
- **Plugins**: move jaeger trace type to grafana data. [#25403](https://github.com/grafana/grafana/pull/25403), [@zoltanbedi](https://github.com/zoltanbedi)
- **Provisioning**: Adds support for enabling app plugins. [#25649](https://github.com/grafana/grafana/pull/25649), [@marefr](https://github.com/marefr)
- **Provisioning**: Use folders structure from the file system to create desired folders in dashboard provisioning. [#23117](https://github.com/grafana/grafana/pull/23117), [@nabokihms](https://github.com/nabokihms)
- **Query history**: Add keyboard shortcut support for commenting. [#24736](https://github.com/grafana/grafana/pull/24736), [@ivanahuckova](https://github.com/ivanahuckova)
- **Query history**: Add search for query history and starred queries. [#25747](https://github.com/grafana/grafana/pull/25747), [@ivanahuckova](https://github.com/ivanahuckova)
- **Rich history**: Updates for default settings and starred queries deletion. [#25732](https://github.com/grafana/grafana/pull/25732), [@ivanahuckova](https://github.com/ivanahuckova)
- **Search**: support URL query params. [#25541](https://github.com/grafana/grafana/pull/25541), [@Clarity-89](https://github.com/Clarity-89)
- **Stackdriver**: Deep linking from Grafana panels to the Metrics Explorer. [#25858](https://github.com/grafana/grafana/pull/25858), [@papagian](https://github.com/papagian)
- **Stackdriver**: Rename Stackdriver to Google Cloud Monitoring. [#25807](https://github.com/grafana/grafana/pull/25807), [@papagian](https://github.com/papagian)
- **StatPanel**: Option showing name instead of value and more. [#25676](https://github.com/grafana/grafana/pull/25676), [@torkelo](https://github.com/torkelo)
- **Switch**: Deprecate checked prop in favor of value. [#25862](https://github.com/grafana/grafana/pull/25862), [@tskarhed](https://github.com/tskarhed)
- **Tab**: Make active tab clickable and add hyperlink functionality. [#25546](https://github.com/grafana/grafana/pull/25546), [@tskarhed](https://github.com/tskarhed)
- **Table**: Adds adhoc filtering. [#25467](https://github.com/grafana/grafana/pull/25467), [@hugohaggmark](https://github.com/hugohaggmark)
- **Teams**: Add index for permission check. [#25736](https://github.com/grafana/grafana/pull/25736), [@sakjur](https://github.com/sakjur)
- **Template variable filters**: Hide overflowing text. [#25801](https://github.com/grafana/grafana/pull/25801), [@tskarhed](https://github.com/tskarhed)
- **Templating**: Add bult in __user {name, id, login, email} variable to templating system. [#23378](https://github.com/grafana/grafana/pull/23378), [@aidanmountford](https://github.com/aidanmountford)
- **Templating**: removes old Angular variable system and featureToggle. [#24779](https://github.com/grafana/grafana/pull/24779), [@hugohaggmark](https://github.com/hugohaggmark)
- **TextPanel**: Adds proper editor for markdown and html. [#25618](https://github.com/grafana/grafana/pull/25618), [@hugohaggmark](https://github.com/hugohaggmark)
- **TextPanel**: Removes Angular Text Panel. [#25504](https://github.com/grafana/grafana/pull/25504), [@hugohaggmark](https://github.com/hugohaggmark)
- **TextPanel**: Removes text mode. [#25589](https://github.com/grafana/grafana/pull/25589), [@hugohaggmark](https://github.com/hugohaggmark)
- **TimeZone**: unify the time zone pickers to one that can rule them all. [#24803](https://github.com/grafana/grafana/pull/24803), [@mckn](https://github.com/mckn)
- **Transform**: added merge transform that will merge multiple series/tables into one table. [#25490](https://github.com/grafana/grafana/pull/25490), [@mckn](https://github.com/mckn)
- **Units**: add base-pascals and rotational speed units. [#22879](https://github.com/grafana/grafana/pull/22879), [@sakjur](https://github.com/sakjur)
- **Units**: add new unit for duration, it is optimized for displaying days, hours, minutes and seconds. [#24175](https://github.com/grafana/grafana/pull/24175), [@pabigot](https://github.com/pabigot)
- **Variables**: enables cancel for slow query variables queries. [#24430](https://github.com/grafana/grafana/pull/24430), [@hugohaggmark](https://github.com/hugohaggmark)
- **switches default value for security settings**. [#25175](https://github.com/grafana/grafana/pull/25175), [@bergquist](https://github.com/bergquist)
- **Reporting:** add monthly schedule option. (Enterprise)
### Bug Fixes
* **DatatLinks**: Fix open in new tab state mismatch. [#25826](https://github.com/grafana/grafana/pull/25826), [@tskarhed](https://github.com/tskarhed)
* **Explore/Loki**: Fix field type in table for instant queries. [#25907](https://github.com/grafana/grafana/pull/25907), [@ivanahuckova](https://github.com/ivanahuckova)
* **Explore/Loki**: Fix scrolling of context when leaving context window. [#25838](https://github.com/grafana/grafana/pull/25838), [@ivanahuckova](https://github.com/ivanahuckova)
* **Explore/SQL data sources**: Show correctly interpolated queries. [#25110](https://github.com/grafana/grafana/pull/25110), [@ivanahuckova](https://github.com/ivanahuckova)
* **Explore/Tooltip**: Fix label value in tooltip. [#25940](https://github.com/grafana/grafana/pull/25940), [@ivanahuckova](https://github.com/ivanahuckova)
* **Explore**: Fix query editors on mobile. [#25148](https://github.com/grafana/grafana/pull/25148), [@ivanahuckova](https://github.com/ivanahuckova)
* **Explore**: adds an ability to exit log row context with ESC key. [#24205](https://github.com/grafana/grafana/pull/24205), [@Estrax](https://github.com/Estrax)
* **Fix**: Value mappings match against string values. [#25929](https://github.com/grafana/grafana/pull/25929), [@peterholmberg](https://github.com/peterholmberg)
* **GraphPanel**: Fix annotations overflowing panels. [#25606](https://github.com/grafana/grafana/pull/25606), [@hshoff](https://github.com/hshoff)
* **Instrumentation**: Fix setting Jaeger tracing address through Grafana config. [#25768](https://github.com/grafana/grafana/pull/25768), [@marefr](https://github.com/marefr)
* **Prometheus**: Fix performance issue in processing of histogram labels. [#25813](https://github.com/grafana/grafana/pull/25813), [@bsherrod](https://github.com/bsherrod)
* **Provisioning**: Makes file the default dashboard provisioner type. [#24856](https://github.com/grafana/grafana/pull/24856), [@bergquist](https://github.com/bergquist)
* **Templating**: fixes variables not being interpolated after dashboard refresh. [#25698](https://github.com/grafana/grafana/pull/25698), [@hugohaggmark](https://github.com/hugohaggmark)
* **Units**: Custom unit suffix and docs for custom units. [#25710](https://github.com/grafana/grafana/pull/25710), [@torkelo](https://github.com/torkelo)
* **ValueFormats**: Fix byte-format data rates. [#25424](https://github.com/grafana/grafana/pull/25424), [@mueslo](https://github.com/mueslo)
* **Variables**: Fixes maximum call stack bug for empty value. [#25503](https://github.com/grafana/grafana/pull/25503), [@hugohaggmark](https://github.com/hugohaggmark)
- **DatatLinks**: Fix open in new tab state mismatch. [#25826](https://github.com/grafana/grafana/pull/25826), [@tskarhed](https://github.com/tskarhed)
- **Explore/Loki**: Fix field type in table for instant queries. [#25907](https://github.com/grafana/grafana/pull/25907), [@ivanahuckova](https://github.com/ivanahuckova)
- **Explore/Loki**: Fix scrolling of context when leaving context window. [#25838](https://github.com/grafana/grafana/pull/25838), [@ivanahuckova](https://github.com/ivanahuckova)
- **Explore/SQL data sources**: Show correctly interpolated queries. [#25110](https://github.com/grafana/grafana/pull/25110), [@ivanahuckova](https://github.com/ivanahuckova)
- **Explore/Tooltip**: Fix label value in tooltip. [#25940](https://github.com/grafana/grafana/pull/25940), [@ivanahuckova](https://github.com/ivanahuckova)
- **Explore**: Fix query editors on mobile. [#25148](https://github.com/grafana/grafana/pull/25148), [@ivanahuckova](https://github.com/ivanahuckova)
- **Explore**: adds an ability to exit log row context with ESC key. [#24205](https://github.com/grafana/grafana/pull/24205), [@Estrax](https://github.com/Estrax)
- **Fix**: Value mappings match against string values. [#25929](https://github.com/grafana/grafana/pull/25929), [@peterholmberg](https://github.com/peterholmberg)
- **GraphPanel**: Fix annotations overflowing panels. [#25606](https://github.com/grafana/grafana/pull/25606), [@hshoff](https://github.com/hshoff)
- **Instrumentation**: Fix setting Jaeger tracing address through Grafana config. [#25768](https://github.com/grafana/grafana/pull/25768), [@marefr](https://github.com/marefr)
- **Prometheus**: Fix performance issue in processing of histogram labels. [#25813](https://github.com/grafana/grafana/pull/25813), [@bsherrod](https://github.com/bsherrod)
- **Provisioning**: Makes file the default dashboard provisioner type. [#24856](https://github.com/grafana/grafana/pull/24856), [@bergquist](https://github.com/bergquist)
- **Templating**: fixes variables not being interpolated after dashboard refresh. [#25698](https://github.com/grafana/grafana/pull/25698), [@hugohaggmark](https://github.com/hugohaggmark)
- **Units**: Custom unit suffix and docs for custom units. [#25710](https://github.com/grafana/grafana/pull/25710), [@torkelo](https://github.com/torkelo)
- **ValueFormats**: Fix byte-format data rates. [#25424](https://github.com/grafana/grafana/pull/25424), [@mueslo](https://github.com/mueslo)
- **Variables**: Fixes maximum call stack bug for empty value. [#25503](https://github.com/grafana/grafana/pull/25503), [@hugohaggmark](https://github.com/hugohaggmark)
### Security fixes
* **Graph**: Fix XSS vulnerability with series overrides [#25401](https://github.com/grafana/grafana/pull/25401). Thanks to Rotem Reiss for reporting this.
- **Graph**: Fix XSS vulnerability with series overrides [#25401](https://github.com/grafana/grafana/pull/25401). Thanks to Rotem Reiss for reporting this.
# 7.0.5 (2020-06-30)
@@ -403,7 +614,7 @@ We have also extended the time zone options so you can select any of the standar
- **Dashboard**: Fix for strange "dashboard not found" errors when opening links in dashboard settings. [#24416](https://github.com/grafana/grafana/pull/24416), [@torkelo](https://github.com/torkelo)
- **Dashboard**: Fix so default data source is selected when data source can't be found in panel editor. [#24526](https://github.com/grafana/grafana/pull/24526), [@mckn](https://github.com/mckn)
- **Dashboard**: Fixed issue changing a panel from transparent back to normal in panel editor. [#24483](https://github.com/grafana/grafana/pull/24483), [@torkelo](https://github.com/torkelo)
- **Dashboard**: Make header names reflect the field name when exporting to CSV file from the the panel inspector. [#24624](https://github.com/grafana/grafana/pull/24624), [@peterholmberg](https://github.com/peterholmberg)
- **Dashboard**: Make header names reflect the field name when exporting to CSV file from the panel inspector. [#24624](https://github.com/grafana/grafana/pull/24624), [@peterholmberg](https://github.com/peterholmberg)
- **Dashboard**: Make sure side pane is displayed with tabs by default in panel editor. [#24636](https://github.com/grafana/grafana/pull/24636), [@dprokop](https://github.com/dprokop)
- **Data source**: Fix query/annotation help content formatting. [#24687](https://github.com/grafana/grafana/pull/24687), [@AgnesToulet](https://github.com/AgnesToulet)
- **Data source**: Fixes async mount errors. [#24579](https://github.com/grafana/grafana/pull/24579), [@Estrax](https://github.com/Estrax)
@@ -2713,7 +2924,7 @@ See [security announcement](https://community.grafana.com/t/grafana-5-2-3-and-4-
- **Graphite**: Calls to Graphite api /metrics/find now include panel or dashboard time range (from & until) in most cases, [#8055](https://github.com/grafana/grafana/issues/8055)
- **Graphite**: Added new graphite 1.0 functions, available if you set version to 1.0.x in data source settings. New Functions: mapSeries, reduceSeries, isNonNull, groupByNodes, offsetToZero, grep, weightedAverage, removeEmptySeries, aggregateLine, averageOutsidePercentile, delay, exponentialMovingAverage, fallbackSeries, integralByInterval, interpolate, invert, linearRegression, movingMin, movingMax, movingSum, multiplySeriesWithWildcards, pow, powSeries, removeBetweenPercentile, squareRoot, timeSlice, closes [#8261](https://github.com/grafana/grafana/issues/8261)
* **Elasticsearch**: Ad-hoc filters now use query phrase match filters instead of term filters, works on non keyword/raw fields [#9095](https://github.com/grafana/grafana/issues/9095).
- **Elasticsearch**: Ad-hoc filters now use query phrase match filters instead of term filters, works on non keyword/raw fields [#9095](https://github.com/grafana/grafana/issues/9095).
### Breaking change

View File

@@ -8,19 +8,19 @@ In the interest of fostering an open and welcoming environment, we as contributo
Examples of behavior that contributes to creating a positive environment include:
* Using welcoming and inclusive language
* Being respectful of differing viewpoints and experiences
* Gracefully accepting constructive criticism
* Focusing on what is best for the community
* Showing empathy towards other community members
- Using welcoming and inclusive language
- Being respectful of differing viewpoints and experiences
- Gracefully accepting constructive criticism
- Focusing on what is best for the community
- Showing empathy towards other community members
Examples of unacceptable behavior by participants include:
* The use of sexualized language or imagery and unwelcome sexual attention or advances
* Trolling, insulting/derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or electronic address, without explicit permission
* Other conduct which could reasonably be considered inappropriate in a professional setting
- The use of sexualized language or imagery and unwelcome sexual attention or advances
- Trolling, insulting/derogatory comments, and personal or political attacks
- Public or private harassment
- Publishing others' private information, such as a physical or electronic address, without explicit permission
- Other conduct which could reasonably be considered inappropriate in a professional setting
## Our Responsibilities

View File

@@ -65,3 +65,4 @@ Before we can accept your pull request, you need to [sign our CLA](https://grafa
- Set up your [development environment](contribute/developer-guide.md).
- Learn how to [contribute documentation](contribute/documentation.md).
- Get started [developing plugins](https://grafana.com/docs/grafana/latest/developers/plugins/) for Grafana.
- Look through the resources in the [contribute](https://github.com/grafana/grafana/tree/master/contribute) folder.

View File

@@ -1,4 +1,4 @@
FROM node:12.18.3-alpine3.12 as js-builder
FROM node:12.19.0-alpine3.12 as js-builder
WORKDIR /usr/src/app/

View File

@@ -1,4 +1,4 @@
FROM node:12.18.3-slim AS js-builder
FROM node:12.19.0-slim AS js-builder
WORKDIR /usr/src/app/

View File

@@ -66,6 +66,7 @@ In case a member leaves, the [offboarding](#offboarding) procedure is applied.
The current team members are:
- Alexander Zobnin ([Grafana Labs](https://grafana.com/))
- Alex Khomenko ([Grafana Labs](https://grafana.com/))
- Andrej Ocenas ([Grafana Labs](https://grafana.com/))
- Arve Knudsen ([Grafana Labs](https://grafana.com/))
- Brian Gann ([Grafana Labs](https://grafana.com/))
@@ -77,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/))
- Fredrik Enestad ([Soundtrack Your Brand](https://www.soundtrackyourbrand.com/))
- Hugo Häggmark ([Grafana Labs](https://grafana.com/))
- Ivana Huckova ([Grafana Labs](https://grafana.com/))
- Jeroen Op 't Eynde ([Grafana Labs](https://grafana.com/))

View File

@@ -2,16 +2,16 @@
The main goal of issue triage is to categorize all incoming Grafana issues and make sure each issue has all basic information needed for anyone else to understand and be able to start working on it.
**Note:** This information is for Grafana project Maintainers, Owners, and Admins. If you are a Contributor, then you will not be able to perform most of the tasks in this topic.
> **Note:** This information is for Grafana project Maintainers, Owners, and Admins. If you are a Contributor, then you will not be able to perform most of the tasks in this topic.
The core maintainers of the Grafana project are responsible for categorizing all incoming issues and delegating any critical or important issue to other maintainers. Currently one maintainer each week is responsible. Besides that part, triage provides an important way to contribute to an open source project.
Triage helps ensure issues resolve quickly by:
* Ensuring the issue's intent and purpose is conveyed precisely. This is necessary because it can be difficult for an issue to explain how an end user experiences a problem and what actions they took.
* Giving a contributor the information they need before they commit to resolving an issue.
* Lowering the issue count by preventing duplicate issues.
* Streamlining the development process by preventing duplicate discussions.
- Ensuring the issue's intent and purpose is conveyed precisely. This is necessary because it can be difficult for an issue to explain how an end user experiences a problem and what actions they took.
- Giving a contributor the information they need before they commit to resolving an issue.
- Lowering the issue count by preventing duplicate issues.
- Streamlining the development process by preventing duplicate discussions.
If you don't have the knowledge or time to code, consider helping with triage. The community will thank you for saving them time by spending some of yours.
@@ -32,7 +32,7 @@ If you don't have the knowledge or time to code, consider helping with triage. T
| | |
+------+-------+-------------+ +------------+---------+ +----------------------------+
| | | | | |
| label: needs more details | | Needs investigation? +--YES---+ label: needs investigation |
| label: needs more info | | Needs investigation? +--YES---+ label: needs investigation |
| | | | | |
+----------------------------+ +----------------+-----+ +--------------+-------------+
NO | |
@@ -82,7 +82,7 @@ Before triaging an issue very far, make sure that the issue's author provided th
Given a certain [issue template]([template](https://github.com/grafana/grafana/issues/new/choose)) have been used by the issue author or depending how the issue is perceived by the issue triage responsible, the following should help you understand what standard issue information that must be included.
#### Bug report?
#### Bug reports
Should explain what happened, what was expected and how to reproduce it together with any additional information that may help giving a complete picture of what happened such as screenshots, [query inspector](https://community.grafana.com/t/using-grafanas-query-inspector-to-troubleshoot-issues/2630) output and any environment related information that's applicable and/or maybe related to the reported problem:
- Grafana version
@@ -96,15 +96,15 @@ Should explain what happened, what was expected and how to reproduce it together
- Non-default configuration settings
- Development environment like Go and Node versions, if applicable
#### Enhancement request?
#### Enhancement requests
Should explain what enhancement or feature that the author wants to be added and why that is needed.
#### Accessibility issue?
#### Accessibility issues
This is a mix between a bug report and enhancement request but focused on accessibility issues to help make Grafana improve keyboard navigation, screen-reader support and being accessible to everyone. The report should include relevant WCAG criteria, if applicable.
#### Support request?
#### Support requests
In general, if the issue description and title is perceived as a question no more information is needed.
@@ -112,11 +112,11 @@ In general, if the issue description and title is perceived as a question no mor
To make it easier for everyone to understand and find issues they're searching for it's suggested as a general rule of thumbs to:
* Make sure that issue titles are named to explain the subject of the issue, has a correct spelling and doesn't include irrelevant information and/or sensitive information.
* Make sure that issue descriptions doesn't include irrelevant information, information from template that haven't been filled out and/or sensitive information.
* Do your best effort to change title and description or request suggested changes by adding a comment.
- Make sure that issue titles are named to explain the subject of the issue, has a correct spelling and doesn't include irrelevant information and/or sensitive information.
- Make sure that issue descriptions doesn't include irrelevant information, information from template that haven't been filled out and/or sensitive information.
- Do your best effort to change title and description or request suggested changes by adding a comment.
Note: Above rules is applicable to both new and existing issues of the Grafana project.
> **Note:** Above rules is applicable to both new and existing issues of the Grafana project.
### Do you have all the information needed to categorize an issue?
@@ -137,29 +137,28 @@ An issue can have multiple of the following labels. Typically, a properly catego
- One label identifying its type (`type/*`).
- One or multiple labels identifying the functional areas of interest or component (`area/*`) and/or data source (`datasource/*`), if applicable.
Label | Description
------- | --------
`type/bug` | A feature isn't working as expected given design or documentation.
`type/feature-request` | Request for a new feature or enhancement.
`type/docs` | Documentation problem or enhancement.
`type/accessibility` | Accessibility problem or enhancement.
`type/question` | Issue is a question or is perceived as such.
`type/duplicate` | An existing issue of the same subject/request have already been reported.
`type/works-as-intended` | A reported bug works as intended/by design.
`type/build-packaging` | Build or packaging problem or enhancement.
`area/*` | Subject is related to a functional area of interest or component.
`datasource/*` | Subject is related to a core data source plugin.
| Label | Description |
| ------------------------ | ------------------------------------------------------------------------- |
| `type/bug` | A feature isn't working as expected given design or documentation. |
| `type/feature-request` | Request for a new feature or enhancement. |
| `type/docs` | Documentation problem or enhancement. |
| `type/accessibility` | Accessibility problem or enhancement. |
| `type/question` | Issue is a question or is perceived as such. |
| `type/duplicate` | An existing issue of the same subject/request have already been reported. |
| `type/works-as-intended` | A reported bug works as intended/by design. |
| `type/build-packaging` | Build or packaging problem or enhancement. |
| `area/*` | Subject is related to a functional area of interest or component. |
| `datasource/*` | Subject is related to a core data source plugin. |
### Duplicate issue?
### Duplicate issues
Make sure it's not a duplicate by searching existing issues using related terms from the issue title and description. If you think you know there is an existing issue, but can't find it, please reach out to one of the maintainers and ask for help. If you identify that the issue is a duplicate of an existing issue:
1. Add a comment `Duplicate of #<issue number>`. GitHub will recognize this and add some additional context to the issue activity.
2. Close the issue and label it with `type/duplicate`.
1. Add a comment `/duplicate of #<issue number>`. GitHub will recognize this and add some additional context to the issue activity.
2. The Grafana bot will do the rest, adding the correct label and closing comment
3. Optionally add any related `area/*` or `datasource/*` labels.
4. If applicable, add a comment with additional information.
### Bug report?
### Bug reports
If it's not perfectly clear that it's an actual bug, quickly try to reproduce it.
@@ -204,11 +203,11 @@ There's a minor typo/error/lack of information that adds a lot of confusion for
1. Label the issue with `help wanted` and `beginner friendly`, if applicable, to signal that we find this important to fix and we would appreciate any help we can get from the community.
2. Move on to [prioritizing the issue](#4-prioritization-of-issues).
### Accessibility issue?
### Accessibility issues
1. Label the issue `type/accessibility` and at least one `area/*` or `datasource/*` label.
### Support request?
### Support requests
1. Kindly and politely direct the issue author to the [community site](https://community.grafana.com/) and explain that GitHub is mainly used for tracking bugs and feature requests. If possible, it's usually a good idea to add some pointers to the issue author's question.
2. Close the issue and label it with `type/question`.
@@ -223,17 +222,17 @@ The key here is asking for help and discuss issues to understand how more experi
In case there is an uncertainty around the prioritization of an issue, please ask the maintainers for help.
Label | Description
------- | --------
`priority/critical` | Highest priority. Must be actively worked on as someone's top priority right now.
`priority/support-subscription` | This is important for one or several customers having a paid Grafana support subscription.
`priority/important-soon` | Must be staffed and worked on either currently, or very soon, ideally in time for the next release.
`priority/important-longterm` | Important over the long term, but may not be staffed and/or may need multiple releases to complete.
`priority/nice-to-have` | It's a good idea, but not scheduled for any release.
`priority/awaiting-more-evidence` | Lowest priority. Possibly useful, but not yet enough interest in it.
`priority/unscheduled` | Something to look into before and to be discussed during the planning of the next (upcoming) major/minor stable release.
| Label | Description |
| --------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |
| `priority/critical` | Highest priority. Must be actively worked on as someone's top priority right now. |
| `priority/support-subscription` | This is important for one or several customers having a paid Grafana support subscription. |
| `priority/important-soon` | Must be staffed and worked on either currently, or very soon, ideally in time for the next release. |
| `priority/important-longterm` | Important over the long term, but may not be staffed and/or may need multiple releases to complete. |
| `priority/nice-to-have` | It's a good idea, but not scheduled for any release. |
| `priority/awaiting-more-evidence` | Lowest priority. Possibly useful, but not yet enough interest in it. |
| `priority/unscheduled` | Something to look into before and to be discussed during the planning of the next (upcoming) major/minor stable release. |
**Critical bug?**
**Critical bugs**
1. If a bug has been categorized and any of the following criteria apply, the bug should be labeled as critical and must be actively worked on as someone's top priority right now.
@@ -248,7 +247,7 @@ Label | Description
5. Escalate the problem to the maintainers.
6. Assign or ask a maintainer for help assigning someone to make this issue their top priority right now.
**Important short-term?**
**Important short-term**
1. Label the issue `priority/important-soon`.
2. If applicable, label the issue `priority/support-subscription`.
@@ -256,12 +255,12 @@ Label | Description
4. Make sure to add the issue to a suitable backlog of a GitHub project and prioritize it or assign someone to work on it now or very soon.
5. Consider requesting [help from the community](#5-requesting-help-from-the-community), even though it may be problematic given a short amount of time until it should be released.
**Important long-term?**
**Important long-term**
1. Label the issue `priority/important-longterm`.
2. Consider requesting [help from the community](#5-requesting-help-from-the-community).
**Nice to have?**
**Nice to have**
1. Label the issue `priority/nice-to-have`.
2. Consider requesting [help from the community](#5-requesting-help-from-the-community).
@@ -284,7 +283,7 @@ In many cases the issue author or community as a whole is more suitable to contr
- Alert notifiers
1. Kindly and politely add a comment to signal to users subscribed to updates of the issue.
- Explain that the issue would be nice to get resolved, but it isn't prioritized to work on by maintainers for an unforseen future.
- Explain that the issue would be nice to get resolved, but it isn't prioritized to work on by maintainers for an unforeseen future.
- If possible or applicable, try to help contributors getting starting by adding pointers and references to what code/files need to be changed and/or ideas of a good way to solve/implement the issue.
2. Label the issue with `help wanted`.
3. If applicable, label the issue with `beginner friendly` to denote that the issue is suitable for a beginner to work on.
@@ -300,6 +299,13 @@ For some other combinations it may not be possible at all for a maintainer to se
Even if you don't have the time or knowledge to investigate an issue we highly recommend that you [upvote](https://help.github.com/en/articles/about-conversations-on-github#reacting-to-ideas-in-comments) the issue if you happen to have the same problem. If you have further details that may help investigating the issue please provide as much information as possible.
## Automation
We have some automation that triggers on comments or labels being added to issues. Many of these automated behaviors are defined in [commands.json](https://github.com/grafana/grafana/blob/master/.github/commands.json). Or in other [GitHub Actions](https://github.com/grafana/grafana/tree/master/.github/workflows)
* Add /duplicate `#<issue number>` to have Grafana label & close issue with an appropriate message.
* Add `type/question` and the bot will close it with an appropriate message.
## External PRs
Part of issue triage should also be triaging of external PRs. Main goal should be to make sure PRs from external contributors have an owner/reviewer and are not forgotten.
@@ -335,6 +341,6 @@ This will give you a structure of labels in the sidebar similar to the following
- Grafana
```
* All notifications youll need to read/take action on show up as unread in GitHub (mine) and its sub-labels.
* All other notifications you dont need to take action on show up as unread in GitHub (other) and its sub-labels
* This is convenient for issue triage and to follow the activity in the Grafana project.
- All notifications youll need to read/take action on show up as unread in GitHub (mine) and its sub-labels.
- All other notifications you dont need to take action on show up as unread in GitHub (other) and its sub-labels
- This is convenient for issue triage and to follow the activity in the Grafana project.

View File

@@ -1,8 +1,8 @@
@torkelo is the main/default maintainer, some parts of the codebase have other maintainers:
* Backend:
* @bergquist
* Plugins:
* @ryantxu
* UX/UI:
* @davkal
- Backend:
- @bergquist
- Plugins:
- @ryantxu
- UX/UI:
- @davkal

View File

@@ -4,7 +4,7 @@
-include local/Makefile
.PHONY: all deps-go deps-js deps build-go build-server build-cli build-js build build-docker-dev build-docker-full lint-go revive golangci-lint test-go test-js test run run-frontend clean devenv devenv-down revive-strict 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 revive golangci-lint tidy-check test-go test-js test run run-frontend clean devenv devenv-down revive-strict protobuf help
GO = GO111MODULE=on go
GO_FILES ?= ./pkg/...
@@ -95,7 +95,11 @@ golangci-lint: scripts/go/bin/golangci-lint
--config ./scripts/go/configs/.golangci.toml \
$(GO_FILES)
lint-go: golangci-lint revive revive-strict # Run all code checks for backend.
tidy-check:
@echo "check whether go.mod and go.sum are consistent"
@scripts/tidy-check.sh
lint-go: golangci-lint revive revive-strict tidy-check # Run all code checks for backend.
# with disabled SC1071 we are ignored some TCL,Expect `/usr/bin/env expect` scripts
shellcheck: $(SH_FILES) ## Run checks for shell scripts.

View File

@@ -20,7 +20,7 @@ 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.
> **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:

View File

@@ -13,10 +13,10 @@ Team members and their access to repositories is maintained through [GitHub team
## Proposing changes
Examples of proposed changes are overarching architecture, component design, and specific code or graphical elements. Proposed changes SHOULD cover the big picture and intention, but individual parts SHOULD be split into the smallest possible changes. Changes SHOULD be based on and target the master branch. Depending on size of the proposed change, each change SHOULD be discussed, in increasing order of change size and complexity:
* Directly in a RR (Pull Request) - this MAY be done, but SHOULD not be the common case.
* Issue
* Developer mailing list
* Design document, shared via Google Docs, accessible to at least all team members.
- Directly in a RR (Pull Request) - this MAY be done, but SHOULD not be the common case.
- Issue
- Developer mailing list
- Design document, shared via Google Docs, accessible to at least all team members.
Significant changes MUST be discussed and agreed upon with the relevant subsystem maintainers.
@@ -24,17 +24,17 @@ Significant changes MUST be discussed and agreed upon with the relevant subsyste
Depending on the size and complexity of a PR, different requirements MUST be applied. Any team member contributing substantially to a PR MUST NOT count against review requirements.
Commits MUST be merged into master using PRs. They MUST NOT be merged into master directly.
* Every merge MUST be approved by at least one team member.
* Non-trivial changes MUST be approved by at least
* two team members, or
* one subsystem maintainer.
* Significant changes MUST be approved by at least
* two team members, AND
* the relevant subsystem maintainer.
- Every merge MUST be approved by at least one team member.
- Non-trivial changes MUST be approved by at least
- two team members, or
- one subsystem maintainer.
- Significant changes MUST be approved by at least
- two team members, AND
- the relevant subsystem maintainer.
PRs MUST be [reviewed](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/reviewing-changes-in-pull-requests) and [approved](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/approving-a-pull-request-with-required-reviews) via GitHubs review system.
* Reviewers MAY write comments if approving
* Reviewers MUST write comments if rejecting a PR or if requesting changes.
- Reviewers MAY write comments if approving
- Reviewers MUST write comments if rejecting a PR or if requesting changes.
Once a PR is approved as per above, any team member MAY merge the PR.
@@ -45,28 +45,28 @@ Once a PR is approved as per above, any team member MAY merge the PR.
Grafana uses trunk-based development.
In particular, we found that the following principles match how we work:
* Master and release branches MUST always build without failure.
* Branches SHOULD be merged often. Larger changes SHOULD be activated with feature flags until they are ready. Long-lived development branches SHOULD be avoided.
* Changes MAY be enabled by default once they are in a complete state
* Changes which span multiple PRs MUST be described in an overarching issue or Google Doc.
- Master and release branches MUST always build without failure.
- Branches SHOULD be merged often. Larger changes SHOULD be activated with feature flags until they are ready. Long-lived development branches SHOULD be avoided.
- Changes MAY be enabled by default once they are in a complete state
- Changes which span multiple PRs MUST be described in an overarching issue or Google Doc.
## Releases
Releases MUST follow [Semantic Versioning](https://semver.org/) in naming and SHOULD follow Semantic Versioning as closely as reasonably possible for non-library software.
Release branches MUST be split from the following branches.
* MAJOR release branches MUST be based on master.
* MINOR release branches MUST be based on master.
* PATCH release branches MUST be split from the relevant MINOR release branchs most current PATCH
- MAJOR release branches MUST be based on master.
- MINOR release branches MUST be based on master.
- PATCH release branches MUST be split from the relevant MINOR release branchs most current PATCH
Security releases follow the same process but MUST be prepared in secret. Security releases MUST NOT include changes which are not related to the security fix. Normal release processes MUST accommodate the security release process. SECURITY.md MUST be followed.
PRs intended for inclusion in the next PATCH release MUST be labeled with `cherry-pick-needed` so they can be picked up by automated release tooling.
Releases follow the following cadence
* MAJOR: Yearly
* MINOR: Every 4-6 weeks
* PATCH: As needed
- MAJOR: Yearly
- MINOR: Every 4-6 weeks
- PATCH: As needed
Releases SHOULD NOT be delayed by pending changes.

View File

@@ -37,6 +37,7 @@ var (
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 = ""
@@ -59,11 +60,13 @@ func main() {
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")
@@ -89,6 +92,10 @@ func main() {
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 {
@@ -105,16 +112,16 @@ func main() {
case "build-srv", "build-server":
clean()
doBuild("grafana-server", "./pkg/cmd/grafana-server", []string{})
doBuild("grafana-server", "./pkg/cmd/grafana-server", buildTags)
case "build-cli":
clean()
doBuild("grafana-cli", "./pkg/cmd/grafana-cli", []string{})
doBuild("grafana-cli", "./pkg/cmd/grafana-cli", buildTags)
case "build":
//clean()
for _, binary := range binaries {
doBuild(binary, "./pkg/cmd/"+binary, []string{})
doBuild(binary, "./pkg/cmd/"+binary, buildTags)
}
case "build-frontend":

View File

@@ -130,7 +130,25 @@ logging = false
# This setting also applies to core backend HTTP data sources where query requests use an HTTP client with timeout set.
timeout = 30
# If enabled and user is not anonymous, data proxy will add X-Grafana-User header with username into the request, default is false.
# How many seconds the data proxy waits before sending a keepalive request.
keep_alive_seconds = 30
# How many seconds the data proxy waits for a successful TLS Handshake before timing out.
tls_handshake_timeout_seconds = 10
# How many seconds the data proxy will wait for a server's first response headers after
# fully writing the request headers if the request has an "Expect: 100-continue"
# header. A value of 0 will result in the body being sent immediately, without
# waiting for the server to approve.
expect_continue_timeout_seconds = 1
# The maximum number of idle connections that Grafana will keep alive.
max_idle_connections = 100
# 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
#################################### Analytics ###########################
@@ -275,15 +293,18 @@ viewers_can_edit = false
# Editors can administrate dashboard, folders and teams they create
editors_can_admin = false
# The duration in time a user invitation remains valid before expiring. This setting should be expressed as a duration. Examples: 6h (hours), 2d (days), 1w (week). Default is 24h (24 hours). The minimum supported duration is 15m (15 minutes).
user_invite_max_lifetime_duration = 24h
[auth]
# Login cookie name
login_cookie_name = grafana_session
# The maximum lifetime (duration) an authenticated user can be inactive before being required to login at next visit. Default is 7 days (7d). This setting should be expressed as a duration, e.g. 5m (minutes), 6h (hours), 10d (days), 2w (weeks), 1M (month). The lifetime resets at each successful token rotation (token_rotation_interval_minutes).
login_maximum_inactive_lifetime_duration =
login_maximum_inactive_lifetime_duration =
# The maximum lifetime (duration) an authenticated user can be logged in since login time before being required to login. Default is 30 days (30d). This setting should be expressed as a duration, e.g. 5m (minutes), 6h (hours), 10d (days), 2w (weeks), 1M (month).
login_maximum_lifetime_duration =
login_maximum_lifetime_duration =
# How often should auth tokens be rotated for authenticated users when being active. The default is each 10 minutes.
token_rotation_interval_minutes = 10
@@ -307,6 +328,9 @@ oauth_state_cookie_max_age = 600
# limit of api_key seconds to live before expiration
api_key_max_seconds_to_live = -1
# Set to true to enable SigV4 authentication option for HTTP-based datasources
sigv4_auth_enabled = false
#################################### Anonymous Auth ######################
[auth.anonymous]
# enable anonymous access
@@ -646,6 +670,12 @@ disable_total_stats = false
basic_auth_username =
basic_auth_password =
# Metrics environment info adds dimensions to the `grafana_environment_info` metric, which
# can expose more information about the Grafana instance.
[metrics.environment_info]
#exampleLabel1 = exampleValue1
#exampleLabel2 = exampleValue2
# Send internal Grafana metrics to graphite
[metrics.graphite]
# Enable by setting the address setting (ex localhost:2003)
@@ -675,6 +705,8 @@ sampler_type = const
# and indicates the initial sampling rate before the actual one
# is received from the mothership
sampler_param = 1
# sampling_server_url is the URL of a sampling manager providing a sampling strategy.
sampling_server_url =
# Whether or not to use Zipkin span propagation (x-b3- HTTP headers).
zipkin_propagation = false
# Setting this to true disables shared RPC spans.
@@ -738,6 +770,7 @@ 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.
allow_loading_unsigned_plugins =
marketplace_url = https://grafana.com/grafana/plugins/
#################################### Grafana Image Renderer Plugin ##########################
[plugin.grafana-image-renderer]

View File

@@ -131,6 +131,24 @@
# This setting also applies to core backend HTTP data sources where query requests use an HTTP client with timeout set.
;timeout = 30
# How many seconds the data proxy waits before sending a keepalive probe request.
;keep_alive_seconds = 30
# How many seconds the data proxy waits for a successful TLS Handshake before timing out.
;tls_handshake_timeout_seconds = 10
# How many seconds the data proxy will wait for a server's first response headers after
# fully writing the request headers if the request has an "Expect: 100-continue"
# header. A value of 0 will result in the body being sent immediately, without
# waiting for the server to approve.
;expect_continue_timeout_seconds = 1
# The maximum number of idle connections that Grafana will keep alive.
;max_idle_connections = 100
# 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
@@ -274,15 +292,18 @@
# Editors can administrate dashboard, folders and teams they create
;editors_can_admin = false
# The duration in time a user invitation remains valid before expiring. This setting should be expressed as a duration. Examples: 6h (hours), 2d (days), 1w (week). Default is 24h (24 hours). The minimum supported duration is 15m (15 minutes).
;user_invite_max_lifetime_duration = 24h
[auth]
# Login cookie name
;login_cookie_name = grafana_session
# The maximum lifetime (duration) an authenticated user can be inactive before being required to login at next visit. Default is 7 days (7d). This setting should be expressed as a duration, e.g. 5m (minutes), 6h (hours), 10d (days), 2w (weeks), 1M (month). The lifetime resets at each successful token rotation
;login_maximum_inactive_lifetime_duration =
# The maximum lifetime (duration) an authenticated user can be inactive before being required to login at next visit. Default is 7 days (7d). This setting should be expressed as a duration, e.g. 5m (minutes), 6h (hours), 10d (days), 2w (weeks), 1M (month). The lifetime resets at each successful token rotation.
;login_maximum_inactive_lifetime_duration =
# The maximum lifetime (duration) an authenticated user can be logged in since login time before being required to login. Default is 30 days (30d). This setting should be expressed as a duration, e.g. 5m (minutes), 6h (hours), 10d (days), 2w (weeks), 1M (month).
;login_maximum_lifetime_duration =
;login_maximum_lifetime_duration =
# How often should auth tokens be rotated for authenticated users when being active. The default is each 10 minutes.
;token_rotation_interval_minutes = 10
@@ -306,6 +327,9 @@
# limit of api_key seconds to live before expiration
;api_key_max_seconds_to_live = -1
# Set to true to enable SigV4 authentication option for HTTP-based datasources.
;sigv4_auth_enabled = false
#################################### Anonymous Auth ######################
[auth.anonymous]
# enable anonymous access
@@ -640,6 +664,12 @@
; basic_auth_username =
; basic_auth_password =
# Metrics environment info adds dimensions to the `grafana_environment_info` metric, which
# can expose more information about the Grafana instance.
[metrics.environment_info]
#exampleLabel1 = exampleValue1
#exampleLabel2 = exampleValue2
# Send internal metrics to Graphite
[metrics.graphite]
# Enable by setting the address setting (ex localhost:2003)
@@ -667,6 +697,8 @@
# and indicates the initial sampling rate before the actual one
# is received from the mothership
;sampler_param = 1
# sampling_server_url is the URL of a sampling manager providing a sampling strategy.
;sampling_server_url =
# Whether or not to use Zipkin propagation (x-b3- HTTP headers).
;zipkin_propagation = false
# Setting this to true disables shared RPC spans.
@@ -726,6 +758,7 @@
;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.
;allow_loading_unsigned_plugins =
;marketplace_url = https://grafana.com/grafana/plugins/
#################################### Grafana Image Renderer Plugin ##########################
[plugin.grafana-image-renderer]
@@ -813,4 +846,4 @@
;use_browser_locale = false
# Default timezone for user preferences. Options are 'browser' for the browser local timezone or a timezone name from IANA Time Zone database, e.g. 'UTC' or 'Europe/Amsterdam' etc.
;default_timezone = browser
;default_timezone = browser

View File

@@ -8,3 +8,6 @@ Learn more about the backend architecture:
- Part 2: [Communication](communication.md)
- Part 3: [Database](database.md)
Learn more about the frontend architecture:
- Part 1: [Data requests](frontend-data-requests.md)

View File

@@ -66,7 +66,7 @@ if err := s.bus.Dispatch(cmd); err != nil {
}
```
**Note:** `Dispatch` will return an error if no handler is registered for that command.
> **Note:** `Dispatch` will return an error if no handler is registered for that command.
**Tip:** Browse the available commands in the `models` package.
@@ -87,7 +87,7 @@ func (s *MyService) SendStickers(cmd *models.SendStickersCommand) error {
}
```
**Note:** The handler method may return an error if unable to complete the command.
> **Note:** The handler method may return an error if unable to complete the command.
## Queries

View File

@@ -0,0 +1,41 @@
# Data requests
[BackendSrv](https://grafana.com/docs/grafana/latest/packages_api/runtime/backendsrv) handles all outgoing HTTP requests from Grafana. This document explains the high-level concepts used by `BackendSrv`.
## Canceling requests
This section describes how canceling requests work in Grafana. While data sources can implement their own cancellation concept, we recommend that you use the method we describe here.
A data request can take a long time to finish. During the time between when a request starts and finishes, the user can change context. For example, the user may navigate away or issue the same request again.
If we wait for canceled requests to complete, it might create unnecessary load on data sources.
Grafana uses a concept called _request cancelation_ to cancel any ongoing request that Grafana doesn't need.
#### Before Grafana 7.2
Before Grafana can cancel any data request, it has to identify that request. Grafana identifies a request using the property `requestId` [passed as options](https://github.com/grafana/grafana/blob/master/docs/sources/packages_api/runtime/backendsrvrequest.md) when you use [BackendSrv](https://grafana.com/docs/grafana/latest/packages_api/runtime/backendsrv).
The cancellation logic is as follows:
- When an ongoing request discovers that an additional request with the same `requestId` has started, then Grafana will cancel the ongoing request.
- When an ongoing request discovers that the special "cancel all requests" `requestId` was sent, then Grafana will cancel the ongoing request.
#### After Grafana 7.2
Grafana 7.2 introduced an additional way of canceling requests using [RxJs](https://github.com/ReactiveX/rxjs). To support the new cancellation functionality, the data source needs to use the new `fetch` function in [BackendSrv](https://grafana.com/docs/grafana/latest/packages_api/runtime/backendsrv).
Migrating the core data sources to the new `fetch` function [is an ongoing process that you can read about in this issue.](https://github.com/grafana/grafana/issues/27222)
## Request queue
Depending on how the web browser implements the protocol for HTTP 1.1, it will limit the number of parallel requests, lets call this limit _max_parallel_browser_request_.
Unless you have configured Grafana to use HTTP2, the browser limits parallel data requests according to the browser's implementation. For more information on how to enable HTTP2, refer to [Configuration](https://grafana.com/docs/grafana/latest/administration/configuration/#protocol).
Because there is a _max_parallel_browser_request_ limit, if some of the requests take a long time, they will block later requests and make interacting with Grafana very slow.
#### Before Grafana 7.2
Not supported.
#### After Grafana 7.2
Grafana uses a _request queue_ to process all incoming data requests in order while reserving a free "spot" for any requests to the Grafana API.
Since the first implementation of the request queue doesn't take into account what browser the user uses, the _request queue_ limit for parallel data source requests is hard-coded to 5.
> **Note:** Grafana instances [configured with HTTP2 ](https://grafana.com/docs/grafana/latest/administration/configuration/#protocol) will have a hard coded limit of 1000.

View File

@@ -40,7 +40,7 @@ func init() {
}
```
`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/cmd/grafana-server`, import the package we just created:
`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:
```go
import _ "github.com/grafana/grafana/pkg/services/mysvc"
@@ -66,4 +66,4 @@ type MyService struct {
}
```
**Note:** Any injected dependency needs to be an exported field. Any unexported fields result in a runtime error.
> **Note:** Any injected dependency needs to be an exported field. Any unexported fields result in a runtime error.

View File

@@ -174,7 +174,7 @@ make build-docker-full
The resulting image will be tagged as grafana/grafana:dev.
**Note:** If you've already set up a local development environment, and you're running a `linux/amd64` machine, you can speed up building the Docker image:
> **Note:** If you've already set up a local development environment, and you're running a `linux/amd64` machine, you can speed up building the Docker image:
1. Build the frontend: `go run build.go build-frontend`.
1. Build the Docker image: `make build-docker-dev`.
@@ -211,8 +211,8 @@ Another alternative is to limit the files being watched. The directories that ar
To retain your `ulimit` configuration, i.e. so it will be remembered for future sessions, you need to commit it to your command line shell initialization file. Which file this will be depends on the shell you are using, here are some examples:
* zsh -> ~/.zshrc
* bash -> ~/.bashrc
- zsh -> ~/.zshrc
- bash -> ~/.bashrc
Commit your ulimit configuration to your shell initialization file as follows ($LIMIT being your chosen limit and $INIT_FILE being the initialization file for your shell):

View File

@@ -1,46 +1,41 @@
# Markdown style guide
This guide for Markdown style helps keep contributions consistent across all documentation
created for Grafana products. Refer to the guide and update its sections as needed when a
Subject Matter Expert answers a question on Markdown style, or a decision is made about
how to apply Markdown.
This guide for Markdown style helps keep contributions consistent across all documentation created for Grafana products. Refer to the guide and update its sections as needed when a Subject Matter Expert answers a question on Markdown style, or a decision is made about how to apply Markdown.
## Headers
In Markdown, the number of "#" symbols creates different heading levels, similar to
HTML heading levels:
In Markdown, the number of "#" symbols creates different heading levels, similar to HTML heading levels:
**Example**
* \# is \<h1>.
* \#\# is \<h2>.
* \#\#\# is \<h3>.
- \# is \<h1>.
- \#\# is \<h2>.
- \#\#\# is \<h3>.
Start your document with a single ``#`` for the title of the page. Add the sub-headings with two ``##``.
## Bold and emphasis
* Make text **bold** using two asterisks.
- Make text **bold** using two asterisks.
**Example:** It is ``**important**`` to use GitHub Flavored Markdown emoji consistently.
**Example:** It is ``**important**`` to use GitHub-flavored Markdown emoji consistently.
* Make text ``*emphasized*`` using single `` _underscores_`` or a single asterisk.
- Make text ``_emphasized_`` using single `` _underscores_``. Do not use the single asterisk, it can be easily confused with bold.
**Example:** GitHub Flavored Markdown emoji should _only_ appear in specific cases.
**Example:** GitHub-flavored markdown emoji should _only_ appear in specific cases.
## Links and references
Create links to other website by wrapping the display text in square brackets, and
the web URL in curved brackets.
Create links to other website by wrapping the display text in square brackets, and the web URL in curved brackets.
\[text to display](www.website.com)
**Example:** For more information on including emoji in GitHub flavored Markdown, refer to the [webfx page on emoji](https://www.webfx.com/tools/emoji-cheat-sheet/) for a list of emoji.
**Example:** For more information on including emoji in GitHub-flavored markdown, refer to the [webfx page on emoji](https://www.webfx.com/tools/emoji-cheat-sheet/) for a list of emoji.
## Block quotes
Include Block quotes inside text using right-facing arrows:
Include block quotes inside text using right-facing arrows:
**Example**
@@ -50,8 +45,7 @@ Include Block quotes inside text using right-facing arrows:
## Code blocks
Code blocks written with markdown can show off syntax highlighting specific
to different languages. Use three back tics to create a code block:
Code blocks written with markdown can show off syntax highlighting specific to different languages. Use three back tics to create a code block:
```
function testNum(a) {
@@ -63,8 +57,7 @@ function testNum(a) {
}
```
Write the name of the language after the first set of back tics, no spaces,
to show specific syntax highlighting. For example; "\```javascript" produces the following:
Write the name of the language after the first set of back tics, no spaces, to show specific syntax highlighting. For example; "\```javascript" produces the following:
```javascript
function testNum(a) {
@@ -77,10 +70,7 @@ function testNum(a) {
```
## Tables
Construct a table by typing the table headings, and separating them with
a "|" character. Then, add a second line of dashes ("-") separated by
another "|" character. When constructing the table cells, separate each cell data with another
"|".
Construct a table by typing the table headings, and separating them with a "|" character. Then, add a second line of dashes ("-") separated by another "|" character. When constructing the table cells, separate each cell data with another "|".
**Example**
@@ -116,14 +106,13 @@ The list above will always display as:
### Unordered lists
Build a list of points - an unordered or unnumbered list - by
using "\*" characters.
Build a list of points - an unordered or unnumbered list - by using "\-" (hyphen) characters.
**Example**
* First
* Another item
* The last list item
- First
- Another item
- The last list item
## Images
@@ -135,10 +124,8 @@ This follows the format of "!", alt text wrapped in "[]" and the link URL wrappe
## Comments
You can include comments that will not appear in published markdown using the
following syntax:
You can include comments that will not appear in published markdown using the following syntax:
\[comment]: <> (Comment text to display)
The word "comment" wrapped in "[]" followed by a ":", a space, "<>", and then
the comment itself wrapped in "()".
The word "comment" wrapped in "[]" followed by a ":", a space, "<>", and then the comment itself wrapped in "()".

View File

@@ -26,8 +26,8 @@ This section provides guidelines on how to avoid using charged language in docum
Don't use "whitelist" or "blacklist" when referring to allowing or blocking content or traffic.
* When used as a noun, use "allowlist" or "blocklist".
* When used as a verb, use "allow" or "block"
- When used as a noun, use "allowlist" or "blocklist".
- When used as a verb, use "allow" or "block"
Example: _To **allow** outgoing traffic, add the IP to the **allowlist**._
@@ -35,8 +35,8 @@ Example: _To **allow** outgoing traffic, add the IP to the **allowlist**._
Don't use "master" or "slave" to describe relationships between nodes or processes.
* Use "leader", "main" or "primary," instead of "master."
* Use "follower" or "secondary," instead of "slave."
- Use "leader", "main" or "primary," instead of "master."
- Use "follower" or "secondary," instead of "slave."
### Exceptions
@@ -50,17 +50,19 @@ The following sections provide general guidelines on topics specific to Grafana
### General
* Use active voice. Avoid passive voice.
- Use active voice. Avoid passive voice.
- Passive: The heatmap visualization is displayed.
- Active: Grafana displays the heatmap visualization.
* Write in the imperative second person. Examples: You can write a query. Click the panel. Close the window.
* Write in present tense.
- Write in the imperative second person. Examples: You can write a query. Click the panel. Close the window.
- Write in present tense.
- Not: The panel will open.
- Use: The panel opens. Grafana opens the panel.
* Do not use an ampersand (&) as an abbreviation for "and."
- Do not use an ampersand (&) as an abbreviation for "and."
- **Exceptions:** If an ampersand is used in the Grafana UI, then match the UI.
* Avoid using internal slang and jargon in technical documentation.
* Do not use two spaces after a period. Only add one space after each sentence. Do not add a space at the end of the paragraph.
- Avoid using internal slang and jargon in technical documentation.
- Do not use two spaces after a period. Only add one space after each sentence. Do not add a space at the end of the paragraph.
- Sentence length should be 25 words or less. If your thought is longer than 25 words, consider breaking up the sentence or changing the format to a list.
- Paragraphs should be three sentences or fewer. Break up long paragraphs.
### File naming conventions
@@ -70,39 +72,39 @@ The following sections provide general guidelines on topics specific to Grafana
### Headings
* Write headings in sentence case, not title case.
- Write headings in sentence case, not title case.
- This is sentence case
- This Is Title Case
* Task topic headings start with a verb.
- Task topic headings start with a verb.
- Write a query. Create a dashboard.
* Concept and reference topic headings should be nouns or gerunds. Examples: Contributing to docs, Visualizations, Style guide
* Avoid following one heading with another heading.
* Avoid skipping heading levels. For example, an h1 should be followed by an h2 rather than an h3.
* Avoid having just one lower-level heading. For example, h1, h2, h2, h3, h3, h2 is a good order. Do no go h1, h2, h3, h2, h3, h2.
* Don't include parenthetical words like (Important!) in headings.
- Concept and reference topic headings should be nouns or gerunds. Examples: Contributing to docs, Visualizations, Style guide
- Avoid following one heading with another heading.
- Avoid skipping heading levels. For example, an h1 should be followed by an h2 rather than an h3.
- Avoid having just one lower-level heading. For example, h1, h2, h2, h3, h3, h2 is a good order. Do not go h1, h2, h3, h2, h3, h2.
- Don't include parenthetical words like (Important!) in headings.
### Images
* Preferred format is .png
* File extension should be all lowercase.
* Preferred DPI is 72.
* Assume all graphics will be exclusively viewed on the web.
* Maximum image size is 3840px X 2160px.
* Screenshots should be readable, but not too large.
- Preferred format is .png
- File extension should be all lowercase.
- Preferred DPI is 72.
- Assume all graphics will be exclusively viewed on the web.
- Maximum image size is 3840px X 2160px.
- Screenshots should be readable, but not too large.
### Capitalization
* Grafana, Loki, and Prometheus are always capitalized unless part of a code block.
* API names are always Title Case, followed by "API"—for example, "Dashboard Permissions API"
* Git is always capitalized, unless part of a code block.
* Abbreviations are always capitalized (such as API, HTTP, ID, JSON, SQL, or URL) unless they are part of a code block.
* Menu and submenu titles always use sentence case: capitalize the first word, and lowercase the rest.
- Grafana, Loki, and Prometheus are always capitalized unless part of a code block.
- API names are always Title Case, followed by "API"—for example, "Dashboard Permissions API"
- Git is always capitalized, unless part of a code block.
- Abbreviations are always capitalized (such as API, HTTP, ID, JSON, SQL, or URL) unless they are part of a code block.
- Menu and submenu titles always use sentence case: capitalize the first word, and lowercase the rest.
- "Dashboards" when referring to the submenu title.
- "Keyboard shortcuts" when referring to the submenu topic.
* Generic and plural versions are always lowercase.
- Generic and plural versions are always lowercase.
- Lowercase "dashboard" when referring to a dashboard generally.
- Lowercase "dashboards" when referring to multiple dashboards.
* **Exceptions:** If a term is lowercased in the Grafana UI, then match the UI.
- **Exceptions:** If a term is lowercased in the Grafana UI, then match the UI.
### Links and references
@@ -115,16 +117,46 @@ When possible, use the exact title of the page or section you are linking to as
**Example**
Refer to the [Documentation style guide](documentation-style-guide.md) for information about word usage and capitalization guidelines.
### Notes, tips, cautions, and warnings
Grafana documentation uses notes, tips, cautions, and warnings. Notes are the most common. The format for all of them is indented, bold, sentence case:
```
> **Note:**
```
#### Notes
Notes provide additional information that the user should be extra aware of. For example:
> **Note:** This page describes a feature for Grafana 7.0 beta.
#### Tips
Tips describe alternate or more efficient ways of doing things. Rarely used.
#### Cautions
Cautions warn the user that they should proceed with caution. Use cautions to emphasize the potential downside of a course of action.
> **Caution:** If you turn off authentication requirements, then anyone can access your Grafana instance. This poses a considerable security risk.
#### Warnings
Warnings tell the user not to do something. For example:
> **Warning:** Grafana does not back up your dashboards. If you delete a dashboard, then you might not be able to recover it.
### Command line examples
* Do not assume everyone is using Linux. Make sure instructions include enough information for Windows and Mac users to successfully complete procedures.
- 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.
- Do not add `$` before commands. Make it easy for users to copy and paste commands.
* **Wrong:** `$ sudo yum install grafana`
* **Right:** `sudo yum install grafana`
- **Wrong:** `$ sudo yum install grafana`
- **Right:** `sudo yum install grafana`
* Include `sudo` before commands that require `sudo` to work.
- Include `sudo` before commands that require `sudo` to work.
For terminal examples and Grafana configuration, use a `bash` code block:
```bash
@@ -148,26 +180,26 @@ Two words if used as a verb, one word if used as a noun.
**Examples**
* Check out these new features!
* Proceed to checkout.
- Check out these new features!
- Proceed to checkout.
#### data source
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.
* Spell out "repository" and avoid the shorter "repo."
* Use "Unix" as the preferred spelling (as opposed to "UNIX", or "unix") when referring to the family of operating systems.
- "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.
- Spell out "repository" and avoid the shorter "repo."
- Use "Unix" as the preferred spelling (as opposed to "UNIX", or "unix") when referring to the family of operating systems.
#### display (verb)
*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.
- 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.
#### drawer
@@ -193,5 +225,5 @@ Two words if used as a verb, one word if used as a noun.
**Examples**
* Set up the workspace.
* Initial setup might take five minutes.
- Set up the workspace.
- Initial setup might take five minutes.

View File

@@ -0,0 +1,25 @@
# End-to-End Tests for core Grafana
This document is specific to the [Grafana repository](https://github.com/grafana/grafana). Be sure that you've read the [generalized E2E document](e2e.md).
## Commands
- `yarn e2e` Creates an isolated `grafana-server` home under _\<repo-root>/e2e/tmp_ with provisioned data sources and dashboards. This copies locally build binary and frontend assets from your repo root so you need to have a built backend and frontend for this to run locally. The server starts on port 3001 so it does not conflict with your normal dev server.
- `yarn e2e:debug` Same as above but runs the tests in chrome and does not shutdown after completion.
- `yarn e2e:dev` Same as above but does not run any tests on startup. It lets you pick a test first.
If you already have a Grafana instance running, you can provide a specific URL by setting the `BASE_URL` environment variable:
```shell
BASE_URL=http://172.0.10.2:3333 yarn e2e
```
The above commands use some utils scripts under [_\<repo-root>/e2e_](../../e2e) that can also be used for more control.
- `./e2e/start-server` This creates a fresh new grafana server working dir, setup's config and starts the server. It will also kill any previously started server that is still running using pid file at _\<repo-root>/e2e/tmp/pid_.
- `./e2e/wait-for-grafana` waits for `$HOST` and `$PORT` to be available. Per default localhost and 3001.
- `./e2e/run-suite <debug|dev|noarg>` Starts cypress in different modes.
## Test suites
All the integration tests are located at _\<repo-root>/e2e/suite\<x>/specs_. The page objects and reusable flows are in the [_\<repo-root>/packages/grafana-e2e_](../../packages/grafana-e2e) package.

View File

@@ -0,0 +1,28 @@
# End-to-End Tests for plugins
Be sure that you've read the [generalized E2E document](e2e.md).
## Commands
- `yarn test:e2e` will run [Grafana's E2E utility](../../packages/grafana-e2e) against an already running Grafana server.
- `yarn test:e2e:update` will run `test:e2e` but instead of asserting that screenshots match their expected fixtures, they'll be replaced with new ones.
Your running Grafana instance can be targeted by setting the `CYPRESS_BASE_URL`, `CYPRESS_USERNAME` and `CYPRESS_PASSWORD` environment variableS:
```shell
CYPRESS_BASE_URL=https://localhost:3000 CYPRESS_USERNAME=admin CYPRESS_PASSWORD=admin yarn test:e2e
```
## Test suites
All tests are located at _\<repo-root>/cypress/integration_ by default.
## Things to test
- Add data source (if applicable)
- Add panel
- Edit panel
- Annotations (if applicable)
- Aliases (if applicable)
- Template variables
- "Explore" view

View File

@@ -1,139 +1,122 @@
# End to end test framework
# End-to-End tests
Grafana Labs uses a minimal home grown solution built on top of Cypress for our end to end (e2e) tests.
Grafana Labs uses a minimal [homegrown solution](../../packages/grafana-e2e) built on top of [Cypress](https://cypress.io) for its end-to-end (E2E) tests.
## Commands
Important notes:
- `yarn e2e` Creates an isolated grafana-server home under `<repo-root>/e2e/tmp` with provisioned data sources and dashboards. This
copies locally build binary and frontend assets from your repo root so you need to have a built backend and frontend
for this to run locally. The server starts on port 3001 so it does not conflict with your normal dev server.
- `yarn e2e:debug` Same as above but runs the tests in chrome and does not shutdown after completion.
- `yarn e2e:dev` Same as above but does not run any tests on startup. It lets you pick a test first.
- We generally store all element identifiers ([CSS selectors](https://mdn.io/docs/Web/CSS/CSS_Selectors)) within the framework for reuse and maintainability.
- We generally do not use stubs or mocks as to fully simulate a real user.
- Cypress' promises [do not behave as you'd expect](https://docs.cypress.io/guides/core-concepts/introduction-to-cypress.html#Mixing-Async-and-Sync-code).
- [Testing core Grafana](e2e-core.md) is slightly different than [testing plugins](e2e-plugins.md).
If you already have a Grafana instance running, you can provide a specific URL by setting the `BASE_URL` environment variable:
## Framework structure
```
BASE_URL=http://172.0.10.2:3333 yarn e2e
```
Inspired by https://martinfowler.com/bliki/PageObject.html
The above commands use some utils scripts under `<repo-root>/e2e` that can also be used for more control.
- `./e2e/start-server` This creates a fresh new grafana server working dir, setup's config and starts the server. It
will also kill any previously started server that is still running using pid file at `<repo-root>/e2e/tmp/pid`.
- `./e2e/wait-for-grafana` waits for `$HOST` and `$PORT` to be available. Per default localhost and 3001.
- `./e2e/run-suite <debug|dev|noarg>` Starts cypress in different modes.
## Test Suites
All the integration tests are located at `e2e/suite<x>/specs`. The page objects and reusable flows are in the
`packages/grafana-e2e` package.
## Basic concepts
Here is a good introduction to e2e best practices: https://martinfowler.com/bliki/PageObject.html.
- `Selector`: A unique identifier that is used from the e2e framework to retrieve an element from the Browser
- `Selector`: A unique identifier that is used from the E2E framework to retrieve an element from the Browser
- `Page`: An abstraction for an object that contains one or more `Selectors` with `visit` function to navigate to the page.
- `Component`: An abstraction for an object that contains one or more `Selectors` but without `visit` function
- `Flow`: An abstraction that contains a sequence of actions on one or more `Pages` that can be reused and shared between tests
## Basic example
Let's start with a simple example with a single selector. For simplicity, all examples are in JSX.
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:
In our example app, we have an input that we want to type some text into during our e2e test.
```jsx harmony
<div>
<input type="text" className="gf-form-input login-form-input" />
</div>
```jsx
<input
className="gf-form-input login-form-input"
type="text"
/>
```
We could define a selector using `JQuery` [type selectors](https://api.jquery.com/category/selectors/) with a string 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.
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):
At Grafana, we use `aria-label` as our preferred way of defining selectors instead of `data-*` attributes. This also aids in accessibility.
Let's add a descriptive `aria-label` to our simple example.
```jsx harmony
<div>
<input type="text" className="gf-form-input login-form-input" aria-label="Username input field" />
</div>
```jsx
<input
aria-label="Username input field"
className="gf-form-input login-form-input"
type="text"
/>
```
Now that we added the `aria-label` we suddenly get more information about this particular field. It's an input field that represents a username, but there it's still not really signaling that it's part of an e2e test.
The next step is to create a `Page` representation in our e2e test 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:
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:
```typescript
export const Login = {
url: '/login', // used when called from Login.visit()
username: 'Username input field', // used when called from Login.username().type('Hello World')
// Called via `Login.visit()`
url: '/login',
// Called via `Login.username()`
username: 'Username input field',
};
```
The next step is to add the `Login` page to the exported const `Pages` in `packages/grafana-e2e-selectors/src/selectors/pages.ts` so that it appears when we type `e2e.pages` in our IDE.
The next step is to add the `Login` page to the `Pages` export within [_\<repo-root>/packages/grafana-e2e-selectors/src/selectors/pages.ts_](../../packages/grafana-e2e-selectors/src/selectors/pages.ts) so that it appears when we type `e2e.pages` in our IDE.
```ecmascript 6
```typescript
export const Pages = {
Login,
...,
...,
...,
,
,
,
};
```
Now that we have a `Page` called `Login` in our `Pages` const we can use that to add a selector in our html like shown below and now this really signals to future developers that it is part of an e2e test.
Now that we have a `Page` called `Login` in our `Pages` const we can use that to add a selector in our html like shown below and now this really signals to future developers that it is part of an E2E test.
```jsx harmony
<div>
<input type="text" className="gf-form-input login-form-input" aria-label={selectors.pages.Login.username} />
</div>
```jsx
import { selectors } from '@grafana/e2e-selectors';
<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.
- The `url` property is used whenever we call the `visit` function and is equivalent to the Cypress function [cy.visit()](https://docs.cypress.io/api/commands/visit.html#Syntax).
> Best practice after calling `visit` is to always call `should` on a selector to prevent flaky tests when you try to access an element that isn't ready. For more information, refer to [Commands vs. assertions](https://docs.cypress.io/guides/core-concepts/retry-ability.html#Commands-vs-assertions).
- Any defined selector can be accessed from the `Login` page by invoking it. This is equivalent to the result of the Cypress function [cy.get(...)](https://docs.cypress.io/api/commands/get.html#Syntax).
- The `url` property is used whenever we call the `visit` function and is equivalent to the Cypress' [`cy.visit()`](https://docs.cypress.io/api/commands/visit.html#Syntax).
```ecmascript 6
- Any defined selector can be accessed from the `Login` page by invoking it. This is equivalent to the result of the Cypress function [`cy.get(…)`](https://docs.cypress.io/api/commands/get.html#Syntax).
```typescript
describe('Login test', () => {
it('Should pass', () => {
it('passes', () => {
e2e.pages.Login.visit();
// To prevent flaky tests, always do a .should on any selector that you expect to be in the DOM.
// 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');
e2e.pages.Login.username().type('admin');
e2e.pages.Login.username()
.should('be.visible')
.type('admin');
});
});
```
## Advanced example
Let's take a look at an example that uses the same `selector` for multiple items in a list for instance. In this example app we have a list of data sources that we want to click on during an e2e test.
Let's take a look at an example that uses the same `selector` for multiple items in a list for instance. In this example app we have a list of data sources that we want to click on during an E2E test.
```jsx harmony
```jsx
<ul>
{dataSources.map(dataSource => (
<li className="card-item-wrapper" key={dataSource.id}>
<a className="card-item" href={`datasources/edit/${dataSource.id}`}>
<div className="card-item-name">{dataSource.name}</div>
{dataSources.map(({ id, name }) => (
<li className="card-item-wrapper" key={id}>
<a className="card-item" href={`datasources/edit/${id}`}>
<div className="card-item-name">{name}</div>
</a>
</li>
))}
</ul>
```
````
Just as before in the basic example we'll start by creating a page abstraction using the `pageFactory` function:
```typescript
export const DataSources = {
url: '/datasources',
dataSources: (dataSourceName: string) => `Data source list item ${dataSourceName}`,
};
````
```
You might have noticed that instead of a simple `string` as the `selector`, we're using a `function` that takes a string parameter as an argument and returns a formatted string using the argument.
@@ -141,13 +124,13 @@ Just as before we need to add the `DataSources` page to the exported const `Page
The next step is to use the `dataSources` selector function as in our example below:
```jsx harmony
```jsx
<ul>
{dataSources.map(dataSource => (
<li className="card-item-wrapper" key={dataSource.id}>
<a className="card-item" href={`datasources/edit/${dataSource.id}`}>
<div className="card-item-name" aria-label={selectors.pages.DataSources.dataSources(dataSource.name)}>
{dataSource.name}
{dataSources.map(({ id, name }) => (
<li className="card-item-wrapper" key={id}>
<a className="card-item" href={`datasources/edit/${id}`}>
<div className="card-item-name" aria-label={selectors.pages.DataSources.dataSources(name)}>
{name}
</div>
</a>
</li>
@@ -155,34 +138,25 @@ The next step is to use the `dataSources` selector function as in our example be
</ul>
```
When this list is rendered with the data sources with names `A`, `B`, `C` the resulting html would become:
When this list is rendered with the data sources with names `A`, `B` and `C` ,the resulting HTML would look like:
```jsx harmony
<div class="card-item-name" aria-label="Data source list item A">
A
</div>
...
<div class="card-item-name" aria-label="Data source list item B">
B
</div>
...
<div class="card-item-name" aria-label="Data source list item C">
C
</div>
```html
<div class="card-item-name" aria-label="Data source list item A">A</div>
<div class="card-item-name" aria-label="Data source list item B">B</div>
<div class="card-item-name" aria-label="Data source list item C">C</div>
```
Now we can write our test. The one thing that differs from the `Basic example` is that we pass in which data source we want to click on as an argument to the selector function:
Now we can write our test. The one thing that differs from the [basic example](#basic-example) above is that we pass in which data source we want to click on as an argument to the selector function:
> Best practice after calling `visit` is to always call `should` on a selector to prevent flaky tests when you try to access an element that isn't ready. For more information, refer to [Commands vs. assertions](https://docs.cypress.io/guides/core-concepts/retry-ability.html#Commands-vs-assertions).
```ecmascript 6
```typescript
describe('List test', () => {
it('Clicking on data source named B', () => {
it('clicks on data source named B', () => {
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');
e2e.pages.DataSources.dataSources('B').click();
e2e.pages.DataSources.dataSources('B')
.should('be.visible')
.click();
});
});
```

View File

@@ -7,13 +7,31 @@ Generally we follow the Airbnb [React Style Guide](https://github.com/airbnb/jav
- [Frontend Style Guide](#frontend-style-guide)
- [Table of Contents](#table-of-contents)
- [Basic rules](#basic-rules)
- [Naming conventions](#naming-conventions)
- [File and directory naming conventions](#file-and-directory-naming-conventions)
- [Code organization](#code-organization)
- [Exports](#exports)
- [Comments](#comments)
- [Naming conventions](#naming-conventions)
- [Use `PascalCase` for:](#use-pascalcase-for)
- [Typescript class names](#typescript-class-names)
- [Types and interfaces](#types-and-interfaces)
- [Enums](#enums)
- [Use `camelCase` for:](#use-camelcase-for)
- [Functions](#functions)
- [Methods](#methods)
- [Variables](#variables)
- [React state and properties](#react-state-and-properties)
- [Emotion class names](#emotion-class-names)
- [Use `ALL_CAPS` for constants.](#use-all_caps-for-constants)
- [Use BEM convention for SASS styles.](#use-bem-convention-for-sass-styles)
- [Typing](#typing)
- [File and directory naming conventions](#file-and-directory-naming-conventions)
- [Code organization](#code-organization)
- [Exports](#exports)
- [Comments](#comments)
- [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)
- [State management](#state-management)
- [Proposal for removing or replacing Angular dependencies](https://github.com/grafana/grafana/pull/23048)
@@ -192,7 +210,7 @@ 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.
> Note: We don't have linting for this enabled because of lots of old code that needs to be fixed first.
> **Note:** We don't have linting for this enabled because of lots of old code that needs to be fixed first.
```typescript
// bad

View File

@@ -26,19 +26,19 @@ Try to *chunk* your content. This means you should organize the document so that
If I was writing content for a site called *Doggie handbook*, I might organize it like this.
**Concept**
* What a dog is
* Brief history of dogs
* Why you might want a dog
* Tasks dogs can be trained to do
- What a dog is
- Brief history of dogs
- Why you might want a dog
- Tasks dogs can be trained to do
**Tasks**
* Feed the dog
* Groom the dog
* Train the dog
- Feed the dog
- Groom the dog
- Train the dog
**Reference**
* List of dog equipment you will need
* Table of breeds that includes breed name, size range, short or long hair, and type of dog
- List of dog equipment you will need
- Table of breeds that includes breed name, size range, short or long hair, and type of dog
### Audience

View File

@@ -30,12 +30,12 @@ Concept topics or sections explain *what* and *why*. They do not explain *how*.
Continuing the example in the previous section, here is a sample Grafana workflow.
1. Install Grafana. <link to task for installing Grafana>
2. Set up data sources. <link to data sources concept topic, which links to data source task topics>
3. Create panels. <link to panel concept topic, which links to tasks>
4. Create dashboards. <link to panel concept topic, which links to tasks>
5. Enter queries. <link to query editor concept topic>
6. Add users. <link to user management concept topic, which links to tasks>
7. Create playlists. <link to Playlist topic that contains concept information and tasks>
1. Set up data sources. <link to data sources concept topic, which links to data source task topics>
1. Create panels. <link to panel concept topic, which links to tasks>
1. Create dashboards. <link to panel concept topic, which links to tasks>
1. Enter queries. <link to query editor concept topic>
1. Add users. <link to user management concept topic, which links to tasks>
1. Create playlists. <link to Playlist topic that contains concept information and tasks>
## Next steps

View File

@@ -25,9 +25,9 @@ Often reference topics are linked from *task* topics, because they contain infor
Lists of commands or parameters are often organized in reference topics. The information you need to present will dictate the format.
* They might
* be in
* unordered lists.
- They might
- be in
- unordered lists.
[Configuration](https://grafana.com/docs/grafana/latest/installation/configuration/) is an example of lists.

View File

@@ -42,7 +42,7 @@ Write one-step tasks as simple sentences, not as unordered lists or numbered lis
Short tasks can be grouped. How short constitutes "short" is a judgment call based on number of steps and how long individual steps are.
1. Use your judgment.
2. Ask your coworkers or someone on the Comm team for advice if you aren't sure.
1. Ask your coworkers or someone on the Comm team for advice if you aren't sure.
## Next steps

View File

@@ -2,9 +2,9 @@
This folder contains useful scripts and configuration so you can:
* Configure data sources in Grafana for development.
* Configure dashboards for development and test scenarios.
* Create docker-compose file with databases and fake data.
- Configure data sources in Grafana for development.
- Configure dashboards for development and test scenarios.
- Create docker-compose file with databases and fake data.
## Install Docker

View File

@@ -0,0 +1,338 @@
{
"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": [
{
"datasource": "gdev-testdata",
"fieldConfig": {
"defaults": {
"color": {
"mode": "continuous-BlYlRd"
},
"custom": {
"align": "center",
"displayMode": "color-background",
"filterable": false
},
"mappings": [],
"thresholds": {
"mode": "percentage",
"steps": [
{
"color": "green",
"value": null
},
{
"color": "blue",
"value": 20
},
{
"color": "orange",
"value": 60
},
{
"color": "red",
"value": 70
}
]
},
"unit": "degree"
},
"overrides": [
{
"matcher": {
"id": "byName",
"options": "Field"
},
"properties": [
{
"id": "custom.displayMode"
}
]
}
]
},
"gridPos": {
"h": 16,
"w": 19,
"x": 0,
"y": 0
},
"id": 4,
"options": {
"showHeader": true,
"sortBy": [
{
"desc": true,
"displayName": "Last"
}
]
},
"pluginVersion": "7.4.0-pre",
"targets": [
{
"alias": "",
"csvWave": {
"timeStep": 60,
"valuesCSV": "0,0,2,2,1,1"
},
"lines": 10,
"points": [],
"pulseWave": {
"offCount": 3,
"offValue": 1,
"onCount": 3,
"onValue": 2,
"timeStep": 60
},
"refId": "A",
"scenarioId": "random_walk",
"seriesCount": 15,
"stream": {
"bands": 1,
"noise": 2.2,
"speed": 250,
"spread": 3.5,
"type": "signal"
},
"stringInput": ""
}
],
"timeFrom": null,
"timeShift": null,
"title": "Gradient color schemes",
"transformations": [
{
"id": "reduce",
"options": {
"reducers": ["max", "mean", "last", "min"]
}
},
{
"id": "organize",
"options": {
"excludeByName": {
"Field": false
},
"indexByName": {},
"renameByName": {}
}
}
],
"type": "table"
},
{
"datasource": null,
"fieldConfig": {
"defaults": {
"color": {
"mode": "continuous-blues"
},
"custom": {},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
},
{
"color": "red",
"value": 20
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 26,
"w": 5,
"x": 19,
"y": 0
},
"id": 2,
"options": {
"colorMode": "background",
"graphMode": "none",
"justifyMode": "auto",
"orientation": "auto",
"reduceOptions": {
"calcs": ["mean"],
"fields": "",
"values": false
},
"textMode": "value"
},
"pluginVersion": "7.4.0-pre",
"targets": [
{
"alias": "",
"csvWave": {
"timeStep": 60,
"valuesCSV": "0,0,2,2,1,1"
},
"labels": "",
"lines": 10,
"points": [],
"pulseWave": {
"offCount": 3,
"offValue": 1,
"onCount": 3,
"onValue": 2,
"timeStep": 60
},
"refId": "A",
"scenarioId": "random_walk",
"seriesCount": 30,
"stream": {
"bands": 1,
"noise": 2.2,
"speed": 250,
"spread": 3.5,
"type": "signal"
},
"stringInput": ""
}
],
"timeFrom": null,
"timeShift": null,
"title": "Stats",
"type": "stat"
},
{
"datasource": "gdev-testdata",
"fieldConfig": {
"defaults": {
"color": {
"mode": "continuous-GrYlRd"
},
"custom": {
"align": "center",
"displayMode": "color-background",
"filterable": false
},
"mappings": [],
"thresholds": {
"mode": "percentage",
"steps": [
{
"color": "green",
"value": null
},
{
"color": "blue",
"value": 20
},
{
"color": "orange",
"value": 60
},
{
"color": "red",
"value": 70
}
]
},
"unit": "degree"
},
"overrides": [
{
"matcher": {
"id": "byName",
"options": "Field"
},
"properties": [
{
"id": "custom.displayMode"
}
]
}
]
},
"gridPos": {
"h": 10,
"w": 19,
"x": 0,
"y": 16
},
"id": 5,
"options": {
"displayMode": "lcd",
"orientation": "auto",
"reduceOptions": {
"calcs": ["mean"],
"fields": "",
"values": false
},
"showUnfilled": true
},
"pluginVersion": "7.4.0-pre",
"targets": [
{
"alias": "",
"csvWave": {
"timeStep": 60,
"valuesCSV": "0,0,2,2,1,1"
},
"lines": 10,
"points": [],
"pulseWave": {
"offCount": 3,
"offValue": 1,
"onCount": 3,
"onValue": 2,
"timeStep": 60
},
"refId": "A",
"scenarioId": "random_walk",
"seriesCount": 15,
"stream": {
"bands": 1,
"noise": 2.2,
"speed": 250,
"spread": 3.5,
"type": "signal"
},
"stringInput": ""
}
],
"timeFrom": null,
"timeShift": null,
"title": "Bar Gauge LCD",
"transformations": [],
"type": "bargauge"
}
],
"schemaVersion": 26,
"style": "dark",
"tags": ["gdev", "demo"],
"templating": {
"list": []
},
"time": {
"from": "now-6h",
"to": "now"
},
"timepicker": {},
"timezone": "",
"title": "Gradient Color modes",
"uid": "inxsweKGz",
"version": 17
}

File diff suppressed because it is too large Load Diff

View File

@@ -5,33 +5,33 @@ Basic collectd-based server monitoring. Sends stats to Graphite.
Collectd metrics:
* CPU used/free/idle/etc
* Free disk (via mounting hosts '/' into container, eg: -v /:/hostfs:ro)
* Disk performance
* Load average
* Memory used/free/etc
* Uptime
* Network interface
* Swap
- CPU used/free/idle/etc
- Free disk (via mounting hosts '/' into container, eg: -v /:/hostfs:ro)
- Disk performance
- Load average
- Memory used/free/etc
- Uptime
- Network interface
- Swap
Environment variables
---------------------
* `HOST_NAME`
- `HOST_NAME`
- Will be sent to Graphite
- Required
* `GRAPHITE_HOST`
- `GRAPHITE_HOST`
- Graphite IP or hostname
- Required
* `GRAPHITE_PORT`
- `GRAPHITE_PORT`
- Graphite port
- Optional, defaults to 2003
* `GRAPHITE_PREFIX`
- `GRAPHITE_PREFIX`
- Graphite prefix
- Optional, defaults to collectd.
* `REPORT_BY_CPU`
- `REPORT_BY_CPU`
- Report per-CPU metrics if true, global sum of CPU metrics if false (details: [collectd.conf man page](https://collectd.org/documentation/manpages/collectd.conf.5.shtml#plugin_cpu))
- Optional, defaults to false.
* `COLLECT_INTERVAL`
- `COLLECT_INTERVAL`
- Collection interval and thus resolution of metrics
- Optional, defaults to 10

View File

@@ -821,7 +821,7 @@ filebeat.inputs:
# By default Ingest pipelines are not updated if a pipeline with the same ID
# already exists. If this option is enabled Filebeat overwrites pipelines
# everytime a new Elasticsearch connection is established.
# every time a new Elasticsearch connection is established.
#filebeat.overwrite_pipelines: false
# How long filebeat waits on shutdown for the publisher to finish.

View File

@@ -821,7 +821,7 @@ filebeat.inputs:
# By default Ingest pipelines are not updated if a pipeline with the same ID
# already exists. If this option is enabled Filebeat overwrites pipelines
# everytime a new Elasticsearch connection is established.
# every time a new Elasticsearch connection is established.
#filebeat.overwrite_pipelines: false
# How long filebeat waits on shutdown for the publisher to finish.

View File

@@ -1057,7 +1057,7 @@
# ## Custom resource type
# # resource_type = "generic_node"
#
# ## Additonal resource labels
# ## Additional resource labels
# # [outputs.stackdriver.resource_labels]
# # node_id = "$HOSTNAME"
# # namespace = "myapp"
@@ -2169,7 +2169,7 @@
#
# ## Metrics list
# ## List of metrics can be found on Graylog webservice documentation.
# ## Or by hitting the the web service api at:
# ## Or by hitting the web service api at:
# ## http://[graylog-host]:12900/system/metrics
# metrics = [
# "jvm.cl.loaded",
@@ -3346,7 +3346,7 @@
# # pid_finder = "pgrep"
# # Reads last_run_summary.yaml file and converts to measurments
# # Reads last_run_summary.yaml file and converts to measurements
# [[inputs.puppetagent]]
# ## Location of puppet last run summary file
# location = "/var/lib/puppet/state/last_run_summary.yaml"
@@ -5196,11 +5196,11 @@
# ## separator character to use for measurement and field names (default: "_")
# # separator = "_"
#
# ## number of objects to retreive per query for realtime resources (vms and hosts)
# ## number of objects to retrieve per query for realtime resources (vms and hosts)
# ## set to 64 for vCenter 5.5 and 6.0 (default: 256)
# # max_query_objects = 256
#
# ## number of metrics to retreive per query for non-realtime resources (clusters and datastores)
# ## number of metrics to retrieve per query for non-realtime resources (clusters and datastores)
# ## set to 64 for vCenter 5.5 and 6.0 (default: 256)
# # max_query_metrics = 256
#

View File

@@ -5,10 +5,10 @@ scaling up/down number of Grafana instances.
Included services
* Grafana
* Mysql - Grafana configuration database and session storage
* Prometheus - Monitoring of Grafana and used as data source of provisioned alert rules
* Nginx - Reverse proxy for Grafana and Prometheus. Enables browsing Grafana/Prometheus UI using a hostname
- Grafana
- Mysql - Grafana configuration database and session storage
- Prometheus - Monitoring of Grafana and used as data source of provisioned alert rules
- Nginx - Reverse proxy for Grafana and Prometheus. Enables browsing Grafana/Prometheus UI using a hostname
## Prerequisites
@@ -53,8 +53,8 @@ $ docker-compose up -d
```
Browse
* http://grafana.loc/
* http://prometheus.loc/
- http://grafana.loc/
- http://prometheus.loc/
Check for any errors

View File

@@ -75,7 +75,7 @@ Example output:
█ user auth token test
█ user authenticates thru ui with username and password
█ user authenticates through ui with username and password
✓ response status is 200
✓ response has cookie 'grafana_session' with 32 characters

View File

@@ -23,7 +23,7 @@ export const setup = () => {
export default data => {
group('annotation by tag test', () => {
if (__ITER === 0) {
group('user authenticates thru ui with username and password', () => {
group('user authenticates through ui with username and password', () => {
let res = client.ui.login('admin', 'admin');
check(res, {

View File

@@ -24,7 +24,7 @@ export const setup = () => {
export default data => {
group(`user auth token slow test (queries between 1 and ${slowQuery} seconds)`, () => {
if (__ITER === 0) {
group('user authenticates thru ui with username and password', () => {
group('user authenticates through ui with username and password', () => {
let res = client.ui.login('admin', 'admin');
check(res, {

View File

@@ -23,7 +23,7 @@ export const setup = () => {
export default data => {
group('user auth token test', () => {
if (__ITER === 0) {
group('user authenticates thru ui with username and password', () => {
group('user authenticates through ui with username and password', () => {
let res = client.ui.login('admin', 'admin');
check(res, {

View File

@@ -6,6 +6,9 @@ docs:
docker pull ${IMAGE}
docker run -v $(shell pwd)/sources:/hugo/content/docs/grafana/latest -p 3002:3002 --rm -it $(IMAGE) /bin/bash -c 'make server'
docs-no-pull:
docker run -v $(shell pwd)/sources:/hugo/content/docs/grafana/latest -p 3002:3002 --rm -it $(IMAGE) /bin/bash -c 'make server'
docs-test:
docker pull ${IMAGE}
docker run -v $(shell pwd)/sources:/hugo/content/docs/grafana/latest --rm -it $(IMAGE) /bin/bash -c 'make prod'

View File

@@ -9,7 +9,7 @@ Docker >= 2.1.0.3
## Build the doc site
1. In the command line, make sure you are in the docs folder: `cd docs`.
2. Run `make docs`. This launches a preview of the docs website at `http://localhost:3002/docs/grafana/latest/` which will refresh automatically when changes to content in the `sources` directory are made.
1. Run `make docs`. This launches a preview of the docs website at `http://localhost:3002/docs/grafana/latest/` which will refresh automatically when changes to content in the `sources` directory are made.
---

View File

@@ -65,8 +65,8 @@ aliases = ["/docs/grafana/v1.1", "/docs/grafana/latest/guides/reference/admin",
<h4>Provisioning</h4>
<p>Learn how to automate your Grafana configuration.</p>
</a>
<a href="{{< relref "guides/whats-new-in-v7-0.md" >}}" class="nav-cards__item nav-cards__item--guide">
<h4>What's new in v7.0</h4>
<a href="{{< relref "whatsnew/whats-new-in-v7-2.md" >}}" class="nav-cards__item nav-cards__item--guide">
<h4>What's new in v7.2</h4>
<p>Explore the features and enhancements in the latest release.</p>
</a>
@@ -75,51 +75,51 @@ aliases = ["/docs/grafana/v1.1", "/docs/grafana/latest/guides/reference/admin",
## Data source guides
<div class="nav-cards">
<a href="{{< relref "features/datasources/graphite.md" >}}" class="nav-cards__item nav-cards__item--ds">
<a href="{{< relref "datasources/graphite.md" >}}" class="nav-cards__item nav-cards__item--ds">
<img src="/img/docs/logos/icon_graphite.svg" >
<h5>Graphite</h5>
</a>
<a href="{{< relref "features/datasources/elasticsearch.md" >}}" class="nav-cards__item nav-cards__item--ds">
<a href="{{< relref "datasources/elasticsearch.md" >}}" class="nav-cards__item nav-cards__item--ds">
<img src="/img/docs/logos/icon_elasticsearch.svg" >
<h5>Elasticsearch</h5>
</a>
<a href="{{< relref "features/datasources/influxdb.md" >}}" class="nav-cards__item nav-cards__item--ds">
<a href="{{< relref "datasources/influxdb.md" >}}" class="nav-cards__item nav-cards__item--ds">
<img src="/img/docs/logos/icon_influxdb.svg" >
<h5>InfluxDB</h5>
</a>
<a href="{{< relref "features/datasources/prometheus.md" >}}" class="nav-cards__item nav-cards__item--ds">
<a href="{{< relref "datasources/prometheus.md" >}}" class="nav-cards__item nav-cards__item--ds">
<img src="/img/docs/logos/icon_prometheus.svg" >
<h5>Prometheus</h5>
</a>
<a href="{{< relref "features/datasources/cloudmonitoring.md" >}}" class="nav-cards__item nav-cards__item--ds">
<a href="{{< relref "datasources/cloudmonitoring.md" >}}" class="nav-cards__item nav-cards__item--ds">
<img src="/img/docs/logos/icon_cloudmonitoring.svg">
<h5>Google Cloud Monitoring</h5>
</a>
<a href="{{< relref "features/datasources/cloudwatch.md" >}}" class="nav-cards__item nav-cards__item--ds">
<a href="{{< relref "datasources/cloudwatch.md" >}}" class="nav-cards__item nav-cards__item--ds">
<img src="/img/docs/logos/icon_cloudwatch.svg">
<h5>AWS CloudWatch</h5>
</a>
<a href="{{< relref "features/datasources/azuremonitor.md" >}}" class="nav-cards__item nav-cards__item--ds">
<a href="{{< relref "datasources/azuremonitor.md" >}}" class="nav-cards__item nav-cards__item--ds">
<img src="/img/docs/logos/icon_azure_monitor.jpg">
<h5>Azure Monitor</h5>
</a>
<a href="{{< relref "features/datasources/loki.md" >}}" class="nav-cards__item nav-cards__item--ds">
<a href="{{< relref "datasources/loki.md" >}}" class="nav-cards__item nav-cards__item--ds">
<img src="/img/docs/logos/icon_loki.svg">
<h5>Loki</h5>
</a>
<a href="{{< relref "features/datasources/mysql.md" >}}" class="nav-cards__item nav-cards__item--ds">
<a href="{{< relref "datasources/mysql.md" >}}" class="nav-cards__item nav-cards__item--ds">
<img src="/img/docs/logos/icon_mysql.png" >
<h5>MySQL</h5>
</a>
<a href="{{< relref "features/datasources/postgres.md" >}}" class="nav-cards__item nav-cards__item--ds">
<a href="{{< relref "datasources/postgres.md" >}}" class="nav-cards__item nav-cards__item--ds">
<img src="/img/docs/logos/icon_postgres.svg" >
<h5>Postgres</h5>
</a>
<a href="{{< relref "features/datasources/mssql.md" >}}" class="nav-cards__item nav-cards__item--ds">
<a href="{{< relref "datasources/mssql.md" >}}" class="nav-cards__item nav-cards__item--ds">
<img src="/img/docs/logos/sql_server_logo.svg">
<h5>Microsoft SQL Server</h5>
</a>
<a href="{{< relref "features/datasources/opentsdb.md" >}}" class="nav-cards__item nav-cards__item--ds">
<a href="{{< relref "datasources/opentsdb.md" >}}" class="nav-cards__item nav-cards__item--ds">
<img src="/img/docs/logos/icon_opentsdb.png" >
<h5>OpenTSDB</h5>
</a>

View File

@@ -5,9 +5,15 @@ type = "docs"
[menu.docs]
name = "Administration"
identifier = "admin"
weight = 2
weight = 20
+++
# Administration
This section provides resources for Grafana administrators and users performing administrative tasks.
This section includes information for Grafana administrators, team administrators, and users performing administrative tasks:
- [Change password]({{< relref "change-your-password" >}})
- [Change Preferences]({{< relref "preferences" >}})
- [Configuration]({{< relref "configuration" >}})
- [Configure Docker image]({{< relref "configure-docker" >}})
- [Security]({{< relref "security" >}})

View File

@@ -4,6 +4,8 @@ description = "How to change your Grafana password"
keywords = ["grafana", "password", "change", "preferences"]
type = "docs"
[menu.docs]
identifier = "change-your-password"
parent = "administration"
weight = 100
+++

View File

@@ -205,7 +205,7 @@ If there are two flags being used to set the homepath and the config file path,
To correct this, use the `--homepath` global option to specify the Grafana default homepath for this command:
```bash
grafana-cli --homepath "/usr/share/grafana" admin reset-admin-password <new password>
grafana-cli admin reset-admin-password --homepath "/usr/share/grafana" <new password>
```
If you have not lost the admin password, we recommend that you change the user password either in the User Preferences or in the Server Admin > User tab.

View File

@@ -8,7 +8,7 @@ aliases = ["/docs/grafana/latest/installation/configuration/"]
name = "Configuration"
identifier = "config"
parent = "admin"
weight = 1
weight = 300
+++
# Configuration
@@ -31,7 +31,7 @@ If you installed Grafana using the `deb` or `rpm` packages, then your configurat
### Docker
Refer to [Configure a Grafana Docker image]({{< relref "../installation/configure-docker.md" >}}) for information about environmental variables, persistent storage, and building custom Docker images.
Refer to [Configure a Grafana Docker image]({{< relref "configure-docker.md" >}}) for information about environmental variables, persistent storage, and building custom Docker images.
### Windows
@@ -173,13 +173,13 @@ Override log path using the command line argument `cfg:default.paths.log`:
### plugins
Directory where Grafana automatically scans and looks for plugins. Manually or automatically install any plugins here.
Directory where Grafana automatically scans and looks for plugins. Manually or automatically install any [plugins](https://grafana.com/docs/grafana/latest/plugins/installation/) here.
**macOS:** By default, the Mac plugin location is: `/usr/local/var/lib/grafana/plugins`.
### provisioning
Folder that contains [provisioning]({{< relref "provisioning.md" >}}) config files that grafana will apply on startup. Dashboards will be reloaded when the json files changes
Folder that contains [provisioning]({{< relref "provisioning.md" >}}) config files that Grafana will apply on startup. Dashboards will be reloaded when the json files changes.
<hr />
@@ -389,6 +389,26 @@ How long the data proxy should wait before timing out. Default is 30 seconds.
This setting also applies to core backend HTTP data sources where query requests use an HTTP client with timeout set.
### keep_alive_seconds
Interval between keep-alive probes. Default is `30` seconds. For more details check the [Dialer.KeepAlive](https://golang.org/pkg/net/#Dialer.KeepAlive) documentation.
### tls_handshake_timeout_seconds
The length of time that Grafana will wait for a successful TLS handshake with the datasource. Default is `10` seconds. For more details check the [Transport.TLSHandshakeTimeout](https://golang.org/pkg/net/http/#Transport.TLSHandshakeTimeout) documentation.
### expect_continue_timeout_seconds
The length of time that Grafana will wait for a datasources first response headers after fully writing the request headers, if the request has an “Expect: 100-continue” header. A value of `0` will result in the body being sent immediately. Default is `1` second. For more details check the [Transport.ExpectContinueTimeout](https://golang.org/pkg/net/http/#Transport.ExpectContinueTimeout) documentation.
### max_idle_connections
The maximum number of idle connections that Grafana will maintain. Default is `100`. For more details check the [Transport.MaxIdleConns](https://golang.org/pkg/net/http/#Transport.MaxIdleConns) documentation.
### idle_conn_timeout_seconds
The length of time that Grafana maintains idle connections before closing them. Default is `90` seconds. For more details check the [Transport.IdleConnTimeout](https://golang.org/pkg/net/http/#Transport.IdleConnTimeout) documentation.
### send_user_header
If enabled and user is not anonymous, data proxy will add X-Grafana-User header with username into the request. Default is `false`.
@@ -461,7 +481,7 @@ Set to `true` if you host Grafana behind HTTPS. Default is `false`.
### cookie_samesite
Sets the `SameSite` cookie attribute and prevents the browser from sending this cookie along with cross-site requests. The main goal is to mitigate the risk of cross-origin information leakage. This setting also provides some protection against cross-site request forgery attacks (CSRF), [read more about SameSite here](https://www.owasp.org/index.php/SameSite). Valid values are `lax`, `strict`, `none`, and `disabled`. Default is `lax`. Using value `disabled` does not add any `SameSite` attribute to cookies.
Sets the `SameSite` cookie attribute and prevents the browser from sending this cookie along with cross-site requests. The main goal is to mitigate the risk of cross-origin information leakage. This setting also provides some protection against cross-site request forgery attacks (CSRF), [read more about SameSite here](https://owasp.org/www-community/SameSite). Valid values are `lax`, `strict`, `none`, and `disabled`. Default is `lax`. Using value `disabled` does not add any `SameSite` attribute to cookies.
### allow_embedding
@@ -529,9 +549,11 @@ Number dashboard versions to keep (per dashboard). Default: `20`, Minimum: `1`.
> Only available in Grafana v6.7+.
This prevents users from setting the dashboard refresh interval of a lower than given interval. Per default this is 5 seconds.
This feature prevents users from setting the dashboard refresh interval to a lower value than a given interval value. The default interval value is 5 seconds.
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`.
As of Grafana v7.3, this also limits the refresh interval options in Explore.
### default_home_dashboard_path
Path to the default home dashboard. If this value is empty, then Grafana uses StaticRootPath + "dashboards/home.json"
@@ -601,6 +623,12 @@ Default is `false`.
Editors can administrate dashboards, folders and teams they create.
Default is `false`.
### user_invite_max_lifetime_duration
The duration in time a user invitation remains valid before expiring.
This setting should be expressed as a duration. Examples: 6h (hours), 2d (days), 1w (week).
Default is `24h` (24 hours). The minimum supported duration is `15m` (15 minutes).
<hr>
## [auth]
@@ -649,11 +677,17 @@ Administrators can increase this if they experience OAuth login state mismatch e
Limit of API key seconds to live before expiration. Default is -1 (unlimited).
### sigv4_auth_enabled
> Only available in Grafana 7.3+.
Set to `true` to enable the AWS Signature Version 4 Authentication option for HTTP-based datasources. Default is `false`.
<hr />
## [auth.anonymous]
Refer to [Anonymous authentication]({{< relref "../auth/#anonymous-authentication" >}}) for detailed instructions.
Refer to [Anonymous authentication]({{< relref "../auth/grafana.md/#anonymous-authentication" >}}) for detailed instructions.
<hr />
@@ -719,7 +753,7 @@ Refer to [Auth proxy authentication]({{< relref "../auth/auth-proxy.md" >}}) for
## [auth.ldap]
Refer to [LDAO authentication]({{< relref "../auth/ldap.md" >}}) for detailed instructions.
Refer to [LDAP authentication]({{< relref "../auth/ldap.md" >}}) for detailed instructions.
<hr />
@@ -1013,7 +1047,7 @@ Configures max number of API annotations that Grafana keeps. Default value is 0,
## [explore]
For more information about this feature, refer to [Explore]({{< relref "../features/explore/index.md" >}}).
For more information about this feature, refer to [Explore]({{< relref "../explore/index.md" >}}).
### enabled
@@ -1041,6 +1075,15 @@ If both are set, then basic authentication is required to access the metrics end
<hr>
## [metrics.environment_info]
Adds dimensions to the `grafana_environment_info` metric, which can expose more information about the Grafana instance.
```
; exampleLabel1 = exampleValue1
; exampleLabel2 = exampleValue2
```
## [metrics.graphite]
Use these options if you want to send internal Grafana metrics to Graphite.
@@ -1116,6 +1159,10 @@ This is the sampler configuration parameter. Depending on the value of `sampler_
May be set with the environment variable `JAEGER_SAMPLER_PARAM`.
### sampling_server_url
sampling_server_url is the URL of a sampling manager providing a sampling strategy.
### zipkin_propagation
Default value is `false`.
@@ -1154,7 +1201,7 @@ keep the default, just leave this empty. You must still provide a `region` value
Set this to true to force path-style addressing in S3 requests, i.e., `http://s3.amazonaws.com/BUCKET/KEY`, instead
of the default, which is virtual hosted bucket addressing when possible (`http://BUCKET.s3.amazonaws.com/KEY`).
> Note: This option is specific to the Amazon S3 service.
> **Note:** This option is specific to the Amazon S3 service.
### bucket_url
@@ -1271,7 +1318,7 @@ If the remote HTTP image renderer service runs on a different server than the Gr
### concurrent_render_request_limit
Concurrent render request limit affects when the /render HTTP endpoint is used. Rendering many images at the same time can overload the server,
which this setting can help protect against by only allowing a certain amount of concurrent requests. Default is `30`.
which this setting can help protect against by only allowing a certain number of concurrent requests. Default is `30`.
## [panels]
@@ -1281,7 +1328,7 @@ Set to `true` if you want to test alpha panels that are not yet ready for genera
### disable_sanitize_html
If set to true Grafana will allow script tags in text panels. Not recommended as it enable XSS vulnerabilities. Default is false. This settings was introduced in Grafana v6.0.
If set to true Grafana will allow script tags in text panels. Not recommended as it enables XSS vulnerabilities. Default is false. This setting was introduced in Grafana v6.0.
## [plugins]
@@ -1293,6 +1340,10 @@ Set to `true` if you want to test alpha plugins that are not yet ready for gener
Enter a comma-separated list of plugin identifiers to identify plugins that are allowed to be loaded even if they lack a valid signature.
### marketplace_url
Custom install/learn more url for enterprise plugins. Defaults to https://grafana.com/grafana/plugins/.
<hr>
## [plugin.grafana-image-renderer]
@@ -1357,7 +1408,7 @@ Mode `context` will cluster using incognito pages.
### rendering_clustering_max_concurrency
When rendering_mode = clustered you can define maximum number of browser instances/incognito pages that can execute concurrently..
When rendering_mode = clustered you can define the maximum number of browser instances/incognito pages that can execute concurrently.
### rendering_viewport_max_width
@@ -1391,13 +1442,13 @@ For more information about Grafana Enterprise, refer to [Grafana Enterprise]({{<
### enable
Keys of alpha features to enable, separated by space. Available alpha features are: `transformations`
Keys of alpha features to enable, separated by space. Available alpha features are: `transformations`,`ngalert`
## [date_formats]
> The date format options below are only available in Grafana v7.2+
> **Note:** The date format options below are only available in Grafana v7.2+.
This section controls system wide defaults for date formats used in time ranges, graphs and date input boxes.
This section controls system-wide defaults for date formats used in time ranges, graphs, and date input boxes.
The format patterns use [Moment.js](https://momentjs.com/docs/#/displaying/) formatting tokens.
@@ -1407,8 +1458,8 @@ Full date format used by time range picker and in other places where a full date
### intervals
These intervals formats are used in the graph to show only a partial date or time. For example if there are only
minutes between y-axis tick labels then the `interval_minute` format is used.
These intervals formats are used in the graph to show only a partial date or time. For example, if there are only
minutes between Y-axis tick labels then the `interval_minute` format is used.
Defaults
@@ -1423,9 +1474,8 @@ interval_year = YYYY
### use_browser_locale
Set this to `true` to have date formats be automatically be derived from browser locale. Defaults to `false`. This
is an experimental feature right now with a few problems that remain unsolved.
Set this to `true` to have date formats automatically derived from your browser location. Defaults to `false`. This is an experimental feature.
### default_timezone
Used as the default timezone for user preferences. Can be either `browser` for the browser local timezone or a timezone name from IANA Time Zone database, e.g. `UTC` or `Europe/Amsterdam` etc.
Used as the default time zone for user preferences. Can be either `browser` for the browser local time zone or a time zone name from the IANA Time Zone database, such as `UTC` or `Europe/Amsterdam`.

View File

@@ -3,11 +3,12 @@ title = "Configure Grafana Docker image"
description = "Guide for configuring the Grafana Docker image"
keywords = ["grafana", "configuration", "documentation", "docker"]
type = "docs"
aliases = ["/docs/grafana/latest/installation/configure-docker/"]
[menu.docs]
name = "Configure Grafana Docker image"
identifier = "docker"
identifier = "configure-docker"
parent = "administration"
weight = 650
weight = 400
+++
# Configure a Grafana Docker image
@@ -37,7 +38,7 @@ mkdir data # creates a folder for your data
ID=$(id -u) # saves your user id in the ID variable
# starts grafana with your user id and using the data folder
docker run -d --user $ID --volume "$PWD/data:/var/lib/grafana" -p 3000:3000 grafana/grafana:5.1.0
docker run -d --user $ID --volume "$PWD/data:/var/lib/grafana" -p 3000:3000 grafana/grafana:7.2.1
```
## Default paths

View File

@@ -83,20 +83,20 @@ docker-compose up
The following example describes how to build and run the remote HTTP rendering service as a standalone Node.js application and configure Grafana appropriately.
1. Clone the [Grafana image renderer plugin](https://grafana.com/grafana/plugins/grafana-image-renderer) Git repository.
2. Install dependencies and build:
1. Install dependencies and build:
```bash
yarn install --pure-lockfile
yarn run build
```
3. Run the server:
1. Run the server:
```bash
node build/app.js server --port=8081
```
4. Update Grafana configuration:
1. Update Grafana configuration:
```
[rendering]
@@ -104,7 +104,7 @@ The following example describes how to build and run the remote HTTP rendering s
callback_url = http://localhost:3000/
```
5. Restart Grafana.
1. Restart Grafana.
## PhantomJS
@@ -178,7 +178,7 @@ libXcomposite libXdamage libXtst cups libXScrnSaver pango atk adwaita-cursor-the
### Certificate signed by internal certificate authorities
In many cases, Grafana runs on internal servers and uses certificates that have not been signed by a CA ([Certificate Authority](https://en.wikipedia.org/wiki/Certificate_authority)) known to Chrome, and therefore cannot be validated. Chrome internally uses NSS ([Network Security Services](https://en.wikipedia.org/wiki/Network_Security_Services)) for cryptogtraphic operations such as the validation of certificates.
In many cases, Grafana runs on internal servers and uses certificates that have not been signed by a CA ([Certificate Authority](https://en.wikipedia.org/wiki/Certificate_authority)) known to Chrome, and therefore cannot be validated. Chrome internally uses NSS ([Network Security Services](https://en.wikipedia.org/wiki/Network_Security_Services)) for cryptographic operations such as the validation of certificates.
If you are using the Grafana Image Renderer with a Grafana server that uses a certificate signed by such a custom CA (for example a company-internal CA), rendering images will fail and you will see messages like this in the Grafana log:

View File

@@ -18,12 +18,12 @@ For more information about configuration options related to Grafana metrics, ref
When enabled, Grafana exposes a number of metrics, including:
* Active Grafana instances
* Number of dashboards, users, and playlists
* HTTP status codes
* Requests by routing group
* Grafana active alerts
* Grafana performance
- Active Grafana instances
- Number of dashboards, users, and playlists
- HTTP status codes
- Requests by routing group
- Grafana active alerts
- Grafana performance
## Pull metrics from Grafana into Prometheus

View File

@@ -4,7 +4,9 @@ description = "How to change your Grafana preferences"
keywords = ["grafana", "profile", "change", "preferences"]
type = "docs"
[menu.docs]
weight = 100
identifier = "preferences"
parent = "administration"
weight = 200
+++
# Change your Grafana preferences

View File

@@ -23,7 +23,7 @@ Check out the [configuration]({{< relref "configuration.md" >}}) page for more i
- Custom configuration from `$WORKING_DIR/conf/custom.ini`
- The custom configuration file path can be overridden using the `--config` parameter
> **Note.** If you have installed Grafana using the `deb` or `rpm`
> **Note:** If you have installed Grafana using the `deb` or `rpm`
> packages, then your configuration file is located at
> `/etc/grafana/grafana.ini`. This path is specified in the Grafana
> init.d script using `--config` file parameter.
@@ -32,7 +32,7 @@ Check out the [configuration]({{< relref "configuration.md" >}}) page for more i
It is possible to use environment variable interpolation in all 3 provisioning config types. Allowed syntax
is either `$ENV_VAR_NAME` or `${ENV_VAR_NAME}` and can be used only for values not for keys or bigger parts
of the configs. It is not available in the dashboards definition files just the dashboard provisioning
of the configs. It is not available in the dashboard's definition files just the dashboard provisioning
configuration.
Example:
@@ -65,7 +65,7 @@ Currently we do not provide any scripts/manifests for configuring Grafana. Rathe
> This feature is available from v5.0
It's possible to manage data sources in Grafana by adding one or more yaml config files in the [`provisioning/datasources`](/administration/configuration/#provisioning) directory. Each config file can contain a list of `datasources` that will be added or updated during start up. If the data source already exists, then Grafana updates it to match the configuration file. The config file can also contain a list of data sources that should be deleted. That list is called `deleteDatasources`. Grafana will delete data sources listed in `deleteDatasources` before inserting/updating those in the `datasource` list.
It's possible to manage data sources in Grafana by adding one or more YAML config files in the [`provisioning/datasources`](/administration/configuration/#provisioning) directory. Each config file can contain a list of `datasources` that will get added or updated during start up. If the data source already exists, then Grafana updates it to match the configuration file. The config file can also contain a list of data sources that should be deleted. That list is called `deleteDatasources`. Grafana will delete data sources listed in `deleteDatasources` before inserting/updating those in the `datasource` list.
### Running Multiple Grafana Instances
@@ -140,7 +140,7 @@ Please refer to each datasource documentation for specific provisioning examples
| ------------- | ---------------------------------------------------------------------------------- |
| Elasticsearch | Elasticsearch uses the `database` property to configure the index for a datasource |
#### Json Data
#### JSON Data
Since not all datasources have the same configuration settings we only have the most common ones as fields. The rest should be stored as a json blob in the `jsonData` field. Here are the most common settings that the core datasources use.
@@ -151,16 +151,18 @@ Since not all datasources have the same configuration settings we only have the
| tlsSkipVerify | boolean | _All_ | Controls whether a client verifies the server's certificate chain and host name. |
| graphiteVersion | string | Graphite | Graphite version |
| timeInterval | string | Prometheus, Elasticsearch, InfluxDB, MySQL, PostgreSQL and MSSQL | Lowest interval/step value that should be used for this data source |
| httpMode | string | Influxdb, Prometheus | HTTP Method. 'GET', 'POST', defaults to GET |
| httpMode | string | Influxdb, Prometheus | HTTP Method. 'GET', 'POST', defaults to GET |
| esVersion | number | Elasticsearch | Elasticsearch version as a number (2/5/56/60/70) |
| timeField | string | Elasticsearch | Which field that should be used as timestamp |
| interval | string | Elasticsearch | Index date time format. nil(No Pattern), 'Hourly', 'Daily', 'Weekly', 'Monthly' or 'Yearly' |
| logMessageField | string | Elasticsearch | Which field should be used as the log message |
| logLevelField | string | Elasticsearch | Which field should be used to indicate the priority of the log message |
| authType | string | Cloudwatch | Auth provider. keys/credentials/arn |
| assumeRoleArn | string | Cloudwatch | ARN of Assume Role |
| defaultRegion | string | Cloudwatch | AWS region |
| authType | string | Cloudwatch | Auth provider. default/credentials/keys |
| externalId | string | Cloudwatch | Optional External ID |
| assumeRoleArn | string | Cloudwatch | Optional ARN role to assume |
| defaultRegion | string | Cloudwatch | Optional default AWS region |
| customMetricsNamespaces | string | Cloudwatch | Namespaces of Custom Metrics |
| profile | string | Cloudwatch | Optional credentials profile |
| tsdbVersion | string | OpenTSDB | Version |
| tsdbResolution | string | OpenTSDB | Resolution |
| sslmode | string | PostgreSQL | SSLmode. 'disable', 'require', 'verify-ca' or 'verify-full' |
@@ -261,8 +263,6 @@ providers:
type: file
# <bool> disable dashboard deletion
disableDeletion: false
# <bool> enable dashboard editing
editable: true
# <int> how often Grafana will scan for changed dashboards
updateIntervalSeconds: 10
# <bool> allow updating provisioned dashboards from the UI
@@ -298,11 +298,11 @@ Note: The JSON definition in the input field when using `Copy JSON to Clipboard`
### Reusable Dashboard URLs
If the dashboard in the json file contains an [uid](/reference/dashboard/#json-fields), Grafana will force insert/update on that uid. This allows you to migrate dashboards betweens Grafana instances and provisioning Grafana from configuration without breaking the URLs given since the new dashboard URL uses the uid as identifier.
If the dashboard in the json file contains an [uid](/reference/dashboard/#json-fields), Grafana will force insert/update on that uid. This allows you to migrate dashboards between Grafana instances and provisioning Grafana from configuration without breaking the URLs given since the new dashboard URL uses the uid as identifier.
When Grafana starts, it will update/insert all dashboards available in the configured folders. If you modify the file, the dashboard will also be updated.
By default Grafana will delete dashboards in the database if the file is removed. You can disable this behavior using the `disableDeletion` setting.
By default, Grafana will delete dashboards in the database if the file is removed. You can disable this behavior using the `disableDeletion` setting.
> **Note.** Provisioning allows you to overwrite existing dashboards
> **Note:** Provisioning allows you to overwrite existing dashboards
> which leads to problems if you re-use settings that are supposed to be unique.
> Be careful not to re-use the same `title` multiple times within a folder
> or `uid` within the same installation as this will cause weird behaviors.
@@ -334,13 +334,13 @@ providers:
```
`server` and `application` will become new folders in Grafana menu.
> **Note.** `folder` and `folderUid` options should be empty or missing to make `foldersFromFilesStructure` work.
> **Note:** `folder` and `folderUid` options should be empty or missing to make `foldersFromFilesStructure` work.
> **Note:** To provision dashboards to the General folder, store them in the root of your `path`.
## Alert Notification Channels
Alert Notification Channels can be provisioned by adding one or more yaml config files in the [`provisioning/notifiers`](/administration/configuration/#provisioning) directory.
Alert Notification Channels can be provisioned by adding one or more YAML config files in the [`provisioning/notifiers`](/administration/configuration/#provisioning) directory.
Each config file can contain the following top-level fields:
@@ -410,32 +410,32 @@ delete_notifiers:
The following sections detail the supported settings and secure settings for each alert notification type. Secure settings are stored encrypted in the database and you add them to `secure_settings` in the YAML file instead of `settings`.
> **Note**: Secure settings is supported since Grafana v7.2.
> **Note:** Secure settings is supported since Grafana v7.2.
#### Alert notification `pushover`
| Name | Secure setting |
| -------- | -------------- |
| apiToken | yes |
| userKey | yes |
| device | |
| retry | |
| expire | |
| apiToken | yes |
| userKey | yes |
| device | |
| retry | |
| expire | |
#### Alert notification `slack`
| Name | Secure setting |
| -------------- | -------------- |
| url | yes |
| recipient | |
| username | |
| icon_emoji | |
| icon_url | |
| uploadImage | |
| mentionUsers | |
| mentionGroups | |
| mentionChannel | |
| token | yes |
| url | yes |
| recipient | |
| username | |
| icon_emoji | |
| icon_url | |
| uploadImage | |
| mentionUsers | |
| mentionGroups | |
| mentionChannel | |
| token | yes |
#### Alert notification `victorops`
@@ -454,33 +454,33 @@ The following sections detail the supported settings and secure settings for eac
#### Alert notification `LINE`
| Name | Secure setting |
| ----- | - |
| token | yes |
| ----- | -------------- |
| token | yes |
#### Alert notification `pagerduty`
| Name | Secure setting |
| -------------- | - |
| integrationKey | yes |
| autoResolve | |
| -------------- | -------------- |
| integrationKey | yes |
| autoResolve | |
#### Alert notification `sensu`
| Name | Secure setting |
| -------- | - |
| url | |
| source | |
| handler | |
| username | |
| password | yes |
| -------- | -------------- |
| url | |
| source | |
| handler | |
| username | |
| password | yes |
#### Alert notification `prometheus-alertmanager`
| Name | Secure setting |
| ----------------- | - |
| url | |
| basicAuthUser | |
| basicAuthPassword | yes |
| ----------------- | -------------- |
| url | |
| basicAuthUser | |
| basicAuthPassword | yes |
#### Alert notification `teams`
@@ -512,35 +512,35 @@ The following sections detail the supported settings and secure settings for eac
#### Alert notification `opsgenie`
| Name | Secure setting |
| ---------------- | - |
| apiKey | yes |
| apiUrl | |
| autoClose | |
| overridePriority | |
| ---------------- | -------------- |
| apiKey | yes |
| apiUrl | |
| autoClose | |
| overridePriority | |
#### Alert notification `telegram`
| Name | Secure setting |
| ----------- | - |
| bottoken | yes |
| chatid | |
| uploadImage | |
| ----------- | -------------- |
| bottoken | yes |
| chatid | |
| uploadImage | |
#### Alert notification `threema`
| Name | Secure setting |
| ------------ | - |
| gateway_id | |
| recipient_id | |
| api_secret | yes |
| ------------ | -------------- |
| gateway_id | |
| recipient_id | |
| api_secret | yes |
#### Alert notification `webhook`
| Name | Secure setting |
| -------- | - |
| url | |
| username | |
| password | yes |
| -------- | -------------- |
| url | |
| username | |
| password | yes |
#### Alert notification `googlechat`

View File

@@ -3,11 +3,12 @@ title = "Security"
description = "Security Docs"
keywords = ["grafana", "security", "documentation"]
type = "docs"
aliases = ["/docs/grafana/latest/installation/security/"]
[menu.docs]
name = "Security"
identifier = "security"
parent = "admin"
weight = 2
weight = 500
+++
# Security

View File

@@ -1,17 +1,16 @@
+++
title = "Setup Grafana for high availability"
title = "Set up Grafana for high availability"
type = "docs"
keywords = ["grafana", "tutorials", "HA", "high availability"]
aliases = ["/docs/grafana/latest/tutorials/ha_setup/"]
[menu.docs]
parent = "tutorials"
weight = 10
weight = 1200
+++
# How to setup Grafana for high availability
# Set up Grafana for high availability
Setting up Grafana for high availability is fairly simple. You just need a shared database for storing dashboard, users,
and other persistent data. So the default embedded SQLite database will not work, you will have to switch to
MySQL or Postgres.
and other persistent data. So the default embedded SQLite database will not work, you will have to switch to MySQL or Postgres.
<div class="text-center">
<img src="/img/docs/tutorials/grafana-high-availability.png" max-width= "800px" class="center" />
@@ -19,13 +18,13 @@ MySQL or Postgres.
## Configure multiple servers to use the same database
First, you need to setup MySQL or Postgres on another server and configure Grafana to use that database.
You can find the configuration for doing that in the [[database]]({{< relref "../administration/configuration.md" >}}#database) section in the grafana config.
First, you need to set up MySQL or Postgres on another server and configure Grafana to use that database.
You can find the configuration for doing that in the [[database]]({{< relref "../administration/configuration.md#database" >}}) section in the Grafana config.
Grafana will now persist all long term data in the database. How to configure the database for high availability is out of scope for this guide. We recommend finding an expert on for the database you're using.
## Alerting
Currently alerting supports a limited form of high availability. Since v4.2.0, alert notifications are deduped when running multiple servers. This means all alerts are executed on every server but alert notifications are only sent once per alert. Grafana does not support load distribution between servers.
Currently alerting supports a limited form of high availability. Since v4.2.0, [alert notifications](https://grafana.com/docs/grafana/latest/alerting/notifications/) are deduped when running multiple servers. This means all alerts are executed on every server but alert notifications are only sent once per alert. Grafana does not support load distribution between servers.
## User sessions

View File

@@ -4,7 +4,7 @@ type = "docs"
[menu.docs]
identifier = "alerting"
parent = "features"
weight = 6
weight = 100
+++
# Alerts overview

View File

@@ -5,6 +5,7 @@ keywords = ["grafana", "alerting", "guide", "rules"]
type = "docs"
[menu.docs]
name = "Create alerts"
identifier = "create-alerts"
parent = "alerting"
weight = 200
+++
@@ -78,7 +79,7 @@ We plan to add other condition types in the future, like `Other Alert`, where yo
#### Multiple Series
If a query returns multiple series then the aggregation function and threshold check will be evaluated for each series. What Grafana does not do currently is track alert rule state **per series**. This has implications that are detailed in the scenario below.
If a query returns multiple series, then the aggregation function and threshold check will be evaluated for each series. What Grafana does not do currently is track alert rule state **per series**. This has implications that are detailed in the scenario below.
- Alert condition with query that returns 2 series: **server1** and **server2**
- **server1** series causes the alert rule to fire and switch to state `Alerting`
@@ -86,7 +87,7 @@ If a query returns multiple series then the aggregation function and threshold c
- In a subsequent evaluation of the same alert rule, the **server2** series also causes the alert rule to fire
- No new notifications are sent as the alert rule is already in state `Alerting`.
So as you can see from the above scenario Grafana will not send out notifications when other series cause the alert to fire if the rule already is in state `Alerting`. To improve support for queries that return multiple series we plan to track state **per series** in a future release.
So, as you can see from the above scenario Grafana will not send out notifications when other series cause the alert to fire if the rule already is in state `Alerting`. To improve support for queries that return multiple series we plan to track state **per series** in a future release.
> Starting with Grafana v5.3 you can configure reminders to be sent for triggered alerts. This will send additional notifications
> when an alert continues to fire. If other series (like server2 in the example above) also cause the alert rule to fire they will be included in the reminder notification. Depending on what notification channel you're using you may be able to take advantage of this feature for identifying new/existing series causing alert to fire.
@@ -99,7 +100,7 @@ Below are conditions you can configure how the rule evaluation engine should han
| --------------- | ------------------------------------------------------------------------------------------ |
| No Data | Set alert rule state to `NoData` |
| Alerting | Set alert rule state to `Alerting` |
| Keep Last State | Keep the current alert rule state, what ever it is. |
| Keep Last State | Keep the current alert rule state, whatever it is. |
| Ok | Not sure why you would want to send yourself an alert when things are okay, but you could. |
### Execution errors or timeouts
@@ -109,7 +110,7 @@ Tell Grafana how to handle execution or timeout errors.
| Error or timeout option | Description |
| ----------------------- | --------------------------------------------------- |
| Alerting | Set alert rule state to `Alerting` |
| Keep Last State | Keep the current alert rule state, what ever it is. |
| Keep Last State | Keep the current alert rule state, whatever it is. |
If you have an unreliable time series store from which queries sometime timeout or fail randomly you can set this option to `Keep Last State` in order to basically ignore them.

View File

@@ -5,8 +5,9 @@ keywords = ["Grafana", "alerting", "guide", "notifications"]
type = "docs"
[menu.docs]
name = "Notifications"
identifier = "alert-notification"
parent = "alerting"
weight = 200
weight = 100
+++
# Alert notifications
@@ -132,7 +133,7 @@ This might break custom event rules in your PagerDuty rules if you rely on the f
Move any existing rules using `custom_details.myMetric` to `custom_details.queries.myMetric`.
This behavior will become the default in a future version of Grafana.
> Using `dedup_key` tag will override grafana generated `dedup_key` with a custom key.
> Using `dedup_key` tag will override Grafana generated `dedup_key` with a custom key.
### Webhook
The webhook notification is a simple way to send information about a state change over HTTP to a custom endpoint.
@@ -175,17 +176,17 @@ In DingTalk PC Client:
1. Click "more" icon on upper right of the panel.
2. Click "Robot Manage" item in the pop menu, there will be a new panel call "Robot Manage".
1. Click "Robot Manage" item in the pop menu, there will be a new panel call "Robot Manage".
3. In the "Robot Manage" panel, select "customized: customized robot with Webhook".
1. In the "Robot Manage" panel, select "customized: customized robot with Webhook".
4. In the next new panel named "robot detail", click "Add" button.
1. In the next new panel named "robot detail", click "Add" button.
5. In "Add Robot" panel, input a nickname for the robot and select a "message group" which the robot will join in. click "next".
1. In "Add Robot" panel, input a nickname for the robot and select a "message group" which the robot will join in. click "next".
6. There will be a Webhook URL in the panel, looks like this: https://oapi.dingtalk.com/robot/send?access_token=xxxxxxxxx. Copy this URL to the grafana Dingtalk setting page and then click "finish".
1. There will be a Webhook URL in the panel, looks like this: https://oapi.dingtalk.com/robot/send?access_token=xxxxxxxxx. Copy this URL to the Grafana DingTalk setting page and then click "finish".
Dingtalk supports the following "message type": `text`, `link` and `markdown`. Only the `link` message type is supported.
DingTalk supports the following "message type": `text`, `link` and `markdown`. Only the `link` message type is supported.
### Kafka
@@ -194,13 +195,13 @@ There are a couple of configuration options which need to be set up in Grafana U
1. Kafka REST Proxy endpoint.
2. Kafka Topic.
1. Kafka Topic.
Once these two properties are set, you can send the alerts to Kafka for further processing or throttling.
### Google Hangouts Chat
Notifications can be sent by setting up an incoming webhook in Google Hangouts chat. Configuring such a webhook is described [here](https://developers.google.com/hangouts/chat/how-tos/webhooks).
Notifications can be sent by setting up an incoming webhook in Google Hangouts chat. For more information about configuring a webhook, refer to [webhooks](https://developers.google.com/hangouts/chat/how-tos/webhooks).
### Squadcast

View File

@@ -4,6 +4,7 @@ description = "Pause an existing alert rule"
keywords = ["grafana", "alerting", "guide", "rules", "view"]
type = "docs"
[menu.docs]
identifier = "pause-alerts"
parent = "alerting"
weight = 400
+++

View File

@@ -5,6 +5,7 @@ keywords = ["grafana", "alerting", "guide", "rules", "troubleshoot"]
type = "docs"
[menu.docs]
name = "Troubleshoot alerts"
identifier = "troubleshoot-alerts"
parent = "alerting"
weight = 500
+++

View File

@@ -5,6 +5,7 @@ keywords = ["grafana", "alerting", "guide", "rules", "view"]
type = "docs"
[menu.docs]
name = "View alerts"
identifier = "view-alerts"
parent = "alerting"
weight = 400
+++

View File

@@ -1,21 +0,0 @@
+++
title = "Docs Archive"
keywords = ["grafana", "archive", "documentation", "guide"]
type = "docs"
[menu.docs]
name = "Docs Archive"
weight = 200
+++
# Docs Archive
Here you can find links to older versions of the documentation that might be better suited for your version
of Grafana.
- [Latest](/docs/grafana/latest/)
- [Version 4.5](/docs/grafana/v4.5)
- [Version 4.4](/docs/grafana/v4.4)
- [Version 4.3](/docs/grafana/v4.3)
- [Version 4.2](/docs/grafana/v4.2)
- [Version 4.1](/docs/grafana/v4.1)
- [Version 3.1](/docs/grafana/v3.1)

View File

@@ -6,7 +6,7 @@ type = "docs"
name = "Authentication"
identifier = "authentication"
parent = "admin"
weight = 3
weight = 30
+++
# User Authentication Overview
@@ -15,6 +15,8 @@ Grafana provides many ways to authenticate users. Some authentication integratio
Here is a table showing all supported authentication providers and the features available for them. [Team sync]({{< relref "../enterprise/team-sync.md" >}}) and [active sync]({{< relref "../enterprise/enhanced_ldap.md#active-ldap-synchronization" >}}) are only available in Grafana Enterprise.
See also, [Grafana Authentication]({{< relref "grafana.md" >}}).
Provider | Support | Role mapping | Team sync<br> *(Enterprise only)* | Active sync<br> *(Enterprise only)*
-------- | :-----: | :----------: | :-------: | :---------:
[Auth Proxy]({{< relref "auth-proxy.md" >}}) | v2.1+ | - | v6.3+ | -
@@ -26,118 +28,3 @@ Provider | Support | Role mapping | Team sync<br> *(Enterprise only)* | Active s
[LDAP]({{< relref "ldap.md" >}}) | v2.1+ | v2.1+ | v5.3+ | v6.3+
[Okta OAuth]({{< relref "okta.md" >}}) | v7.0+ | v7.0+ | v7.0+ | -
[SAML]({{< relref "../enterprise/saml.md" >}}) (Enterprise only) | v6.3+ | v7.0+ | v7.0+ | -
## Grafana Auth
Grafana of course has a built in user authentication system with password authentication enabled by default. You can
disable authentication by enabling anonymous access. You can also hide login form and only allow login through an auth
provider (listed above). There is also options for allowing self sign up.
### Login and short-lived tokens
> The following applies when using Grafana's built in user authentication, LDAP (without Auth proxy) or OAuth integration.
Grafana are using short-lived tokens as a mechanism for verifying authenticated users.
These short-lived tokens are rotated each `token_rotation_interval_minutes` for an active authenticated user.
An active authenticated user that gets it token rotated will extend the `login_maximum_inactive_lifetime_days` time from "now" that Grafana will remember the user.
This means that a user can close its browser and come back before `now + login_maximum_inactive_lifetime_days` and still being authenticated.
This is true as long as the time since user login is less than `login_maximum_lifetime_days`.
#### Remote logout
You can logout from other devices by removing login sessions from the bottom of your profile page. If you are
a Grafana admin user you can also do the same for any user from the Server Admin / Edit User view.
## Settings
Example:
```bash
[auth]
# Login cookie name
login_cookie_name = grafana_session
# The lifetime (days) an authenticated user can be inactive before being required to login at next visit. Default is 7 days.
login_maximum_inactive_lifetime_days = 7
# The maximum lifetime (days) an authenticated user can be logged in since login time before being required to login. Default is 30 days.
login_maximum_lifetime_days = 30
# How often should auth tokens be rotated for authenticated users when being active. The default is each 10 minutes.
token_rotation_interval_minutes = 10
# The maximum lifetime (seconds) an api key can be used. If it is set all the api keys should have limited lifetime that is lower than this value.
api_key_max_seconds_to_live = -1
```
### Anonymous authentication
You can make Grafana accessible without any login required by enabling anonymous access in the configuration file.
Example:
```bash
[auth.anonymous]
enabled = true
# Organization name that should be used for unauthenticated users
org_name = Main Org.
# Role for unauthenticated users, other valid values are `Editor` and `Admin`
org_role = Viewer
```
If you change your organization name in the Grafana UI this setting needs to be updated to match the new name.
### Basic authentication
Basic auth is enabled by default and works with the built in Grafana user password authentication system and LDAP
authentication integration.
To disable basic auth:
```bash
[auth.basic]
enabled = false
```
### Disable login form
You can hide the Grafana login form using the below configuration settings.
```bash
[auth]
disable_login_form = true
```
### Automatic OAuth login
Set to true to attempt login with OAuth automatically, skipping the login screen.
This setting is ignored if multiple OAuth providers are configured.
Defaults to `false`.
```bash
[auth]
oauth_auto_login = true
```
### Hide sign-out menu
Set the option detailed below to true to hide sign-out menu link. Useful if you use an auth proxy.
```bash
[auth]
disable_signout_menu = true
```
### URL redirect after signing out
URL to redirect the user to after signing out from Grafana. This can for example be used to enable signout from oauth provider.
```bash
[auth]
signout_redirect_url =
```

View File

@@ -8,7 +8,7 @@ aliases = ["/docs/grafana/latest/tutorials/authproxy/"]
name = "Auth Proxy"
identifier = "auth-proxy"
parent = "authentication"
weight = 2
weight = 200
+++
# Auth Proxy Authentication
@@ -108,25 +108,25 @@ In this example we use Apache as a reverse proxy in front of Grafana. Apache han
</VirtualHost>
```
* The first 4 lines of the virtualhost configuration are standard, so we wont go into detail on what they do.
- The first four lines of the virtualhost configuration are standard, so we wont go into detail on what they do.
* We use a **\<proxy>** configuration block for applying our authentication rules to every proxied request. These rules include requiring basic authentication where user:password credentials are stored in the **/etc/apache2/grafana_htpasswd** file. This file can be created with the `htpasswd` command.
- We use a **\<proxy>** configuration block for applying our authentication rules to every proxied request. These rules include requiring basic authentication where user:password credentials are stored in the **/etc/apache2/grafana_htpasswd** file. This file can be created with the `htpasswd` command.
* The next part of the configuration is the tricky part. We use Apaches rewrite engine to create our **X-WEBAUTH-USER header**, populated with the authenticated user.
- The next part of the configuration is the tricky part. We use Apaches rewrite engine to create our **X-WEBAUTH-USER header**, populated with the authenticated user.
* **RewriteRule .* - [E=PROXY_USER:%{LA-U:REMOTE_USER}, NS]**: This line is a little bit of magic. What it does, is for every request use the rewriteEngines look-ahead (LA-U) feature to determine what the REMOTE_USER variable would be set to after processing the request. Then assign the result to the variable PROXY_USER. This is necessary as the REMOTE_USER variable is not available to the RequestHeader function.
- **RewriteRule .* - [E=PROXY_USER:%{LA-U:REMOTE_USER}, NS]**: This line is a little bit of magic. What it does, is for every request use the rewriteEngines look-ahead (LA-U) feature to determine what the REMOTE_USER variable would be set to after processing the request. Then assign the result to the variable PROXY_USER. This is necessary as the REMOTE_USER variable is not available to the RequestHeader function.
* **RequestHeader set X-WEBAUTH-USER “%{PROXY_USER}e”**: With the authenticated username now stored in the PROXY_USER variable, we create a new HTTP request header that will be sent to our backend Grafana containing the username.
- **RequestHeader set X-WEBAUTH-USER “%{PROXY_USER}e”**: With the authenticated username now stored in the PROXY_USER variable, we create a new HTTP request header that will be sent to our backend Grafana containing the username.
* The **RequestHeader unset Authorization** removes the Authorization header from the HTTP request before it is forwarded to Grafana. This ensures that Grafana does not try to authenticate the user using these credentials (BasicAuth is a supported authentication handler in Grafana).
- The **RequestHeader unset Authorization** removes the Authorization header from the HTTP request before it is forwarded to Grafana. This ensures that Grafana does not try to authenticate the user using these credentials (BasicAuth is a supported authentication handler in Grafana).
* The last 3 lines are then just standard reverse proxy configuration to direct all authenticated requests to our Grafana server running on port 3000.
- The last 3 lines are then just standard reverse proxy configuration to direct all authenticated requests to our Grafana server running on port 3000.
## Full walk through using Docker.
## Full walkthrough using Docker.
For this example, we use the official Grafana docker image available at [Docker Hub](https://hub.docker.com/r/grafana/grafana/)
For this example, we use the official Grafana Docker image available at [Docker Hub](https://hub.docker.com/r/grafana/grafana/).
* Create a file `grafana.ini` with the following contents
- Create a file `grafana.ini` with the following contents
```bash
[users]
@@ -152,7 +152,7 @@ docker run -i -v $(pwd)/grafana.ini:/etc/grafana/grafana.ini --name grafana graf
For this example we use the official Apache docker image available at [Docker Hub](https://hub.docker.com/_/httpd/)
* Create a file `httpd.conf` with the following contents
- Create a file `httpd.conf` with the following contents
```bash
ServerRoot "/usr/local/apache2"
@@ -207,13 +207,13 @@ ProxyPass / http://grafana:3000/
ProxyPassReverse / http://grafana:3000/
```
* Create a htpasswd file. We create a new user **anthony** with the password **password**
- Create a htpasswd file. We create a new user **anthony** with the password **password**
```bash
htpasswd -bc htpasswd anthony password
```
* Launch the httpd container using our custom httpd.conf and our htpasswd file. The container will listen on port 80, and we create a link to the **grafana** container so that this container can resolve the hostname **grafana** to the grafana containers ip address.
- Launch the httpd container using our custom httpd.conf and our htpasswd file. The container will listen on port 80, and we create a link to the **grafana** container so that this container can resolve the hostname **grafana** to the Grafana containers IP address.
```bash
docker run -i -p 80:80 --link grafana:grafana -v $(pwd)/httpd.conf:/usr/local/apache2/conf/httpd.conf -v $(pwd)/htpasswd:/tmp/htpasswd httpd:2.4

View File

@@ -7,7 +7,7 @@ type = "docs"
name = "Azure AD"
identifier = "azuread_oauth2"
parent = "authentication"
weight = 3
weight = 700
+++
# Azure AD OAuth2 authentication
@@ -108,7 +108,7 @@ allowed_domains =
allowed_groups =
```
> Note: Ensure that the [root_url]({{< relref "../administration/configuration/#root-url" >}}) in Grafana is set in your Azure Application Reply URLs (App -> Settings -> Reply URLs)
> **Note:** Ensure that the [root_url]({{< relref "../administration/configuration/#root-url" >}}) in Grafana is set in your Azure Application Reply URLs (App -> Settings -> Reply URLs)
### Configure allowed groups and domains

View File

@@ -7,7 +7,7 @@ type = "docs"
name = "Enhanced LDAP"
identifier = "enhanced-ldap"
parent = "authentication"
weight = 3
weight = 400
+++
# Enhanced LDAP integration

View File

@@ -7,18 +7,19 @@ type = "docs"
name = "Generic OAuth"
identifier = "generic_oauth"
parent = "authentication"
weight = 3
weight = 500
+++
# Generic OAuth Authentication
You can configure many different OAuth2 authentication services with Grafana using the generic OAuth2 feature. Examples:
- [Auth0](#set-up-oauth2-with-auth0)
- [Azure AD]({{< relref "azuread.md" >}})
- [BitBucket](#set-up-oauth2-with-bitbucket)
- [Centrify](#set-up-oauth2-with-centrify)
- [Okta]({{< relref "okta.md" >}})
- [OneLogin](#set-up-oauth2-with-onelogin)
- [Generic OAuth Authentication](#generic-oauth-authentication)
- [Set up OAuth2 with Auth0](#set-up-oauth2-with-auth0)
- [Set up OAuth2 with Bitbucket](#set-up-oauth2-with-bitbucket)
- [Set up OAuth2 with Centrify](#set-up-oauth2-with-centrify)
- [Set up OAuth2 with OneLogin](#set-up-oauth2-with-onelogin)
- [JMESPath examples](#jmespath-examples)
- [Role mapping](#role-mapping)
This callback URL must match the full HTTP address that you use in your browser to access Grafana, but with the prefix path of `/login/generic_oauth`.
@@ -56,11 +57,11 @@ You can also specify the SSL/TLS configuration used by the client.
Grafana will attempt to determine the user's e-mail address by querying the OAuth provider as described below in the following order until an e-mail address is found:
1. Check for the presence of an e-mail address via the `email` field encoded in the OAuth `id_token` parameter.
2. Check for the presence of an e-mail address using the [JMESPath](http://jmespath.org/examples.html) specified via the `email_attribute_path` configuration option. The JSON used for the path lookup is the HTTP response obtained from querying the UserInfo endpoint specified via the `api_url` configuration option.
1. Check for the presence of an e-mail address using the [JMESPath](http://jmespath.org/examples.html) specified via the `email_attribute_path` configuration option. The JSON used for the path lookup is the HTTP response obtained from querying the UserInfo endpoint specified via the `api_url` configuration option.
**Note**: Only available in Grafana v6.4+.
3. Check for the presence of an e-mail address in the `attributes` map encoded in the OAuth `id_token` parameter. By default Grafana will perform a lookup into the attributes map using the `email:primary` key, however, this is configurable and can be adjusted by using the `email_attribute_name` configuration option.
4. Query the `/emails` endpoint of the OAuth provider's API (configured with `api_url`) and check for the presence of an e-mail address marked as a primary address.
5. If no e-mail address is found in steps (1-4), then the e-mail address of the user is set to the empty string.
1. Check for the presence of an e-mail address in the `attributes` map encoded in the OAuth `id_token` parameter. By default Grafana will perform a lookup into the attributes map using the `email:primary` key, however, this is configurable and can be adjusted by using the `email_attribute_name` configuration option.
1. Query the `/emails` endpoint of the OAuth provider's API (configured with `api_url`) and check for the presence of an e-mail address marked as a primary address.
1. If no e-mail address is found in steps (1-4), then the e-mail address of the user is set to the empty string.
Grafana will also attempt to do role mapping through OAuth as described below.
@@ -81,14 +82,14 @@ You can customize the attribute name used to extract the ID token from the retur
## Set up OAuth2 with Auth0
1. Create a new Client in Auth0
1. Create a new Client in Auth0
- Name: Grafana
- Type: Regular Web Application
2. Go to the Settings tab and set:
1. Go to the Settings tab and set:
- Allowed Callback URLs: `https://<grafana domain>/login/generic_oauth`
3. Click Save Changes, then use the values at the top of the page to configure Grafana:
1. Click Save Changes, then use the values at the top of the page to configure Grafana:
```bash
[auth.generic_oauth]
@@ -124,21 +125,21 @@ allowed_organizations =
## Set up OAuth2 with Centrify
1. Create a new Custom OpenID Connect application configuration in the Centrify dashboard.
1. Create a new Custom OpenID Connect application configuration in the Centrify dashboard.
2. Create a memorable unique Application ID, e.g. "grafana", "grafana_aws", etc.
1. Create a memorable unique Application ID, e.g. "grafana", "grafana_aws", etc.
3. Put in other basic configuration (name, description, logo, category)
1. Put in other basic configuration (name, description, logo, category)
4. On the Trust tab, generate a long password and put it into the OpenID Connect Client Secret field.
1. On the Trust tab, generate a long password and put it into the OpenID Connect Client Secret field.
5. Put the URL to the front page of your Grafana instance into the "Resource Application URL" field.
1. Put the URL to the front page of your Grafana instance into the "Resource Application URL" field.
6. Add an authorized Redirect URI like https://your-grafana-server/login/generic_oauth
1. Add an authorized Redirect URI like https://your-grafana-server/login/generic_oauth
7. Set up permissions, policies, etc. just like any other Centrify app
1. Set up permissions, policies, etc. just like any other Centrify app
8. Configure Grafana as follows:
1. Configure Grafana as follows:
```bash
[auth.generic_oauth]
@@ -155,7 +156,7 @@ allowed_organizations =
## Set up OAuth2 with OneLogin
1. Create a new Custom Connector with the following settings:
1. Create a new Custom Connector with the following settings:
- Name: Grafana
- Sign On Method: OpenID Connect
- Redirect URI: `https://<grafana domain>/login/generic_oauth`
@@ -163,11 +164,11 @@ allowed_organizations =
- Login URL: `https://<grafana domain>/login/generic_oauth`
then:
2. Add an App to the Grafana Connector:
1. Add an App to the Grafana Connector:
- Display Name: Grafana
then:
3. Under the SSO tab on the Grafana App details page you'll find the Client ID and Client Secret.
1. Under the SSO tab on the Grafana App details page you'll find the Client ID and Client Secret.
Your OneLogin Domain will match the URL you use to access OneLogin.

View File

@@ -7,7 +7,7 @@ type = "docs"
name = "GitHub"
identifier = "github_oauth2"
parent = "authentication"
weight = 4
weight = 800
+++
# GitHub OAuth2 Authentication

View File

@@ -7,7 +7,7 @@ type = "docs"
name = "GitLab"
identifier = "gitlab_oauth"
parent = "authentication"
weight = 5
weight = 900
+++
# GitLab OAuth2 Authentication
@@ -31,9 +31,9 @@ instance, if you access Grafana at `http://203.0.113.31:3000`, you should use
http://203.0.113.31:3000/login/gitlab
```
Finally, select *api* as the *Scope* and submit the form. Note that if you're
Finally, select *read_api* as the *Scope* and submit the form. Note that if you're
not going to use GitLab groups for authorization (i.e. not setting
`allowed_groups`, see below), you can select *read_user* instead of *api* as
`allowed_groups`, see below), you can select *read_user* instead of *read_api* as
the *Scope*, thus giving a more restricted access to your GitLab API.
You'll get an *Application Id* and a *Secret* in return; we'll call them
@@ -51,7 +51,7 @@ enabled = true
allow_sign_up = false
client_id = GITLAB_APPLICATION_ID
client_secret = GITLAB_SECRET
scopes = api
scopes = read_api
auth_url = https://gitlab.com/oauth/authorize
token_url = https://gitlab.com/oauth/token
api_url = https://gitlab.com/api/v4

View File

@@ -7,7 +7,7 @@ type = "docs"
name = "Google"
identifier = "google_oauth2"
parent = "authentication"
weight = 3
weight = 600
+++
# Google OAuth2 Authentication
@@ -19,15 +19,15 @@ To enable Google OAuth2 you must register your application with Google. Google w
First, you need to create a Google OAuth Client:
1. Go to https://console.developers.google.com/apis/credentials.
2. Click **Create Credentials**, then click **OAuth Client ID** in the drop-down menu
3. Enter the following:
1. Click **Create Credentials**, then click **OAuth Client ID** in the drop-down menu
1. Enter the following:
- Application Type: Web Application
- Name: Grafana
- Authorized JavaScript Origins: https://grafana.mycompany.com
- Authorized Redirect URLs: https://grafana.mycompany.com/login/google
- Replace https://grafana.mycompany.com with the URL of your Grafana instance.
4. Click Create
5. Copy the Client ID and Client Secret from the 'OAuth Client' modal
1. Click Create
1. Copy the Client ID and Client Secret from the 'OAuth Client' modal
## Enable Google OAuth in Grafana

View File

@@ -0,0 +1,125 @@
+++
title = "Grafana Authentication"
description = "Grafana OAuthentication Guide "
keywords = ["grafana", "configuration", "documentation", "oauth"]
type = "docs"
[menu.docs]
name = "GitLab"
identifier = "grafana-oauth"
parent = "authentication"
weight = 100
+++
## Grafana Auth
Grafana of course has a built in user authentication system with password authentication enabled by default. You can
disable authentication by enabling anonymous access. You can also hide login form and only allow login through an auth
provider (listed above). There is also options for allowing self sign up.
### Login and short-lived tokens
> The following applies when using Grafana's built in user authentication, LDAP (without Auth proxy) or OAuth integration.
Grafana are using short-lived tokens as a mechanism for verifying authenticated users.
These short-lived tokens are rotated each `token_rotation_interval_minutes` for an active authenticated user.
An active authenticated user that gets it token rotated will extend the `login_maximum_inactive_lifetime_days` time from "now" that Grafana will remember the user.
This means that a user can close its browser and come back before `now + login_maximum_inactive_lifetime_days` and still being authenticated.
This is true as long as the time since user login is less than `login_maximum_lifetime_days`.
#### Remote logout
You can logout from other devices by removing login sessions from the bottom of your profile page. If you are
a Grafana admin user you can also do the same for any user from the Server Admin / Edit User view.
## Settings
Example:
```bash
[auth]
# Login cookie name
login_cookie_name = grafana_session
# The lifetime (days) an authenticated user can be inactive before being required to login at next visit. Default is 7 days.
login_maximum_inactive_lifetime_days = 7
# The maximum lifetime (days) an authenticated user can be logged in since login time before being required to login. Default is 30 days.
login_maximum_lifetime_days = 30
# How often should auth tokens be rotated for authenticated users when being active. The default is each 10 minutes.
token_rotation_interval_minutes = 10
# The maximum lifetime (seconds) an api key can be used. If it is set all the api keys should have limited lifetime that is lower than this value.
api_key_max_seconds_to_live = -1
```
### Anonymous authentication
You can make Grafana accessible without any login required by enabling anonymous access in the configuration file.
Example:
```bash
[auth.anonymous]
enabled = true
# Organization name that should be used for unauthenticated users
org_name = Main Org.
# Role for unauthenticated users, other valid values are `Editor` and `Admin`
org_role = Viewer
```
If you change your organization name in the Grafana UI this setting needs to be updated to match the new name.
### Basic authentication
Basic auth is enabled by default and works with the built in Grafana user password authentication system and LDAP
authentication integration.
To disable basic auth:
```bash
[auth.basic]
enabled = false
```
### Disable login form
You can hide the Grafana login form using the below configuration settings.
```bash
[auth]
disable_login_form = true
```
### Automatic OAuth login
Set to true to attempt login with OAuth automatically, skipping the login screen.
This setting is ignored if multiple OAuth providers are configured.
Defaults to `false`.
```bash
[auth]
oauth_auto_login = true
```
### Hide sign-out menu
Set the option detailed below to true to hide sign-out menu link. Useful if you use an auth proxy.
```bash
[auth]
disable_signout_menu = true
```
### URL redirect after signing out
URL to redirect the user to after signing out from Grafana. This can for example be used to enable signout from oauth provider.
```bash
[auth]
signout_redirect_url =
```

View File

@@ -8,7 +8,7 @@ aliases = ["/docs/grafana/latest/installation/ldap/"]
name = "LDAP"
identifier = "ldap"
parent = "authentication"
weight = 2
weight = 300
+++
# LDAP Authentication
@@ -114,8 +114,8 @@ Within this view, you'll be able to see which LDAP servers are currently reachab
To use the debug view:
1. Type the username of a user that exists within any of your LDAP server(s)
2. Then, press "Run"
3. If the user is found within any of your LDAP instances, the mapping information is displayed
1. Then, press "Run"
1. If the user is found within any of your LDAP instances, the mapping information is displayed
{{< docs-imagebox img="/img/docs/ldap_debug_mapping_testing.png" class="docs-image--no-shadow" max-width="600px" >}}
@@ -200,8 +200,8 @@ Users with nested/recursive group membership must have an LDAP server that suppo
and configure `group_search_filter` in a way that it returns the groups the submitted username is a member of.
To configure `group_search_filter`:
* You can set `group_search_base_dns` to specify where the matching groups are defined.
* If you do not use `group_search_base_dns`, then the previously defined `search_base_dns` is used.
- You can set `group_search_base_dns` to specify where the matching groups are defined.
- If you do not use `group_search_base_dns`, then the previously defined `search_base_dns` is used.
**Active Directory example:**
@@ -320,9 +320,9 @@ org_role = "Viewer"
Assuming the following Active Directory server setup:
* IP address: `10.0.0.1`
* Domain: `CORP`
* DNS name: `corp.local`
- IP address: `10.0.0.1`
- Domain: `CORP`
- DNS name: `corp.local`
**LDAP specific configuration file (ldap.toml):**
```bash

View File

@@ -7,7 +7,7 @@ type = "docs"
name = "Okta"
identifier = "okta_oauth2"
parent = "authentication"
weight = 3
weight = 1000
+++
# Okta OAuth2 authentication

View File

@@ -31,7 +31,7 @@ Provider | Support | Role mapping | Team sync<br> *(Enterprise only)* | Active s
Grafana of course has a built in user authentication system with password authentication enabled by default. You can
disable authentication by enabling anonymous access. You can also hide login form and only allow login through an auth
provider (listed above). There is also options for allowing self sign up.
provider (listed above). There are also options for allowing self sign up.
### Login and short-lived tokens

View File

@@ -7,7 +7,7 @@ type = "docs"
[menu.docs]
name = "SAML"
parent = "authentication"
weight = 5
weight = 1100
+++
# SAML authentication

View File

@@ -7,7 +7,7 @@ type = "docs"
[menu.docs]
name = "Team Sync"
parent = "authentication"
weight = 5
weight = 1200
+++
# Team sync

View File

@@ -3,9 +3,16 @@ title = "Best practices"
description = "Best practices for working with Grafana"
type = "docs"
[menu.docs]
weight = 200
identifier = "best-practices"
weight = 20
+++
# Best practices
This section provides information about best practices for intermediate Grafana administrators and users.
This section provides information about best practices for intermediate Grafana administrators and users. Click on each of the links before for more information.
- [Best practices for creating dashboards]({{< relref "best-practices-for-creating-dashboards" >}})
- [Best practices for managing dashboards]({{< relref "best-practices-for-managing-dashboards" >}})
- [Common observability strategies]({{< relref "common-observability-strategies" >}})
- [Dashboard management maturity model]({{< relref "dashboard-management-maturity-levels" >}})

View File

@@ -3,7 +3,9 @@ title = "Best practices for creating dashboards"
description = "Best practices for creating dashboards in Grafana"
type = "docs"
[menu.docs]
weight = 200
identifier = "best-practices-for-creating-dashboards"
parent = "best-practices"
weight = 100
+++
# Best practices for creating dashboards
@@ -45,11 +47,11 @@ Once you have a strategy or design guidelines, write them down to help maintain
- Consider including your name or initials in the dashboard name or as a tag so that people know who owns the dashboard.
- Remove temporary experiment dashboards when you are done with them.
- If you create many related dashboards, think about how to cross-reference them for easy navigation. Refer to [Best practices for managing dashboards]({{< relref "best-practices-for-managing-dashboards.md" >}}) for more information.
- Grafana retrieves data from a data source. A basic understanding of [data sources]({{< relref "../features/datasources/data-sources.md" >}}) in general and your specific is important.
- Grafana retrieves data from a data source. A basic understanding of [data sources]({{< relref "../datasources/_index.md" >}}) in general and your specific is important.
- Avoid unnecessary dashboard refreshing to reduce the load on the network or backend. For example, if your data changes every hour, then you don't need to set the dashboard refresh rate to 30 seconds.
- Use the left and right Y-axes when displaying time series with different units or ranges.
- Add documentation to dashboards and panels.
- To add documentation to a dashboard, add a [Text panel visualization]({{< relref "../panels/visualizations/text-panel.md" >}}) to the dashboard. Record things like the purpose of the dashboard, useful resource links, and any instructions users might need to interact with the dashboard. Check out this [Wikimedia example](https://grafana.wikimedia.org/d/000000066/resourceloader?orgId=1).
- To add documentation to a panel, [edit the panel settings]({{< relref "../panels/add-a-panel.md#edit-panel-settings" >}}) and add a description. Any text you add will appear if you hover your cursor over the small `i` in the top left corner of the panel.
- Reuse your dashboards and enforce consistency by using [templates and variables]({{< relref "../variables/templates-and-variables.md" >}}).
- Reuse your dashboards and enforce consistency by using [templates and variables]({{< relref "../variables/_index.md" >}}).
- Be careful with stacking graph data. The visualizations can be misleading, and hide important data. We recommend turning it off in most cases.

View File

@@ -3,6 +3,8 @@ title = "Best practices for managing dashboards"
description = "Best practices for managing dashboards in Grafana"
type = "docs"
[menu.docs]
identifier = "best-practices-for-managing-dashboards"
parent = "best-practices"
weight = 200
+++

View File

@@ -5,7 +5,9 @@ keywords = ["grafana", "intro", "guide", "concepts", "methods"]
aliases = ["/docs/grafana/latest/getting-started/strategies/"]
type = "docs"
[menu.docs]
weight = 500
identifier = "common-observability-strategies"
parent = "best-practices"
weight = 300
+++
# Common observability strategies

View File

@@ -3,7 +3,9 @@ title = "Dashboard management maturity model"
description = "Explanation of dashboard management maturity model"
type = "docs"
[menu.docs]
weight = 200
identifier = "best-management-for-maturity-model"
parent = "best-practices"
weight = 400
+++
# Dashboard management maturity model

View File

@@ -1,11 +1,64 @@
+++
title = "Dashboards"
title = "Dashboard overview"
type = "docs"
aliases = ["/docs/grafana/latest/features/dashboard/dashboards/"]
[menu.docs]
identifier = "dashboards"
weight = 4
weight = 100
+++
# Dashboard overview
A *dashboard* is a set of one or more panels organized and arranged into one or more rows. Grafana ships with a variety of Panels. Grafana makes it easy to construct the right queries, and customize the display properties so that you can create the perfect dashboard for your need. Each panel can interact with data from any configured Grafana Data Source (currently Graphite, Prometheus, Elasticsearch, InfluxDB, OpenTSDB, MySQL, PostgreSQL, Microsoft SQL Server and AWS Cloudwatch).
A _dashboard_ is a set of one or more panels organized and arranged into one or more rows. Grafana ships with a variety of Panels. Grafana makes it easy to construct the right queries, and customize the display properties so that you can create the perfect dashboard for your need. Each panel can interact with data from any configured Grafana Data Source (currently Graphite, Prometheus, Elasticsearch, InfluxDB, OpenTSDB, MySQL, PostgreSQL, Microsoft SQL Server and AWS Cloudwatch).
## Dashboard UI
<img src="/img/docs/v50/dashboard_annotated.png" class="no-shadow" width="700px">
1. Zoom out time range
1. Time picker dropdown. Here you can access relative time range options, auto refresh options and set custom absolute time ranges.
1. Manual refresh button. Will cause all panels to refresh (fetch new data).
1. Dashboard panel. Click the panel title to edit panels.
1. Graph legend. You can change series colors, y-axis and series visibility directly from the legend.
## Dashboard header
Click the new Dashboard link on the right side of the Dashboard picker. You now have a blank Dashboard.
<img class="no-shadow" src="/img/docs/v50/top_nav_annotated.png" width="580px">
The image above shows you the top header for a Dashboard.
1. Side menubar toggle: This toggles the side menu, allowing you to focus on the data presented in the dashboard. The side menu provides access to features unrelated to a Dashboard such as Users, Organizations, and Data Sources.
1. Dashboard dropdown: This dropdown shows you which Dashboard you are currently viewing, and allows you to easily switch to a new Dashboard. From here you can also create a new Dashboard or folder, import existing Dashboards, and manage Dashboard playlists.
1. Add Panel: Adds a new panel to the current Dashboard.
1. Star Dashboard: Star (or unstar) the current Dashboard. Starred Dashboards will show up on your own Home Dashboard by default, and are a convenient way to mark Dashboards that you're interested in.
1. Share Dashboard: Share the current dashboard by creating a link or create a static Snapshot of it. Make sure the Dashboard is saved before sharing.
1. Save dashboard: The current Dashboard will be saved with the current Dashboard name.
1. Settings: Manage Dashboard settings and features such as Templating and Annotations.
## Manage dashboards
The time period for the dashboard can be controlled by the [Time range controls]({{< relref "time-range-controls.md" >}}) in the upper right of the dashboard.
Dashboards can use [templating]({{< relref "../variables/_index.md" >}}) to make them more dynamic and interactive.
Dashboards can use [annotations]({{< relref "annotations.md" >}}) to display event data across panels. This can help correlate the time series data in the panel with other events.
Dashboards can be [shared]({{< relref "share-dashboard.md" >}}) easily in a variety of ways.
Dashboards can be tagged, and the dashboard picker provides quick, searchable access to all dashboards in a particular organization.
## Rows
A *row* is a logical divider within a dashboard. It is used to group panels together.
Rows are always 12 “units” wide. These units are automatically scaled dependent on the horizontal resolution of your browser. You can control the relative width of panels within a row by setting their specific width.
We use a unit abstraction so that Grafana looks great on all screen sizes.
> **Note:** With MaxDataPoint functionality, Grafana can show you the perfect number of data points, regardless of resolution or time range.
Collapse a row by clicking on the row title. If you save a dashboard with a row collapsed, then it saves in that state and does not load those graphs until you expand the row.
Use the [repeating rows]({{< relref "../variables/_index.md#repeating-rows" >}}) functionality to dynamically create or remove entire rows, which can be filled with panels, based on the template variables selected.

View File

@@ -70,10 +70,10 @@ to show.
The annotation query options are different for each data source.
- [Graphite annotation queries]({{< relref "../features/datasources/graphite.md#annotations" >}})
- [Elasticsearch annotation queries]({{< relref "../features/datasources/elasticsearch.md#annotations" >}})
- [InfluxDB annotation queries]({{< relref "../features/datasources/influxdb.md#annotations" >}})
- [Prometheus annotation queries]({{< relref "../features/datasources/prometheus.md#annotations" >}})
- [MySQL annotation queries]({{< relref "../features/datasources/mysql.md#annotations" >}})
- [Postgres annotation queries]({{< relref "../features/datasources/postgres.md#annotations" >}})
- [Loki annotation queries]({{< relref "../features/datasources/loki.md#annotations" >}})
- [Graphite annotation queries]({{< relref "../datasources/graphite.md#annotations" >}})
- [Elasticsearch annotation queries]({{< relref "../datasources/elasticsearch.md#annotations" >}})
- [InfluxDB annotation queries]({{< relref "../datasources/influxdb.md#annotations" >}})
- [Prometheus annotation queries]({{< relref "../datasources/prometheus.md#annotations" >}})
- [MySQL annotation queries]({{< relref "../datasources/mysql.md#annotations" >}})
- [Postgres annotation queries]({{< relref "../datasources/postgres.md#annotations" >}})
- [Loki annotation queries]({{< relref "../datasources/loki.md#annotations" >}})

View File

@@ -1,19 +1,20 @@
+++
title = "Export and Import"
title = "Export and import"
keywords = ["grafana", "dashboard", "documentation", "export", "import"]
type = "docs"
aliases = ["/docs/grafana/latest/reference/export_import/"]
[menu.docs]
parent = "dashboard_features"
weight = 8
weight = 800
+++
# Export and Import
# Export and import
Grafana Dashboards can easily be exported and imported, either from the UI or from the [HTTP API]({{< relref "../http_api/dashboard.md#create-update-dashboard" >}}).
## Exporting a dashboard
Dashboards are exported in Grafana JSON format, and contain everything you need (layout, variables, styles, data sources, queries, etc)to import the dashboard at a later time.
Dashboards are exported in Grafana JSON format, and contain everything you need (layout, variables, styles, data sources, queries, etc) to import the dashboard at a later time.
The export feature is accessed in the share window which you open by clicking the share button in the dashboard menu.
@@ -76,7 +77,7 @@ Example:
"value": "collectd",
"description": ""
}
],
]
}
```
@@ -90,7 +91,7 @@ These are then referenced in the dashboard panels like this:
"panels": [
{
"type": "graph",
"datasource": "${DS_GRAPHITE}",
"datasource": "${DS_GRAPHITE}"
}
]
}

Some files were not shown because too many files have changed in this diff Show More