Compare commits

...

2099 Commits

Author SHA1 Message Date
Andrej Ocenas
dc57bcd458 Docs: Add CloudWatch Logs retry strategy timeout config (#42485)
* Add section for the timeout

* Move and remove the table

* Change header level
2021-12-14 16:18:45 +01:00
Maria Alexandra
7fc2c687ec Chore: Remove unnecessary metric tokens in the "remove milestone" workflow (#43096)
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-12-14 16:18:28 +01:00
Grot (@grafanabot)
8869c830b0 ReleaseNotes: Updated changelog and release notes for 8.3.3 (#43101) 2021-12-14 10:06:14 -05:00
Karl Persson
9558c09a7c Access Control: Store permissions on SignedInUser (#43040)
* add permission structure to signedinuser

* add middleware to load user permissions into signedinuser struct

* apply LoadPermissionsMiddleware to http server

* check for permissions in signedinuser struct

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
2021-12-14 16:05:59 +01:00
Connor Lindsey
f1101efcec Tempo: Update tempo search to use tags query param (#42849)
* Update tempo search to use tags query param

* Remove unnecessary test
2021-12-14 07:41:46 -07:00
Will Browne
e4ba5f17dd add core plugins thru store (#43085) 2021-12-14 15:22:40 +01:00
Leonard Gram
5d18834deb OAuth: persisting the id token (#42938)
* OAuth: persisting the id token

* OAuth: verifies that the idtoken gets persistet in the database
2021-12-14 15:22:10 +01:00
Eric Leijonmarck
4a3961400a Serviceaccounts: create serviceaccount api (#42150)
* WIP

* wip

* wip

* wip

* refactor: new return of the create service accoutn

* refactor: change to have correct role

* refactor: ability to create service accounts

* make public

* refactor: make ints instead

* refactor: remove location sprintf

* refactor: added back named constants
2021-12-14 14:39:25 +01:00
Piotr Jamróz
19374fce39 Explore: Generic query import/export (#40987)
* Add basic implementation

* Split import/export query interface

* Rename abstract query type

* Rename abstract query type

* Split loki/prom parsing

* Update docs

* Test importing abstract queries to Elastic

* Test exporting abstract queries from Graphite

* Test Prom and Loki query import/export

* Give better control to import/export all queries to data sources

* Fix unit test

* Fix unit test

* Filter out non-existing labels when importing queries to Loki

* Fix relative imports, names and docs

* Fix import type

* Move toPromLike query to Prometheus code

* Dedup label operator mappings

* importAbstractQueries -> importFromAbstractQueries

* Fix unit tests
2021-12-14 14:36:47 +01:00
Ashley Harrison
e1a5fa063a Chore: Add remove-milestone workflow (#43086)
* Add remove milestone action

* Update name

* Chore: use main branch from github action repository

Co-authored-by: Alexandra Vargas <alexa1866@gmail.com>
2021-12-14 13:54:19 +01:00
renovate[bot]
1d79fc9360 Update dependency classnames to v2.3.1 (#43090)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-14 13:15:23 +01:00
renovate[bot]
e82a522422 Update dependency autoprefixer to v10.4.0 (#43056)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-14 13:12:04 +01:00
malcolmholmes
555f5a49ce Publish non-release CDN assets (#43087) 2021-12-14 13:01:54 +01:00
Shirley
21656a0491 Remove reference to legacydata package (#43075)
* Remove reference to legacydata package

* Change from and to times
2021-12-14 12:58:31 +01:00
renovate[bot]
55b6052ebe Update dependency axios to v0.24.0 (#43057)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-14 11:52:17 +00:00
renovate[bot]
fbb78604e7 Update dependency @visx/tooltip to v2.2.2 (#43047)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-14 11:51:11 +00:00
kay delaney
c926d4d7f2 Dashboard: Fix lazy loading for repeated panels (#43083) 2021-12-14 11:23:42 +00:00
Timur Olzhabayev
61227998a7 chore(commands): add plugins-catalog issues to plugins platform project automatically (#43078) 2021-12-14 11:46:40 +01:00
Dessen Xu
e79254d9aa Toolkit: Fix bug with rootUrls not being properly parsed when signing a private plugin. (#43014)
* fix plugin sign

* modify urls

* back to urls...

* code format
2021-12-14 11:43:26 +01:00
Marcus Efraimsson
8e0da70026 Chore: Add PR Check action enforcing a milestone is set (#43025)
Adds a PR Check action with a rule that enforces a milestone is set on the PR. 

Ref grafana/grafana-github-actions#34
Ref grafana/grafana-github-actions#42
2021-12-14 11:33:13 +01:00
Will Browne
155487bfb0 Plugins: Add typed models for frontend settings data sources and panels (#42062)
* add model for data source

* add model for panels

* add omitempty

* make consistent with main

* dont emit bools

* resolve conflicts

* remove file

* remove file

* update field name

* always pass jsonData

* minify the changes

* remove dupe line
2021-12-14 11:16:13 +01:00
Will Browne
6c4555265a Plugins: Update client to use SDK resource contract (#42888)
* client uses sdk resource handler

* apply pr feedback
2021-12-14 11:15:49 +01:00
Timur Olzhabayev
daaab0d88c chore(changelog): add correct cve number [CI SKIP] (#43027) 2021-12-14 11:04:47 +01:00
Erik Sundell
043680371f add all new es metrics (#43034) 2021-12-14 10:12:39 +01:00
Scott Lepper
6ae8f23f32 Chore: update plugin-ci image (#43062) 2021-12-13 14:24:32 -08:00
malcolmholmes
4a4d076bb1 Build: Still auto-publish non-release artifacts (#43021)
* Still auto-publish non-release artifacts

* Add version to prerelease bucket path
2021-12-13 19:25:59 +00:00
Yuriy Tseretyan
35b0067650 Populate missing UID of provisioned data source only for new records (#42999)
* defer updating empty UID to insert command
* change logging to use the command
2021-12-13 14:14:39 -05:00
Yuriy Tseretyan
b63595b47f Alerting: fix sqlstore.GetFolderByTitle to search for folder (#42898)
* a test to reproduce the bug
2021-12-13 13:59:20 -05:00
kay delaney
28eeb7662c Dashboard: Remove "flash" of grid placeholder when moving panel (#43029) 2021-12-13 16:27:08 +00:00
renovate[bot]
12d7c98932 Update dependency @rollup/plugin-node-resolve to v13.1.1 (#43037)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-13 16:12:35 +00:00
renovate[bot]
1562ba85c4 Update dependency @visx/shape to v2.4.0 (#42991)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-13 16:12:12 +00:00
Gilles De Mey
3eae0db7ce fix: make state duration column wider (#43044) 2021-12-13 16:57:15 +01:00
Ieva
2ef071e728 log provisioning errors (#43041) 2021-12-13 16:50:02 +01:00
Serge Zaitsev
f5802878f1 Chore: Move remaining web framework code to pkg/web, remove macaron binding module (#43018)
* remove macaron binding dependency

* completely purge macaron binding

* move everything to pkg/web

* remove non-go files from pkg/web

* clean up leftovers of macaron imports

* make linter happy
2021-12-13 15:56:14 +01:00
Yuriy Tseretyan
1db9b1e6a9 Improve bridge for Alertmanager logger (#42958)
* Implement go-kit/log.Logger for internal logger.
2021-12-13 09:41:53 -05:00
renovate[bot]
a10708713c Update dependency @reduxjs/toolkit to v1.7.0 (#43036)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-13 14:41:27 +00:00
renovate[bot]
e5a990a14f Update dependency @popperjs/core to v2.11.0 (#42396)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-13 14:40:13 +00:00
renovate[bot]
0432ef2943 Update dependency @visx/scale to v2.2.2 (#42990)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-13 14:03:52 +00:00
Piotr Jamróz
cf2063f19a Select: Infer dropdown menu position (#42446)
* Infer dropdown menu position when using asynchronously loaded options

* Infer position only when the menu is opened when the component is created

* Add link to react-select bug

* Update docs
2021-12-13 14:59:51 +01:00
renovate[bot]
f9a8e41710 Update dependency @rushstack/node-core-library to v3.44.2 (#42756)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-13 13:58:07 +00:00
Torkel Ödegaard
0e88f5db85 AppPlugins: Support app plugins with only default nav (#43016) 2021-12-13 14:06:15 +01:00
kay delaney
597148f23b Dashboards: Use IntersectionObserver to manage lazy loading of panels (#42834) 2021-12-13 12:42:33 +00:00
Dominik Prokop
12619065a4 Dependencies: Bump monaco to 0.31.0 (#43022) 2021-12-13 13:21:50 +01:00
Matthew Jacobson
62c20ebd77 Alerting: Add label and state filters to alert instance components (#42550) 2021-12-13 11:54:36 +01:00
Uchechukwu Obasi
1442052c37 ColorPickerPopover: implement keyboard navigation (#42809)
* ColorPicker: implement new ui

* makes color swatches tabbable

* implements next and previous arrow key navigation

* make colorPickerPopover to close when esc key is pressed

* colorValueEditor: fix colorPopover closing immediately when clicked

* add blue focus ring to both colorSwatch and picker tabs

* refactor color label divs to be more readable

* more cleanup

* refactor color swatches to use buttons instead

* removes left and right arrow navigation to maintain consistency

* makes colors selectable using the keyboard

* use native button instead for mouse and keyboard click hadling

* when a color is clicked, row backgound should change

* add left padding to last row in colorPopover

* when a color is hovered, row backgound should change

* test for colorPickerPopover component

* small typo fix

* ariaLabel over label

* make row background to not change when a color is selected

* style refactor to be standalone

* use HTMLAttributes instead
2021-12-13 11:38:10 +01:00
Dominik Prokop
1809513575 npm/canary: Fix typo in publish script (#43020) 2021-12-13 10:38:31 +01:00
Jack Westbrook
da75e4b910 Build: Publish canary packages to NPM registry (#42922)
* ci(packages): replace canary github publishing with npm registry

* chore(drone): refresh yaml config

* docs(packages): remove github package publish explanation
2021-12-13 09:50:19 +01:00
Sofia Papagiannaki
c6483cd8ed Alerting: Refactor API handlers to use web.Bind (#42600)
* Alerting: Refactor API handlers to use web.Bind

* lint
2021-12-13 09:22:57 +01:00
Timur Olzhabayev
fd48aee61e chore(release-notes): add release notes for 8.2.3 and 7.5.12 (#42987)
* chore(release-notes): add release notes for 8.2.3 and 7.5.12

* chore(release-notes): add release notes to the index

* chore(release-notes): add release notes to index and changelog

* chore(release-notes): add release notes to index and changelog

* chore(latest.json): bump
2021-12-10 16:52:27 +01:00
renovate[bot]
3811d7d276 Update dependency @swc/helpers to v0.3.2 (#42811)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-10 15:33:50 +00:00
Marcus Efraimsson
d6ec6f8ad2 Backport fix to main (#42979)
* fixes

(cherry picked from commit a2c386915ce11b9422f4af8ae181eaa1a22bc5c3)
(cherry picked from commit 06706efbbe)

* fix regex

(cherry picked from commit a259213a3badc9618e969f2c8db0a0143f00faee)
(cherry picked from commit 1d7105c095)

* lint (#42970)

(cherry picked from commit afb9e8e5f3)

Co-authored-by: Will Browne <will.browne@grafana.com>
Co-authored-by: malcolmholmes <42545407+malcolmholmes@users.noreply.github.com>
2021-12-10 16:10:04 +01:00
renovate[bot]
adc31f8f43 Update dependency @types/testing-library__jest-dom to v5.14.2 (#42814)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-10 15:05:13 +00:00
renovate[bot]
494b711bfe Update dependency @react-aria/utils to v3.10.0 (#42790)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-10 15:04:45 +00:00
renovate[bot]
d39ff81de9 Update dependency @react-aria/interactions to v3.7.0 (#42775)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-10 15:04:09 +00:00
Carl Bergquist
f9481527de Macaron: Prevent WriteHeader invalid HTTP status code panic (#42973)
(cherry picked from commit 92005159c89f848ab8b8435e0c8751599e2e8aff)

Co-authored-by: Todd Treece <todd.treece@grafana.com>
2021-12-10 13:54:12 +01:00
Hugo Häggmark
e6c24396da Docs: Clarify relative time range overrides (#42930)
* Docs: Clarify relative time range overrides

* Update docs/sources/dashboards/time-range-controls.md

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

* Update docs/sources/panels/queries.md

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

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-12-10 08:41:05 +01:00
achatterjee-grafana
7f03fc1470 fixed image link. (#42956) 2021-12-09 16:51:06 -05:00
achatterjee-grafana
d2073580be fixed image links, also two broken relfrefs for alerting. (#42954) 2021-12-09 15:46:38 -05:00
natellium
c6c82912e7 Add user essentials issues directly to project (#42944)
To automate part of our escalations flow, we'd like to automatically add issues with the oss-user-essentials label to our project.
2021-12-09 19:25:33 +01:00
Gábor Farkas
a4cc1f6b39 loki: alerting: handle curly-braces-style variables (#42933) 2021-12-09 15:16:01 +01:00
Ivana Huckova
2655be61b6 Prometheus: Interpolate curly brackets syntax variable (#42927) 2021-12-09 14:37:24 +01:00
malcolmholmes
de6148e5f1 Build: allow building releases from other repositories (#42914)
* Allow building from other repositories

* Upgrade grabpl

* Update drone.yml
2021-12-09 13:09:17 +00:00
Gábor Farkas
096c248887 explore: store failed queries too (#42516)
* explore: store failed queries too

* fixed test
2021-12-09 14:00:50 +01:00
Gábor Farkas
3232ae08c0 loki: removed unused variable (#42909) 2021-12-09 13:16:52 +01:00
Torkel Ödegaard
d76dd7d14b LogsPanel: Show message and actions if panel cannot visualize data (#42878) 2021-12-09 11:46:24 +01:00
Ivana Huckova
e555221523 Prometheus: Fix running of exemplar queries for non-histogram metrics (#42749)
* Prometheus: Fix running of exemplar queries for non-histogram mestrics

* Fix test

* Refactor based on review suggestions
2021-12-09 11:30:23 +01:00
Timur Olzhabayev
984d26ce86 chore(pr-actions): remove milestone when pr is closed (#42895)
* chore(pr-actions): remove milestone when pr is closed without being merged

* Update .github/workflows/pr-commands-closed.yml

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

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2021-12-08 18:58:17 +01:00
Ryan McKinley
1bde2307ed Dashlist: options cleanup (#42850) 2021-12-08 08:42:45 -08:00
Ikko Ashimine
672693ae4e Field: fix typo in fieldOverrides.ts (#42885)
formating -> formatting
2021-12-08 15:04:58 +00:00
Zoltán Bedi
328b922a58 Chore: Upgrade yarn and editor sdks (#42847) 2021-12-08 14:40:24 +01:00
Torkel Ödegaard
8ca36b76cf Select: Fix issue with placeholder and auto width (#42851)
* Select: Fix issue with placeholder and auto width

* Fixed lint issue
2021-12-08 14:05:13 +01:00
Torkel Ödegaard
8828d5e8d7 BarChart: Use new data error view component to show actions in panel edit (#42474) 2021-12-08 11:45:56 +01:00
Hugo Häggmark
a0333c1545 Navigation: fix navigation when appSubUrl is configured (#42863)
* Navigation: fix navigation when appSubUrl is configured

* Update public/app/core/components/NavBar/NavBarItem.tsx

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

* Chore: changes after PR comments

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
2021-12-08 10:42:08 +01:00
Hugo Häggmark
bb17193ce5 Variables: Adds user interaction reports (#42802)
* Variables: Adds user interaction reports

* Chore: updates after PR feedback
2021-12-08 10:11:01 +01:00
Hugo Häggmark
7a99b067ef Variables: Fix repeating panels for on time range changed variables (#42828) 2021-12-08 08:11:52 +01:00
Ryan McKinley
e9d2b25db3 Runtime: remove updateLocation from window context (#42857) 2021-12-07 20:01:35 -08:00
Will Browne
fb05f253d4 update release notes (#42848) 2021-12-07 19:24:45 +02:00
Dimitris Sotirakis
c798c0e958 Security: Fix directory traversal issue (#42846)
* security: fix dir traversal issue

(cherry picked from commit 00e38ba555)

* Improve comments and error message.

Co-authored-by: Kyle Brandt <kyle@grafana.com>
2021-12-07 19:15:53 +02:00
Isabella Siu
a2ad0a0fb6 CloudMonitor: Iterate over pageToken for resources (#42546) 2021-12-07 08:54:50 -05:00
Erik Sundell
c3208c1850 allow search queries without dimensions (#42800) 2021-12-07 12:43:01 +01:00
renovate[bot]
39ac11d300 Update dependency @kusto/monaco-kusto to v4.1.2 (#42821)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-07 11:33:37 +01:00
James D
beb3a8f02d Azure Monitor: Added Microsoft.Cdn/profiles to supported namespace list (#42745)
* Added Microsoft.Cdn/profiles to Azure Monitor Plugin

Microsoft.Cdn/profiles is the Azure Front Door Standard/Premium resource which is not present in the supported namespaces. I would like to use this with Grafana.

* Azure Monitor: Added CDN WAF namespace

Added Microsoft.Cdn/cdnwebapplicationfirewallpolicies
Ensured both Microsoft.Cdn/cdnwebapplicationfirewallpolicies and Microsoft.Cdn/profiles are available in all azure clouds
2021-12-07 10:31:31 +01:00
Dominik Prokop
826b3bfd52 StateTimeline: Fix toolitp not showing when for frames with multiple fields (#42741)
* StateTimeline: Fix toolitp not showing when for frames with multiple fields

* Update public/app/plugins/panel/state-timeline/StateTimelinePanel.tsx

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

* Update public/app/plugins/panel/state-timeline/StateTimelinePanel.tsx

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

* Update public/app/plugins/panel/state-timeline/StateTimelinePanel.tsx

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

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2021-12-07 10:27:20 +01:00
renovate[bot]
c2e2c658ce Update dependency @opentelemetry/exporter-collector to v0.25.0 (#42395)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-07 09:58:43 +01:00
Jack Westbrook
36b0cb64fd Grafana Toolkit: Prevent installation of outdated FE dependencies (#42663) 2021-12-07 09:56:56 +01:00
renovate[bot]
0bd30c8256 Update dependency @testing-library/jest-dom to v5.16.1 (#42795)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-07 09:56:39 +01:00
renovate[bot]
62465a9048 Update dependency @react-types/shared to v3.10.0 (#42792)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-07 09:50:40 +01:00
Jean-Philippe Quéméner
e70cdb3f49 Alerting: add documentation about alertmanager contactpoint support (#42799) 2021-12-07 09:04:47 +01:00
Gábor Farkas
6686f8c345 loki: rename ResponseModel to QueryModel (#42794) 2021-12-07 07:57:52 +01:00
Nathan Marrs
2af5ad4764 Canvas: use name as UID (#42696) 2021-12-06 21:04:58 -08:00
Ashley Harrison
a345b06095 Chore(dependencies): Tidy up deps in our packages (#42085)
* Chore(dependencies): Tidy up deps in root package

* Tidy up dependencies in @grafana/data

* Tidy up dependencies in @grafana/e2e

* Tidy up @grafana/e2e-selectors packages

* Tidy up packages in @grafana/runtime

* tidy up packages in @grafana/ui

* tidy up packages in jaeger-ui-components

* Readd regenerator-runtime in @grafana/data
2021-12-06 17:32:55 +00:00
renovate[bot]
d8d009ecce Update dependency @kusto/monaco-kusto to v4.1.2 (#42387)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-06 17:09:28 +01:00
Zoltán Bedi
b82663b87b chore: Add renovate to the ignore list (#42791)
* chore: Add renovate to the ignore list

It won't flag renovate pr's as external

* Update .github/pr-commands.json
2021-12-06 16:40:40 +01:00
renovate[bot]
d5f63ff7bd Update dependency @types/d3 to v7.1.0 (#42473)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-06 16:35:48 +01:00
Erin Noe-Payne
4d5e39abff Analytics: Add user id tracking to google analytics (#42763) 2021-12-06 16:34:19 +01:00
renovate[bot]
8318fab960 Update dependency @types/papaparse to v5.3.1 (#42538)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-06 15:04:15 +00:00
malcolmholmes
6a5416bcec Build: Correct syntax for directing release builds (#42789) 2021-12-06 15:03:44 +00:00
William Assis
eab0ba8716 Analytics: RudderStack custom URLs to fetch SDK and Config (#41988)
* Add config options to provide custom URL to fetch Rudderstack SDK and Config

* Add new entries to defaults.ini

* Update docs
2021-12-06 09:42:29 -05:00
malcolmholmes
b6818718e9 Build: don't run release builds on grafana/grafana repo (#42785) 2021-12-06 14:30:13 +00:00
Ashley Harrison
0388082768 Update SearchItem.tsx (#42783) 2021-12-06 14:14:56 +00:00
Giordano Ricci
7c3565379a Elasticsearch: Fix fastpass A11y issues (#42657)
* Add labels to Date Histogram settings fields

* Add labels to Terms settings fields

* Add labels to Filters settings fields

* Add labels to Geo Hash Grid settings fields

* Add labels to Histogram settings fields

* Add labels to Percentiles settings fields

* Add labels to Moving Avg settings fields

* Add labels to Bucket Script settings fields
2021-12-06 13:00:10 +00:00
Hugo Häggmark
73b7485630 Variables: Fix so queryparam option works for scoped variables (#42742)
* Variables: Fix so queryparam option work for scoped variables

* Chore: update after PR comments
2021-12-06 12:44:28 +01:00
renovate[bot]
0a4cc54a3b Update dependency @types/slate-plain-serializer to v0.7.1 (#42539)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-06 11:58:43 +01:00
Jack Westbrook
776d796bcb Grafana UI: Bump storybook to 6.4.4 (#42634)
* chore(storybook): bump dependencies to 6.4.4

* chore(yarn): update packageExtensions to match latest storybook

* fix(storybook): get webpack builds to pass

* fix(storybook): theme switching works in docs

* fix(storybook): use text logo so accessibility link doesnt break layout
2021-12-06 11:15:53 +01:00
Hugo Häggmark
769c82cf66 Variables: Adds drag and drop in variables list (#42503)
* Variables: adds drag and drop in variables list

* Refactor: fixes after PR comments

* Chore: updates after PR comments

* Refactor: adds styles during dragging

* Docs: update doc

* Chore: pushing Drone
2021-12-06 10:36:58 +01:00
Zoltán Bedi
fdc7eef0f4 Add grafana/experimental package (#42289)
* Add grafana/experimental package

* CloudWatch: Use experimental for components

* Use canary version of experimental

* Update sort order
2021-12-06 09:37:54 +01:00
Ryan McKinley
d41044bd8e Runtime: support driving grafana app from the console (#42762) 2021-12-06 07:42:35 +01:00
Maria Alexandra
e468fcf518 Navigation: Implement Keyboard Navigation (#41618)
* Navigation: Start creating new NavBarMenu component

* Navigation: Apply new NavBarMenu to NavBarNext

* Navigation: Remove everything to do with .sidemenu-open--xs

* Navigation: Ensure search is passed to NavBarMenu

* Navigation: Standardise NavBarMenuItem

* This extra check isn't needed anymore

* Navigation: Refactor <li> out of NavBarMenu

* Navigation: Combine NavBarMenuItem with DropdownChild

* use spread syntax since performance shouldn't be a concern for such small arrays

* Improve active item logic

* Ensure unique keys

* Remove this duplicate code

* Add unit tests for getActiveItem

* Add tests for NavBarMenu

* Rename mobileMenuOpen -> menuOpen in NavBarNext (since it can be used for mobile menu or megamenu)

* just use index to key the items

* Use exact versions of @react-aria packages

* Navigation: Make the dropdown header a NavBarMenuItem

* Navigation: Stop using dropdown-menu for styles

* Navigation: Add react-aria relevant packages

* Navigation: Refactor NavBarDropdown to support react aria

* Navigation: apply keyboard navigation to NavBar component

* Navigation: UseHover hook for triggering submenu on navbar

* Navigation: rename testMenu component to NavBarItemButton

* WIP

* some hacks

* Refactor: clean up keybinding events

* Navigation:  render subtitle on item menu and disable it

* Navigation: Adds react-aria types (#42113)

* Refactor: refactor out to NavBarItemWithoutMenu

* Refactor: cleaning up stuff

* Refactor: comment out unused code

* Chore: Removes section and uses items only

* Chore: fix NavBarNext

* Chore: adds tests

* Refactor: minimize props api

* Refactor: various refactors

* Refactor: rename enableAllItems

* Refactor: remove unused code

* Refactor: fix clicking on menuitems

* Refactor: use recommended onAction instead

* Navigation: Fix a11y issues on NavBar

* Navigation: Fix a11y navBar Next

* Navigation: Remove unnecessary label prop, use link.text instead

* Apply suggestions from code review

Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>

* Apply unit tests suggestions from code review

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

* Update react-aria/menu package to latest version and apply PR suggestion

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2021-12-06 06:58:17 +01:00
Connor Lindsey
bf744698a1 Update service graph docs (#42604)
* Update service graph docs

* Add link to agent configuration
2021-12-03 10:14:39 -07:00
Ashley Harrison
cc9151d382 Dependencies: Jest 27 (#42681)
* Update jest monorepo

* Update version of marked so it doesn't throw an error, set testEnvironment

* Fix some unit tests

* Remove all these tests that aren't actually working...

* use spyOn instead of mocking the whole module

* Fix linting

Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-03 17:09:25 +00:00
Uchechukwu Obasi
cf9aef9168 ButtonSelect: add react-aria for better accessibility (#42700) 2021-12-03 16:48:04 +01:00
Ivana Huckova
21fe78302b Prometheus: Fix passing of custom params when running queries (#42728)
* Prometheus: Fix passing of custom params

* Remove prints
2021-12-03 16:28:05 +01:00
Ivana Huckova
8722c19cc3 A11y: Fix prometheus issues (#42671) 2021-12-03 14:15:25 +01:00
Ivana Huckova
698f452e0d A11y: Add missing aria labels in Loki QueryEditor (#42664)
* Loki: Add missing aria-label

* Update text

* Update text
2021-12-03 14:14:51 +01:00
Ivana Huckova
64cf0aa813 Loki: Fix adding of ad hoc filters for queries with parser and line_format expressions (#42590)
* Loki: Fix ad hoc filtewrs for queries with line_format

* Fix tests
2021-12-03 14:11:43 +01:00
gotjosh
bdab1d1f1f Fix flaky tests in several notifiers (#42668)
* Fix flaky tests in several notifiers

- Non-mocked time in sensu go tests
- Close server in Slack tests
- Use a mutex for writing responses in the fake slack server

* Remove mutex at the fake slack server
2021-12-03 12:34:31 +00:00
Oliver Frye
32f2a75c44 Explore: Fix ANSI dim style being unreadable in dark mode (#41226)
* Explore: Fix ANSI dim style being unreadable in dark mode

* use GrafanaTheme2 instead of opacity

* tweak code and comment

* fix existing tests and add new test for ANSI dim code

* fix failing test
2021-12-03 11:35:16 +00:00
Erin Noe-Payne
f30debf7ad TraceView: Fixes virtualized scrolling when trace view is opened in right pane in Explore (#42480) 2021-12-03 11:09:55 +01:00
kay delaney
f104741448 BarGauge: Unfilled area shown with data links (#42676)
Closes #37623
2021-12-03 10:08:42 +00:00
George Robinson
c932dc959c Alerting: Add Ref ID to DatasourceNoData and DatasourceError alerts (#42630) 2021-12-03 09:55:16 +00:00
Alex Khomenko
9c2126c002 Dashlist: use defaultChecked for IconToggle (#42642) 2021-12-03 09:31:41 +01:00
Yuriy Tseretyan
cdfb2d02d5 add maildev to docker blocks (#42661) 2021-12-02 19:45:56 -05:00
Nathan Marrs
e07abd76c0 Canvas: refactor layer editor (#42562)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-12-02 15:54:45 -08:00
idafurjes
c80e7764d8 Chore: Remove Dispatch and AddHandler (#42603)
* Remove Dispatch

* Remove context.TODO()

* Remove AddHandler and Dispatch
2021-12-02 18:08:59 +01:00
Travis Patterson
e79fe8e84e recorded queries - add recorded queries to the enterprise configuration (#42613)
* add recorded queries to the enterprise configuration

* change name to default_
2021-12-02 09:58:55 -07:00
Marcus Efraimsson
7c8410c057 Docker: Upgrade changelog v8.2.6 (#42677) 2021-12-02 17:54:16 +01:00
Grot (@grafanabot)
e94adfd2c8 ReleaseNotes: Updated changelog and release notes for 8.2.6 (#42655)
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2021-12-02 17:09:13 +01:00
malcolmholmes
a78b90cb95 Fix windows build in main (#42665) 2021-12-02 15:57:44 +00:00
gotjosh
67461086de Docs: Dedicated section for Grouping in Alerting (#42641)
* Docs: Dedicated section for Grouping in Alerting

* Update docs/sources/alerting/unified-alerting/notification-policies.md

Co-authored-by: Armand Grillet <2117580+armandgrillet@users.noreply.github.com>

* Update docs/sources/alerting/unified-alerting/notification-policies.md

Co-authored-by: Armand Grillet <2117580+armandgrillet@users.noreply.github.com>

* Update docs/sources/alerting/unified-alerting/notification-policies.md

Co-authored-by: Armand Grillet <2117580+armandgrillet@users.noreply.github.com>

* Update docs/sources/alerting/unified-alerting/notification-policies.md

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

* Update docs/sources/alerting/unified-alerting/notification-policies.md

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

* Review suggestions

Co-authored-by: Armand Grillet <2117580+armandgrillet@users.noreply.github.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-12-02 15:51:49 +00:00
David Parrott
a53b78df0c Alerting: improve error on failure to remove query referenced by legacy alerting (#42169)
* Improve error and add test

* praise the linter!

* pr feedback

* guard against nil

* getters and setters

* Use IsEnabled instead of accessing struct
2021-12-02 07:41:24 -08:00
Andres Martinez Gotor
e061cbd25b CloudWatch: fix duplicated IDs (#42658) 2021-12-02 16:11:23 +01:00
Uchechukwu Obasi
ec994c3e1f Drawer: apply react-aria for a11y support (#42571)
* Drawer: adds focus trapping to widget

* add useOverlay hook to drawer

* fixes drawer closing when clicked within
2021-12-02 15:13:44 +01:00
Robby Milo
2ead937a26 Update aws-authentication.md (#42558) 2021-12-02 08:41:07 -05:00
Dimitris Sotirakis
dc627a3d47 Remove e2e tests on enterprise2 (#42640) 2021-12-02 14:55:23 +02:00
Ivana Huckova
5cbb4a0a2d Prometheus: Interpolate template variables in interval (#42637)
* Interpolate interval

* Add test
2021-12-02 13:32:02 +01:00
Erik Sundell
d1c7db5365 CloudWatch: Make sure MatchExact flag gets the right value (#42621)
* use value prop instead of depracted checked prop

* make sure props are not changed for all tests
2021-12-02 13:31:23 +01:00
Marcus Efraimsson
54fa7b57fe Chore: Fix flaky serverlock integration test (#42633) 2021-12-02 12:53:21 +01:00
Hugo Häggmark
4080bcbd6c E2E: revert recordings (#42636) 2021-12-02 12:52:31 +01:00
Ivana Huckova
d28e7b6185 Explore: Fix timezone not changing for graph and table (#42430)
* Pass timezone to graph in Explore

* Fix timezone issues for table

* Fix type error

* Update public/app/features/explore/TableContainer.test.tsx

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

* Replace UTC with InternalTimeZones

* Update CEST to cest

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2021-12-02 12:07:23 +01:00
Marcus Andersson
feea6e456c Chore: updated latest.json to 8.3.0 (#42631) 2021-12-02 11:43:50 +01:00
Hugo Häggmark
bde01e8771 E2E: adds recordings (#42622) 2021-12-02 10:21:31 +01:00
Piotr Jamróz
bb24e8d578 Chore: Report frontend metrics for JS/CSS load time (#42421)
* Report frontend metrics for js/css load time

* Add FCP metric

* Change comment

* Simplify reporting frontend metrics
2021-12-02 09:34:39 +01:00
Erik Sundell
ee9ca20f1f CloudWatch: Fix broken queries for users migrating from 8.2.4/8.2.5 to 8.3.0 (#42611)
* move migration logic to a higher version number

* bump version in test
2021-12-02 07:36:18 +01:00
achatterjee-grafana
ae655f2675 Docs alerting doc updates (#42262)
* Replaced "Grafana 8 alerting" with "Grafana alerting". Added support matrix for Grafana alerting.

* Few more changes and added deprecation notice to legacy alerting landing page.

* Added more content from Yuri's PR.

* Ran prettier.

* Added code review changes.

* One more change.

* Fixed linked texts.
2021-12-01 17:43:44 -05:00
Petros Kolyvas
248c71c903 Docs: Grafana 8.3 Release Docs - Minor updates (#42609)
* missing panel quick descriptions

* Panel rel ref fix

* AWS Cloudwatch Metrics to Whats New
2021-12-01 21:06:01 +01:00
idafurjes
9880a843ed Add context to notifications (#42578) 2021-12-01 17:56:08 +01:00
Joan López de la Franca Beltran
5183cc4dc4 Store 'alertmanager_configuration' as JSON string instead of raw bytes (#42443) 2021-12-01 17:49:57 +01:00
Petros Kolyvas
41917c1473 Docs: What's new 8.3 with additions and image links (#42551)
* OSS images

* Enterprise images

* Adds the link to the what's new page

* Updated Alerting header style

* Prettier fix

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

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

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

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

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

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

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-12-01 17:29:27 +01:00
Petros Kolyvas
7b1aee5220 Docs: New documentation for the Grafana 8.3 Candlestick panel (#42491)
* Initial scaffolding

* intro sentence

* Option scaffolding

* More complete candlestick documentation

* Add candlestick to visualization list

* Clarifying the opening sentence.

* Prettier fix for Candlestick

* Update docs/sources/visualizations/candlestick.md

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>

* Update docs/sources/visualizations/candlestick.md

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>

* Updated to clarify hollow candlestick behaviour

* Prettier run manually

* Update docs/sources/visualizations/candlestick.md

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

* Update docs/sources/visualizations/candlestick.md

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

* Update docs/sources/visualizations/candlestick.md

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

* Update docs/sources/visualizations/candlestick.md

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

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-12-01 17:09:02 +01:00
idafurjes
d993b12415 Add interface Tracer, add Opentelemetry (#41963)
* Add interface Tracer, add Opentelemetry

* Fix lint

* Fix failing tests and return error if config not parsed fo opentelemetry

* Update defaults.ini

Add comment with jaeger url

* go mod tidy

* Remove comments that are not needed

* Move OpentracingSpan to tracing.go

* Add opentelemetry to sample.ini
2021-12-01 17:05:08 +01:00
Jesse Weaver
be578e5700 Improve handling of old/slow-to-start remote renderer (#40492)
* Assume the remote renderer is old if it returns 404 to the version endpoint

* Retry fetch of remote image renderer version on failure

Co-authored-by: Agnès Toulet <35176601+AgnesToulet@users.noreply.github.com>
2021-12-01 08:58:43 -07:00
Ashley Harrison
a365dcca5b Manage dashboards: Can now delete empty folders (#42527)
* Manage dashboards: Can now delete empty folders

* Split hasChecked out into a separate function

* Update modal text
2021-12-01 14:53:41 +00:00
idafurjes
e6123bc3ef Replace AddHandler with AddHandlerCtx in tests (#42585) 2021-12-01 15:43:31 +01:00
Kyle Brandt
2e3fd9d659 Bra: Run wire re-gen on code change (attempt #2) (#42582) 2021-12-01 09:26:45 -05:00
Mitch Seaman
d7861f62a9 Update recorded-queries.md (#42548)
Update formatting to make a quote block instead of a bold greater-than symbol

> Added backport label, assuming the content is for 8.3 release.

Thanks @achatterjee-grafana :)
2021-12-01 15:12:32 +01:00
gotjosh
5b64c4f684 Alerting: Fix panic while proxying 4xx responses of requests to cortex/loki (#42570)
Fixes a panic that would ocurr as we proxy 4xx responses. When this happens and the content type of the response is JSON we try to check if the response has a "message" key. Then, we assume that the key will contain a value of string but we don't take into account that this value can potentially be `null`.

This adds a type assertion check to to this assumption so that we can keep the original JSON body as the response if we're unable to extract an `message`.
2021-12-01 13:53:29 +00:00
Grot (@grafanabot)
c847c0382d ReleaseNotes: Updated changelog and release notes for 8.3.0 (#42524)
* ReleaseNotes: Updated changelog and release notes for 8.3.0

* added index link.

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2021-12-01 09:52:09 -04:00
Petros Kolyvas
5fd1ce0fe9 Docs: Adding panel suggestions initial documentation for 8.3 (#42488)
* Adding panel suggestions initial documentation for 8.3

* Update docs/sources/panels/add-a-panel.md

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

* Update docs/sources/visualizations/_index.md

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

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-12-01 14:45:28 +01:00
Leonard Gram
c6021c8b4f Build: building a local docker image using build-docker-dev no longer supported (#42563) 2021-12-01 14:34:28 +01:00
Hugo Häggmark
0a50de14d3 E2E: forcing dashboard title type (#42574) 2021-12-01 13:54:22 +01:00
Dominik Prokop
fa930e7dbd KeybindingSrv: Prevent dashboard save modal when dashboard cannot be saved (#42505) 2021-12-01 13:47:47 +01:00
Piotr Jamróz
e170073aff A11y: Add aria-label and placeholder to Timeout & Access fields in HTTP Settings (#42559)
* Add aria label and placeholder to timeout input

* datasource settings: improved a11y

Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
2021-12-01 13:32:46 +01:00
Torkel Ödegaard
28b619a40e Kiosk: Fixes graph zoom issue clearing kiosk mode (#42501) 2021-12-01 12:51:52 +01:00
Yuriy Tseretyan
9139f61105 Alerting: Update alert rule migration to use expanded queries (#42493)
* move targetData to target

* use constants instead of literals.

* Update comments and add tests

Co-authored-by: gotjosh <josue.abreu@gmail.com>
2021-12-01 11:45:27 +00:00
gotjosh
357e9ed1ea Alerting: Fix Annotation Creation when the alerting state changes (#42479)
* Fix Annotation creation
- Remove validation of panelID, now annotations are created irrespective on whether they're attached to a panel or not.
- Alwasy attach the annotation to an AlertID

* Fix annotation creation

* fix tests
2021-12-01 11:04:54 +00:00
Eric Leijonmarck
55ce03bd0c Serviceaccounts: Add serviceaccount docs (#41712)
* Adds serviceaccount docs

* WIP

* wip

* Update docs/sources/manage-users/serviceaccount/serviceaccount.md

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

* Update docs/sources/manage-users/serviceaccount/serviceaccount.md

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

* Update docs/sources/http_api/serviceaccount.md

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

* Update docs/sources/http_api/serviceaccount.md

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

* Update docs/sources/http_api/serviceaccount.md

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

* Update docs/sources/http_api/serviceaccount.md

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

* updates

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-12-01 10:16:56 +00:00
Marcus Efraimsson
d71cd65dbc Chore: Update developer guide with instructions building from Windows (#42390)
In addition, removess copying of local directory in Dockerfile since that directory 
normally doesn't exist.
2021-12-01 10:34:00 +01:00
Piotr Jamróz
caf859f498 Add missing aria labels (#42532) 2021-12-01 10:16:09 +01:00
Jesse Weaver
143bc5c4ea Allow non-FGAC fallback to server admin role (#42175) 2021-11-30 16:26:05 -07:00
Mitch Seaman
b7e1f5f9ce add links between encryption docs (#42549) 2021-11-30 23:49:42 +01:00
Sofia Papagiannaki
9c7b52fd36 Alerting: Fix API specification (#42282)
* Alerting: Fix API specification
2021-11-30 20:55:54 +01:00
François Dautrême
1d4b2593ec AnnoListPanel: Fix interpolation of variables in tags (#42318) 2021-11-30 13:41:03 -05:00
malcolmholmes
4d55c6fe51 Build: publish artifacts to correct GCS buckets for main and release builds (#42537)
* Fix main build (deb downloads)

* Direct cdn assets to correct bucket
2021-11-30 16:40:24 +00:00
renovate[bot]
4f2ae190a2 Update dependency @rushstack/node-core-library to v3.43.2 (#42429)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-30 16:30:52 +00:00
renovate[bot]
e89c9b9194 Update dependency @types/angular to v1.8.3 (#42471)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-30 16:26:18 +00:00
Gábor Farkas
17e12dc784 influxdb: influxql: improve the handling of metadata query errors (#42500) 2021-11-30 17:17:40 +01:00
Uchechukwu Obasi
0cde13d51f ColorPickerPopover: apply react-aria for a11y support (#42444)
* add focus trapping to colorPickerPopover

* make popover exit using esc key

* fix colorPickerPopover to be tabbable

* fix focus escape in colorPickerPopover

* revert to focus trap fix
2021-11-30 16:26:50 +01:00
Gábor Farkas
2ce1cf22ef devenv: disable managed-alerts for datasources (#42295) 2021-11-30 15:37:03 +01:00
ying-jeanne
e13e6a7bd7 fix error code for delete folder (#42470) 2021-11-30 21:07:04 +08:00
Alex Khomenko
4e8b97b8ed CI: Temporarily disable panel edit e2e test (#42517) 2021-11-30 13:46:23 +01:00
malcolmholmes
9c0a2a19fd Package release before publishing (#42218)
* Package separately to publish

* Fix interpolation

* Windows format envvars

* More descriptive msg

* Won't publish from here

* Resolve docker issues in PR build

* Rename package docker step

* Correct npm release JSON structure
2021-11-30 10:53:07 +00:00
Joan López de la Franca Beltran
690ffdff56 Settings: Fix handling (#42497)
* Settings: Fix handling
2021-11-30 11:28:52 +01:00
Erik Sundell
bab78a9e64 CloudWatch: Add support for AWS Metric Insights (#42487)
* add support for code editor and builder

* refactor cloudwatch migration

* Add tooltip to editor field (#56)

* add tooltip

* add old tooltips

* Bug bash feedback fixes (#58)

* make ASC the default option

* update sql preview whenever sql changes

* don't allow queries without aggregation

* set default value for aggregation

* use new input field

* cleanup

* pr feedback

* prevent unnecessary rerenders

* use frame error instead of main error

* remove not used snapshot

* Use dimension filter in schema picker  (#63)

* use dimension key filter in group by and schema labels

* add dimension filter also to code editor

* add tests

* fix build error

* fix strict error

* remove debug code

* fix annotation editor (#64)

* fix annotation editor

* fix broken test

* revert annotation backend change

* PR feedback (#67)

* pr feedback

* removed dimension filter from group by

* add spacing between common fields and rest

* do not generate deep link for metric queries (#70)

* update docs (#69)

Co-authored-by: Erik Sundell <erik.sundell87@gmail.com>

* fix lint problem caused by merge conflict

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-11-30 10:53:31 +01:00
Marcus Andersson
2a50c029b2 Build: Increased the memory for the node process in the frontend build. (#42499) 2021-11-30 10:50:35 +01:00
renovate[bot]
34f6873d2d Update dependency @testing-library/user-event to v13.5.0 (#42465)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-30 10:45:21 +01:00
Ivan Anselmi
cf3105e5be MSSQL: Change regex to validate Provider connection string (#40248)
* Change the regex to allow to specified other connection attribute for MSSQL connection like ApplicationIntent property

* Docs update

* docs update

* some tests added

* formatting

* Change the regex to allow to specified other connection attribute for MSSQL connection like ApplicationIntent property

* Docs update

* docs update

* some tests added

* formatting

* docs and formatting

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2021-11-30 09:28:48 +01:00
Petros Kolyvas
ce0cf331e0 Docs: First GeoJSON update to docs for v8.3 (#42394)
* First GeoJSON update to docs for v8.3

* Minor tweaks to views

* More language tweaks to views

* Removed alpha functionality from docs

* Added layer order and removed alpha functionality notes

* Updated marker shapes doc text with additional info

* Update docs/sources/visualizations/geomap.md

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

* Update docs/sources/visualizations/geomap.md

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

* Update docs/sources/visualizations/geomap.md

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

* Update docs/sources/visualizations/geomap.md

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

* Update docs/sources/visualizations/geomap.md

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

* Update docs/sources/visualizations/geomap.md

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

* Update docs/sources/visualizations/geomap.md

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

* Update docs/sources/visualizations/geomap.md

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

* Update docs/sources/visualizations/geomap.md

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

* Update docs/sources/visualizations/geomap.md

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

* Update docs/sources/visualizations/geomap.md

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

* Finishing touches

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-11-30 01:30:20 +01:00
Yuriy Tseretyan
005c8f8894 Alerting: Disable unified alerting by default in Enterprise Grafana (#42476)
* fallback to enable false if Enterprise is true

* anyBoolean
2021-11-29 20:51:15 +01:00
Torkel Ödegaard
1f8336e5fe DataSourceVariable: Fixes issue repeating panels by data source variable (#42462) 2021-11-29 20:32:18 +01:00
Santiago
a21d1e50f1 avoid template execution errors on missing values (#41617) 2021-11-29 15:26:51 -03:00
Dimitris Sotirakis
54ea2ed766 CI: Notify channel on drone yaml changes (#42428)
* Notify on drone yaml changes

* Change secrets

* Remove test notification

* Fix typo
2021-11-29 20:08:13 +02:00
Serge Zaitsev
95831e9be0 Fix: Restore data binding in the create dashboard handler 2021-11-29 19:05:20 +01:00
Victor Marin
42d1a0f32e TooltipPlugin: Remove other panels' shared tooltip in edit panel (#42187) 2021-11-29 19:27:56 +02:00
Will Browne
9c9e79da4f only preload app plugins (#42434) 2021-11-29 18:26:04 +01:00
renovate[bot]
868428528f Update dependency @testing-library/jest-dom to v5.15.1 (#42463)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-29 18:12:47 +01:00
Gilles De Mey
db6b71a27b Alerting: fix broken datasource link (#42468) 2021-11-29 17:57:58 +01:00
Ashley Harrison
5eb35606b9 Transformations: Clarify behaviour of Date format (#42436)
* Transformations: Clarify behaviour of `Date format`

* Remove full stop from bullet point
2021-11-29 16:30:07 +00:00
Alexander Emelin
7034173ef5 Live: fix closing ws conns for push endpoints (#42447) 2021-11-29 19:22:42 +03:00
renovate[bot]
98dcac7596 Update dependency @testing-library/dom to v8.11.1 (#42461)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-29 16:22:20 +00:00
renovate[bot]
2c62ab5ceb Update dependency @storybook/addon-knobs to v6.4.0 (#42460)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-29 16:21:04 +00:00
renovate[bot]
d5b8522af2 Update dependency @cypress/webpack-preprocessor to v5.10.0 (#42382)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-29 15:58:32 +00:00
renovate[bot]
2550e69cf8 Update dependency @sentry/utils to v6.15.0 (#42433)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-29 15:44:13 +00:00
renovate[bot]
85306ebf7e Update dependency @react-aria/focus to v3.5.0 (#42400)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-29 15:43:06 +00:00
Peter Holmberg
8bf6011450 Alerting: Show full preview value in tooltip (#42445)
* use JSONCell for value

* remove console log and usememo
2021-11-29 16:39:58 +01:00
Ivana Huckova
8d6831f21f Tracing: Refactor span detail logic (#42152)
* Tracing: Update incorrect span fix based on review feedback

* Prometheus: Use this.query for health check

* Revert "Prometheus: Use this.query for health check"

This reverts commit 4c1a6a92a5.
2021-11-29 16:19:56 +01:00
Christopher Moyer
8b34df36c2 Update license restrictions documentation (#41713)
* Update docs/sources/enterprise/license/license-restrictions.md
Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-11-29 16:09:01 +01:00
Torkel Ödegaard
c3d0d37bd7 ValueMappings: Fixes issue with regex value mapping that only sets color (#42311)
* ValueMappings: Fixes issue with regex value mapping that only sets color

* Fixed test name
2021-11-29 16:03:13 +01:00
Alexander Zobnin
becfd776c3 OAuth: Forward id token to the data source (#42422)
* OAuth: Forward id token to the data source

* Add tests

* Forward id token in legacy API

* Check if id_token is string or not
2021-11-29 15:40:05 +01:00
Tania B
58978dcf96 Encryption: Add usage stats to secrets service (#42437)
* Encryption: Add usage stats to secrets service

* Sort imports
2021-11-29 16:35:15 +02:00
Will Browne
e440796cb3 only load CSV when data exists (#42441) 2021-11-29 15:21:18 +01:00
Eric Leijonmarck
d997e051c2 AccessControl: Document role display name (#40068)
* docs: role displayname

* Update docs/sources/enterprise/access-control/roles.md

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

* Update docs/sources/enterprise/access-control/roles.md

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

* refactor: update accesscontrol based on fixed roles

* update displayname text

* Update docs/sources/enterprise/access-control/roles.md

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

* updated group

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
Co-authored-by: eleijonmarck <eleijonmarck@Erics-MBP.home>
2021-11-29 15:06:10 +01:00
wengelbrecht-grafana
e1a3b6a386 Update FieldLookupTransformerEditor.tsx (#42405)
Fixed 2 small spelling mistakes
2021-11-29 14:27:34 +01:00
Peter Holmberg
8692f574c9 Alerting: Prevent folders from being deleted when they contain alerts (#42307) 2021-11-29 14:25:31 +01:00
idafurjes
a65e0be110 Replace AddEventListener with AddEventListenerCtx and Publish with PublishCtx (#42284) 2021-11-29 14:23:24 +01:00
Marcus Efraimsson
8927a3ca20 Chore: Query endpoint refactor (#41637)
Get rid of using legacydata.RequestHandler in HTTPServer, /api/tsdb/query and pkg/expr 
with the goal of deprecating /api/tsdb/query and remove it completely eventually. This is 
the first step of cleaning up the HTTP API query endpoint.

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: Alexander Emelin <frvzmb@gmail.com>
2021-11-29 14:21:54 +01:00
renovate[bot]
6e8cc426d6 Update babel monorepo (#42381)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-29 12:54:29 +01:00
Ivana Huckova
0b5d7067f9 Prometheus: Fix range variables interpolation for time ranges smaller than 1 second (#42242)
* Prometheus: Fix precision for queries with < 1s timeRange

* Update pkg/tsdb/prometheus/time_series_query.go

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

Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
2021-11-29 12:41:23 +01:00
renovate[bot]
40339fe912 Update dependency @monaco-editor/react to v4.3.1 (#42388)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-29 12:35:59 +01:00
idafurjes
e20766146a Upgrade build-container to version 1.4.8 (#42373)
* Upgrade build-container to version 1.4.8

* disable lint of mixin

Co-authored-by: Ying WANG <ying.wang@grafana.com>
2021-11-29 12:03:16 +01:00
Gábor Farkas
8508ad79b2 Dashboard: Fix queries for panels with non-integer widths (#42420)
* dashboard: fix non-integer panel widths

* switched to better supported function
2021-11-29 11:49:53 +01:00
Carl Bergquist
3285742196 grafana-mixin: change owner to the hosted-grafana team (#42418)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
2021-11-29 11:28:42 +01:00
Peter Holmberg
cb7e047c68 Alerting: Fix refresh on legacy Alert List panel (#42322) 2021-11-29 10:22:47 +01:00
Serge Zaitsev
d9cdcb550e Chore: Refactor api handlers to use web.Bind (#42199)
* Chore: Refactor api handlers to use web.Bind

* fix comments

* fix comment

* trying to fix most of the tests and force routing.Wrap type check

* fix library panels tests

* fix frontend logging tests

* allow passing nil as a response to skip writing

* return nil instead of the response

* rewrite login handler function types

* remove handlerFuncCtx

* make linter happy

* remove old bindings from the libraryelements

* restore comments
2021-11-29 10:18:01 +01:00
Andres Martinez Gotor
9cbc872f22 CloudMonitoring: Avoid to escape regexps in filters (#41961) 2021-11-29 10:04:36 +01:00
Gábor Farkas
adbc5bde72 explore: fix url update inconsistency (#42288) 2021-11-29 10:00:41 +01:00
Nathan Marrs
f454a5ce60 Add optional check to fix text dimension runtime error (#42402) 2021-11-28 17:21:22 -08:00
Artur Wierzbicki
1f237d0193 #42174: fix: fill 'field.name' in the auto-added Time field (#42301) 2021-11-26 23:52:01 +04:00
lean.dev
1ee34fb90a Fixing documentation for query caching plugin: steps duplicated (#42392) 2021-11-26 19:15:45 +01:00
gotjosh
dd5a2e5128 Alerting: Clear alerting rule evaluation errors after intermittent failures (#42386)
* Alerting: Clear alerting rule evaluation errors after intermittent failures

When an alert transitioned in a way that `alerting -> error -> (alerting|nodata)`, the error provided by the `error` state would never be cleared thus the API and UI would show the health as an error.
2021-11-26 17:58:19 +00:00
idafurjes
725dbf8d95 Chore: Add context to datasource service (#42294)
* Add context to datasource service

* Adjust wire for ShouldBeReported method

* Replace inTransactionCtx
2021-11-26 18:10:36 +01:00
Ashley Harrison
6aa05c5d05 Dependencies: Fix broken renovate config (#42379) 2021-11-26 17:36:23 +01:00
Ashley Harrison
84744aa04f Dependencies: enable minor version updates + turn on batched monthly patch updates (i think) (#42376) 2021-11-26 15:59:01 +00:00
Torkel Ödegaard
9f4aa472cf Select: Fix input cursor position so that it is at the start for single value selects (#41693)
* Select: Fix input cursor position so that it is at the start for single value selects

* Fixing e2e tests

* Fixes cursor issue

* Fixing e2e tests

* e2e fix

* Select: ensure input always overlays singleValue, update pa11y config

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-11-26 15:38:48 +00:00
Josh Hunt
130386f84b Chore: Fix errant text appearing in AnnotationSettingsList table (#42360) 2021-11-26 13:25:08 +00:00
Torkel Ödegaard
820aa3ac59 Statetimeline/TimeSeries/BarChart: Limit y label width to 40% of visualiation width (#42350) 2021-11-26 14:15:57 +01:00
Andrej Ocenas
802ffa3f03 CloudWatch Logs: Add selected region to autocomplete requests (#42194)
* Add region to get fields query

* Fix and add tests
2021-11-26 13:33:34 +01:00
Josh Hunt
879cdcd0c7 Chore: Refactor isSharedDashboardQuery to narrow type natrually (#42312) 2021-11-26 10:53:08 +00:00
Marcus Andersson
170da29173 Docker: updating and syncing change log for docker hub (#42353)
* Syncing and updating README with docker hub.

* Update packaging/docker/README.md

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

* Update packaging/docker/README.md

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

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
2021-11-26 11:49:35 +01:00
Andres Martinez Gotor
c15f444296 AzureMonitor: Add Microsoft.Insights/components metric namespace to other clouds (#42349) 2021-11-26 11:48:24 +01:00
Grot (@grafanabot)
2b6c03714c ReleaseNotes: Updated changelog and release notes for 8.3.0-beta2 (#42309)
* ReleaseNotes: Updated changelog and release notes for 8.3.0-beta2

* chore: update index file for release notes

* chore: Add link for 8.2.5

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

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2021-11-26 11:44:42 +01:00
Torkel Ödegaard
5c4fd91cd3 BarGauge: Limit title width when name is really long (#42346) 2021-11-26 11:31:28 +01:00
Josh Hunt
62e55f4724 Chore: Refactor QueryRunner to remove type assertions (#42329) 2021-11-26 10:28:13 +00:00
Levente Balogh
d862d210e4 chore(latest.json): update the testing version (#42352) 2021-11-26 11:23:13 +01:00
Ashley Harrison
0516ad822b PanelEdit: Query now correctly initializes data source (#42291) 2021-11-26 09:37:19 +00:00
Torkel Ödegaard
1e1403fad1 DashboardExport: Correctly templetatize datasource prop now that is's a ref obj (#42305) 2021-11-26 10:06:41 +01:00
Hugo Häggmark
b164ce0c9b E2E: fix verify release script after split (#42341) 2021-11-26 08:43:00 +01:00
idafurjes
d2c8b24d72 Upgrade go to version 1.17.2 in ci-build (#42323) 2021-11-25 18:03:42 +01:00
idafurjes
ac6867c3bb Chore: Add context to authinfo (#42096)
* Add context to authinfo

* Replace Dispatch with DispatchCtx
2021-11-25 14:22:40 +01:00
nikki-kiga
d0c9564e1a Bug: Add checks to Geomap StyleEditor (#42266) 2021-11-25 11:57:21 +01:00
George Robinson
1b26d4d88e Alerting: Create DatasourceError alert if evaluation returns error (#41869)
* Alerting: Create DatasourceError alert if evaluation returns error

* Alerting: Add docs for DatasourceError alert

* Alerting: Fix DatasourceError alert does not have dashboard_uid label

* Alerting: Add break when datasource_uid found

* Alerting: Update TestProcessEvalResults
2021-11-25 11:46:47 +01:00
George Robinson
1e5b0e64ac Alerting: Add comments to ScheduleService interface (#42228) 2021-11-25 10:12:04 +00:00
Torkel Ödegaard
781067ee45 VisualizationSuggestions: Support image & text instead of real previews. Adds suggestions for all non data panels when there are no data (#42074)
* Make suggestion cards support img & text mode instead of only preview

* Generic solution for non data panels

* minor review tweaks
2021-11-25 10:52:01 +01:00
Ashley Harrison
a897154017 pally-ci: Ignore version update element (#42249)
* pa11y-ci: Ignore update version element

* Add hideElements to pa11yci-pr.conf.js
2021-11-25 09:51:21 +00:00
George Robinson
2863af3bc3 Alerting: Add docs for DatasourceNoData alert (#42265) 2021-11-25 09:41:55 +00:00
Ashley Harrison
4318448539 News: Now reloads the feed when refreshing the dashboard or changing the time range (#42217) 2021-11-25 09:32:28 +00:00
Sriram
70bc0b86e2 TestDataDB: Raw frame input (#42209)
* test datasource raw-frame scenario added

* typo fix in doc
2021-11-25 09:14:34 +00:00
Derik Evangelista
86a22a914d Table: Add space between values for the DefaultCell (#42246)
fixes #42024
2021-11-25 10:09:09 +01:00
Torkel Ödegaard
75fb1f8be6 Candlestick: Fixes typescript issue in tests (#42274) 2021-11-25 10:07:25 +01:00
matt abrams
e447d5a53e fix small typo in UI display language (#42264)
Co-authored-by: Clarity-89 <homes89@ukr.net>
2021-11-25 10:46:17 +02:00
Torkel Ödegaard
12d2b9e997 E2E: Skip running import dashboard test (#42270) 2021-11-25 09:43:24 +01:00
Torkel Ödegaard
070344943c PanelEditor: Present actionable suggestions when panel cannot visualize current data (#42083)
* PanelDataError: Show actions when current panel cannot visualize data

* Fixed so that suggestions tab is opened from action

* Cleanup

* Fixed tests

* Fix tests

* Fixing tests

* Fixed ts issues
2021-11-25 09:41:03 +01:00
nikki-kiga
6a86758f3b NumberInput: Add validation for min max on input (#42254)
* add scalar and number input validation

* add check and warning message
2021-11-24 16:21:26 -08:00
nikki-kiga
207711ead4 Geomap: Add gdev multi layers dashboard (#42252)
* add multi layers panel
2021-11-24 15:20:33 -08:00
Mitch Seaman
5043448769 [Docs] Document FGAC user role assignment (#41797) 2021-11-24 22:50:48 +01:00
Vardan Torosyan
18b5e40d5a Docs: Update the coverage of fine-grained access control (#41398)
* Docs: Update the coverage of fine-grained access control

* Apply suggestions from code review

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

* Apply suggestions from code review

Co-authored-by: Mitch Seaman <mjseaman@users.noreply.github.com>

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
Co-authored-by: Mitch Seaman <mjseaman@users.noreply.github.com>
2021-11-24 21:32:07 +01:00
Ursula Kallio
59b0f534c5 Add concept about Grafana and Grafana Enterprise database encryption (#41853)
* Add concept about Grafana database encryption.
* Add database encryption information for Enterprise.
2021-11-24 21:09:20 +01:00
Isabella Siu
dc145a2a25 AzureMonitor: resourcePicker should show resource in the correct subs… (#42170) 2021-11-24 15:06:14 -05:00
Armand Grillet
6523486122 Alerting: Make Unified Alerting enabled by default for those who do not use legacy alerting (#42200)
* update AlertingEnabled and UnifiedAlertingSettings.Enabled to be pointers
* add a pseudo migration to fix the AlertingEnabled and UnifiedAlertingSettings.Enabled if the latter is not defined
* update the default configuration file to make default value for both 'enabled' flags be undefined

Misc
* update Migrator to expose DB engine. This is needed for a ualert migration to access the database while the list of migrations is created.
* add more verbose failure when migrations do not match

Co-authored-by: gotjosh <josue@grafana.com>
Co-authored-by: Yuriy Tseretyan <yuriy.tseretyan@grafana.com>
Co-authored-by: gillesdemey <gilles.de.mey@gmail.com>
2021-11-24 14:56:07 -05:00
Ursula Kallio
1c261aea8e Add Azure Key Vault documentation. (#42257) 2021-11-24 20:48:15 +01:00
Leon Sorokin
24053d83d3 Candlestick: fix auto field mapping & includeAllFields (#42020) 2021-11-24 13:02:53 -06:00
Ursula Kallio
782d5a27fd Document KMS integration part 1 (#41864)
Co-authored-by: Tania B. <yalyna.ts@gmail.com>
2021-11-24 19:10:49 +01:00
Peter Holmberg
a5436b4435 Alerting: Move Alert Groups tab to end of tabs (#42241)
* move alertgroups tab to end of tabs

* more reorder
2021-11-24 18:28:19 +01:00
Sarah Zinger
fc8d93e231 Azure Monitor: Fastpass Fixes -- Add trap focus for modals in grafana/ui and other small a11y fixes for Azure Monitor. (#41449) 2021-11-24 12:16:14 -05:00
Gábor Farkas
24d4c8a9d1 Loki: alerting: handle variables like __interval and __range (#42126) 2021-11-24 16:56:53 +01:00
renovate[bot]
ccd162f806 Update dependency mocha to v9 (#41416)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-24 15:04:58 +00:00
Piotr Jamróz
4e35d35e67 Logs: Cancel log volume query when the main query is canceled (#41856)
* Cancel log volume query when the main query is canceled

* Test keeping complete log volume data when main query is canceled
2021-11-24 15:34:19 +01:00
Alexander Zobnin
177a0d69d1 Disable only built-in role selector for external users (#42197) 2021-11-24 17:25:28 +03:00
Torkel Ödegaard
0f6ae272e9 E2E: Fix running any suite locally (#42210)
* e2e: Fix running any suite locally

* Fixed issue with testFiles filter when specifying suite name

* unrelated

* fixed import paths to shared

* Moving dashboards to root
2021-11-24 15:16:51 +01:00
Giordano Ricci
2346d5a3f3 Elasticsearch: omit query_string filter when no lucene query is provided (#42060)
* Elasticsearch: omit query_string filter when no query is provided

* Fix tests

* optional lucene query

* improve test and types
2021-11-24 14:09:10 +00:00
Piotr Jamróz
8725d3d7e0 Graphite: Limit number of suggestions displayed in Graphite drop downs (#42056)
* Limit number of suggestions displayed in Graphite dropdowns

* Use limit API to reduce number of loaded tags for autocomplete

* Make tests more explicit
2021-11-24 15:08:03 +01:00
Jack Westbrook
b8c5ac63b1 Grafana UI: Prevent mandatory css prop in bundled types (#42216) 2021-11-24 14:35:06 +01:00
Dominik Prokop
2dc30dff63 grafana/ui: Expose ButtonProps type (#42221) 2021-11-24 14:25:59 +01:00
Hugo Häggmark
67a1052334 Dashboard: Fix cache timeout persistence (#42204)
* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* WIP: Mob session work 🚧🔱

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
Co-authored-by: joshhunt <josh@trtr.co>
Co-authored-by: kay delaney <kay@grafana.com>
2021-11-24 14:24:33 +01:00
Piotr Jamróz
b3e417f768 Graphite: Run onChange/onRunQuery after reducer action finishes (#42136) 2021-11-24 14:08:00 +01:00
Timur Olzhabayev
09c849eb08 Update SECURITY.md (#42149) 2021-11-24 14:06:18 +01:00
Tania B
4014891971 Encryption: Cleanup and add logging (#42084)
* Encryption: Add more logs

* Add logging and checks

* Removed unused methods from secrets service

* Refactor and update tests

* Address review feedback
2021-11-24 15:01:44 +02:00
Gábor Farkas
06e474dfd5 Explore: query history: fix error when removing last item (#42179)
* explore: rich-history: fix data inconsistency

* also handle starred-queries tab
2021-11-24 13:52:44 +01:00
Derik Evangelista
3110a9c238 Table: add space between values on JSONViewCell (#42156)
fixes #42024
2021-11-24 11:45:05 +00:00
Ivana Huckova
1b4f6b19cb Prometheus: Fix running of health check query based on access mode (#42189)
* Prometheus: Use this.query for health check

* Update alertMessage in e2e tests
2021-11-24 12:43:39 +01:00
Piotr Jamróz
10f844e3ad Loki: Rename the hint header (#42205)
X-Query-Tag -> X-Query-Tags (https://github.com/grafana/grafana/pull/42108#discussion_r755776672)
2021-11-24 12:41:52 +01:00
Jeremy Price
a145ec37bb Handle request service account when not enabled (#42122)
* Handle request service account when not enabled
2021-11-24 11:56:55 +01:00
Gábor Farkas
fe84454bb0 loki: alerting: simplified config (#42147)
* loki: alerting: simplified config

* adjusted config handling
2021-11-24 11:52:33 +01:00
n2N8Z
eaf46600c4 CloudWatch: Add missing AWS/Events metrics. (#42164)
* Add missing InvocationsFailedToBeSentToDlq metric.

* Add missing InvocationsSentToDlq metric.
2021-11-24 11:35:18 +01:00
Hugo Häggmark
df22828d7d TextPanel: Fix suggestions for existing panels (#42195)
Closes #42118

Co-authored-by: kay delaney <kay@grafana.com>
Co-authored-by: Josh Hunt <josh@trtr.co>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@gmail.com>
2021-11-24 11:20:36 +01:00
Dimitris Sotirakis
db122e9b2c CI: Run e2e tests in parallel using multiple suites (#41748)
* Split suite1 to multiple e2e test suites

* Update drone yaml

* Add missing arg

* Extract cypress install step

* Change image on e2e tests step

* Sync with main

* Add cypress cache volume

* Try with grafana/ci-e2e:12.19.0-1 image

* Update grabpl version to 2.7.2

* Revert a11y failure back to 'always'
2021-11-24 11:20:11 +01:00
Leonard Gram
d624230b5d Packaging: removes an unused dependency (#42071)
* Packaging: removes an unused dependency

libfontconfig1 was used by phantomjs but we aren't using phantomjs
anymore

* Packaging: removes further libfontconfig1 references
2021-11-24 10:45:29 +01:00
Gabriel MABILLE
a93e649af5 AccessControl: Document orgs roles and orgs endpoints (#42171)
* AccessControl: Document `orgs` roles and `orgs` endpoints

* Use maintainer instead of manager
2021-11-24 10:08:55 +01:00
Gabriel MABILLE
eea0e6a6c0 AccessControl: Renamed orgs roles, removed fixed:orgs:reader introduced in beta1 (#42049)
* AccessControl: Rework Orgs roles

* Increase version for name migration

* Update pkg/api/roles.go

Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>

* Use maintainer instead of manager

Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
2021-11-24 10:08:42 +01:00
Alexander Emelin
7b95c86821 up plugin sdk to v0.118.0 (#42167) 2021-11-24 12:03:19 +03:00
Eric Leijonmarck
9c11040c3e Serviceaccounts: Filtering service accounts from user queries (#41410)
* Add extra fields to OSS types to support enterprise

* WIP service accounts

* Update public/app/features/api-keys/ApiKeysForm.tsx

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

* Create a service account at the same time as the API key

* Use service account credentials when accessing API with APIkey

* Throw better error

* Use Boolean for "create service account button"

* Add GetRole to service, merge RoleDTO and Role structs

This patch merges the identical OSS and Enterprise data structures, which improves the code for two reasons:

1.  Makes switching between OSS and Enterprise easier
2.  Reduces the chance of incompatibilities developing between the same functions in OSS and Enterprise

* Start work cloning permissions onto service account

* If API key is not linked to a service account, continue login as usual

* Fallback to old auth if no service account linked to key

* Commented

* Add CloneUserToServiceAccount

* Update mock.go

* Put graphical bits behind a feature toggle

* Start adding LinkAPIKeyToServiceAccount

* Update pkg/models/user.go

Co-authored-by: Eric Leijonmarck <eric.leijonmarck@gmail.com>

* Update pkg/api/apikey.go

Co-authored-by: Eric Leijonmarck <eric.leijonmarck@gmail.com>

* Update pkg/api/apikey.go

Co-authored-by: Eric Leijonmarck <eric.leijonmarck@gmail.com>

* Finish LinkAPIKeyToServiceAccount

* Update comment

* Handle api key link error

* Update pkg/services/sqlstore/apikey.go

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

* Feature toggle

* Update pkg/services/accesscontrol/accesscontrol.go

Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>

* Not needed (yet)

* Better error messages for OSS accesscontrol

* Set an invalid user id as default

* ServiceAccountId should be string

* Re-arrange field names

* ServiceAccountId is integer

* Update ossaccesscontrol.go

* Linter

* Remove fronend edits

* Remove console log

* Update ApiKeysForm.tsx

* feat: add serviceaccount deletion

* feat: make sure we do not accidently delete serviceaccount

* feat: ServiceAccount Type

* refactor: userDeletions function

* refactor: serviceaccount deletions\

* refactor: error name and removed attribute for userDeletecommand

* refactor:: remove serviceaccount type for now

* WIP

* add mocked function

* Remove unnecessary db query, move to right place

* Update pkg/services/accesscontrol/mock/mock.go

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>

* Update pkg/services/accesscontrol/mock/mock.go

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>

* Update pkg/services/accesscontrol/mock/mock.go

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>

* Better error messages

* Better and correcter error messages

* add mocked function

* refactor: move function call, add error msg

* add IsServiceAccount and fix table

* add service accounts package

* WIP

* WIP

* working serviceaccountsapi registration

* WIP tests

* test

* test working

* test running for service

* moved the error out of the models package

* fixed own review

* linting errors

* Update pkg/services/serviceaccounts/database/database.go

Co-authored-by: Jeremy Price <Jeremy.price@grafana.com>

* tests running for api

* WIP

* WIP

* removed unused secrets background svc

* removed background svc for serviceaccount infavor or wire.go

* serviceaccounts manager tests

* wip

* Filtering service accounts from the user queries in frontend

* clean up

* Update pkg/services/sqlstore/org_test.go

* methods on same type should have same receiver

* _ unused variable and comment

* add additional join for results query

* remove unused code

* remove error fmt

* refactor: change to only have false

* no new variable to the left hand side

* refactor: create serviceaccount cmd

* dialect fix

Co-authored-by: Jeremy Price <jeremy.price@grafana.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
2021-11-23 23:06:40 +00:00
Tania B
3af36b7e23 Encryption: Add settings to ini files (#42057)
* Encryption: Add settings to ini files

* Rename a setting
2021-11-23 20:29:35 +02:00
gotjosh
a5b29aed29 Alerting: Document Alertmanager/Prometheus versions we support (#42160)
* Alerting: Document Prometheus/Alertmanagers versions we support

* Illustrate with an example
2021-11-23 18:41:48 +01:00
Agnès Toulet
934e4ad3af Docs: update auditing documentation with new logs (#41722)
* Add detailed info on audit log contents

* Apply suggestions from code review

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

* Docs: update auditing documentation with new logs

* add back remove datasource permission

* improve formatting

* fix incorrect action

* clean formatting

* formatting

Co-authored-by: Jesse Weaver <jesse.weaver@grafana.com>
Co-authored-by: Jesse Weaver <pianohacker@gmail.com>
2021-11-23 18:13:00 +01:00
Ashley Harrison
993025c478 Update .pa11yci-pr.conf.js (#42148) 2021-11-23 16:43:37 +00:00
nikki-kiga
92e1883845 Geomap: Add rotation option for markers layer (#41992)
* add rotation option for markers layer

* add ScalerDimensionEditor
2021-11-23 08:23:43 -08:00
Will Browne
0921037f32 Plugins: Move logs from globals to fields (#42141)
* move logs from globals to fields

* fix test
2021-11-23 17:09:52 +01:00
renovate[bot]
0ab4afa2b7 Update sentry-javascript monorepo to v6 (#41991)
* Update sentry-javascript monorepo to v6

* Pass fetch implementation to FetchTransport and stub in unit tests

* kick drone

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-11-23 15:59:32 +00:00
Will Browne
96b1776856 Chore: Fix pass context for SetAlertStateCommand (#42135)
* fix pass ctx for SetAlertStateCommand

* fix integration test
2021-11-23 16:40:09 +01:00
Jean-Philippe Quéméner
cec2d965ec Alerting: validate mute timings in the alertmanager configuration (#42125)
* Alerting: check for uniqueness of mutetime names

* add some testing

* add name validation

* add root route validation

* add tests for validation

* add check for root route mute_time_intervals

* add duplicate test

* remove useless yaml test

* refactor table test
2021-11-23 16:25:20 +01:00
Gilles De Mey
3e16abc939 Timeseries Panel: render threshold at either top or bottom of graph when it is out… (#41649) 2021-11-23 16:18:07 +01:00
Ashley Harrison
20e1457a78 Select: use findBy and make these tests async to avoid act() errors (#42134) 2021-11-23 14:53:10 +00:00
Dominik Prokop
d2d38c978f grafana/ui: Export types and utils required by grafana/experimental (#42133)
Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2021-11-23 15:41:51 +01:00
Jack Westbrook
694600ed04 Catalog: Provide default tab fallback in Plugin Details page (#41979)
* feat(catalog): introduce defaultTab to usePluginDetailsTabs hook

* feat(catalog): use defaultTab as fallback tab for PluginDetails

* chore(catalog): remove hardcoded page query param in list items

* refactor(catalog): prefer let over react ref when setting default tab in PluginDetails

* refactor(catalog): pass pageId to plugin details body rather than duplicate logic

* test(catalog): remove query param from List item test hrefs

* test(catalog): introduce a test for default app config page for installed app plugins
2021-11-23 15:38:08 +01:00
Ivana Huckova
aefb2659ec Tracing: Show start time of trace with milliseconds precision (#42132)
* Tracing header: Add setting to show start time with ms

* Add test

* Update test
2021-11-23 15:28:18 +01:00
Gilles De Mey
ca7a62682e fix: use better type assertion for initialAsyncRequestState (#42087) 2021-11-23 15:14:59 +01:00
Stephanie Closson
8b95746f63 Jaeger: Make tags templateable (#42005)
* make tags templateable

* cleanup files I didn't want to modify
2021-11-23 10:02:07 -04:00
kay delaney
e3ef82203e CodeEditor: Prevent suggestions from being clipped (#42120)
Closes #40792

Co-authored-by: Josh Hunt <josh@trtr.co>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@gmail.com>
2021-11-23 12:18:17 +00:00
Victor Marin
410044fa05 annotations editor menu should not appear if annotations are disabled (#42068) 2021-11-23 14:16:11 +02:00
renovate[bot]
035e676cad Update dependency react-select to v5 (#41604)
* Update dependency react-select to v5

* Remove @types/react-select and update types accordingly

* Fix all unit tests

* Add @ts-expect-error to individual errors, remove prefix as it doesn't seem to exist?

* Another minor typescript fix

* Apply fixes from torkel's PR

* Fix last typescript error

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-11-23 12:11:26 +00:00
Marcus Efraimsson
6b79393ccc Chore: Split nightly docker image scan into separate pipelines (#42097)
Split the nightly Docker scan job into separate pipelines, one for each 
image, to easier understand which images fails/includes high/critical 
vulnerabilities.
2021-11-23 11:43:00 +01:00
Jack Westbrook
8b3725b9f2 Chore: Bump versions to 8.4.0-pre (#42116) 2021-11-23 11:23:02 +01:00
Zoltán Bedi
271a941a29 Update latest.json (#42115) 2021-11-23 11:10:57 +01:00
Piotr Jamróz
4db4dc2ce9 Loki: Pass log volume hint as a request header (#42108) 2021-11-23 11:08:37 +01:00
Grot (@grafanabot)
f186575693 ReleaseNotes: Updated changelog and release notes for 8.3.0-beta1 (#42044) 2021-11-23 11:05:27 +01:00
Dimitris Sotirakis
e3bb53b64d CI: Remove Linux grabpl step dependency from Windows builds (#42069)
* Remove Linux grabpl download step from Windows oss builds

* Remove Linux grabpl download step from Windows enterprise builds
2021-11-23 09:57:16 +01:00
Ivana Huckova
d7e4f303c4 Logs: Fix requesting of older logs when flipped order (#41966)
* Logs: Fix requesting of older logs wehn flipped order

* Fix index change when requesting logs
2021-11-23 09:56:06 +01:00
achatterjee-grafana
c4b21f7b51 Removed packahes_api relrefs. (#42017) 2021-11-22 16:58:51 -05:00
renovate[bot]
68ce617f07 Ignore react-icons bump for now (#41537)
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-11-22 17:32:31 +00:00
idafurjes
5ac1dc1008 Bump grabpl version to 2.7.1 (#42089) 2021-11-22 17:37:51 +01:00
Alexander Zobnin
da2c99a2e1 Access control: use delegatable flag to check if role can be granted (#42070)
* Access control: use delegatable flag to check if role can be granted or not

* Fix naming
2021-11-22 17:44:03 +03:00
Giordano Ricci
e7e5c54148 Elasticsearch: Display custom values in version select (#42051)
* Elasticsearch: Display custom values in version select

* Update public/app/plugins/datasource/elasticsearch/configuration/ElasticDetails.tsx

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

Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
2021-11-22 15:14:11 +01:00
Petros Kolyvas
3340d7ad44 Docs: Whats new 8.3 - Preliminary (#41930)
* Initial placeholder docs for candlestick panel

* Initial What's new for 8.3

* Delete candlestick.md

Removing this file as it's part of another branch/pr

* Oops forgot to hit save in VSCODE. Rookie mistake
2021-11-22 14:46:57 +01:00
Alexander Zobnin
6f8cfc6def Role picker: extend width to prevent menu being out of page (#42047) 2021-11-22 16:30:24 +03:00
Gábor Farkas
037fd9cc8c Loki: alerting: adjust step-calculation to be the same as in frontend (#42033)
* loki: alerting: adjust step-calculation to be the same as in frontend

* loki: simplified test

* lint fix
2021-11-22 14:28:51 +01:00
renovate[bot]
d11ae6dc3f Update dependency @types/react-dom to v17 (#42045)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-22 13:24:40 +00:00
renovate[bot]
2f0f45e7aa Update typescript-eslint monorepo to v5 (#42046)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-22 13:57:19 +01:00
Ivana Huckova
d4ddd2373b Tracing: Fix incorrect indentations due to reoccurring spanIDs (#41919)
* Create unique keys for trace rows

* Add tests

* Fix tests

* Update public/app/features/explore/TraceView/TraceView.test.tsx

* Trigger Build
2021-11-22 13:18:50 +01:00
kay delaney
47a7477cff A11y/DashList: Make star button tab-navigable (#41479) 2021-11-22 13:03:50 +01:00
George Robinson
9122e7f647 Alerting: Check for nil model.Settings and models.SecureSettings (#37738) 2021-11-22 11:56:18 +00:00
Dimitris Sotirakis
4b2c90b834 Add deployment_tools_config.json to git and eslint ignore (#42053)
(cherry picked from commit 15a603dae0)
2021-11-22 12:36:21 +01:00
Ivana Huckova
9efd85a241 Tracing: Make query editors available in dashboard for Tempo and Zipkin (#41974)
* Tempo: Set query editor

* Zipkin: Set query editor

* Set metrics to true so the data source as shown in dashboard data source list
2021-11-22 12:07:38 +01:00
Ashley Harrison
b6b75e919b Select: Select menus now properly scroll during keyboard navigation (#41917)
* Select: Select menus now properly scroll when navigating with the keyboard

* Remove this unnecessary children declaration in the interface

* Guard this with an if statement to avoid the nullish coalescing

* Don't need the optional chaining if we're guarding with an if
2021-11-22 10:57:44 +00:00
renovate[bot]
f97b7858b4 Update dependency @types/react to v17 (#42035)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-22 11:27:33 +01:00
renovate[bot]
abcf4e55b7 Update dependency @testing-library/react-hooks to v7 (#42000)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-22 10:25:42 +00:00
renovate[bot]
b143c3883f Update dependency @testing-library/react to v12 (#41997)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-22 09:45:37 +00:00
Torkel Ödegaard
942920cb36 PanelEdit: Always show delete icon button for overrides, even when collapsed (#42029) 2021-11-22 09:55:07 +01:00
Peter Holmberg
97978a7c02 Alerting: Add value to notifier template (#41951)
* add value to email template

* add value to default template

* update test string

* test: fix ngalert test suite

* test: run CI

Co-authored-by: gillesdemey <gilles.de.mey@gmail.com>
2021-11-22 08:45:44 +01:00
Alexander Zobnin
6c3c82d132 Access control: Fix permission required to invite users (prevent access error) (#41943)
* Fix permission required to invite users (prevent access error)

* Use hasAccess method with fallback

* Fix tests
2021-11-22 09:40:52 +03:00
Hugo Häggmark
44d7d6546f Variables: Make renamed or missing variable section expandable (#41964)
* Variables: Make renamed or missing variable section expandable

* Chore: feedback after PR comments
2021-11-22 07:38:49 +01:00
Jean-Philippe Quéméner
f3b023ffa6 Fix: add the babel config to the dockerfiles (#42021) 2021-11-20 15:40:13 +01:00
Ryan McKinley
403222e14e Candlestick: exclude unmapped fields by default (#42011)
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2021-11-19 18:39:21 -06:00
sam boyer
8a06e89d2f Update cuetsy to latest (#42015)
This update adds fixes and workarounds related to enum generation.
2021-11-19 23:39:21 +01:00
Todd Treece
cc471f2d58 Recorded Queries: Split extension reducers init and extension init (#41850) 2021-11-19 16:24:02 -05:00
Dimitris Sotirakis
bec3cc4634 Make integration tests depend on initialize for enterprise-release-* branches (#42004) 2021-11-19 21:50:34 +01:00
Leon Sorokin
07a440fd3a TimeSeries: fix fillBelowTo wrongly affecting fills of unrelated series (#41998) 2021-11-19 14:42:04 -06:00
achatterjee-grafana
7f3562886e Corrected the path. (#42006) 2021-11-19 14:42:53 -05:00
achatterjee-grafana
e0db19e741 updated image name (fixed typo), removed redundant image and resized images. (#41999) 2021-11-19 13:18:32 -05:00
Dave Henderson
fc7277920c Dockerfile: Bump Go and Alpine versions (#41922)
* Dockerifle: Bump Go and Alpine versions

Signed-off-by: Dave Henderson <dave.henderson@grafana.com>

* Updating .drone.yml with 'make drone'

Signed-off-by: Dave Henderson <dave.henderson@grafana.com>
2021-11-19 18:59:24 +01:00
Ryan McKinley
f661e20dd7 Testdata: add random labeled stream (#41932) 2021-11-19 09:54:05 -08:00
Ryan McKinley
82cf49143d ExtractFields: properly detect value types from extracted fields (#41995) 2021-11-19 09:50:30 -08:00
renovate[bot]
cf995ea420 Remove tether dependency since it's not used anymore (#41632)
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-11-19 17:47:06 +00:00
renovate[bot]
4f884a31de Update dependency cypress to v9 (#41588)
* Update dependency cypress to v9

* Update e2e test to work with Cypress 9

* kick drone

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-11-19 17:19:53 +00:00
Gábor Farkas
2fbc6b1d2f loki: simplify interval calculation (#41857) 2021-11-19 17:20:32 +01:00
renovate[bot]
ce4490cbba can't bump execa until esm modules (#41967)
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-11-19 15:56:59 +00:00
Jean-Philippe Quéméner
b9cdad3814 Alerting: support mute timings configuration through the api for the embedded alertmanager (#41533)
* Alerting: accept mute_timing_intervals through the api for the embedded alertmanager

* add workaround for mutetimeinterval

* add mute timings to routes

* revert changes

* Update pkg/services/ngalert/api/api_alertmanager.go

* Update pkg/services/ngalert/api/api_alertmanager.go

* Update pkg/services/ngalert/api/api_alertmanager.go

* update prometheus/alertmanager dependency

* add some var docs
2021-11-19 16:50:55 +01:00
Ikko Ashimine
e7ec219291 Chore: fix typo in annotations.ts (#41978)
propery -> property
2021-11-19 15:12:15 +00:00
Gábor Farkas
91f9284e9d docs: improved deprecation-info for elasticsearch and influxdb (#41981) 2021-11-19 15:58:21 +01:00
Ursula Kallio
ed0f3100b3 Add concept about envelope encryption (#41860)
* Add concept about envelope-encryption.

* remove comma

* separate warning note into steps

* remove steps from warning note

* Fix lint

Co-authored-by: Mitch Seaman <mjseaman@users.noreply.github.com>
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2021-11-19 07:51:16 -07:00
Gábor Farkas
f5641c0293 Docs: add easier to find deprecation notices to certain data sources and to the changelog (#41938)
* docs: add easier to find deprecation-info

* better indentation in the docs

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

* better indentation in the docs

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

* prettier fixes

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2021-11-19 15:23:07 +01:00
idafurjes
87f148aa27 Chore: Add context to playlist (#41337)
* Add context to playlist

* Add AddEventListenerCtx and more context

* Update pkg/services/sqlstore/playlist.go

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

* Update pkg/services/sqlstore/playlist.go

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

* Update pkg/services/sqlstore/playlist.go

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

* Fix lint

* Rename listener help function

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2021-11-19 14:32:14 +01:00
Dominik Prokop
67f43cd7ab ThresholdControls: Use correct scale key when calculating handle position (#41942) 2021-11-19 14:03:27 +01:00
idafurjes
972764cf8f Add context for Publish and AddEventListener (#41665)
* Add context for Publish and AddEventListener

* Add test and listenersWithCtx

* Refactor listener logic

* Refactor publish logic for all combination of listeners and publish with and without ctx
2021-11-19 13:56:42 +01:00
Levente Balogh
35c2c95fdc Plugins: remove deprecated code (components) (#41686)
* refactor(plugins): use routes specific to the new plugins/admin

* refactor(plugins): remove unused pages (PluginList, PluginItem)

* refactor(plugins): remove PluginPage

* refactor(plugins): remove UpdatePluginModal

* refactor(plugins): move AppConfigWrapper under plugins/admin

* refactor(plugins): move PluginDashboards under plugins/admin

* refactor(plugins): rename the "specs" folder to "tests"

* refactor(plugins): move test files to /tests folder

* refactor(plugins): move AppRootPage into a /components folder

* refactor(plugins): move PluginsErrorsInfo into a /plugins folder

* refactor(plugins): move PluginSettingsCache into a /components folder

* refactor(plugins): move PluginStateInfo into a /plugins folder

* refactor(plugins): move AppRootPage.test.tsx next to the tested component

* refactor(plugins): remove old snapshot tests

* fix(plugins): fix tests

* refactor(plugins/admin): move & rename PluginSettingsCache

* fix(plugins): fix a few rebase issues

* Plugins: remove deprecated code (state handling) (#41739)

* refactor(plugins): use the plugins/admin reducer only

* refactor(plugins): remove tests for the deprecated plugins reducer

* refactor(plugins): remove tests for the deprecated plugins selectors

* refactor(plugins/state): add a short comment note to selectors

* feat(plugins/state): add a selector for selecting errors

* feat(plugins/state): add a hook for getting plugin errors

* refactor(plugins): udpate the PluginsErrorsInfo component to use the new state selectors

* refactor(plugins/state): remove the old (deprecated) selectors

* refactor(plugins/state): use the new actions under /admin

* refactor(plugins/state): remove old (deprecated) reducers and actions

* refactor(plugins): update component definition

* fix(plugins): remove unnecessary {children} prop for PluginsErrorsInfo

* Plugins: show / hide install controls based on the `pluginAdminEnabled` flag (#41749)

* docs(plugins): update documentation for the `plugin_admin_enabled` flag

* refactor(InstallControls): move the main component to a named module

* feat(plugins): use the `pluginAdminEnable` flag to hide / show install controls in the UI

* test(plugins): add tests for enabling/disabling install controls
2021-11-19 13:42:26 +01:00
renovate[bot]
98f87c4c49 Ignore history/react-router-dom for now (#40932)
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-11-19 12:29:57 +00:00
Levente Balogh
d6e253b771 chore(CODEOWNERS): remove references on "@grafana/plugins-platform" (#41949) 2021-11-19 13:09:14 +01:00
renovate[bot]
c659d6fa4c Update dependency immutable to v4 (#41238)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-19 12:02:59 +00:00
Eric Leijonmarck
253da4a936 refactor: fix displayname and description for serviceaccount role (#41946)
* refactor: fix displayname and description for serviceaccount role

* add: ActionWrite, ActionCreate

* refactor: update description
2021-11-19 12:39:50 +01:00
malcolmholmes
8ccd7599bd Releasing: start splitting out publish phase (#41959) 2021-11-19 11:39:10 +00:00
Nathan Rodman
81155e2d55 Alerting: increase timeout for silences tests (#41918) 2021-11-19 13:07:28 +02:00
Emil Tullstedt
12e0a94316 JWT: Split race-y test into two stable tests (#41950) 2021-11-19 12:05:04 +01:00
Ieva
03b7a55242 show admin nav link it the user only has permissions to view licensing and not other pages under admin node (#41948) 2021-11-19 11:02:13 +00:00
Dimitris Sotirakis
42c51747ed Refactor drone yaml (#41937) 2021-11-19 11:35:57 +01:00
Dominik Prokop
92639d1475 Update latest.json (#41873) 2021-11-19 10:37:00 +01:00
Alexander Zobnin
d66158a042 Fix loop when cannot fetch roles (#41901) 2021-11-19 12:23:03 +03:00
Andres Martinez Gotor
c5241731de AzureMonitor: Fix metric namespace clear (#41878) 2021-11-19 10:16:56 +01:00
Ieva
11f133b406 Access Control: use role groups in role picker (#41912)
* use role groups in role picker UI

* Update public/app/core/components/RolePicker/RolePickerMenu.tsx

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

Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
2021-11-19 08:52:16 +00:00
Gabriel MABILLE
da5327ea14 AccessControl: RolePicker fetch roles in org (#41927) 2021-11-19 09:50:01 +01:00
Will Browne
4fa7fd2c75 add unsupported renderer message to catalog (#41898) 2021-11-19 08:47:28 +00:00
Dimitris Sotirakis
0462577f3d Install netcat to build-container and update the version (#41825) 2021-11-19 09:17:29 +01:00
Ryan McKinley
a6e60c62f4 Transformers: extract fields from JSON and text (alpha) (#41791)
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2021-11-18 21:52:49 -08:00
Leon Sorokin
17c2f52dcf Candlestick: fix volume histogram height by using mapped field name (#41931) 2021-11-18 20:31:18 -06:00
Nathan Marrs
541d1543db Geomap: Improve geojson style editor (#41926) 2021-11-18 17:39:13 -08:00
Agnès Toulet
e904f423e4 Docs: Add configuration option for the image renderer (#41798)
* Docs: add configuration option for the image renderer

* Apply review feedback
2021-11-18 18:09:08 +01:00
Josh Hunt
3b497f3e8d Chore: Move babel config to a root babel.config.json (#41615)
* Chore: Move babel config to a root babel.config.json

* Re-add babel cache settings to webpack

* Re-add production browserlist in babel config

* re-add babel hot refresh config

* fix storybook
2021-11-18 16:38:58 +00:00
Dimitris Sotirakis
7dcc5ca199 Make initialize depend on clone, only on enterprise pipelines (#41909) 2021-11-18 18:10:25 +02:00
Dimitris Sotirakis
e8a2a82d5c Run integration tests after initialize (#41906) 2021-11-18 17:59:22 +02:00
Marcus Efraimsson
ea4e711fe3 Datasource: Fix stable sort order of query responses (#41868)
Fixes #41773
Fixes #41303
Ref grafana/grafana-plugin-sdk-go#366
Ref #39614
2021-11-18 16:57:20 +01:00
Dimitris Sotirakis
53dc388dcf Disable lint-drone from release pipelines (#41899) 2021-11-18 17:32:45 +02:00
sam boyer
fc3ed34b22 Add basic resource trimming command (#41780)
* Add basic trim command

* Indent properly

* Actually apply defaults if the user asks for it
2021-11-18 10:02:11 -05:00
Dimitris Sotirakis
c82a15eafb Update grabpl version to 2.6.1 (#41892) 2021-11-18 15:56:49 +01:00
Andres Martinez Gotor
f8192bf428 Azure Monitor: Clean up fields when editing Metrics (#41762) 2021-11-18 15:13:56 +01:00
Grot (@grafanabot)
daa3cb831d ReleaseNotes: Updated changelog and release notes for 8.2.5 (#41886) 2021-11-18 14:58:09 +01:00
Gabriel MABILLE
0ee0a0b7a0 AccessControl: FGAC permissions for orgs endpoint on frontend (#41050)
* AccessControl: FGAC permissions for orgs endpoint on frontend

Protect org update endpoints

add or refactor missing right messages

cover org page

* removing scopes from orgs

* Perform permission control with global org

* Perform the error handling in case of 403

* Simplify frontend code by requiring read access for sure

* Remove roles I added to decrease the number of changes

* Remove the check for server admin to reduce the number of changes

* change error message

* Cleaning todos

* Remove unecessary changes

* Fix tests

* Update test snapshot

* Update pkg/api/roles.go

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

* Update public/app/features/admin/AdminEditOrgPage.tsx

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

* Format AdminEditOrgPage for linting

* Update public/app/features/admin/AdminEditOrgPage.tsx

Co-authored-by: Vardan Torosyan <vardants@gmail.com>

* Update public/app/features/admin/AdminEditOrgPage.tsx

Co-authored-by: Alexander Zobnin <alexanderzobnin@gmail.com>

* Update public/app/features/admin/AdminListOrgsPage.tsx

Co-authored-by: Alexander Zobnin <alexanderzobnin@gmail.com>

* Commit suggestions

* Commit suggestion canRead canWrite

* fix typo

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
Co-authored-by: Vardan Torosyan <vardants@gmail.com>
Co-authored-by: Alexander Zobnin <alexanderzobnin@gmail.com>
2021-11-18 14:10:38 +01:00
Levente Balogh
9c2a947605 Plugins Catalog: add support for enable/disable app plugins (#41801)
* refactor(plugins): add empty line between methods

* feat(api): add an API function for updating plugin settings

* feat(plugins): add a "getting started" guide for enabling / disabling app plugins

* test(plugins/admin): add tests for enable/disable functionality

* refactor(plugins/admin): update the name of the test cases

Now that we have multiple type of post-installation steps it probably makes sense.
2021-11-18 13:34:44 +01:00
Grot (@grafanabot)
6aeecd48a7 ReleaseNotes: Updated changelog and release notes for 8.2.5 (#41861) 2021-11-18 13:25:28 +01:00
Ashley Harrison
97a423aedc Dashboard: Remove the current panel from the list of options in the Dashboard datasource (#41826)
* Dashboard: Update check for current panel

* Get datasource name as before

* Update public/app/plugins/datasource/dashboard/DashboardQueryEditor.tsx

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

* import SHARED_DASHBOARD_QUERY

* Add some unit tests

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
2021-11-18 11:43:47 +00:00
George Robinson
ac59b7615d Alerting: README.md for ngalert 2021-11-18 10:26:42 +00:00
André R. de Miranda
c644ad31b6 Chore: Removed duplicate filter statement (#41847) 2021-11-18 10:54:18 +01:00
Andrej Ocenas
5cd4cde12a Tempo: Add error details when json upload fails (#41803) 2021-11-18 10:35:09 +01:00
Andrej Ocenas
9a7e411f55 Tempo: Fix basic auth password reset on adding tag (#41808) 2021-11-18 10:34:13 +01:00
Ieva
b7f47561b6 Access control: add roles to fixed groups (#41673)
* add roles to fixed groups

* add global to group name
2021-11-18 09:16:18 +00:00
achatterjee-grafana
e59c3a34fe Updated content based on Ivana's note. (#41848) 2021-11-18 09:53:38 +01:00
idafurjes
f40c1d0808 Chore: Add context apikey (#41698)
* Add context apikey

* Rename DeleteApiKeyCtx to DeleteApiKey
2021-11-18 09:50:03 +01:00
nikki-kiga
7a3b52783c Geomap: Add Property and values to GeoJSON style rule (#41845)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-11-18 09:29:40 +01:00
Joan López de la Franca Beltran
0c280319af Envelope encryption CLI migration command (#41454)
* Working version of migrate secrets CLI command

* Move user oauth info encryption away from db transaction

* Enable a mechanism for re-use db session on encryption

* De-duplicate shared code between db and runner commands

* Set up Wire build graph

* Remove enterprise Wire set

* Fix cylic dependency: sqlstore.DBSession <-> xorm.Session

* Minor fix (add missing base64 encoding)

* Extract CLI 'secrets-migration' commands from 'data-migration' ones

* Move runner package outside commands

* Update Makefile (gen-go path)

* Minor prettier fix

* Some minor XORM related refactors

* Include new Wire enterprise file into .gitignore

* Update Wire deps

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

Co-authored-by: Tania B <yalyna.ts@gmail.com>
Co-authored-by: Agnès Toulet <35176601+AgnesToulet@users.noreply.github.com>
2021-11-18 09:19:04 +01:00
Dominik Prokop
1be9a61f43 TimeSeries: Allow multiple axes for the same unit (#41635)
* TimeSeries: Allow multiple axis for the same unit

* Update snapshot

* Add axis label and soft min/max to the scale key

* Removed console.log
2021-11-18 08:55:26 +01:00
Mitch Seaman
0798fbb5d4 Add encryption algorithm to Enterprise config (#41412)
* Add encryption algorithm to Enterprise config

* Update docs/sources/enterprise/enterprise-configuration.md

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

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-11-18 08:48:16 +01:00
Todd Treece
c3f1cc6c75 Docs: Add docs for caching timeouts (#39672)
Co-authored-by: Stephanie Hingtgen <stephanie.hingtgen@grafana.com>
2021-11-18 08:36:10 +01:00
Ryan McKinley
837e268395 Geomap: use same style config for makers and geojson (#41846) 2021-11-17 22:13:27 -08:00
Hugo Häggmark
18cc552edb Variables: Fix so panels in expanded rows have correct variable values (#41721) 2021-11-18 06:22:16 +01:00
achatterjee-grafana
d3b513ab59 Doc: Removed reference to Hosted Grafana (#41843)
* Removed extra word

* Removed another ref of hosted grafana.
2021-11-17 19:41:17 -05:00
Ryan McKinley
7ef05588ea Provisioning: set stable datasource UID with provisioning (#41769) 2021-11-18 01:18:08 +01:00
Ryan McKinley
bf85ae44a2 Geomap: simplify styles (#41842) 2021-11-18 01:05:10 +01:00
Nathan Marrs
40d3072df2 Geomap: Refactor marker style options into reusable component (#41716) 2021-11-17 13:59:41 -08:00
Todd Treece
335e0cac11 Recorded Queries: Add frontend settings (#41841) 2021-11-17 22:45:05 +01:00
Leon Sorokin
6844cf57a0 Transformers: ensure ISO 8601 date strings are not parsed in local TZ (#41835) 2021-11-17 14:56:04 -06:00
Andrej Ocenas
e237ff20a9 CloudWatch Logs: Add retry strategy for hitting max concurrent queries (#39290)
* Add error passing and retry strategy

* Change generic error to specific one

* Make the error more generic

* Refactor retry strategy

* Add retry that handles multiple queries

* Rollback some backend changes

* Remove simple retry strategy

* Add comments

* Add tests

* Small test fixes

* Add log timeout config

* Fix tests

* Fix tests

* Add validation

* Remove commented code and add comment

* Fix snapshots

* Remove unnecessary cast
2021-11-17 21:46:13 +01:00
Tiago Mota Santos
3dd73387fa Menu: Adds SubMenu component to support fly-out sub-menu. (#41647) 2021-11-17 15:09:02 -05:00
Ryan McKinley
e5811ad106 Query: send datasourceId along with datasource ref (#41830) 2021-11-17 21:00:50 +01:00
Joan López de la Franca Beltran
d49230d291 Grafana CLI Wire Runner (#41012)
* Set up Wire build graph

* Remove enterprise Wire set

* Move runner package outside commands

* Update Makefile (gen-go path)

* Minor prettier fix

* Include new Wire enterprise file into .gitignore

* Update Wire deps

* Update the grabpl version

Co-authored-by: Dan Cech <dcech@grafana.com>
2021-11-17 20:43:09 +01:00
Giordano Ricci
1b99d88337 Elasticsearch: Add support for Elasticsearch 8.0 (Beta) (#41729)
* use fixed_interval in date_histogram

* Add 8.0 to available versions in datasource settings

* Remove moving_avg from available metric aggregations

* Add ES8 devenv

* Update public/app/plugins/datasource/elasticsearch/components/QueryEditor/MetricAggregationsEditor/utils.ts

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

* Add FE tests

* Add BE test

* fix FE test

* fix BE test

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
2021-11-17 20:30:53 +01:00
Leon Sorokin
ef1fb64bf5 Candlestick: new icon (#41819) 2021-11-17 19:30:07 +01:00
Gilles De Mey
1bd43bae2d Alerting: fix e2e testing selectors (#41829) 2021-11-17 19:23:30 +01:00
Gilles De Mey
b611d54349 Alerting: adds Unified Alerting promotion (#41551) 2021-11-17 16:46:44 +01:00
Ryan McKinley
6b56ee8bc1 Candlestick: make candlestick a beta plugin (#41779) 2021-11-17 07:43:25 -08:00
Alexander Zobnin
757463bd27 Add new role picker to admin/users page (#40631)
* Very simple role picker

* Style radio button

* Separate component for the built-in roles selector

* Custom component instead of Select

* refactor

* Custom input for role picker

* Refactor

* Able to select built-in role

* Add checkboxes for role selector

* Filter out fixed and internal roles

* Add action buttons

* Implement role search

* Fix selecting roles

* Pass custom roles to update

* User role picker

* Some UX work on role picker

* Clear search query on close

* Blur input when closed

* Add roles counter

* Refactor

* Add disabled state for picker

* Adjust disabled styles

* Replace ChangeOrgButton with role picker on admin/users page

* Remove unused code

* Apply suggestions from code review

Suggestions from the @Clarity-89

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

* Refactor: fix some errors after applying review suggestions

* Show fixed roles in the picker

* Show applied fixed roles

* Fix role counter

* Fix checkbox selection

* Use specific Role type for menu options

* Fix menu when roles list is empty

* Fix radio button name

* Make fixed roles from built-in role disabled

* Make whole menu scrollable

* Add BuiltInRole type

* Simplify appliedRoles

* Simplify options and props

* Do not select and disable inherited fixed roles

* Enable selecting fixed role

* Add description tooltip

* Fix role param name

* Export common input styles from grafana/ui

* Add ValueContainer

* Use value container

* Refactor appliedRoles logic

* Optimise role rendering

* Display selected roles

* Fix tooltip position

* Use OrgRole type

* Optimise role rendering

* Use radio button from grafana UI

* Submenu WIP

* Role picker submenu WIP

* Hide role description

* Tweak styles

* Implement submenu selection

* Disable role selection if it's inherited

* Show new role picker only in Enterprise

* Fix types

* Use orgid when fetching/updating roles

* Use orgId in all access control requests

* Styles for partially checked checkbox

* Tweak group option styles

* Role picker menu: refactor

* Reorganize roles in menu

* Fix input behaviour

* Hide groups on search

* Remove unused components

* Refactor

* Fix group selection

* Remove icons from role tags

* Add spacing for menu sections

* Rename clear all to clear in submenu

* Tweak menu width

* Show changes in the input when selecting roles

* Exclude inherited roles from selection

* Increase menu height

* Change built-in role in input on select

* Include inherited roles to the built-in role selection

* refcator import

* Refactor role picker to be able to pass roles and builtin roles getters

* Add role picker to the org users page

* Show inherited builtin roles in the popup

* Filter out managed roles

* Fix displaying initial builtin roles

* Show tooltip only for non-builtin roles

* Set min width for focused input

* Do not disable inherited roles (by design)

* Only show picker if access control enabled

* Fix tests

* Only close menu on click outside or on indicator click

* Open submenu on hover

* Don't search on empty query

* Do not open/close menu on click

* Refactor

* Apply suggestions from code review

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

* Fix formatting

* Apply suggestions

* Add more space for close menu sign

* Tune tooltip styles

* Move tooltip to the right side of option

* Use info sign instead of question

Co-authored-by: Clarity-89 <homes89@ukr.net>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2021-11-17 18:22:40 +03:00
Torkel Ödegaard
78888158ca Alerting: Fixing threshold handle color (#41813)
* Alerting: Fixing color of threshold handles

* Use theme colors test
2021-11-17 16:15:41 +01:00
Ieva
c426f5673b Access control: allow using targetOrgId parameter to set organization ID for a request (#41761)
* read target org ID in context handler

* simplify test

* add test for request body not being read in ctx handler

* linting fix
2021-11-17 16:11:56 +01:00
Karl Persson
d623285fcc Access Control: Rename fixed roles (#41288)
* Rename fixed roles
* Update descriptions
* Update docs for fixed roles and permissions

Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-11-17 15:40:39 +01:00
Ursula Kallio
d76cea45b5 Found typo while reading code comments (#41740) 2021-11-17 15:19:45 +01:00
Ashley Harrison
5452c069f7 PanelEdit: Display drag indicators on draggable sections (#41711)
* PanelEdit: Display drag indicators on draggable sections

* Move drag indicators between the sections
2021-11-17 13:46:24 +00:00
Hugo Häggmark
5498203507 Chore: Reduce pa11y-ci errors (#41787)
* Chore: moves alert to test-id

* Chore: moves Dashboard navigation to test-id

* Chore: moves Bar gauge value to data-testid

* Chore move Folder picker select container to data-testid

* Chore: moves Time zone picker select container to data-testid

* Chore: moves Choose starting day of the week to data-testid

* Chore: change tabIndex on search input

* Chore: moves various search related aria-lables to data-testid

* Chore: connects label to select input on alerting page

* Chore: connects TimeZonePicker and WeekStartPicker with labels

* Chore: moves CallToActionButton to data-testid

* Chore: move user home preferences select to data-testid

* Chore: lower all thresholds
2021-11-17 14:45:45 +01:00
Ashley Harrison
4f9c096599 Import: Load gcom dashboards from URL (#41799)
* mob next [ci-skip] [ci skip] [skip ci]

* mob next [ci-skip] [ci skip] [skip ci]

* mob next [ci-skip] [ci skip] [skip ci]

* mob next [ci-skip] [ci skip] [skip ci]

* mob next [ci-skip] [ci skip] [skip ci]

* mob next [ci-skip] [ci skip] [skip ci]

* mob next [ci-skip] [ci skip] [skip ci]

* Update import in reducer test

Co-authored-by: thisisobate <obasiuche62@gmail.com>
Co-authored-by: kay delaney <kay@grafana.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@gmail.com>
2021-11-17 12:26:44 +00:00
Torkel Ödegaard
6c8bc749ca Angular: Isolate angular modal support from react modal support (#41788)
* Angular: Isolate angular modal support from react modal support

* remove unrealted change
2021-11-17 13:12:18 +01:00
Gilles De Mey
9199a8b800 Alerting: rewire expression references when queries are updated (#41478) 2021-11-17 12:56:37 +01:00
Will Browne
fb2436af18 fix stream handler funcs (#41800) 2021-11-17 13:33:00 +02:00
Selene
9f7942099b Rendering: Add light theme for errors (#41616)
* Add light theme for error rendering

* Fix lint

* Update images and add rendering_limit_x images
2021-11-17 12:18:47 +01:00
Todd Treece
dad54d499b add support for conditionally rendering extraRenderActions (#41783) 2021-11-17 06:05:39 -05:00
Will Browne
2e3e7a7e55 Plugins: Plugin Store API returns DTO model (#41340)
* toying around

* fix refs

* remove unused fields

* go further

* add context

* ensure streaming handler is set
2021-11-17 12:04:22 +01:00
Emil Tullstedt
dbb8246b6b JWT: Increase distance from now in tests (#41794) 2021-11-17 12:03:56 +01:00
George Robinson
708bdc80cb Alerting: Support Unwrap for QueryError in expr package (#41743) 2021-11-17 10:07:24 +00:00
Jean-Philippe Quéméner
2319c52c85 Alerting: fix a bug where the metric in the evaluation string was not correctly populated (#41731)
Instead of using the frame name as the series name, we now use the name of the series value column if the frame name is not set. Queries to some datasources may end up with an empty frame name, which leads to an empty series name. As the series name is used in the frontend to display which metrics were queried etc. it shouldn't be empty.
2021-11-17 11:00:59 +01:00
idafurjes
bb01f8c4cf Chore: Add context dashboard version (#41672)
* Add context dashboard version

* Fix codeql
2021-11-17 10:57:37 +01:00
Tania B
bc60ae3c66 Encryption: Refactor secrets service (#41771)
* Refactor kmsproviders pkg

* Update tests

* Fix linting

Co-authored-by: Joan López de la Franca Beltran <joanjan14@gmail.com>
2021-11-17 11:52:45 +02:00
Dimitris Sotirakis
b8dd9fdd4a CI: Make build, test and integration tests steps run in parallel (#40794)
* Make build and test steps run in parallel

* Make tests and builds run on different pipelines

* Make test-backend depend on initialize

* Rename

* Create standalone integration tests pipeline (#41730)

* Remove unused variables
2021-11-17 11:25:55 +02:00
Gabriel MABILLE
818b8739c0 AccessControl: Remove scopes from orgs endpoints (#41709)
* AccessControl: Check permissions in target org

* Remove org scopes and add an authorizeInOrg middleware

* Use query result org id and perform users permission check globally for GetOrgByName

* Remove scope translation for orgs current

* Suggestion from Ieva
2021-11-17 10:12:28 +01:00
Torkel Ödegaard
d4bbaaade4 VisualizationLegend: Fixes item disabled color extends to stat values (#41786) 2021-11-17 09:44:08 +01:00
Ryan McKinley
bce7cb3ebf DatasourceRef: keep uid/type ref when using template variables (#41785) 2021-11-17 07:55:12 +01:00
Hugo Häggmark
b4faee786f Chore: re-enable pa11y-ci for PRs (#41723)
* Chore: re-enable pa11y-ci for PRs

* Chore: update signature

* Chore: revert wait times

* Chore: use same hash as docker image
2021-11-17 06:03:09 +01:00
nikki-kiga
306f0785e1 Geomap: Combine Text layer with Markers Layer and add text options (#41768)
* add text to markers

* add textConfig

* remove separate text layer

* update test

* Update public/app/plugins/panel/geomap/style/markers.ts

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

* Update public/app/plugins/panel/geomap/style/markers.ts

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

* update textConfig naming

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-11-16 13:22:57 -08:00
Andrew Hackmann
88aec85e3d recorded queries/documentation (#41714)
* docs for recorded queries

* Apply suggestions from code review

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

* add reference to backend data source plugin

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-11-16 14:55:24 -06:00
Ryan McKinley
f61ff60805 Schema: use almost auto generated models.gen.ts for dashlist and text panels (#40174) 2021-11-16 12:30:14 -08:00
Ryan McKinley
fbd8dc59d9 Canvas: show layer elements above element details (#41447) 2021-11-16 10:10:09 -08:00
George Robinson
5f5298ad25 Alerting: Use require.ElementsMatch in TestEvaluateExecutionResultsNoData 2021-11-16 18:58:48 +01:00
Sofia Papagiannaki
11ec1ddd7e Docs: Add guidelines for running grafana behind proxy on RPM-based Linux (#41710)
* Docs: Add Centos guidelines for running grafana behind proxy

* Apply suggestions from code review

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-11-16 18:47:37 +02:00
Peter Holmberg
4a31dfd903 Alerting: Fix issue after AzureMonitor fix (#41746)
* check if filterquery exists

* update tests

* test: re-run CI

Co-authored-by: gillesdemey <gilles.de.mey@gmail.com>
2021-11-16 17:45:55 +01:00
George Robinson
4d288cc6c7 Alerting: Fix NoData tests (#41759) 2021-11-16 16:41:32 +00:00
Uchechukwu Obasi
ea113be251 DashboardSettings: Link labels to inputs (#41680)
* TimePickerSettings: make label appropriately link to input when clicked

* DashboardSettings: link labels to input

* use loweercase instead for IDs

* fixes failing e2e test
2021-11-16 16:58:33 +01:00
renovate[bot]
b233a7d8d2 Update dependency lint-staged to v12 (#41676)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-16 15:03:27 +00:00
Tania B
b84496bc00 Fix decrypting in datasource update (#41704) 2021-11-16 16:47:59 +02:00
Sarah Zinger
c907b5315a Azure Monitor: Fix bug with template variables. (#41669) 2021-11-16 08:43:57 -05:00
George Robinson
543b1a7e39 Alerting: Add QueryError to expr package (#41737) 2021-11-16 13:42:22 +00:00
jcolladokuri
15d6da8e8c Azure monitor datasource: Added starter dashboard for app monitoring with application insights (#40725) 2021-11-16 08:37:47 -05:00
Domas
c60933b49b Alerting: Fix rule editor issues with Azure Monitor data source (#41317)
* properly set query type

* set default unit from data when found

* make AlertQueryRunner take into account ds.filterQuery

* fix tests

* feedback after pr

Co-authored-by: Peter Holmberg <peter.hlmbrg@gmail.com>
2021-11-16 14:02:32 +01:00
Oliver Frye
ff421ef63b Explore: Logs: Show ANSI colors when highlighting matched words (#40971)
* Explore: Show ANSI colors when highlighting matched words

* only highlight ANSI text if needsHighlighter is true

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

* fix lint error

Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
2021-11-16 13:48:42 +01:00
Hugo Häggmark
0dcea161fa Variables: Exclude adhoc variables from the impacted by logic (#41717) 2021-11-16 13:48:07 +01:00
Alexander Kubyshkin
e4cc41dd5b Fix button "Run query" width (#32655) (#39081)
* Fix button "Run query" width (#32655)

* Minor refactoring for simpler fix

* Removed new prop

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2021-11-16 13:22:33 +01:00
Uchechukwu Obasi
0da6ac2efa AnnoListPanel: Redirect to correct time on click (#41738) 2021-11-16 12:58:58 +01:00
Ashley Harrison
0e76f347c3 Overrides: Pass searchQuery to overrides section to highlight correctly (#41684) 2021-11-16 11:41:53 +00:00
Joan López de la Franca Beltran
d3e19b1b3b Encryption: Improve the DX of encryption operations within database transactions (#41654)
* Move user oauth info encryption away from db transaction

* Add encryption methods with support for db session reusability
2021-11-16 11:51:13 +01:00
Dimitris Sotirakis
86d79e4625 Add grabpl step only if platform=linux (#41732) 2021-11-16 11:46:44 +01:00
George Robinson
d363e19517 Alerting: Add datasource_uid label to DatasourceNoData alerts (#41621) 2021-11-16 10:03:18 +00:00
Katarina Yang
f49e08cb11 API: Fix dashboard quota limit for imports (#41495)
* API: Fix dashboard quota limit for imports

* fix: refactor TestDashboardQuota to check if dashboard saved

* Refactor: incorporate Sofia suggestions into tests

* refactor: add fields to TestDashboard struct

* write import test
2021-11-16 11:26:46 +02:00
Ryan McKinley
1aac13e5d0 MarketTrend: rename to candlestick panel (#41582) 2021-11-15 23:09:59 +01:00
Andrew Hackmann
53905f2d4a recorded queries/enable recorded queries option (#41670) 2021-11-15 15:04:45 -06:00
Alexander Emelin
4cd2575ad0 Live: generate ts definitions for pipeline configs (#41544)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-11-15 22:45:35 +03:00
Ryan McKinley
466eaeb4f0 Geomap: use name as UID (#41668) 2021-11-15 11:18:08 -08:00
Torkel Ödegaard
1f07d32666 AngularMigration: Add migration button to old graph panel (#41600)
* GraphOld: Mark old graph panel as deprecated so that it can no longer be picked in the UI

* Add migration button

* remove deprecation

* add timeseries to graph query

* update language

* Slight tweak

* Update public/app/plugins/panel/graph/tab_display.html

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2021-11-15 19:31:03 +01:00
Torkel Ödegaard
51ef770c2b UpdateQueries: Fixes issues setting datasource on queries after changing type (#41702) 2021-11-15 18:15:13 +01:00
Dimitris Sotirakis
99900cbdd8 CI: Make grabpl and lint-drone standalone steps (#41644)
* Extract grabpl download as separate step

* Change image to alpine

* Change image to curlimage

* Change image to alpine-curl

* Extract lint-drone step

* Add lint-drone to release and main pipelines

* Rename lint_drone to lint_drone_step

* Sign drone
2021-11-15 17:14:33 +00:00
gotjosh
b39859bdfe Alerting: HA documentation formatting fixes (#41682)
* Alerting: HA documentation formatting fixes

* don't change that line
2021-11-15 16:15:59 +00:00
Ivana Huckova
32e02ba857 Prometheus: Fix applying of ad-hoc variables after backend migration (#41596)
* Prometheus: Fix adding of ad-hoc variables

* Fix spelling
2021-11-15 17:11:21 +01:00
Marcus Andersson
487baf5a25 PluginsCatalog: hiding version history tab and install controls for plugins not published to grafana-com (#41634)
* will hide the version tab for core plugins.

* will not try to fetch the version list if plugin is local.

* added the concept wheter or not a plugin is published or not.

* Update public/app/features/plugins/admin/pages/PluginDetails.test.tsx

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

* Update public/app/features/plugins/admin/types.ts

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

* removed unused api functions.

* fix(plugins/admin): fix a tiny linter issue

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
2021-11-15 16:58:15 +01:00
Ryan McKinley
c780854a18 Live: remove hardcoded frontend channel support (#41584) 2021-11-15 07:54:14 -08:00
Josh Hunt
bfec79a7dc Chore: Improve wording of 'Now delay' option (#41368)
* Chore: Improve wording of 'Now delay' option

* Feedback
2021-11-15 16:08:28 +01:00
Levente Balogh
4219e4f107 Plugins Catalog: hide plugins based on the Grafana config (#41679)
* refactor(pkg/api/frontendsettings): group plugin catalog settings

* feat(plugins/admin): add a default config value for `pluginCatalogHiddenPlugins`

* chore(grafana/config): add type for `pluginCatalogHiddenPlugins`

* feat(plugins/admin): hide plugins from the catalog based on the grafana config

* fix(plugins/admin): fix a rebase typo

* fix(plugins/admin): remove unnecessary filtering
2021-11-15 15:51:16 +01:00
Dimitris Sotirakis
2c8ac1f58f Security Fix: Fine-grained access control enables organization admins to create/modify/delete user roles in other organization (#41694)
* 8.2.4: Fine-grained access control enables organization admins to create/modify/delete user roles in other organization

* Revert back calls with ScopeOrgID

Co-authored-by: gamab <gabi.mabs@gmail.com>
2021-11-15 15:35:09 +01:00
Dimitris Sotirakis
a076a4170c Release Notes: Update Release Notes and Changelog for 8.2.4 security fix (#41691)
* 8.2.4: Update CHANGELOG.md and release-notes-8-2-4.md

* Update blog post link
2021-11-15 15:28:22 +01:00
Torkel Ödegaard
dfd9813d70 Suggestions: Adds logs suggestions and sorting by score to suggestions (#41613)
* Suggestions: Adds logs suggestions for sorting by score to suggestions

* Introduced an enum

* review feedback
2021-11-15 15:13:01 +01:00
Torkel Ödegaard
dbcefb70f6 Angular: More isolation and removing of unused components (#41630)
* Angular: More isolation and removing of unused components

* Moved some more and fixed a test
2021-11-15 15:12:45 +01:00
Will Browne
8ea75c9401 Plugins: Add SDK stream handler support to plugin.Client (#41650)
* add stream handler support to plugin.Client

* nil instead of empty resp

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

* nil instead of empty resp #2

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

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2021-11-15 14:25:13 +01:00
Marcus Efraimsson
a840e9612e Chore: Upgrade grafana-plugin-sdk-go to v0.116.0 (#41652) 2021-11-15 13:22:10 +01:00
Alexander Emelin
d5ffff21ac Live: comments for pipeline channel rule (#41639) 2021-11-15 15:02:27 +03:00
Marcus Efraimsson
b88d21a6cb PluginsCatalog: Add backend support for hiding plugins in plugins catalog (#41563)
Add backend support for hiding plugins in plugins catalog. 

Ref #41074
2021-11-15 10:53:35 +01:00
Alexander Emelin
1700b2c2f3 live: add ws endpoint to push into pipeline (#41534) 2021-11-15 12:43:18 +03:00
Hugo Häggmark
f3f441f4ec Chore: removes vulnarabilities from echo (#41671) 2021-11-15 10:24:17 +01:00
Marcus Andersson
95e0eea86c Docs: Adding details about how to enable dynamic imports in plugins (#41648)
* added dynamic import to the readme.

* Update packages/grafana-toolkit/README.md

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

* Update README.md

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
2021-11-15 10:20:55 +01:00
Gábor Farkas
5c40865547 prometheus: query field: better handle label-values with unusual characters (#41457) 2021-11-15 09:51:28 +01:00
Hugo Häggmark
16578b0af0 Chore: Fix broken pa11y-ci (#41597)
* Chore: Fix broken pa11y-ci

* Chore: using npx instead

* Chore: testing with prebuilt image

* Chore: testing bin path

* Chore: trying

* Chore: another try

* Update puppeteer image

* Chore: updating image

* Chore: removes yarn version printout

* Chore: removes yarn version printout

Co-authored-by: dsotirakis <sotirakis.dim@gmail.com>
2021-11-15 08:49:39 +01:00
Leon Sorokin
a50b6947ce GraphNG: uPlot 1.6.17 (#41663) 2021-11-14 15:46:15 -06:00
Leon Sorokin
0d9911937d Chore: add graph-ng tags to gdev test dashboards backed by uPlot (#41662) 2021-11-14 10:33:26 -06:00
Alexander Emelin
e0b59fe8ce live: move back to ojg (#41642) 2021-11-13 15:14:13 +03:00
Jesse Weaver
8338f01467 Add detailed info on audit log contents (#40905)
Co-authored-by: Agnès Toulet <35176601+AgnesToulet@users.noreply.github.com>
2021-11-13 00:27:36 +01:00
Peter Holmberg
b2d7162168 Alerting: Add external Alertmanagers (#39183)
* building ui

* saving alertmanager urls

* add actions and api call to get external ams

* add list to add modal

* add validation and edit/delete

* work on merging results

* merging results

* get color for status heart

* adding tests

* tests added

* rename

* add pollin and status

* fix list sync

* fix polling

* add info icon with actual tooltip

* fix test

* Accessibility things

* fix strict error

* delete public/dist files

* Add API tests for invalid URL

* start redo admin test

* Fix for empty configuration and test

* remove admin test

* text updates after review

* suppress appevent error

* fix tests

* update description

Co-authored-by: gotjosh <josue@grafana.com>

* fix text plus go lint

* updates after pr review

* Adding docs

* Update docs/sources/alerting/unified-alerting/fundamentals/alertmanager.md

Co-authored-by: gotjosh <josue@grafana.com>

* Update docs/sources/alerting/unified-alerting/fundamentals/alertmanager.md

Co-authored-by: gotjosh <josue@grafana.com>

* Update docs/sources/alerting/unified-alerting/fundamentals/alertmanager.md

Co-authored-by: gotjosh <josue@grafana.com>

* Update docs/sources/alerting/unified-alerting/fundamentals/alertmanager.md

Co-authored-by: gotjosh <josue@grafana.com>

* Update docs/sources/alerting/unified-alerting/fundamentals/alertmanager.md

Co-authored-by: gotjosh <josue@grafana.com>

* Update docs/sources/alerting/unified-alerting/fundamentals/alertmanager.md

Co-authored-by: gotjosh <josue@grafana.com>

* Update docs/sources/alerting/unified-alerting/fundamentals/alertmanager.md

Co-authored-by: gotjosh <josue@grafana.com>

* prettier

* updates after docs feedback

Co-authored-by: gotjosh <josue.abreu@gmail.com>
Co-authored-by: gotjosh <josue@grafana.com>
2021-11-12 22:19:16 +01:00
Ryan McKinley
862054918d Geomap: styleConfig cleanup and symbol caching (#41622)
Co-authored-by: nikki-kiga <42276368+nikki-kiga@users.noreply.github.com>
2021-11-12 11:24:35 -08:00
gotjosh
dfa14e9500 Alerting: Document Grafana 8 High Availability setup (#41503)
* Alerting: Document Grafana 8 High Availability setup

* Apply suggestions from code review

Co-authored-by: Yuriy Tseretyan <tceretian@gmail.com>

* Wordsmithing

* Apply suggestions from code review

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

* Address review feedback

* Apply suggestions from code review

Co-authored-by: George Robinson <george.robinson@grafana.com>

* Update docs/sources/alerting/unified-alerting/high-availability.md

Co-authored-by: George Robinson <george.robinson@grafana.com>

* address review feedback

* Prettier

Co-authored-by: Yuriy Tseretyan <tceretian@gmail.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
Co-authored-by: George Robinson <george.robinson@grafana.com>
2021-11-12 18:47:39 +00:00
renovate[bot]
bcc46990aa Update dependency symbol-observable to v4 (#41626)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-12 16:13:55 +00:00
Dimitris Sotirakis
2b2c0b8b5e Remove check for local drone version (#41535) 2021-11-12 14:08:43 +00:00
Oscar Kilhed
6fe29dda33 Barchart docs and styling fix (#41362)
* Barchart docs and styling fix

* Fix name of max length

* rename valueRotation -> xTickLabelRotation

also limits slider padding on sliders without marks
2021-11-12 15:03:19 +01:00
idafurjes
d72e389d3d Add context for GetAlertNotificationUidQuery (#41633) 2021-11-12 14:35:38 +01:00
Ivana Huckova
47aab9adfa Tracing: Fix upload JSON functionality (#41455)
* Tracing: Fix upload JSON

* Tracing: Add processes for each span

* Revert "Tracing: Add processes for each span"

This reverts commit 7c0558be83.

* Tracing: Add processes for each span

* Revert "Tracing: Add processes for each span"

This reverts commit 7c0558be83.
2021-11-12 14:33:30 +01:00
Ieva
ba7d65edf5 Revert "allow using targetOrgId parameter to set organisation ID for a request (#41561)" (#41643)
This reverts commit 08276225c1.
2021-11-12 14:23:16 +01:00
Uchechukwu Obasi
d91e2ff632 TimePickerSettings: make label appropriately link to input when clicked (#41638) 2021-11-12 14:00:51 +01:00
Ivana Huckova
9b9e41e036 Prometheus: Disable exemplar queries for alerting (#41607)
* Prometheus: Dont include empty exempalr frame in results

* Prometheus: Never run exemplar queries for alerting

* Remove exemplar field from alerting and set exemplar to false

* Add tests for frontend

* Add test for backend
2021-11-12 12:49:06 +01:00
Joan López de la Franca Beltran
44837fc592 Replace encryption.Service usages by secrets.Service (#41625)
* Replace encryption.Service by secrets.Service on expr.Service

* Replace encryption.Service by secrets.Service on live pkg

* Rename encryption.Service to encryption.Internal to clarify it must be not used
2021-11-12 12:16:39 +01:00
Ieva
dcae138379 Access Control: adding group field to roles (#41465)
* add group field to roles in AC models

* change to using group_name as the column name

* add a migration for group column
2021-11-12 10:42:47 +00:00
renovate[bot]
d5fc48028f Update dependency sinon to v12 (#41605)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-12 10:28:34 +00:00
Giordano Ricci
13db125558 Explore: Use PageToolbar component & some cleanup (#41318)
* Explore: Use PageToolbar component & some cleanup

* remove unneeded getStyles

* remove unneeded fragment

* restore cancelQueries action handler in reducer

* avoid nested ternary operator

* Clean up explore e2e
2021-11-12 10:09:25 +00:00
Jack Westbrook
3c3cf2eee9 Plugins Catalog: Install and show the latest compatible version of a plugin (#41003)
* fix(catalog): prefer rendering installed version over latest version

* feat(catalog): signify installed version in version history

* feat(catalog): introduce installedVersion and latestVersion

* refactor(catalog): use latestVersion for installation, simplify plugindetails header logic

* refactor(catalog): clean up installedVersion and latestVersion

* feat(catalog): use table-layout so versions list table has consistent column widths

* test(catalog): update failing tests

* removed the need of having a latest version in the plugin catalog type root level.

* fixed flaky test depending on what locale it was being running with.

* added missing test to verify version for a remote plugin.

* fixed version in header.

* preventing the UI from break if no versions are available.

* fixed failing test due to missing mock data.

* added todo as a reminder.

* refactor(catalog): prefer grafana plugin icons over gcom notfound images

* refactor(Plugins/Admin): change constant name

* refactor(Plugins/Admin): add comment to make condition easier to understand

* chore: update go modules

* feat(Backend/Plugins): add "dependencies" field to `PluginListItem`

* feat(Plugins/Admin): show the grafana dependency for the installed version

* refactor(Plugins/Admin): use the local version of links

* refactor(Plugins/Admin): prefer the local version for `.type`

* refactor(Plugins/ADmin): prefer the local `.description` field

* fix(Plugins/Admin): fix tests

* test(plugins/api): update the expected response for the `api/plugins` tests

* chore(Plugins/Admin): add todo comments to check preferation of remote/local values

* feat(backend/api): always send the grafana version as a header when proxying to GCOM

* feat(plugins/admin): use the `isCompatible` flag to get the latest compatible version

* feat(plugins/admin): show the latest compatible version in the versions list

* fix(plugins/admin): show the grafana dependency for the latest compatible version

* fix(plugins/admin): update the version list when installing/uninstalling a plugin

* test(plugins/admin): add some test-cases for the latest-compatible-version

* fix(plugins/admin): show the grafana dependency for the installed version (if installed)

* feat(plugins/backend): add the `dependencies.grafanaDependency` property to the plugin object

* test(plugins/backend): fix tests by adjusting expected response json

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
2021-11-12 11:07:12 +01:00
Ivana Huckova
bf2ece7281 Tracing: Add processes for each span (#41473) 2021-11-12 10:43:03 +01:00
Torkel Ödegaard
e4a499b957 AppPlugins: Remove unused angular plugin page files (#41569)
* AppPlugins: Remove unused angular plugin page files

* Remove more unused bits
2021-11-12 10:35:39 +01:00
Selene
25ad916473 OAuth: Fix group mapping when use generic OAuth (#41418)
* Fix group mapping when use generic OAuth

* Fix lint

* Fix lint
2021-11-12 10:22:04 +01:00
renovate[bot]
fdd1364ddd Update dependency stylelint to v14 (#41609)
* Update dependency stylelint to v14

* stylelint: fixed package dependencies

* fixed version-number

* fixed dependency version

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
2021-11-12 08:40:51 +01:00
Ryan McKinley
7ffdff9e1f MarketTrend: aggressive default field matching (#41574) 2021-11-11 22:04:37 -08:00
Leon Sorokin
7a92faf398 TimeSeries: guard against pointSize being set < lineWidth (#41577) 2021-11-11 23:47:28 -06:00
nikki-kiga
4281c5afc1 Geomap: Add opacity and prepare svg (#41170) 2021-11-11 21:27:57 +01:00
Torkel Ödegaard
3d735c4809 DataSources: Patch legacy instances so they have the required properties and functions (#41594)
* DataSources: Patch legacy instances so they have the required properties and functions

* Missed setting components
2021-11-11 19:45:07 +01:00
Ieva
08276225c1 allow using targetOrgId parameter to set organisation ID for a request (#41561) 2021-11-11 16:39:08 +00:00
Erik Sundell
eb40723bcb Cloudwatch: Enable dimension filtering when loading dimension values (#41566)
* fix dimension filter

* refactor tests

* add comments

* fix typo
2021-11-11 16:48:35 +01:00
Gabriel MABILLE
0f36152127 UserCacheService: Use value instead of pointer (#41549) 2021-11-11 16:25:57 +01:00
Eric Leijonmarck
4fd3dd41bc ServiceAccounts: Delete ServiceAccount (#40470)
* Add extra fields to OSS types to support enterprise

* WIP service accounts

* Update public/app/features/api-keys/ApiKeysForm.tsx

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

* Create a service account at the same time as the API key

* Use service account credentials when accessing API with APIkey

* Throw better error

* Use Boolean for "create service account button"

* Add GetRole to service, merge RoleDTO and Role structs

This patch merges the identical OSS and Enterprise data structures, which improves the code for two reasons:

1.  Makes switching between OSS and Enterprise easier
2.  Reduces the chance of incompatibilities developing between the same functions in OSS and Enterprise

* Start work cloning permissions onto service account

* If API key is not linked to a service account, continue login as usual

* Fallback to old auth if no service account linked to key

* Commented

* Add CloneUserToServiceAccount

* Update mock.go

* Put graphical bits behind a feature toggle

* Start adding LinkAPIKeyToServiceAccount

* Update pkg/models/user.go

Co-authored-by: Eric Leijonmarck <eric.leijonmarck@gmail.com>

* Update pkg/api/apikey.go

Co-authored-by: Eric Leijonmarck <eric.leijonmarck@gmail.com>

* Update pkg/api/apikey.go

Co-authored-by: Eric Leijonmarck <eric.leijonmarck@gmail.com>

* Finish LinkAPIKeyToServiceAccount

* Update comment

* Handle api key link error

* Update pkg/services/sqlstore/apikey.go

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

* Feature toggle

* Update pkg/services/accesscontrol/accesscontrol.go

Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>

* Not needed (yet)

* Better error messages for OSS accesscontrol

* Set an invalid user id as default

* ServiceAccountId should be string

* Re-arrange field names

* ServiceAccountId is integer

* Update ossaccesscontrol.go

* Linter

* Remove fronend edits

* Remove console log

* Update ApiKeysForm.tsx

* feat: add serviceaccount deletion

* feat: make sure we do not accidently delete serviceaccount

* feat: ServiceAccount Type

* refactor: userDeletions function

* refactor: serviceaccount deletions\

* refactor: error name and removed attribute for userDeletecommand

* refactor:: remove serviceaccount type for now

* WIP

* add mocked function

* Remove unnecessary db query, move to right place

* Update pkg/services/accesscontrol/mock/mock.go

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>

* Update pkg/services/accesscontrol/mock/mock.go

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>

* Update pkg/services/accesscontrol/mock/mock.go

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>

* Better error messages

* Better and correcter error messages

* add mocked function

* refactor: move function call, add error msg

* add IsServiceAccount and fix table

* add service accounts package

* WIP

* WIP

* working serviceaccountsapi registration

* WIP tests

* test

* test working

* test running for service

* moved the error out of the models package

* fixed own review

* linting errors

* Update pkg/services/serviceaccounts/database/database.go

Co-authored-by: Jeremy Price <Jeremy.price@grafana.com>

* tests running for api

* WIP

* WIP

* removed unused secrets background svc

* removed background svc for serviceaccount infavor or wire.go

* serviceaccounts manager tests

* registering as backend service

Co-authored-by: Jeremy Price <jeremy.price@grafana.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
2021-11-11 15:10:24 +00:00
Gábor Farkas
cd01384d3a renovate: ignore packages/grafana-toolkit (#41602) 2021-11-11 14:52:33 +01:00
Gábor Farkas
4f4620188c influxdb: alias: fix corner case (#41562) 2021-11-11 14:38:54 +01:00
Jack Westbrook
5fad5511e9 Build: Enable persistent cache for faster Webpack builds (#41430)
* build(webpack): enable caching for development and production builds

* build(webpack): introduce unminified production build script

* build(typescript): introduce incremental flag to cache typechecking

* chore(git): ignore typescript cache file

* chore(webpack): bump dependencies to latest
2021-11-11 14:32:34 +01:00
Andrej Ocenas
5cc9ff8b28 Tempo: Add filtering for service graph query (#41162)
* Add filter based on AdHocFilter element

* Add tests

* Cancel layout in case we have have new data or we unmount node graph

* Fix typing

* Fix test
2021-11-11 14:27:59 +01:00
Gábor Farkas
f6ad3e420a devenv: influxdb: better config (#41456) 2021-11-11 14:20:57 +01:00
Torkel Ödegaard
6da6ef98be VisualizationSuggestions: More suggestions and refinements (#41480)
* VisualizationSuggestions: More suggestions

* more refinements

* Minor fixes
2021-11-11 14:10:23 +01:00
Jack Westbrook
c712c31721 Build: Use SWC to speed up Sass template builds (#41425)
* build(themes): use SWC to speed up template builds

* chore: remove superfluous dev deps
2021-11-11 14:03:53 +01:00
Karl Persson
3c659f1ea0 Access Control: Move part of access control database (#40483)
* Add accesscontrol migrations

* Add ResourceStore interface and related structs

* Add team/user/builtin-role

* Add accesscontrol database with functions to handle managed roles and
permissions

* Add ResourceManager

* Add GetUserPermissions

* Update pkg/services/accesscontrol/accesscontrol.go

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
2021-11-11 14:02:53 +01:00
Jack Westbrook
8c98f24777 Chore: Fix failing frontend-metrics script (#41599) 2021-11-11 13:41:15 +01:00
Erik Sundell
fa3261eaf2 ignore empty tags (#41529) 2021-11-11 13:38:04 +01:00
gotjosh
05c672b755 Alerting: Update docs on using the Prometheus Datasource with the Ruler (#41528)
* Alerting: Update docs on using the Prometheus Datasource with the Ruler

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

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

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-11-11 12:10:07 +00:00
Hugo Häggmark
0e12293971 Chore: Removes pa11y-ci as dependency and use dlx instead (#41591) 2021-11-11 12:54:08 +01:00
Torkel Ödegaard
175c39a976 DataSourceRef: Fix migration for panels inside collapsed rows (#41590) 2021-11-11 12:06:17 +01:00
Jeremy Price
69c5370e94 Accesscontrol: Add additional API keys to service account, move cloneserviceaccount to sqlstore (#41189)
* Add additional api key, move cloneserviceaccount

* Remove TODOs, for now

* Error messages

* Linter

* Security check

* Add comments

* Take service account id from correct variable

* Update user.go
2021-11-11 10:42:21 +00:00
Hugo Häggmark
4e1059649a Admin: Fix so Timezone is saved when saving preferences (#41583)
* Configuration: Fix so Timezone is saved when saving preferences

* Updating package.json and yarn.lock

* Chore: force drone reload

* Chore: trying with the git protocol

* Chore: revert back to main

* Chore: deleted cached pa11y file

* Chore: revert

* Chore: trying with YARN_CHECKSUM_BEHAVIOR=reset

* Chore: YARN_CHECKSUM_BEHAVIOR=reset worked but reverting back waiting for other fix
2021-11-11 11:13:01 +01:00
Erik Sundell
d5b1500c0b Chore: Add new CloudWatch ui components (#41484)
* add new ui components

* pr feedback

* remove leftover comment
2021-11-11 10:02:40 +01:00
renovate[bot]
881dd9992c Update pa11y-ci commit hash to 6b2d4f5 (#41536)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-11 09:51:47 +01:00
Dimitris Sotirakis
13df0901a8 Remove build-deploy.sh (#41586) 2021-11-11 09:23:12 +01:00
Gábor Farkas
eb47a58029 InfluxDB: fix numeric aliases in queries (#41531)
* influxdb: alerting: handle out-of-range numeric aliases

* influxdb: updated documentation
2021-11-11 09:18:06 +01:00
Gilles De Mey
dbe78e47b1 fix: check lotex endpoint URL (#41429)
* fix: check lotex endpoint URL

* Add validation for data sources URLs

Co-authored-by: Santiago <santiagohernandez.1997@gmail.com>
2021-11-11 07:45:56 +01:00
achatterjee-grafana
94704f1061 Removed extra word (#41576) 2021-11-10 20:43:36 -05:00
Nathan Rodman
25606e851b Alerting: add logo for alert groups panel (#41501) 2021-11-10 17:30:45 -08:00
Torkel Ödegaard
135572d21a DataSourceSrv: Use correct getAngularInjector function (#41568) 2021-11-10 19:37:27 +01:00
Marcus Andersson
e926126d63 Chore: Prevent preloaded plugins from crashing Grafana (#41490)
* if a plugin fails to load, we will not crash grafana.

* preventing the preloaded plugings to crash the whole app on failure.

* updated to unkown.

* fixed issue with angular by moving the preloadPlugin import to the same row as we did import the importPluginModule.
2021-11-10 19:06:55 +01:00
Ashley Harrison
e0a60cf459 Navigation: Set dropdown text color to primary to match previous behaviour (#41560) 2021-11-10 17:34:38 +00:00
Dimitris Sotirakis
b79eab8455 Make script not fail if reports/docs directory doesn't exist (#41527) 2021-11-10 18:07:39 +02:00
Nathan Marrs
ba4bd24a9d Geomap: improve resourcepicker modal UX (#41516) 2021-11-10 08:06:38 -08:00
Per
4d52bd924f Document elasticsearch maxConcurrentShardRequests parameter (#39624)
* Better elastic documentation.

* apply docs suggestion

Co-authored-by: Elfo404 <me@giordanoricci.com>
2021-11-10 15:50:27 +00:00
Ivana Huckova
9e996eaca7 Prometheus: Set default query type values in Explore only for new queries (#41263)
* Prometheus: Override query type only for new queries

* Update comment

* Add tests

* Fix test
2021-11-10 16:25:54 +01:00
Ashley Harrison
ed030f9c21 Chore: Set min node version in package.json to 16 (#41423)
* Update package.json

* Update build-container version

* Sign drone

* Update developer-guide

* kick drone

Co-authored-by: dsotirakis <sotirakis.dim@gmail.com>
Co-authored-by: Dimitris Sotirakis <dimitrios.sotirakis@grafana.com>
Co-authored-by: kay delaney <kay@grafana.com>
2021-11-10 14:23:10 +00:00
Isabella Siu
fc3d3ff003 CloudMonitoring: Move data manipulation to backend (#41379) 2021-11-10 08:58:04 -05:00
Santiago
a45e4ff73f graphLink and tableLink template functions (#41369)
* graphLink and tableLink functions, docs updated

* Code review changes

* extract query struct outside of graphLink and tableLink functions

* Fix docs

* Update docs/sources/alerting/unified-alerting/alerting-rules/alert-annotation-label.md

Co-authored-by: Jean-Philippe Quéméner <JohnnyQQQQ@users.noreply.github.com>

* Update docs/sources/alerting/unified-alerting/alerting-rules/alert-annotation-label.md

Co-authored-by: Jean-Philippe Quéméner <JohnnyQQQQ@users.noreply.github.com>

* Update docs/sources/alerting/unified-alerting/alerting-rules/alert-annotation-label.md

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

* Update docs/sources/alerting/unified-alerting/alerting-rules/alert-annotation-label.md

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

* Fix linting errors

Co-authored-by: Jean-Philippe Quéméner <JohnnyQQQQ@users.noreply.github.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-11-10 10:36:03 -03:00
renovate[bot]
0d4533ae74 Update dependency postcss-loader to v6 (#41460)
* Update dependency postcss-loader to v6

* Revert "Update dependency postcss-loader to v6"

This reverts commit c3d59a8241.

* Do not upgrade postcss-loader until webpack 5

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2021-11-10 13:57:45 +01:00
Ivana Huckova
7bc27a3cfc Tempo: Fix validation of float durations (#41400)
* Fix parsing of float numbers in validation

* Adjust test

* Update packages/grafana-data/src/datetime/durationutil.test.ts

* Update packages/grafana-data/src/datetime/durationutil.test.ts

* Remove us from placeholder
2021-11-10 13:48:38 +01:00
dsotirakis
a3f6982476 Merge test a11y steps on starlark files 2021-11-10 14:35:03 +02:00
Gábor Farkas
486fbac23b renovate: do not update "less" for now (#41463)
* renovate: block updating less & less-loader for now

* more specific rules
2021-11-10 13:29:20 +01:00
Josh Hunt
ecb877cb24 Snapshots: Fix panel inspector for snapshot data (#41530) 2021-11-10 12:40:04 +01:00
Marcus Andersson
e5421dd53e Chore: Change so we cache loading plugins by its version (#41367)
* making it possible to cache plugins based on the version.

* feat(plugincache): introduce function to invalidate entries

* removed todo's

* added tests for the cache buster.

* fixed tests.

* fixed failing tests.

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
2021-11-10 11:54:58 +01:00
Marcus Efraimsson
baab021fec Chore: Refactor usage of legacy data contracts (#41218)
Refactor usage of legacy data contracts. Moves legacy data contracts 
to pkg/tsdb/legacydata package.
Refactor pkg/expr to be a proper service/dependency that can be provided 
to wire to remove some unneeded dependencies to SSE in ngalert and other places.
Refactor pkg/expr to not use the legacydata,RequestHandler and use 
backend.QueryDataHandler instead.
2021-11-10 11:52:16 +01:00
George Robinson
d6ed5d295e Alerting: Fix NoDataFound for alert rules using the AND operator (#41305)
This commit fixes an issue in alerting where NoDataFound is false
when using the AND operator to compare two conditions in an alert
rule and one of the conditions has no data.
2021-11-10 10:28:49 +00:00
Piotr Jamróz
7d2e9aa979 Elasticsearch: Enable full range log volume histogram (#41202)
* Rename "Logs volume" labels to "Log volume"

Code references are kept intact as there's a lot of them, it could be renamed in a separate PR just with renaming

* Add log level docs

* Remove feature flag to enable log volume by default

* Update error message

* Update docs

* Fix unit test

* Fix unit test

Queries are now run automatically

* Add extra param for Loki API

* Remove "Load volume" button

* Update documentation about log volume

* Move comment

* Make reload button more accessible

* Update docs/sources/explore/logs-integration.md

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

* Hide full range log volume for Loki behind the feature toggle

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-11-10 11:20:30 +01:00
Torkel Ödegaard
c96c92d712 Angular: Isolate angular more (#41440)
* Getting close

* Restore angular app boot at startup

* Moving angular annotations dependencies to app/angular or old graph

* Remove redundant setLinkSrv call

* Fixing graph test

* Minor refactor based on review feedback

* Create in get function
2021-11-10 11:05:36 +01:00
Uchechukwu Obasi
e7fd41d779 RefreshPicker: make widget accessible (#40570)
* adds better aria-label for run and interval buttons

* enable refreshPicker to be keyboard navigable

* adds support for closing menu using esc key

* Fix: weird behaviour when navigating menu items

* adds focus trapping to refresh picker

* WIP: sanitize time interval values for screen readers to pronounce correctly

* WIP: improve sanitizeLabel function to work for all use cases

* Chore: move label sanitization to refreshPicker component instead

* Chore: add fallback label when ariaLabel prop is not set

* Chore: fix some type errors

* code cleanup

* update tests

* rename function to be more descriptive

* remove unnecessary type casting

* WIP: use cleaner solution

* WIP: use parseDuration util instead

* use more descriptive aria label

* fix: modify parseDuration util to output correct interval unit format

* fix: move interval unit format logic to refreshPicker

* Chore: add back old refreshPicker e2e selectors for backward compatibility

* Fix: improve refresh picker to voice out selected interval option

* Fix: use appropriate aria roles and states to aid screen reader a11y

* Fix: support dropdown expansion using down arrow key

* Chore: use better type construct

* Fix: add support for tab to close menu

* add more context to the deprecation warning message

* Chore: use formatDuration util instead to format interval labels

* Chore: small syntax fix

* chore: syntax fix

* syntax fix

* Chore: add back lockfile
2021-11-10 11:01:06 +01:00
Giordano Ricci
2139a3dfa8 Explore: fix logs panel top action switches labeling (#41350)
* Explore: fix logs panel top action switches labeling

* fix typo

Co-authored-by: Maria Alexandra <239999+axelavargas@users.noreply.github.com>

Co-authored-by: Maria Alexandra <239999+axelavargas@users.noreply.github.com>
2021-11-10 11:00:18 +01:00
Jack Westbrook
cd5277befd Storybook: Fix decorator height (#41468)
* fix(storybook): make sure story background fills available height

* fix(storybook): add decorator to prevent badge filling all available height

* docs(badge): use centered story

* revert(badge): remove obsolete Meta typing
2021-11-10 10:51:10 +01:00
Will Browne
8adefa32fd Plugins: Return error from QueryData when plugin is not found (#41494)
* Plugins: Return error from QueryData when plugin is not found

* use nil for resp
2021-11-10 10:39:32 +01:00
Jim McDonald
11646b41fe ValueMapping: handle multiple regex mappings (#41515) 2021-11-10 08:31:44 +01:00
Leon Sorokin
57adbc3bd6 Market trend: fix bar width calc when time range exceeds data range (#41493) 2021-11-09 18:17:10 -06:00
Nathan Marrs
a992447a45 Geomap: custom layer naming (#41491) 2021-11-09 10:19:46 -08:00
Selene
a3b9c764d3 Encryption: Add Azure key vault dependency (#41353)
* Add Azure key vault dependency

* Fix go.mod

Co-authored-by: Leonard Gram <leo@xlson.com>
2021-11-09 19:33:54 +02:00
Gilles De Mey
2bc30daa49 Alerting: allows clearing the datasource selection in rule list (#41264) 2021-11-09 18:20:36 +01:00
Artur Wierzbicki
f45eb309ef Live: move centrifuge service to a web worker (#41090)
* Fix: make webpack pickup workers written in TS

* Add comlink to dependencies

* Temporary fix: copy paste `toDataQueryError` from @grafana/runtime to avoid web dependencies

* Implemented comlink-based centrifuge worker & worker proxy

* Temporary fix: implement comlink transferHandlers for subscriptions and streamingdataframes

* Move liveTimer filtering from CentrifugeService into GrafanaLiveService

* Switch from CentrifugeService to CentrifugeServiceWorkerProxy in GrafanaLive

* Naming fix

* Refactor: move liveTimer-based data filtering from GrafanaLiveService to CentrifugeServiceWorker

* observe dataStream on an async scheduler

* Fix: - Unsubscribe is now propagated from the main thread to the worker, - improve worker&workerProxy types

* Fix: Prettify types

* Fix: Add error & complete observers

* Docs: Add comment explaining the `subscriberTransferHandler`

* Fix: Replace `StreamingDataFrameHandler` with explicitly converting StreamingDataFrame to a DataFrameDTO

* Refactor: move liveTimer filtering to service.ts to make it easy to implement a `live-service-web-worker` feature flag

* Feat: add `live-service-web-worker` feature flag

* Fix: extract toDataQueryError.ts to a separate file within `@grafana-runtime` to avoid having a dependency from webworker to the whole package (@grafana-runtime/index.ts)

* Update public/app/features/dashboard/dashgrid/liveTimer.ts

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>

* Fix: fixed default import class in worker file

* Fix: cast worker as Endpoint

* Migrate from worker-loader to webpack native worker support v1 - broken prod build

* Fix: Use custom path in HtmlWebpackPlugin

* Fix: Loading workers from CDNs

* Fix: Avoid issues with jest ESM support by mocking `createWorker` files

* Fix: move the custom mockWorker rendering layout to `test/mocks`

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2021-11-09 21:05:01 +04:00
Alexander Emelin
e2ed140de2 Live: rename remote write backends to write configs (#41467) 2021-11-09 19:12:10 +03:00
Ryan McKinley
e5d7be3e1c TablePanel: support hiding columns, but use them in DataLinks (#41443) 2021-11-09 17:10:21 +01:00
Ryan McKinley
0e419e9af1 Dashboard schema: strip null values from save model (#41385) 2021-11-09 16:55:42 +01:00
Yuriy Tseretyan
24ad769831 Alerting: Fix flaky TestAlertInstanceOperations (#41435)
* use UID generator for text
2021-11-09 10:42:58 -05:00
Torkel Ödegaard
255efc0570 Icons: Add missing icons and sync with grafana/icons and re-generate iconBundle (#41466) 2021-11-09 16:31:34 +01:00
Ryan McKinley
6c1a0cc707 DataSourceRef: use reference rather than id where possible (#41372) 2021-11-09 07:24:41 -08:00
Ryan McKinley
490d21fc5c ds/query: use datasourceId if it exists in the request (#41446) 2021-11-09 07:11:09 -08:00
Alex Khomenko
8d22733666 grafana-ui: Style disabled option for Select (#41464) 2021-11-09 16:00:08 +01:00
Tania B
f6545ab8f4 Chore: Add current provider test for secrets service (#41387)
* Chore: Add current provider test for secrets service

* Refactor the test

* Fix linting issue
2021-11-09 16:40:37 +02:00
Hugo Häggmark
6862c7baf8 Chore: Fix broken variable tests (#41472)
* Chore: skip failing tests

* Chore: fix broken variables tests
2021-11-09 15:06:14 +01:00
Ashley Harrison
90d2d1f4da Navigation: Refactor mobile menu into it's own component (#41308)
* Navigation: Start creating new NavBarMenu component

* Navigation: Apply new NavBarMenu to NavBarNext

* Navigation: Remove everything to do with .sidemenu-open--xs

* Navigation: Ensure search is passed to NavBarMenu

* Navigation: Standardise NavBarMenuItem

* This extra check isn't needed anymore

* Navigation: Refactor <li> out of NavBarMenu

* Navigation: Combine NavBarMenuItem with DropdownChild

* use spread syntax since performance shouldn't be a concern for such small arrays

* Improve active item logic

* Ensure unique keys

* Remove this duplicate code

* Add unit tests for getActiveItem

* Add tests for NavBarMenu

* Rename mobileMenuOpen -> menuOpen in NavBarNext (since it can be used for mobile menu or megamenu)

* just use index to key the items

* Use exact versions of @react-aria packages

* Navigation: Make the dropdown header a NavBarMenuItem

* Navigation: Stop using dropdown-menu for styles

* Navigation: Hide divider in NavBarMenu + tweak color on section header
2021-11-09 13:41:38 +00:00
Marcus Efraimsson
3be452f995 DataProxy: Fix issue overriding response body when response status is 101 (#41364)
When a request going through Grafana data source proxy responds with a websocket 
upgrade response we cannot override the response body since it produces an error. 
This problem seems to have been introduced in Grafana v8.0 by #38962. 
In addition #40303 added same problem.

Fixes #41292
2021-11-09 14:33:54 +01:00
Yyee
cd5d84b0f3 Prometheus: Add custom query parameters when creating PromLink url (#41213)
* Prometheus: Add custom query parameters when creating PromLink url

* Fix variable as suggested and add new test
2021-11-09 14:04:56 +01:00
Domas
345af8374c Alerting: Remove CTA button from read-only notification policy page (#41096)
* don't show cta button for read-only prometheus alertmanager

* grammar fix

Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>

Co-authored-by: Peter Holmberg <peterholmberg@users.noreply.github.com>
Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
Co-authored-by: Peter Holmberg <peter.hlmbrg@gmail.com>
2021-11-09 13:52:49 +01:00
renovate[bot]
01bc59e432 Update dependency optimize-css-assets-webpack-plugin to v6 (#41419)
* Update dependency optimize-css-assets-webpack-plugin to v6

* Update to use exact version

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2021-11-09 13:17:15 +01:00
Dimitris Sotirakis
ad4fc4d87e Remove FocusConvey check (#41165) 2021-11-09 12:38:51 +01:00
Hugo Häggmark
b4f00d6312 Variables: Only update panels that are impacted by variable change (#39420)
* Refactor: adds affectedPanelIds and fixes some bugs

* Refactor: Fixes all dependencies and affected panel ids

* Refactor: glue it together with events

* Chore: remove debug code

* Chore: remove unused events

* Chore: removes unused function

* Chore: reverts processRepeats

* Chore: update to use redux state

* Refactor: adds feature toggle in variables settings

* Refactor: adds appEvents to jest-setup

* Tests: adds tests for strict panel refresh logic

* Refactor: small refactor

* Refactor: moved to more events

* Tests: fixes test

* Refactor: makes sure we store strictPanelRefreshMode in dashboard model

* Refactor: reporting and adds tests

* Tests: fix broken tests

* Tests: fix broken initDashboard test

* Tests: fix broken Wrapper test

* Refactor: adds solution for $__all_variables

* Chore: updates to radio button

* Refactor: removes toggle and calculates threshold instead

* Chore: fix up tests

* Refactor: moving functions around

* Tests: fixes broken test

* Update public/app/features/dashboard/services/TimeSrv.ts

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

* Chore: fix after PR comments

* Chore: fix import and add comment

* Chore: update after PR comments

Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
2021-11-09 12:30:04 +01:00
renovate[bot]
077b1e847a Update dependency marked to v4 (#41328)
* Update dependency marked to v4

* Update dependency marked to v4

* Change default export

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2021-11-09 12:10:39 +01:00
Marcus Efraimsson
36cea0b48e Cli: Improve error handling for installing plugins (#41257)
Improves error handling when installing plugins by checking for 
error before adding a defer of closing of the zip reader to not 
create a panic when there's an invalid zip file.

Fixes #41029
2021-11-09 11:18:21 +01:00
Alexander Emelin
78e9fe520b Live: pipeline Loki output (#41272) 2021-11-09 13:10:43 +03:00
kay delaney
833ed5418e A11y/Dashboard: Change settings nav items from buttons to links (#41407) 2021-11-09 09:39:17 +00:00
Peter Holmberg
fd7dd6edf1 Alerting: Fix accessibility issues for alert rule list (#40816)
* accessibility attributes for rulelist

* change label text
2021-11-09 10:35:12 +01:00
Marcus Andersson
6c5dca9bb2 Chore: Moved plugins catalog ownership to prevent unnecessary pings to the user-essentials squad. (#41399) 2021-11-09 10:01:25 +01:00
Alex Khomenko
112e44181e Separate SoloPanel rendering logic (#41408) 2021-11-09 09:47:01 +02:00
Torkel Ödegaard
27f66a6df9 Angular: Move coreModule to app/angular and isolate angular usage more (#41433)
* moving coreModule to app/angular and isolating it more

* fixed ts issue
2021-11-09 08:37:16 +01:00
Ilya Stoliar
8e778aa98f CloudWatch: Add AWS RoboMaker metrics and dimension (#41450) 2021-11-09 08:29:09 +01:00
Marcus Efraimsson
21df783203 Chore: Update codeowners (#41428) 2021-11-08 11:21:35 -08:00
Nathan Marrs
defbd72bf2 Canvas: add multi layer functionality (#41326) 2021-11-08 11:05:16 -08:00
Zoltán Bedi
ea583e7d42 Devenv: Fix fake data gen docker to use same network (#41355)
* Dev: MSSql fake data gen docker to use same network

* Fix all datasources that used network_mode: bridge
2021-11-08 19:53:57 +01:00
Marcus Efraimsson
b304965bbe Docs: Update data source provisioning in regards to HTTP specific settings (#40163)
Clarifies documentation in regards to data source provisioning and certain 
settings that earlier was explained as applicable to All data sources.

Fixes #19574

Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
2021-11-08 18:59:21 +01:00
Torkel Ödegaard
d07fa0ce5e AngularJS: Move angular stuff into app/angular (#41415)
* Moving more angular parts

* Moving more angular stuff

* Moving components

* Move more things
2021-11-08 18:41:04 +01:00
ying-jeanne
54de1078c8 remove the global log error/warn etc functions (#41404)
* remove the global log error/warn etc functions and use request context logger whenever possible
2021-11-08 17:56:56 +01:00
achatterjee-grafana
bda60f3458 Updated a few install topics with references to "Hosted Grafana" (#41106) 2021-11-08 11:43:34 -05:00
Marcus Andersson
dce851e396 Chore: Fixed failing e2e due to day light saving time. (#41417) 2021-11-08 17:05:01 +01:00
Alexander Emelin
bc432ef2b8 update centrifuge to v0.18.8 (#41394) 2021-11-08 18:52:12 +03:00
renovate[bot]
0bd87f3e5b Update dependency @types/node to v16 (#40913)
* Update dependency @types/node to v16

* kick drone

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-11-08 15:45:02 +00:00
renovate[bot]
edd54f59be Update dependency html-loader to v3 (#41147)
* Update dependency html-loader to v3

* Chore(dependencies): Ignore html-loader in grafana-toolkit until it moves to webpack 5

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-11-08 15:34:18 +00:00
Marcus Andersson
712ecf5adf Chore: Prevent loading error from showing too early (#41347) 2021-11-08 16:13:37 +01:00
Katarina Yang
c4306f9b3e Chore: add context to login (#41316)
* Chore: add context to login attempt file and tests

* Chore: add context

* Chore: add context to login and login tests

* Chore: continue adding context to login

* Chore: add context to login query
2021-11-08 15:53:51 +01:00
renovate[bot]
b58cca5d51 Update dependency memoize-one to v6 (#41349)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-08 14:52:05 +00:00
achatterjee-grafana
f346bbb3bb Docs: Added note that only string type is supported for query variables. (#41359)
* Added note that only string type is supported for query variables.

* Added doc review.
2021-11-08 08:56:38 -05:00
gotjosh
6220872633 Alerting: fix bug where user is able to access rules from namespaces user is not part of (#41403)
* Add fix
* Add tests
Co-authored-by: Yuriy Tseretyan <yuriy.tseretyan@grafana.com>
Co-authored-by: Armand Grillet <2117580+armandgrillet@users.noreply.github.com>
Co-authored-by: Jean-Philippe Quéméner <JohnnyQQQQ@users.noreply.github.com>
Co-authored-by: George Robinson <george.robinson@grafana.com>
2021-11-08 14:26:08 +01:00
Gábor Farkas
9d82111a1a prometheus: enable new monaco-based query field (#41357)
* prometheus: enable new monaco-based query field

* updated test

* updated tests

* fix e2e tests

* updated comment
2021-11-08 14:20:48 +01:00
Marcus Efraimsson
e31bd2df2f Chore: Go mod tidy (#41374) 2021-11-08 14:05:02 +01:00
Torkel Ödegaard
3dee34c009 PanelEdit: Show when field options have override rules or data config that overrides the default (#40250)
* First pass at showing data override dots

* Added test

* Adding override rule dots

* Added unit test

* Minor changes

* Update public/app/features/dashboard/components/PanelEditor/OptionsPaneItemDescriptor.tsx

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

* Fixed ts issues

* review feedback changes

* skipp broken e2e test

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
2021-11-08 13:18:14 +01:00
fengjb
e9d90231e0 NodeGraph: Fix subTitle and secondaryStat being truncated in some cases (#40244) 2021-11-07 07:13:14 +01:00
Ryan McKinley
fe43b30adf MarketTrend: add devenv dashboard (#41334)
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
Co-authored-by: sam boyer <sdboyer@grafana.com>
2021-11-06 11:06:04 -05:00
Leon Sorokin
f0a108afb3 MarketTrend: add new alpha panel (#40909) 2021-11-05 18:01:26 -07:00
Zoltán Bedi
af61839a26 StateTimeline: Share cursor with rest of the panels (#41038)
* First working version of shared cursor for state timeline

* Only publish x value for time series

* Don't send legacy graph event

* Don't add y scale to cursor sync

* Snap cursor to the bottom of the canvas when sync is out of bounds

* Fix snapshot
2021-11-05 18:52:40 +01:00
Giordano Ricci
d69ffe0e44 Chore: cleanup ES query_builder test (#41360) 2021-11-05 17:42:00 +00:00
Ivana Huckova
2daae9eba8 Prometheus: Fix showing of errors (#41356)
* Prometheus: Fix showing of errors

* Refactor and add comment
2021-11-05 18:00:48 +01:00
renovate[bot]
998aa42e5c Update dependency lru-cache to v6 (#41327)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-05 16:39:27 +01:00
Ryan McKinley
3489721ed6 api/ds/query: simplify data sources lookup for queries and expressions (#41172) 2021-11-05 08:12:55 -07:00
kay delaney
c8b7373016 A11y/UserAdminPage: Improves tab navigation and focus management (#41321) 2021-11-05 14:45:00 +00:00
Gábor Farkas
f3f57d3d6e influxdb: improved explanation texts (#41351)
* influxdb: improved explanation texts

* fixed tests
2021-11-05 15:42:54 +01:00
Gábor Farkas
c64997332d prometheus: monaco: fix a corner-case with quotes (#41345) 2021-11-05 15:11:19 +01:00
Will Browne
8a42fca485 process app plugins first (#41346) 2021-11-05 15:07:53 +01:00
Will Browne
14742ea44a add oauth pass thru logic to api/ds/query (#41352) 2021-11-05 15:07:04 +01:00
Agnès Toulet
3a6b8535b1 API: return resource ID when deleting datasource with UID and library element (#41342)
* API: return resource ID when deleting datasource and library element

* keep status codes consistent

* fix element ID

* add test

* improve response struct

* update endpoints documentation

* LibraryElementIDResponse -> DeleteLibraryElementResponse
2021-11-05 15:06:14 +01:00
Dawnpool
e0ad74a815 Update config-from-query.md (#41333) 2021-11-05 09:46:42 -04:00
Dan Cech
993cb80fea streamline kbn.addSlashes and add a test, streamline escaping in angular tip() function (#41066)
* streamline kbn.addSlashes and add a test, streamline escaping in angular tip() function
* switch to double-html-encoding when building intermediate string
2021-11-05 09:18:42 -04:00
Giordano Ricci
d524dc6108 Elasticsearch: use field configured in query editor as field for date_histogram aggregations (#41258)
* Elasticsearch: use field configured in query editor as field for date_histogram aggregations

* add tests
2021-11-05 12:11:07 +00:00
Erik Sundell
a852ddc10d CloudMonitoring: Ignore min and max aggregation in MQL queries (#41302)
* ignore min and max aggregations in mql queries

* refine comment

* moving continuation check to the top of the loop

* remove empty line

* lint issue
2021-11-05 13:09:22 +01:00
Erik Sundell
07754351b7 Azure monitor: Make sure alert rule editor is not enabled when template variables are being used (#41335)
* check if variable exist in query

* add tests

* pr feedback
2021-11-05 12:21:28 +01:00
Josh Hunt
cbc00babe4 Dashboards: Fix 'Copy' from being appended to new dashboard titles (#41344) 2021-11-05 11:05:47 +00:00
renovate[bot]
725c113691 Update dependency md5-file to v5 (#41336)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-05 10:41:05 +00:00
Gábor Farkas
eec7b9d325 prometheus: monaco: better suggestions inside quotes (#41262)
* prometheus: monaco: better suggestions inside quotes

* add double-quote as trigger character

* moved comment to correct place
2021-11-05 10:13:55 +01:00
Alexander Emelin
345f0b658d Live: crud for remote write backends (#40147) 2021-11-05 12:13:40 +03:00
Gábor Farkas
ec63b28621 prometheus: monaco: do not show automatic suggestions (#41253)
* prometheus: monaco: do not show automatic suggestions

* updated comments
2021-11-05 10:09:11 +01:00
ying-jeanne
a404a311da add context in the alert_notification (#41307) 2021-11-05 16:41:24 +08:00
renovate[bot]
c19d628ab6 Update dependency lint-staged to v11 (#41325)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-05 09:07:08 +01:00
Yuriy Tseretyan
610643a668 Alerting: Special alert instance if rule is in state NoData (#40540)
* do not suppress NoData state
* extract conversion of state to postable alert + tests
* create a special alert instance if nodata 
* use NoData when converting from Keep Last State instead of Alerting
* add silence during migration if NoData is mapped to KeepLastState.
2021-11-04 16:42:34 -04:00
Torkel Ödegaard
b2447d3956 DataSourceRef: Fixes migrations for mixed data source panels & queries and adds unit tests for data source ref migration (#41245)
* DataSourceRef: Fixes migrations for mixed data source panels & queries and adds unit tests for data source ref migration

* Fixing tests and migration logic a bit more

* use helper functions

* simplify migration logic

* Fixing test

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-11-04 21:37:03 +01:00
Torkel Ödegaard
59c97bb1b2 DataSourceVariables: Fix storing uninterpolated datasource in ds ref uid prop (#41248)
* DataSourceVariables: Fix storing uninterpolated datasource in ds ref uid prop

* better variable name

* Fix issue changing from data source variable to specific data source of the same type

* revert name change

* Update public/app/features/plugins/datasource_srv.ts

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

* Simply logic and remove deep clone

* updated comment

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-11-04 21:36:40 +01:00
Yuriy Tseretyan
1b5b747885 Alerting: Additional Tests for State Manager (#41291)
* rename fakeInstanceStore to FakeInstanceStore

* update test for state manager to initialize instance store with FakeInstanceStore
2021-11-04 15:15:56 -04:00
renovate[bot]
e973b933f3 Update dependency emotion to v11 (#41134)
* Update dependency emotion to v11

* Chore(renovate): Use correct emotion imports

* kick drone

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-11-04 17:54:49 +00:00
renovate[bot]
9b2ac8adde Chore(renovate): Ignore d3-interpolate until we move to esm modules (#41005)
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-11-04 17:53:57 +00:00
Tania B
e81d434edf Encryption: Extend secrets service to support registering key providers (#40626)
* Draft adding kms providers

* Rename defaultProvider to currentProvider

* Add getting current provider from config

* Remove comments

* Make current provider service struct field

* Add methods to secrets service

* Test getting current provider

* Implements missing methods for fake secrets service

* Remove accidental changes

* Fix linter issue

* Update configuration examples

* Rename CurrentProvider method

* Split service interface

* Update wire

Co-authored-by: spinillos <selenepinillos@gmail.com>
2021-11-04 19:25:01 +02:00
carrieedwards
9f205cf1d7 Graphite: Add from and until params to tag handling methods (#41319) 2021-11-04 18:17:21 +01:00
renovate[bot]
07d3bde4eb Update dependency eslint-plugin-prettier to v4 (#40884)
* Update dependency eslint-plugin-prettier to v4

* Bump eslint to 7.28.0

* Chore(renovate): Commit lockfile update

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: kay delaney <kay@grafana.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-11-04 16:54:23 +00:00
Tania B
5652bde447 Encryption: Use secrets service (#40251)
* Use secrets service in pluginproxy

* Use secrets service in pluginxontext

* Use secrets service in pluginsettings

* Use secrets service in provisioning

* Use secrets service in authinfoservice

* Use secrets service in api

* Use secrets service in sqlstore

* Use secrets service in dashboardshapshots

* Use secrets service in tsdb

* Use secrets service in datasources

* Use secrets service in alerting

* Use secrets service in ngalert

* Break cyclic dependancy

* Refactor service

* Break cyclic dependancy

* Add FakeSecretsStore

* Setup Secrets Service in sqlstore

* Fix

* Continue secrets service refactoring

* Fix cyclic dependancy in sqlstore tests

* Fix secrets service references

* Fix linter errors

* Add fake secrets service for tests

* Refactor SetupTestSecretsService

* Update setting up secret service in tests

* Fix missing secrets service in multiorg_alertmanager_test

* Use fake db in tests and sort imports

* Use fake db in datasources tests

* Fix more tests

* Fix linter issues

* Attempt to fix plugin proxy tests

* Pass secrets service to getPluginProxiedRequest in pluginproxy tests

* Fix pluginproxy tests

* Revert using secrets service in alerting and provisioning

* Update decryptFn in alerting migration

* Rename defaultProvider to currentProvider

* Use fake secrets service in alert channels tests

* Refactor secrets service test helper

* Update setting up secrets service in tests

* Revert alerting changes in api

* Add comments

* Remove secrets service from background services

* Convert global encryption functions into vars

* Revert "Convert global encryption functions into vars"

This reverts commit 498eb19859.

* Add feature toggle for envelope encryption

* Rename toggle

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
Co-authored-by: Joan López de la Franca Beltran <joanjan14@gmail.com>
2021-11-04 18:47:21 +02:00
renovate[bot]
9e29484c80 Chore(renovate): Ignore d3-scale-chromatic until we move to esm modules (#40819)
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-11-04 16:35:47 +00:00
Ryan McKinley
70e92ef987 Transformations: support a rows mode in labels to fields (#41020) 2021-11-04 17:12:01 +01:00
Guilherme Caulada
aac3f88603 Fix binaries copy step on dockerfile (#41281) 2021-11-04 12:35:32 -03:00
Jack Westbrook
ab3ba4743d Chore: Bump prismjs from 1.24.0 to 1.25.0 in grafana/ui (#41310) 2021-11-04 15:30:34 +01:00
Guilherme Caulada
3cefa0bbba Add support for local Makefile to docker (#41296) 2021-11-04 11:13:10 -03:00
Torkel Ödegaard
fb5a65d9be ValueMappings: Value mappings field config defaults should not apply to time field (#41132) 2021-11-04 14:50:42 +01:00
Ivana Huckova
2c209e735c Prometheus: Rename step in explore to min step (#41209)
* Prometheus: Make it clear that step in explore is min step

* Fix width

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

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

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-11-04 13:19:44 +01:00
Sofia Papagiannaki
603dae33d6 Fix test (#41287) 2021-11-04 12:22:33 +01:00
idafurjes
da5033f3fb Chore: Add context to temp user (#41284)
* Add context to temp user

* Remove xorm and InTransaction
2021-11-04 11:17:07 +01:00
Oscar Kilhed
b82797d1b0 BarChart: rotate barchart x axis labels (#40299)
* GraphNG: add axes label rotation property

* Adds rotation option and adds padding to avoid clipping labels

* Slider: Enable slider marks display (#41275)

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2021-11-04 10:59:15 +01:00
Emil Tullstedt
3b637f4b44 Access control: Redirect non-API calls (#41100) 2021-11-04 09:59:52 +01:00
Guilherme Caulada
5afaf8930c Add monthlyActiveUsers to stats API and usage report (#41289)
Closes grafana/grafana-enterprise-partnerships-team#7
2021-11-03 18:59:05 -03:00
Nathan Rodman
e8e84f9c23 Alerting: UI for contact point testing with custom annotations and labels (#40491)
* Support custom annotations and labels when testing contact points

* Add modal for testing contact point

* add option for custom notification type

* use annotation and labels fields from rule editor

* update receivers test for new contact point testing method

* rename modal and remove reserved keys for annotations

* add docs for testing contact points

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

Co-authored-by: George Robinson <george.robinson@grafana.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-11-03 09:57:59 -07:00
Sarah Zinger
863f8aea2f Fix bug that was breaking aws-sdk ConnectionConfig (#41215)
Fix bug that was breaking aws-sdk ConnectionConfig
2021-11-03 11:21:36 -04:00
Andrej Ocenas
5f27959a5e Tempo: Add links to nodes in Service Graph pointing to Prometheus metrics (#41135) 2021-11-03 15:56:39 +01:00
renovate[bot]
7f74102bc1 Update dependency jest-junit to v13 (#41259)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-03 14:42:06 +00:00
Dimitris Sotirakis
7465716086 ReleaseNotes: Update release notes for v8.2.3 (#41269)
* ReleaseNotes: Updated release notes for v8.2.3

* Update release-notes-8-2-3.md

* Update CHANGELOG.md
2021-11-03 15:38:19 +01:00
Tania B
da39c6ce55 Settings: Add a method to Provider interface to check if a feature is enabled (#41250)
* Settings: Add method to Provider interface to get feature toggles

* Apply review comment
2021-11-03 16:37:16 +02:00
Alexandre de Verteuil
1c3c1a52bb Update opt-in.md (#41216)
Need to change that `true` to `false`.
2021-11-03 09:53:47 -04:00
Jamie Shears
bb079641d7 NewsPanel: Prevent small titles being split onto multiple lines (#41193) 2021-11-03 13:53:37 +00:00
idafurjes
9340430723 Chore: Add alert ctx (#41161)
* Add context for alert

* Remove context.TODO

* Remove xorm

* Remove context.TODO

* Fix UsageStatsQuerier interface
2021-11-03 14:10:39 +01:00
Agnès Toulet
0997065e04 Navigation: remove redundant config nav link (#41252) 2021-11-03 14:07:58 +01:00
Hugo Häggmark
4c727248a3 Chore: Fix for query variables using DataSourceRef (#41255) 2021-11-03 13:14:22 +01:00
renovate[bot]
18151ce652 Update dependency inquirer to v8 (#41240)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-03 11:41:21 +00:00
Josh Hunt
9fc5193ecd Dashboard: Disable image renderer link for unsaved dashboards (#41249) 2021-11-03 12:17:16 +01:00
Zoltán Bedi
f8d75726e7 Graph panel: listen to events from timeseries panel (#41033)
* TimeSeries: share cursor with old graph

* Typo fix

* Fix typecheck errors

* Revert "TimeSeries: share cursor with old graph"

This reverts commit 1e7dd4f627.

* Graph: subscribe to DataHoverEvent

* Revert "Fix typecheck errors"

This reverts commit 737c8ea8c1.
2021-11-03 11:49:37 +01:00
idafurjes
47f6bb3583 Chore: Add context to org (#40685)
* Add context to org

* Rebase

* Fix rebase
2021-11-03 11:31:56 +01:00
Gábor Farkas
91da1bbb79 prometheus: monaco: allow listing label names + values without a metric (#41233)
* prometheus: monaco: allow listing label names + values without a metric

* removed comment
2021-11-03 11:20:04 +01:00
Gábor Farkas
72ae3235fa prometheus: monaco: autocomplete: offer function-names in functions (#41212) 2021-11-03 10:56:43 +01:00
Gábor Farkas
244e149c34 prometheus: query-field: monaco: implement open-help-by-default (#41112)
* prometheus: query-field: monaco: implement open-help-by-default

* better comment

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

* fixed typo in comment

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

* better log-message

* fixed comment spelling

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

* better setting

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
2021-11-03 10:55:07 +01:00
Ilya Stoliar
a5f747104c CloudWatch: Adde AWS Global Accelerator metrics and dimensions (#41236) 2021-11-03 10:44:49 +01:00
Oscar Kilhed
43bd32206f Barchart/Time series: Allow x axis label (#41142) 2021-11-03 09:42:07 +01:00
renovate[bot]
be5dafb980 Update dependency @types/marked to v3 (#41234)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-03 09:37:08 +01:00
renovate[bot]
553197c6a9 Update dependency http-server to v14 (#41204)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-03 08:57:18 +01:00
Ilya Stoliar
f5b9515643 CloudWatch: Add AWS Transfer metrics and dimension (#41168)
What this PR does / why we need it:
Adding AWS Transfer metics according to:
https://docs.aws.amazon.com/transfer/latest/userguide/monitoring.html#metrics

Which issue(s) this PR fixes:
No issue

Special notes for your reviewer:
Based on AWS documentation only, I didn't tried to monitor AWS Transfer myself
2021-11-03 08:41:36 +01:00
renovate[bot]
651ab98e66 Update dependency fast-json-patch to v3 (#40886)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-03 08:40:17 +01:00
Hugo Häggmark
f5ab8c147a Chore: fixes DataSourceRef for adhoc variables (#41232)
* Chore: fixes DataSourceRef for adhoc variables

* Chore: fix path to packages
2021-11-03 08:02:51 +01:00
Ashley Harrison
bac6168e62 Update Select.mdx (#41205)
* Update Select.mdx

* kick drone
2021-11-02 21:28:13 +00:00
Yuriy Tseretyan
8a88caaa71 Alerting: Rule evaluation loop refactoring (#40238)
* move evaluation function out of loop
* extract updateRule function
* isolate alertRule change. update returns new rule and the evaluation accepts the rule as argument
* extract retry loop into a function
* add function wide log context.
* refactor metrics + add tests + replace timeNow with schedule.clock
2021-11-02 17:04:13 -04:00
Sarah Zinger
3da4e1cdcd Azure Monitor: Add Resource Picker to Template Variable Query Editor (#40841)
Azure Monitor: Add Resource Picker to Template Variable Query Editor
- Should fix bug related broken template variables that relied on a deprecated default workspace.
2021-11-02 15:30:15 -04:00
Giordano Ricci
7b7c193551 Elasticsearch: Add time zone setting to Date Histogram aggregation (#40882)
* TimeZonePicker: Allow specifying internal timezones to display

* Elasticsearch: Add time zone setting to Date Histogram aggregation

* rename time_zone to timeZone

* Add tests

* fix typo

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

Co-authored-by: Chris Cowan <chris@chriscowan.us>

Co-authored-by: Chris Cowan <chris@chriscowan.us>
2021-11-02 16:18:39 +00:00
Ivana Huckova
de83e5702c Prometheus: Run annotation queries trough backend (#41059)
* Prometheus: Run annotation queries trough backend

* Be more explicit on what type of query we are running

* Fix typing, remove unused variables
2021-11-02 16:46:20 +01:00
Ashley Harrison
e0b2e0b152 Annotations: Ensure legacy annotation editors are cleaned up properly when switching datasource (#41115)
* Annotations: Ensure Angular-based annotation editors are cleaned up properly

* Annotations: Remove ng-if instead of wrapping in div
2021-11-02 15:30:20 +00:00
kay delaney
3c5003373c A11y: Fix various fastpass accessibility issues (#41154) 2021-11-02 15:27:07 +00:00
Josh Hunt
14ddb2939c Chore: Enable strict Typescript checks (#41198)
* Chore: Enable strict Typescript checking

* Chore: Remove old strict budget checks
2021-11-02 15:23:44 +00:00
Ashley Harrison
eb223a6645 LibraryPanels: Ensure the list can be fully scrolled when adding a library panel (#41196) 2021-11-02 15:21:11 +00:00
ying-jeanne
cedbddafe3 removing the log function after enterprise repo update (#41197) 2021-11-02 22:39:55 +08:00
Isabella Siu
96f37b3f30 CloudMonitoring: use CallResourceHandler instead of PluginProxy (#41064) 2021-11-02 10:37:02 -04:00
Domas
69fe2def89 Alerting: Fix duplicating queries in rule editor (#41091) 2021-11-02 15:18:35 +01:00
Gábor Farkas
28ae9f1bdd prometheus: query-editor: refactor: rename intent to situation (#41079)
* prometheus: query-editor: refactor: rename intent to situation

* fixed forgotten rename
2021-11-02 15:09:35 +01:00
Gábor Farkas
0b61d83739 renovate: block updating eslint for now (#41199) 2021-11-02 15:06:07 +01:00
Dimitris Sotirakis
d85b4dc7a8 CI: Update grafana/build-container version (#41191)
* Update node and yarn versions

* Update drone yaml
2021-11-02 13:52:16 +00:00
Josh Hunt
cb948d10e0 CloudWatch: Fix strict Typescript errors (#41160)
* CloudWatch: Fix strict typscript errors

* Update public/app/plugins/datasource/cloudwatch/components/ConfigEditor.tsx

Co-authored-by: Sarah Zinger <sarahzinger@users.noreply.github.com>

* Chore: reduce strict error

* Update ci-check-strict.sh

Co-authored-by: Sarah Zinger <sarahzinger@users.noreply.github.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@gmail.com>
2021-11-02 13:16:46 +00:00
Santiago
6987ad7b4d Fix issues with invalid Slack contact points (#41062)
* Add validation when creating/updating a contact point

* Change 201 status code for 200 (as it was before)
2021-11-02 10:11:19 -03:00
Marcus Efraimsson
f6be78b5ae Chore: Propagate context for plugin settings (#41166)
Ref #36734
2021-11-02 13:42:55 +01:00
Marcus Efraimsson
1a89d97fed Chore: Propagate context for preferences (#41167)
Ref #36734
2021-11-02 13:41:45 +01:00
Marcus Andersson
ad888813c6 PluginsCatalog: Fix so we display the correct badges when a plugin is disabled. (#41159) 2021-11-02 13:41:08 +01:00
Dimitris Sotirakis
8a3e192e6a InfluxDB: Fix regular expression to parse aliases according to documentation (#41186)
* Fix regular expression to parse aliases that start with either square brackets or dollar sign

* Fix lint
2021-11-02 13:26:11 +01:00
Gábor Farkas
c788e2f8e8 prometheus: monaco editor: visual fixes (#41184)
* prometheus: monaco editor: visual fixes

* fixed typo in comment

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

* more comments added

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
2021-11-02 12:44:51 +01:00
Ashley Harrison
c45c246646 Chore(Linting): Remove js/ts files from prettier as they're already linted by eslint (#40459) 2021-11-02 11:25:12 +00:00
Ashley Harrison
727a4bd9e4 Navigation: New NavBar designs behind feature toggle (#41045)
* Navigation: Remove plus button behind feature toggle

* Navigation: Add home button behind feature toggle

* Navigation: Move settings/admin to bottom section behind feature toggle

* Navigation: Refactor grafana logo to be a NavBarItem

* Navigation: Create new PluginSection and styling changes to support new sections

* Navigation: Hack to use mobile menu as a mega menu for now

* Navigation: Only render plugin section if there are items

* Navigation: mobile menu is always 100% width if toggle is off

* Navigation: Reset width back to 48 and fix broken css property

* Navigation: Create generic NavBarSection component to reduce repetition

* Navigation: Don't show sublinks for core items

* Navigation: Comments from UX review

* Navigation: Remove mobile menu hack

* Navigation: Unit tests for enrichConfigItems and other minor review comments

* Navigation: Move section logic to backend

* Navigation: Refactor alerting links out into a separate function

* Navigation: More tests for isLinkActive

* Linting...

* Navigation: Create new NavBar component for when feature toggle is enabled
2021-11-02 11:19:18 +00:00
Dimitris Sotirakis
469a5e4a85 Comment out "Queries with new datasource ref object" test (#41187) 2021-11-02 13:09:51 +02:00
Piotr Jamróz
f1837b5742 Elastic: Full range logs volume (#40700)
* Add basic implementation for logs volume

* Fix aggregation

* Move getFieldConfig

* Remove duplicated aggregation logic

* Extra querying logic

* Simplify querying logic

* Update logs volume aggregation tests

* Remove bar max width and width factor

* Clean up

* Skip level aggregation if it's not configured

* Post merge fix for aggregation

* Fix tests

* Clean up the code

* Ensure logs without level are aggregated as unknown category

* Use LogLevel.unknown

* Fix strict TS errors
2021-11-02 11:53:47 +01:00
Jack Westbrook
1767e6aab6 Chore: bump Husky to v7 (#40797)
* chore: bump husky to v7 according to husky migration guide

* chore(renovate): remove husky from list of ignored deps
2021-11-02 11:53:27 +01:00
Jack Westbrook
f2f31f60f2 Chore: Bump rollup and rollup plugins to latest (#40800) 2021-11-02 11:10:32 +01:00
Zoltán Bedi
6675b084bd Chore: Upgrade grafana-eslint to latest (#41179) 2021-11-02 10:20:41 +01:00
Will Browne
2faf3b6a31 rearrange log statements for log15 (#41137) 2021-11-02 10:20:17 +01:00
Luis Filipe Pessoa
0599b6180f Changing 'Save' button style to primary (#41144)
Changing 'Save' button style to primary according to Figma design.
2021-11-02 11:08:16 +02:00
Ryan McKinley
d360e48174 MixedDatasource: fix datasource selection after edit (#41178) 2021-11-02 09:48:46 +01:00
Zoltán Bedi
85f2c48448 Toolkit: Don't to show console errors in tests (#41078) 2021-11-02 08:38:46 +01:00
Ryan McKinley
231f17ab20 PanelEditor: remove showCategory on exit (#41174) 2021-11-02 00:33:36 -07:00
Ryan McKinley
340ed4125e DataSourceWithBackend: implement interpolateVariablesInQueries by default (#41152) 2021-11-02 00:29:52 -07:00
Hugo Häggmark
418059bc23 Variables: Adds change tracking (#41143)
* Variables: Adds change tracking

* Chore: fix strict error

* Chore: removes updating value from isDirty check
2021-11-02 06:26:16 +01:00
dsotirakis
778c860b3c Revert: Remove FocusConvey check 2021-11-01 20:07:28 +02:00
dsotirakis
96541cf8d6 Remove FocusConvey check 2021-11-01 20:02:02 +02:00
An
fb75411ddc Resource Picker: update design and layout (#41046) 2021-11-01 10:21:43 -07:00
Alexander Emelin
9c160413f6 Live: adopt latest fixes from gin route tree (#41141) 2021-11-01 20:02:03 +03:00
renovate[bot]
c91bfcc1d6 Update dependency date-fns to v2 (#41027)
* Update dependency date-fns to v2

* Chore(dependencies): Update formatting used by date-fns

* kick drone

* Chore: Add parseISO to date strings passed to date-fn methods

* Prettier...

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-11-01 15:39:06 +00:00
Will Browne
8157d3564b remove println (#41139) 2021-11-01 14:55:07 +00:00
kay delaney
124c3f537f A11y: Fix misc. fastpass issues (#41088) 2021-11-01 14:45:23 +00:00
Marcus Andersson
d98cb8274c Docs: Fixed broken link in the plugin migration guide (#41148)
* fixed broken link.

* updated title of link.
2021-11-01 10:15:53 -04:00
Tim Levett
a81ca03302 Tooltips : Add ability to flag anchor tag as external link in a tooltip (#41014)
* sass: add in the option for extneral link color to tooltip anchor tag

* variable editor: change the link in the tool tip to external styling

* fixed class name to be the same as other instances of this
2021-11-01 09:14:53 -05:00
Serge Zaitsev
993c60d36e Chore: Remove GoConvey dependency (#41146) 2021-11-01 14:56:18 +01:00
renovate[bot]
68c5f43468 Chore(dependencies): Ignore globby until we move to esm modules (#40914)
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-11-01 13:14:37 +00:00
Dimitris Sotirakis
5e813ea454 Add isl and expat libs as tarballs explicitly (#41138) 2021-11-01 15:12:16 +02:00
Will Browne
1f6965e859 fix homepath for enterprise e2e tests (#41140) 2021-11-01 13:48:52 +01:00
Josh Hunt
419c465edf Grafana-UI: Editor UI components (#41136)
* Grafana-UI: Update theme.spacing to support string value when called with just one arugment

This allows theme.spacing("auto") to be valid

* Grafana-UI: Support width="auto" for Select component

This allows for inline Selects that are sized based on their content,
rather than occupying block-width

* Add toOption for creating Select options to @grafana/data

* Add test util
2021-11-01 12:06:28 +01:00
Serge Zaitsev
7b15cd0ed2 Chore: Refactor GoConvey in provisioning package (#40892)
* refactor goconvey in some provisioning subpackages

* fix goconvey in provisioning/datasources

* remove goconvey from notifiers subpackage

* finally resolve goconvey in dashboards subpackage
2021-11-01 11:31:55 +01:00
Will Browne
b80fbe03f0 Plugins: Refactor Plugin Management (#40477)
* add core plugin flow

* add instrumentation

* move func

* remove cruft

* support external backend plugins

* refactor + clean up

* remove comments

* refactor loader

* simplify core plugin path arg

* cleanup loggers

* move signature validator to plugins package

* fix sig packaging

* cleanup plugin model

* remove unnecessary plugin field

* add start+stop for pm

* fix failures

* add decommissioned state

* export fields just to get things flowing

* fix comments

* set static routes

* make image loading idempotent

* merge with backend plugin manager

* re-use funcs

* reorder imports + remove unnecessary interface

* add some TODOs + remove unused func

* remove unused instrumentation func

* simplify client usage

* remove import alias

* re-use backendplugin.Plugin interface

* re order funcs

* improve var name

* fix log statements

* refactor data model

* add logic for dupe check during loading

* cleanup state setting

* refactor loader

* cleanup manager interface

* add rendering flow

* refactor loading + init

* add renderer support

* fix renderer plugin

* reformat imports

* track errors

* fix plugin signature inheritance

* name param in interface

* update func comment

* fix func arg name

* introduce class concept

* remove func

* fix external plugin check

* apply changes from pm-experiment

* fix core plugins

* fix imports

* rename interface

* comment API interface

* add support for testdata plugin

* enable alerting + use correct core plugin contracts

* slim manager API

* fix param name

* fix filter

* support static routes

* fix rendering

* tidy rendering

* get tests compiling

* fix install+uninstall

* start finder test

* add finder test coverage

* start loader tests

* add test for core plugins

* load core + bundled test

* add test for nested plugin loading

* add test files

* clean interface + fix registering some core plugins

* refactoring

* reformat and create sub packages

* simplify core plugin init

* fix ctx cancel scenario

* migrate initializer

* remove Init() funcs

* add test starter

* new logger

* flesh out initializer tests

* refactoring

* remove unused svc

* refactor rendering flow

* fixup loader tests

* add enabled helper func

* fix logger name

* fix data fetchers

* fix case where plugin dir doesn't exist

* improve coverage + move dupe checking to loader

* remove noisy debug logs

* register core plugins automagically

* add support for renderer in catalog

* make private func + fix req validation

* use interface

* re-add check for renderer in catalog

* tidy up from moving to auto reg core plugins

* core plugin registrar

* guards

* copy over core plugins for test infra

* all tests green

* renames

* propagate new interfaces

* kill old manager

* get compiling

* tidy up

* update naming

* refactor manager test + cleanup

* add more cases to finder test

* migrate validator to field

* more coverage

* refactor dupe checking

* add test for plugin class

* add coverage for initializer

* split out rendering

* move

* fixup tests

* fix uss test

* fix frontend settings

* fix grafanads test

* add check when checking sig errors

* fix enabled map

* fixup

* allow manual setup of CM

* rename to cloud-monitoring

* remove TODO

* add installer interface for testing

* loader interface returns

* tests passing

* refactor + add more coverage

* support 'stackdriver'

* fix frontend settings loading

* improve naming based on package name

* small tidy

* refactor test

* fix renderer start

* make cloud-monitoring plugin ID clearer

* add plugin update test

* add integration tests

* don't break all if sig can't be calculated

* add root URL check test

* add more signature verification tests

* update DTO name

* update enabled plugins comment

* update comments

* fix linter

* revert fe naming change

* fix errors endpoint

* reset error code field name

* re-order test to help verify

* assert -> require

* pm check

* add missing entry + re-order

* re-check

* dump icon log

* verify manager contents first

* reformat

* apply PR feedback

* apply style changes

* fix one vs all loading err

* improve log output

* only start when no signature error

* move log

* rework plugin update check

* fix test

* fix multi loading from cfg.PluginSettings

* improve log output #2

* add error abstraction to capture errors without registering a plugin

* add debug log

* add unsigned warning

* e2e test attempt

* fix logger

* set home path

* prevent panic

* alternate

* ugh.. fix home path

* return renderer even if not started

* make renderer plugin managed

* add fallback renderer icon, update renderer badge + prevent changes when renderer is installed

* fix icon loading

* rollback renderer changes

* use correct field

* remove unneccessary block

* remove newline

* remove unused func

* fix bundled plugins base + module fields

* remove unused field since refactor

* add authorizer abstraction

* loader only returns plugins expected to run

* fix multi log output
2021-11-01 10:53:33 +01:00
Piotr Jamróz
f4282571c7 Chore: Fix NodeGraph useCallback dependencies (#41105) 2021-11-01 10:52:34 +01:00
Will Browne
76d88a6cec change log level to debug (#41102) 2021-11-01 09:00:00 +00:00
renovate[bot]
134c64f1a5 Update dependency fork-ts-checker-webpack-plugin to v6 (#40891)
* Update dependency fork-ts-checker-webpack-plugin to v6

* Fix compatibility issue

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2021-11-01 09:25:55 +01:00
Nathan Marrs
268c20203b Canvas: Improve Selection System (#41065) 2021-10-29 14:32:52 -07:00
achatterjee-grafana
161d92e12f Added note. (#41118) 2021-10-29 15:13:29 -04:00
Ryan McKinley
7319efe077 Dashboard: replace datasource name with a reference object (#33817)
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
Co-authored-by: Elfo404 <me@giordanoricci.com>
2021-10-29 10:57:24 -07:00
achatterjee-grafana
61fbdb60ff Added note about small devices. (#41113) 2021-10-29 13:48:57 -04:00
Giordano Ricci
218aed324f Tempo: add info message about beut beta features (#41107) 2021-10-29 17:46:46 +02:00
Jesse Weaver
502169baa8 Fix K6 load test script (#38465)
K6 now requires that the path to the load test be prefixed with /.
2021-10-29 09:38:41 -06:00
Yuriy Tseretyan
a1e1a728ad Alerting: Update references to alertmanager (#40904)
* update module reference for alertmanager
* remove workaround
2021-10-29 10:03:51 -04:00
Gábor Farkas
24db1efa9d influxdb: influxql: fix table-format data processing with renamed time field (#41052) 2021-10-29 15:49:45 +02:00
Domas
05c18c330f update alertmanager data source docs (#41040) 2021-10-29 09:16:49 -04:00
Giordano Ricci
506779af98 Chore: explicitly set nodeLinker in yarnrc (#41089) 2021-10-29 13:32:50 +02:00
Marcus Andersson
f349b735fb CodeEditor: change so the code comments are aligned with our defaults. (#40763) 2021-10-29 13:24:49 +02:00
Tania B
ff086df3b5 Fix decrypting secrets in alerting migration (#41061) 2021-10-29 14:20:07 +03:00
Szymon Szypulski
b9e0a41f5a Cloudwatch: Add support for AWS/Backup metrics and dimensions (#41077)
Add AWS/Backup supported metrics and dimensions based on the official
AWS documentation.
2021-10-29 12:47:26 +02:00
Giordano Ricci
e375558fa5 Chore: Clenaup unused exports/modules in explore (#41072)
* Chore: remove unused files

* Chore: Remove unused explore  extports and files
2021-10-29 11:34:48 +01:00
Mitch Seaman
d069f0900e Update number of files that must be open (#41081)
2048 was not enough :)
2021-10-29 12:24:17 +02:00
Jack Westbrook
5d98155b5f Plugins Catalog: Set external manage link to installation tab (#40994)
* feat(catalog): set external manage link to installation tab

* fix(catalog): use pluginCatalogURL when getting external manage link
2021-10-29 12:23:05 +02:00
Giordano Ricci
914d8d6f15 Explore: fix footer margin in Query History (#40970) 2021-10-29 11:03:09 +01:00
Ashley Harrison
283c19a129 TimePicker: Clicking outside the TimePicker/TimePickerCalendar now pr… (#40956)
* TimePicker: Clicking outside the TimePicker/TimePickerCalendar now properly dismisses the popup

* Slightly tidier syntax

* Don't forget to lint...
2021-10-29 10:31:56 +01:00
Dominik Prokop
afdd9b2455 Angular: only bootstrap the root application element (#40822)
* Angular: Do not bootstrap Angular against entire document

* Do not retrieve injector by using angular instance directly.
2021-10-29 11:31:41 +02:00
Ashley Harrison
67861c72d2 Update CODEOWNERS (#41026) 2021-10-29 10:19:26 +01:00
Gábor Farkas
fcaf9e68ee prometheus: monaco: stricter autocomplete and handle space (#41028)
* prometheus: monaco: stricter autocomplete

* autocomplete on space
2021-10-29 08:22:40 +02:00
ArturWierzbicki
e8a30f651e Live: Extract scopes from CentrifugeSrv (#41051)
* Refactor: remove `scopes` from CentrifugeSrv, remove dependencies on window/config/user context

* Refactor: add GrafanaLiveChannelConfigService to wrap direct access to *Scope classes

* Refactor: added GrafanaLiveService acting like a proxy to GrafanaLiveSrv + LiveChannelConfigSrv

* Refactor: live module instantiation

* Refactor: import fixes

* Fix: URL construction in centrifugeSrv
2021-10-28 21:48:57 +04:00
Ursula Kallio
ff8f98170c Use sentence case for consistency: (#40285)
For example, https://grafana.com/docs/grafana/next/http_api/access_control/ uses sentence case and the link text is inconsistent.
2021-10-28 19:26:23 +02:00
Nathan Marrs
84d13c3f35 Canvas: add layer elements editor functionality (#40968) 2021-10-28 09:58:31 -07:00
Derik Evangelista
97e0e12f40 Tables: fix sorting for NaN values (#40938)
Fixes #37236

Signed-off-by: Derik Evangelista <derik.evangelista@grafana.com>
2021-10-28 16:58:08 +01:00
Sam Jewell
d6693ec90d Update brew install path in docs, for brew v3 (#40980)
* Update brew install path in docs, for brew v3

* Ran prettier.

Co-authored-by: achatterjee-grafana <aparajita.chatterjee@grafana.com>
Co-authored-by: kay delaney <kay@grafana.com>
2021-10-28 11:38:37 -04:00
Kevin Minehart
4c969081bc fix the root Dockerfile and add additional .dockerignore rules (#41006)
* fix the root Dockerfile and add additional .dockerignore rules

* Update go.mod/go.sum and ubuntu dockerfile
2021-10-28 09:41:10 -05:00
Devin Smith
8869df2ffe Loki/Prometheus: Improve facetting message in label browser (#40998)
* Chore: Improve Loki/Prometheus facetting message in label browser

* Chore: Remove uneeded console log and comment
2021-10-28 16:19:54 +02:00
Domas
05f22e5c7d remove explicit timeouts on receiver tests (#41032) 2021-10-28 14:55:43 +03:00
Torkel Ödegaard
4c52ada7a9 Dashboard: Fixes lazy loading of panels not in view for mobile layout (#41009)
* Dashboard: Fixes lazy loading of panels not in view for mobile layout

* Refactoring and adding more comments

* Removed console.log
2021-10-28 13:02:01 +02:00
kay delaney
209122347c Chore: Fix broken enterprise builds (#41025) 2021-10-28 10:51:12 +01:00
renovate[bot]
3b91ce1b07 Update dependency @types/expect-puppeteer to v4 (#41000)
* Update dependency @types/expect-puppeteer to v4

* Chore: Remove @types/expect-puppeteer since it doesn't seem to be used/needed anywhere

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-10-28 10:36:54 +01:00
Marcus Efraimsson
2d2f7afbde Chore: Propagate context for search (#41010)
Propagate context for search.Query, FindPersistedDashboardsQuery, 
GetUserStarsQuery. Followup on context.TODO added by #40810.

Ref #36734
2021-10-28 11:29:07 +02:00
Piotr Jamróz
877c726246 Loki: Use fixed bucket size for logs volume (#40873)
* Use fixed bucket size for logs volume

* Fix unit tests
2021-10-28 10:53:15 +02:00
Hugo Häggmark
fbd68c4e96 Dashboard: Fix repeats in snapshots (#41018) 2021-10-28 10:52:01 +02:00
Gábor Farkas
25fe5bc027 prometheus: autocomplete: handle label-ops better (#41004) 2021-10-28 10:39:26 +02:00
Torkel Ödegaard
eabaa3af2d E2E: Do not skip visualization suggestions (#40955)
* E2E: Do not skip visualization suggestions 

Was disabled because drone performance is so varied that it sometimes completes and sometimes needs a lot more time, trying to increase wait time and see if that helps.

* Made it possible to go directly to panel edit

* Fixes
2021-10-28 09:56:21 +02:00
Erik Sundell
7521d56cec CloudWatch: Handle nested panels when migrating CloudWatch queries (#40993)
* support nested targets when migrating cloudwatch queries

* cleanup

* use panelUpgrades array

* bump schema version number
2021-10-28 09:47:35 +02:00
Torkel Ödegaard
6a2dc11545 Buttons: Improves button styles to make them perfectly symmetrical (#40977)
* Buttons: Improves button styles to make them perfectly symmetrical

* Fixed icon vertical centering
2021-10-28 09:31:45 +02:00
nikki-kiga
963544ffe6 Transformations: Add gazetteer transformation (#40967) 2021-10-27 20:20:56 -07:00
Ryan McKinley
45e1765733 Geomap: support multiple layers (#40906) 2021-10-27 14:49:11 -07:00
achatterjee-grafana
14225b07b2 Docs: Cleanup alerting documentation, part 1 (#40737)
* First commit.

* Adding shared content.

* More changes.

* More changes

* Updated few more topics, fixed broken relrefs.

* Checking in changes.

* Some more topics scrubbed.

* Minor update.

* Few more changes.

* Index pages are finally somewhat sorted. Added relevant information and new topics.

* Updated Alert grouping.

* Last bunch of changes for today.

* Updated folder names, relrefs, and some topic weights.

* Fixed typo in L37, notifications topic.

* Fixed another typo.

* Run prettier.

* Fixed remaining broken relrefs.

* Minor reorg, added link to basics some overview topic.

* Some more re-org of the basics section.

* Some more changes.

* More changes.

* Update docs/sources/shared/alerts/grafana-managed-alerts.md

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

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

Co-authored-by: Eve Meelan <81647476+Eve832@users.noreply.github.com>

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

Co-authored-by: Eve Meelan <81647476+Eve832@users.noreply.github.com>

* Update docs/sources/alerting/unified-alerting/opt-in.md

Co-authored-by: Eve Meelan <81647476+Eve832@users.noreply.github.com>

* Update docs/sources/alerting/unified-alerting/notification-policies.md

Co-authored-by: Eve Meelan <81647476+Eve832@users.noreply.github.com>

* Update docs/sources/alerting/unified-alerting/alert-groups.md

Co-authored-by: Eve Meelan <81647476+Eve832@users.noreply.github.com>

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

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

* Update docs/sources/alerting/unified-alerting/alerting-rules/alert-annotation-label.md

Co-authored-by: Eve Meelan <81647476+Eve832@users.noreply.github.com>

* Update docs/sources/alerting/unified-alerting/alerting-rules/alert-annotation-label.md

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

* Update docs/sources/alerting/unified-alerting/alerting-rules/alert-annotation-label.md

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

* Update docs/sources/alerting/unified-alerting/alerting-rules/create-cortex-loki-managed-recording-rule.md

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

* Ran prettier and applied suggestion from code review.

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

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

* Update docs/sources/alerting/unified-alerting/contact-points.md

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

* Update docs/sources/alerting/unified-alerting/contact-points.md

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

* Change from code review. Also fixed typo "bos" in playlist topic.

* Ran prettier to fix formatting issues.

* Update docs/sources/alerting/unified-alerting/alerting-rules/edit-cortex-loki-namespace-group.md

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

* Update docs/sources/alerting/unified-alerting/contact-points.md

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

* Update docs/sources/alerting/unified-alerting/basics/alertmanager.md

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

* Update docs/sources/alerting/unified-alerting/basics/alertmanager.md

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

* Update docs/sources/alerting/unified-alerting/basics/evaluate-grafana-alerts.md

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

* Update docs/sources/alerting/unified-alerting/contact-points.md

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

* More changes from code review.

* Replaced drop down with drop-down

* Fix broken relrefs

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

Co-authored-by: Eve Meelan <81647476+Eve832@users.noreply.github.com>

* Update docs/sources/alerting/unified-alerting/alerting-rules/rule-list.md

Co-authored-by: Eve Meelan <81647476+Eve832@users.noreply.github.com>

* Few more.

* Couple more.

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>
Co-authored-by: Eve Meelan <81647476+Eve832@users.noreply.github.com>
2021-10-27 16:57:54 -04:00
Santiago
c9654c4bc0 Fix issues with Slack contact points (#40953)
* recipient validation regex modified, validation at creation/modification implemented

* Remove validation for recipient, fix tests

* Log level changed from Warn to Error
2021-10-27 13:58:37 -03:00
Guillaume GILL
7c5de96503 Auth: Omit all base64 paddings in JWT tokens for the JWT auth (#35602)
Omitting all base64 paddings (=) in JWT tokens.

Fixes #34496
2021-10-27 18:50:30 +02:00
Andrej Ocenas
00ffe1a4fd TraceView: Allow span links defined on dataFrame (#40563)
* Align range to seconds in log queries

* Use default display processor if there is none in FieldDisplayProxy

* Allow links defined in dataframe

* Remove debug log

* Fix typings for span links

* Lint go

* Fix tests

* Update tests

* Add test for the display proxy

* Streamline the fallback for diplayProcessor
2021-10-27 18:40:40 +02:00
Kevin Minehart
641a18b92e upgrade ncurses in docker image (#41002) 2021-10-27 18:03:09 +02:00
renovate[bot]
99b50ffa00 Update dependency @testing-library/dom to v8 (#40990)
* Update dependency @testing-library/dom to v8

* Update our use of useFakeTimers

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-10-27 16:57:20 +01:00
nikki-kiga
5449bd9ae7 Geomap: Add text labels layer (#40778)
* Geomap: add initial text labels layer

* add fontsize to text labels layer

* refactor feature styles in marker and text layers

* hide template and pick default field

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-10-27 08:46:32 -07:00
Ashley Harrison
3ed5ade78d Suggestions: Make the visualization suggestions more accessible (#40944)
* Suggestions: Make the visualization suggestions more accessible

* Reintroduce wrapping div to prevent title overlapping
2021-10-27 16:35:59 +01:00
Ryan McKinley
f52ec5e5b0 IconPanel: force 100% size (#40961) 2021-10-27 08:21:09 -07:00
renovate[bot]
5c72f3adbe Update dependency chalk to v4 (#40572)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-27 16:14:32 +01:00
Ashley Harrison
144e0c6ca3 Chore: fix lockfile (#40992) 2021-10-27 16:29:28 +02:00
Serge Zaitsev
995afa2221 Chore: Refactor GoConvey in auth package (#40850)
* refactor goconvey in auth package

* make linter happy
2021-10-27 16:08:21 +02:00
Selene
37cbed4b48 Rendering: Check if default image exists to avoid breaking reports if it's moved (#40930) 2021-10-27 16:08:03 +02:00
Will Browne
67449b95e9 dispatch with context where missing (#40810) 2021-10-27 15:57:06 +02:00
renovate[bot]
53b283ee01 Update dependency commander to v8 (#40707)
* Update dependency commander to v8

* Chore(dependencies): Changes needed to support Commander v8

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-10-27 14:54:10 +01:00
Santiago
16f4d02419 Alerting: specify Prometheus implementation in YAML example (docs) (#40474) 2021-10-27 10:48:37 -03:00
Armand Grillet
0189eaf76c Alerting: updated docs regarding multi-org AM (#40982) 2021-10-27 09:46:16 -04:00
kay delaney
3a7c5a0755 Chore: Switch yarn 2 to plug-n-play strategy (#40300) 2021-10-27 14:21:07 +01:00
Serge Zaitsev
690849cfd6 Chore: Refactor GoConvey in services dashboards package (#40895) 2021-10-27 08:17:50 -05:00
Serge Zaitsev
00da702970 Chore: Refactor GoConvey in the guardian package (#40898) 2021-10-27 07:45:20 -05:00
Gabriel MABILLE
f6a9132975 AccessControl: Add FGAC to orgs endpoints (#39579)
* AccessControl: Add FGAC to orgs endpoints

Co-authored-by: Karl Persson <kalle.persson@grafana.com>
Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
2021-10-27 13:13:59 +02:00
Serge Zaitsev
35432b1183 Chore: Refactor GoConvey in tsdb package (#40847) 2021-10-27 11:56:34 +02:00
Gábor Farkas
844d2c8621 prometheus: monaco: handle in-dashboard and in-explore use cases (#40922)
* prometheus: monaco: handle in-dashboard and in-explore use cases

* refactor is-explore handling

* improved comment

* removed unnecessary comment

* reordered props

* simplify code

* refactor: better prop-name

* fixed test snapshot
2021-10-27 11:45:32 +02:00
Gabriel MABILLE
a127e106db AccessControl: Create FGAC roles for orgs (#40526)
* AccessControl: Create FGAC roles for orgs

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-10-27 11:01:21 +02:00
Torkel Ödegaard
858d654d1c Barchart: Fixes barchart switching from palette to thresholds color mode (#40954) 2021-10-27 09:42:47 +02:00
Hugo Häggmark
fadf72dd34 DashboardLinks: Fix time in links not being updated (#40934) 2021-10-27 07:11:24 +02:00
Serge Zaitsev
24a74cd06e Chore: Refactor GoConvey tests in alerting/conditions (#40843)
* refactor goconvery tests

* use more meaningful assertion

* use more meaningful assertions
2021-10-26 23:24:58 +02:00
Skye
bce1011361 Alerting: Option for Discord notifier to use webhook name (#40463)
* Added an option to discord notifier to use discord's webhook name (useful for customizing notifications).

* Support ngalert system with discord username toggle

* Added ngalert discord test

* Apply suggestions from code review

Co-authored-by: gotjosh <josue.abreu@gmail.com>

* Docs updated with discord username setting

* Fix api integration test

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: gotjosh <josue.abreu@gmail.com>
2021-10-26 14:55:10 -04:00
Petros Kolyvas
dfbb3c4e23 Docs: Fix for clarifications about the image renderer (#40182)
* Added time range controls updates

* Added plugins catalog update

* Added enterprise images

* Added community contributions highlights for 8.2

* accessibility statement

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* Apply suggestions from code review

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

* Ran prettier:write to see if we can fix the issues

* Fix issues with template info

* Merge fix

* Template fix part 2

* What is a mergfix even

* Additional final fixes

* Markdown link error fix for time picker changes

* Ran prettier -w again to fix linting issues

* What's new fixes for image rendered

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-10-26 14:49:19 -03:00
Marcus Andersson
6e08e12749 Docs: Updated the plugin admin configuration default value (#40942) 2021-10-26 13:46:29 -04:00
Yuriy Tseretyan
6709359148 Alerting: Tests for rule evaluation routine (#40646)
* add fake stores to record queries
2021-10-26 13:22:07 -04:00
Marcus Andersson
49dee63453 added ownership of plugins management code to the plugins platform frontend squad. (#40939) 2021-10-26 18:38:20 +02:00
Serge Zaitsev
125e284da2 Chore: Refactor GoConvey in notification service package (#40897)
* refactor goconvey in notification service package

* avoid return after t.skip
2021-10-26 18:08:04 +02:00
Serge Zaitsev
1f1162f1d8 Chore: Refactor GoConvey in teamguardian package (#40896)
* refactor goconvey in teamguardian package

* use proper order of parameters in equality assertion

Co-authored-by: ying-jeanne <74549700+ying-jeanne@users.noreply.github.com>

Co-authored-by: ying-jeanne <74549700+ying-jeanne@users.noreply.github.com>
2021-10-26 17:59:37 +02:00
ying-jeanne
681218275e remove crit and trace (#40320) 2021-10-26 17:36:24 +02:00
Will Browne
728a59f013 bump for CVE-2021-37219 CVE-2021-32574 CVE-2021-36213 (#40947) 2021-10-26 17:20:55 +02:00
James Wang
41530482ec Plugins Catalog: Fix plugin details header styles (#40917) 2021-10-26 16:32:39 +02:00
Isabella Siu
8ee3afa4c3 CloudMonitoring: switch from ApplyRoute to AuthMiddleware (#40787) 2021-10-26 10:17:12 -04:00
Gábor Farkas
2c3b35df64 Explore: allow changing the graph type (#40522)
* explore: allow switching graph-styles

* refactor: simplify code

* adjust test to test a case that can really happen

* better generate-options approach

* explore: graph styles: remove url functionality

* not-stacked-bars should be filled
2021-10-26 15:51:59 +02:00
Marcus Andersson
fe11a31175 PluginsCatalog: disable post-installation steps if user does not have sufficient permissions (#40853)
* added missing permissions check

* moved the permission check to the datasource component.

* added test for checking permissions.

* added tests with different permissions.

* minor refactoring so the mockUserPermisson can be reused.
2021-10-26 15:18:12 +02:00
Ivana Huckova
92cd44940a Prometheus: Refactor backend for scalability for other query types (#40921)
* Prometheus: Refactor backend for scalability for other query types

* Fix linting
2021-10-26 14:47:40 +02:00
Serge Zaitsev
22b428836e Chore: Refactor GoConvey in setting package (#40861) 2021-10-26 13:19:07 +02:00
Serge Zaitsev
16046f6d43 Chore: Refactor GoConvey tests in mssql package (#40859) 2021-10-26 13:18:43 +02:00
Serge Zaitsev
249856e527 Chore: Refactor GoConvey in mysql package tests (#40855) 2021-10-26 13:18:17 +02:00
Andrej Ocenas
c9507f8f8a NodeGraph: Fix zooming sensitivity on touchpads (#40718) 2021-10-26 13:17:54 +02:00
Serge Zaitsev
a45861298f Chore: Refactor GoConvey in tsdb/es/client (#40846) 2021-10-26 13:15:47 +02:00
Serge Zaitsev
5409c88fb8 Chore: Refactor GoConvey in alerting tests (#40845) 2021-10-26 13:15:09 +02:00
Ivana Huckova
ce8e569700 Fix error reseting (#40893) 2021-10-26 13:07:11 +02:00
Zoltán Bedi
c43776aec3 Mixed-ds: Return both results from the same datasource (#39865)
* Mixed-ds: Return both results from the same datasource

* fix mixed data source

* Change concatMap to mergeMap

* Make sure to return correct state at the end

* Make sure to count the targets as well

* Use Marcus's version

* Fix stict error

* Apply suggestions from code review

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

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2021-10-26 12:54:22 +02:00
Chunlin Yang
54899f91ff Chore: Update Dockerfile to make it work (#40672) 2021-10-26 11:08:31 +01:00
Arie Heinrich
2343055dff grammer (#40903) 2021-10-26 12:07:19 +02:00
Andrej Ocenas
8cf7e520e8 CloudWatch Logs: Fix variable interpolation in queries (#40899)
* Interpolate variables in queries

* Remove test
2021-10-26 11:40:49 +02:00
renovate[bot]
0808ec927e Update dependency file-loader to v6 (#40890)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-26 09:22:43 +02:00
renovate[bot]
e117b8027b Update dependency eslint-config-prettier to v8 (#40863)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-25 16:42:48 +01:00
Josh Hunt
90b802a62d AzureMonitor: Prevent incomplete Logs queries from running (#40512)
* AzureMonitor: Prevent incomplete queries from running

* fix
2021-10-25 17:37:50 +02:00
Serge Zaitsev
a97e4d28a4 Chore: Refactor GoConvey in azuremonitor package (#40878) 2021-10-25 17:08:24 +02:00
renovate[bot]
448119c46b Update dependency eslint-plugin-jsdoc to v37 (#40880)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-25 15:28:02 +01:00
renovate[bot]
34e937d847 Chore: Ignore systemjs/d3-force type updates (#40518)
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-10-25 15:27:33 +01:00
Giordano Ricci
2ee54b7ffe Explore: Fix running queries without a datasource property set (#40805)
* Explore: Fix running queries without a datasource property set

* fix test

* adjust test
2021-10-25 14:25:17 +01:00
Gábor Farkas
cc271b0a42 Explore: rich history: add more tests (#40769)
* explore: rich history: add unit test

* explore: rich-history: added info comment

* improved comment

* better test names
2021-10-25 15:23:47 +02:00
renovate[bot]
cadfdab155 Update dependency @types/d3-interpolate to v3 (#40402)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-25 14:07:33 +01:00
Gábor Farkas
b5ae62d6ae grafana-ui: simplify and centralize monaco-theme-handling (#40643)
* grafana-ui: simplify and centralize monaco-theme-handling

* simplify code

* monaco: better theme-setup code

* eslint fix

* fix useEffect dependency
2021-10-25 14:55:39 +02:00
Peter Holmberg
57750639cd Alerting: Prevent alerting routes from working if alerting is not enabled (#40521)
* show alerting not enabled when not enabled

* correct navmodel index

* use correct config values
2021-10-25 14:40:45 +02:00
Ursula Kallio
68266d54be Change data source to database. (#40820) 2021-10-25 14:35:32 +02:00
Torkel Ödegaard
54af57b8e6 VisualizationSelection: Real previews of suitable visualisation and options based on current data (#40527)
* Initial pass to move panel state to it's own, and make it by key not panel.id

* Progress

* Not making much progress, having panel.key be mutable is causing a lot of issues

* Think this is starting to work

* Began fixing tests

* Add selector

* Bug fixes and changes to cleanup, and fixing all flicking when switching library panels

* Removed console.log

* fixes after merge

* fixing tests

* fixing tests

* Added new test for changePlugin thunk

* Initial struture in place

* responding to state changes in another part of the state

* bha

* going in a different direction

* This is getting exciting

* minor

* More structure

* More real

* Added builder to reduce boiler plate

* Lots of progress

* Adding more visualizations

* More smarts

* tweaks

* suggestions

* Move to separate view

* Refactoring to builder concept

* Before hover preview test

* Increase line width in preview

* More suggestions

* Removed old elements of onSuggestVisualizations

* Don't call suggestion suppliers if there is no data

* Restore card styles to only borders

* Changing supplier interface to support data vs option suggestion scenario

* Renamed functions

* Add dynamic width support

* not sure about this

* Improve suggestions

* Improve suggestions

* Single grid/list

* Store vis select pane & size

* Prep for option suggestions

* more suggestions

* Name/title option for preview cards

* Improve barchart suggestions

* Support suggestions when there are no data

* Minor change

* reverted some changes

* Improve suggestions for stacking

* Removed size option

* starting on unit tests, hit cyclic dependency issue

* muuu

* First test for getting suggestion seems to work, going to bed

* add missing file

* A basis for more unit tests

* More tests

* More unit tests

* Fixed unit tests

* Update

* Some extreme scenarios

* Added basic e2e test

* Added another unit test for changePanelPlugin action

* More cleanup

* Minor tweak

* add wait to e2e test

* Renamed function and cleanup of unused function

* Adding search support and adding search test to e2e test
2021-10-25 13:55:06 +02:00
renovate[bot]
91c0b5a47f Dependencies: Ignore d3-force for now (#40818)
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-10-25 11:49:24 +01:00
Gábor Farkas
9e030970aa prometheus: remove handling of control+enter (#40869)
we are standardizing on shift+enter
2021-10-25 12:20:13 +02:00
Jean-Philippe Quéméner
d1aefa1792 Alerting: fix ngalert alertmanager SQL Syntax Errors (#40827)
* test kvstore in intregration tests with different databases

* escape 'key' in delete query

* export quote and use it in kvstore
2021-10-25 11:53:41 +02:00
Marcus Efraimsson
889d4683a1 Datasources: Set response size metric based on actual bytes read (#40303)
Fixes #33372
2021-10-25 11:49:49 +02:00
renovate[bot]
c550c6c258 Update dependency concurrently to v6 (#40711)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-25 10:27:05 +01:00
Zoltán Bedi
e6d2324516 Time series/Bar chart panel: Add ability to sort series via legend (#40226)
* Make legend sorting work in Time series panel

* Import from schema

Add properties to the cue schema as well

* Order stacking

* Add tests for orderIdsByCalcs

* Add check for legend options

* Fix cue schema

* UI fixes

* Order bars as well in barchart

* Use different index when ordered

* Legend sort series doc

* Fix nits

* Update docs/sources/panels/legend-options.md

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

* Fix linting

* Apply suggestions from code review

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

* Update docs/sources/panels/legend-options.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-10-25 11:21:51 +02:00
Junya Hayashi
d5de885633 CloudMonitoring: Fix TypeError in annotation queries (#40740) 2021-10-25 10:53:08 +02:00
ArturWierzbicki
45a8701cb5 Chore: Updated the link to the plugin developer guide docs - it used to point to an old version (#40710) 2021-10-25 12:11:44 +04:00
Ryan McKinley
aeb868bb06 DataFrame: toDataFrame( ...) should support the query response payload (#40594) 2021-10-24 21:04:17 -07:00
renovate[bot]
f496c31018 Update dependency @types/jest to v27 (#40403)
* Update dependency @types/jest to v27

* Fix type errors

* Linting!

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-10-22 17:44:01 +01:00
Douglas Thrift
b78e563ab6 Transformers: Fix Labels to fields duplicates (#40779) 2021-10-22 09:25:37 -07:00
Ryan McKinley
814a78ba46 Value mappings: scroll values when many items exist (#40733) 2021-10-22 18:16:32 +02:00
Ryan McKinley
4680a8454f Live: add rule for datasource (#40738) 2021-10-22 08:56:16 -07:00
Santiago
1095f69740 Fix slack contact point panic (code review changes) (#40770)
* panic when unexpected Slack response fixed, tests added

* fix linting errors, add test

* Code review changes

* Apply PR comments

Co-authored-by: Armand Grillet <armand.grillet@outlook.com>
2021-10-22 17:23:22 +02:00
Ivana Huckova
0a97d0fff3 Prometheus: Change condition for exemplars availability (#40780) 2021-10-22 16:41:16 +02:00
Andrej Ocenas
73e66d97a5 Tempo: Add error metric to service graph (#40774)
* Add typings

* Query error metric for service graph
2021-10-22 16:37:41 +02:00
Kevin Minehart
ca4b35e596 Packaging: remove private users setting in systemd unit files (#40815)
* Remove privateusers=true from grafana-server.service
2021-10-22 16:19:55 +02:00
Ashley Harrison
e9df40d7d0 Chore: Ignore copy-webpack-plugin updates in toolkit (#40812)
* Chore(dependencies): Ignore updates to copy-webpack-plugin in @grafana/toolkit for now

* Chore(dependencies): Ignore updates to css-loader in @grafana/toolkit for now

Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
2021-10-22 15:03:47 +01:00
Giordano Ricci
35e2a3a126 Explore: fix history settings tab padding (#40752) 2021-10-22 12:47:48 +01:00
Igor Suleymanov
3f5dcbfdb5 Refactor Prometheus response handling and reduce allocations (#40765)
Signed-off-by: Igor Suleymanov <igor.suleymanov@grafana.com>
2021-10-22 12:34:21 +02:00
Torkel Ödegaard
a091d35f11 ErrorBoundary: Support recovering from errors in PanelChrome & PanelRenderer (#40785)
* ErrorBoundary: Support recovering from errors in PanelChrome & PanelRenderer

* Rename recover to dependencies

* Pushed an update that fixed test and adds new error mode to DebugPanel
2021-10-22 11:52:05 +02:00
Erin Noe-Payne
5af8d7de07 Prometheus: Remove limits on metrics, labels, and values in Metrics Browser (#40660)
Resolves #40479

Co-authored-by: Erin Noe-Payne <erin.noepayne@gmail.com>
2021-10-22 11:39:45 +02:00
gotjosh
74fb491b6a Alerting: Validate contact point configuration during migration to Unified Alerting (#40717)
* Alerting: Validate contact point configuration during the migration

This minimises the chances of generating broken configuration as part of the migration. Originally, we wanted to generate it and not produce a hard stop in Grafana but this strategy has the chance to avoid delivering notifications for our users.

We now think it's better to hard stop the migration and let the user take care of resolving the configuration manually.
2021-10-22 10:11:06 +01:00
Ivana Huckova
998ba06f39 Prometheus: Fix interpolation of legendFormat (#40635)
* Prometheus: Fix interpolation of legendFormat

* Fix test
2021-10-22 09:58:59 +02:00
Hugo Häggmark
c70cfe9125 LibraryElements: fixes flaky tests (#40791) 2021-10-22 09:19:25 +02:00
Peter Holmberg
b1b0f71312 Alerting: Layout fixes for email template (#40676)
* changes in email footer and ngalert template

* more adjustments to labels list
2021-10-22 09:12:37 +02:00
Yuriy Tseretyan
a5501b7845 escape reserved word (#40788) 2021-10-22 08:58:01 +02:00
Leon Sorokin
80b4ef820a Stat: Fixes an issue that could lead to browser crash with specific values (#40777) 2021-10-21 20:08:26 -05:00
nikki-kiga
dfeb69dc17 Geomap: Add style rules UI for geoJSON map layer (#40735)
* Geomap: Show multiple layers in ui

Co-authored-by: Ryan McKinley <ryantxu@users.noreply.github.com>

* Geomap: Add geojson style rules ui

* add style rule editor component

* update and change to two row styles

Co-authored-by: Ryan McKinley <ryantxu@users.noreply.github.com>
2021-10-21 15:56:41 -07:00
Isabella Siu
97df4a57f4 GoogleCloudMonitoring: use grafana-google-sdk-go for auth (#40490) 2021-10-21 16:29:56 -04:00
Dimitris Sotirakis
624d7631e6 Build/CI: Make integration-tests depend on initialize (#40782)
* Make integration tests depend on initialize

* Reorder steps for better visualisation
2021-10-21 22:28:57 +02:00
An
8b6a07a313 Panel Options: link to an open category section (#40734)
* scroll to view with panel query

* scroll to view with param

* no export const

* mock useLocation

* Updates to make update function from useQueryParams work

* show options

* flip logic

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2021-10-21 16:09:41 -04:00
Sam Jewell
6ce87a9655 Correct price-plans list for this feature (#40283)
* Correct price-plans list for this feature

The [Pricing Page][0] states that Enhanced LDAP is only for the Advanced plan
See b59520986c

[0]: https://grafana.com/products/cloud/pricing/

* Also update price plans on Enhanced LDAP page
2021-10-21 20:19:38 +02:00
Serge Zaitsev
76e30c5e97 Chore: Refactor alerting notifier tests to remove goconvey (#40758) 2021-10-21 17:04:43 +02:00
renovate[bot]
8d06bddeda Update dependency @types/node to v14 (#40405)
* Update dependency @types/node to v14

* Remove global var

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2021-10-21 16:52:26 +02:00
Ashley Harrison
c8f03139f8 Update latest.json (#40767) 2021-10-21 16:10:57 +02:00
Piotr Jamróz
f86fa876f2 Logs: Add a feature toggle to run logs volume query automatically (#40579)
* Add a feature toggle to run logs volume query automatically

* Add missing default value

* Move feature toggle after moving auto-load button

* Remove unused import
2021-10-21 15:56:31 +02:00
Ashley Harrison
447a088750 Annotations: Allow addition of custom values whilst tags are loading (#40702) 2021-10-21 14:55:02 +01:00
Karl Persson
740444680c Access Control: Add fgac to datasource query endpoints (#40294)
* Protect datasource tsdb and proxy endpoints with access control

* Add datasource query permissions to fixed admin role

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
Co-authored-by: Mitch Seaman <mjseaman@users.noreply.github.com>
2021-10-21 15:41:40 +02:00
Ivana Huckova
ba90b57b66 Prometheus: Transform NaN values from matrix response to null on backend (#40757)
* avoid duplicate allocations

* set labels

* Replace NaN in matrix with null

* Refactor and add test

* Update test

* Append response only if no error

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-10-21 15:01:14 +02:00
George Robinson
967721068e Alerting: Support custom annotations and labels when testing contact points
Support custom annotations and labels when testing contact points
2021-10-21 13:47:06 +01:00
Marcus Efraimsson
3abb355364 Chore: Update codeowners (#40756) 2021-10-21 14:38:28 +02:00
Serge Zaitsev
2f0fe16759 Chore: Remove GoConvey from sqlstore package (#40753)
* refactor login attempt test

* refactor tags saving test

* refactor transaction tests

* refactor temporary user tests

* refactor dashboard version tests

* refactor dashboard provisioning tests

* refactor alert notification test

* refactor alert tests

* refactor acl tests
2021-10-21 14:09:19 +02:00
Grot (@grafanabot)
84091de394 ReleaseNotes: Updated changelog and release notes for 8.2.2 (#40751)
* ReleaseNotes: Updated changelog and release notes for 8.2.2

* Add entry for 8.2.2 release notes

Co-authored-by: Alexandra Vargas <alexa1866@gmail.com>
2021-10-21 13:03:41 +01:00
Felix
385bc1fe13 Update dashboard_versions.md (#38812)
getting a version by the id of the version doesn't work
you need to use the number of the version
2021-10-21 13:19:58 +02:00
Ivana Huckova
fcd1e6f24c Tempo: Change t/min to r/sec in service map (#40615)
* Tempo: Change t/min to r/sec

* Update units

* Update displayname

* Update comments
2021-10-21 12:09:14 +02:00
Giordano Ricci
0e63ad44aa Explore: simplify URL generation logic (#40640)
* Explore: simplify URL generation logic

* Fix test
2021-10-21 09:46:40 +01:00
Sofia Papagiannaki
2c28aea654 Hide Grafana 8 alerts for disabled org (#40687) 2021-10-21 11:04:41 +03:00
Gábor Farkas
4bf5fa2ad2 explore: rich-history: add test for old-mode conversion code (#40714) 2021-10-21 09:49:38 +02:00
Dimitris Sotirakis
bb738e35cf Chore: Move Grafana version generator in initialize step (#40604)
* Move gen-version

* Small dependencies reorder

* Update grabpl version
2021-10-21 09:59:12 +03:00
Santiago
e54fe220e5 Fix panic when Slack API sends unexpected response (#40721)
* panic when unexpected Slack response fixed, tests added

* fix linting errors, add test
2021-10-21 08:12:15 +02:00
Nathan Marrs
27ba6b37ab Canvas: Add support to disable panel editing (#40724) 2021-10-20 14:52:53 -07:00
Ryan McKinley
ad69de4a10 AppEvents: export appEvents in @grafana/runtime and support copy panel (#40715) 2021-10-20 13:01:21 -07:00
Ashley Harrison
b60ae7ebed Chore: Fix lockfile (#40706) 2021-10-20 16:22:17 +01:00
Nathan Rodman
f10511ba1c Docs: Add doc for alert groups (#40353)
* WIP: add doc for alert groups

* add more messaging around filtering and grouping options
2021-10-20 11:14:25 -04:00
Gabriel MABILLE
6a3ce8bd38 AccessControl: tidy scope resolution (#40677)
* AccessControl: tidy scope resolution
2021-10-20 17:11:22 +02:00
Ivana Huckova
3718494b35 Prometheus: Send errors from backend in response (#40674)
* Prometheus: Send errors in response

* Remove debugging placeholder

* Add debugging logs
2021-10-20 16:50:34 +02:00
renovate[bot]
39866d4a7f Update dependency @types/rollup-plugin-visualizer to v4 (#40484)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-20 15:40:54 +01:00
renovate[bot]
afbbae3766 Update dependency @types/react-dom to v17 (#40447)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-20 15:39:13 +01:00
renovate[bot]
43e45f2621 Update dependency @testing-library/react-hooks to v7 (#40383)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-20 15:37:17 +01:00
Andres Martinez Gotor
ed68056b88 AzureMonitor: Make ResourceNames() case insensitive (#40690) 2021-10-20 16:35:35 +02:00
Andres Martinez Gotor
302fef394a Chore: remove strict errors for azure-monitor (#40675) 2021-10-20 16:34:24 +02:00
Marcus Andersson
0d036a6df5 DashGrid: Fixed auto resize issue with tabel panel (#40688)
* Changing how we use the AutoSizer component in the DashGrid.

* updated snapshot.

* fixed failing test.
2021-10-20 16:29:07 +02:00
Kevin Minehart
7e05536a22 update dockerfile (#40699) 2021-10-20 17:04:45 +03:00
kay delaney
565537c6e2 A11y/Dashboard: Fix various dashboard settings issues (#40641)
See #39429
2021-10-20 14:54:00 +01:00
Maria Alexandra
5b6831ab4d Plugin Catalog: Fix A11y issues on plugin list (#40629) 2021-10-20 15:36:51 +02:00
Serge Zaitsev
e47d7532e5 Chore: Goconvey migration for cleanup package (#40547) 2021-10-20 21:14:48 +08:00
Serge Zaitsev
7bad00118a Chore: Replace goconvey in multildap package (#40681) 2021-10-20 15:07:37 +02:00
Jean-Philippe Quéméner
74aa105b86 docs: fix typos in unified alerting (#40696) 2021-10-20 14:52:57 +02:00
Domas
51a152456f fix unified alerting enabled checks (#40693) 2021-10-20 15:45:26 +03:00
Jeremy Price
6dbb6408d4 Access Control: Add service accounts (#38994)
* Add extra fields to OSS types to support enterprise

* Create a service account at the same time as the API key

* Use service account credentials when accessing API with APIkey

* Add GetRole to service, merge RoleDTO and Role structs

This patch merges the identical OSS and Enterprise data structures, which improves the code for two reasons:

1.  Makes switching between OSS and Enterprise easier
2.  Reduces the chance of incompatibilities developing between the same functions in OSS and Enterprise

* If API key is not linked to a service account, continue login as usual

* Fallback to old auth if no service account linked to key

* Add CloneUserToServiceAccount

* Adding LinkAPIKeyToServiceAccount

* Handle api key link error

* Better error messages for OSS accesscontrol

* Set an invalid user id as default

* Re-arrange field names

* ServiceAccountId is integer

* Better error messages

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
Co-authored-by: Eric Leijonmarck <eric.leijonmarck@gmail.com>
Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
2021-10-20 14:36:11 +02:00
Piotr Jamróz
bd97c79454 Logs: Move button to load logs volume to logs options header (#40578)
* Move button to load logs volume to logs options header

* Update snapshot

* Do not show load logs volume button when data source does not support it
2021-10-20 13:58:04 +02:00
Jack Westbrook
1e471a6f76 Storybook: fix theme colors not updating (#40679) 2021-10-20 13:30:00 +02:00
Andres Martinez Gotor
b3027e8221 CloudMonitoring: Allow to manually set filters (#40606) 2021-10-20 13:03:44 +02:00
Jack Westbrook
6e2237c02f Chore: Replace Sass-lint with Stylelint (#40617)
* chore(sass): introduce stylelint

* chore(sass): introduce stylelint config that closely matches sass-lint config

* chore: remove sass-lint from codebase

* style(theme): disable stylelint string-quotes rule

* chore(sass): introduce stylelint-prettier-config to prevent config conflicts

* chore: delete sass-lint file

* style(sass): fix remaining stylelint errors
2021-10-20 11:34:24 +02:00
Ben Tasker
6c0d3e97fe InfluxDB: Fix spelling - "chronograf" rather than "chronograph" (#40587) 2021-10-20 11:06:24 +02:00
Dimitris Sotirakis
ba60bec11b Remove git reset - replace with git stash (#40669) 2021-10-20 11:39:46 +03:00
Andres Martinez Gotor
7f8a01aa7d Chore: remove strict errors for cloud-monitoring (#40620) 2021-10-20 09:49:49 +02:00
Alex Khomenko
026006290b QueryGroup: Add missing keys for extra group action components (#40619) 2021-10-20 08:02:39 +02:00
nikki-kiga
2eb88e1d1b Geomap: Add GeoJSON gazetteer (#40589)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-10-19 21:05:55 -07:00
nikki-kiga
43878ff05f Geomap: Avoid exceptions when missing data and values (heatmap and zoom settings) 2021-10-19 19:31:33 -07:00
Yuriy Tseretyan
36e12e2b26 Remove flakiness of google chat tests (#40592) 2021-10-19 16:18:44 -04:00
Petros Kolyvas
38709df33b Docs: Updated docker image names for consistency (#40426)
* Updated the docker image names and added a note

* Updated the example version to current
2021-10-19 15:58:01 -04:00
Dimitris Sotirakis
b926edf666 Add /packaging/**/*.tar.gz.sha256 to .gitignore (#40651) 2021-10-19 20:15:18 +02:00
Fredrik Enestad
e3d1b2c8fe Fix 404 link to time series doc (#40565) 2021-10-19 14:06:20 -04:00
Dimitris Sotirakis
0efe2e3acc Chore: Make test-frontend step depend on initialize step (#40616)
* Make test-frontend step depend on initialize

Debug

* Clean git tree dir

* Make build-frontend depend on lint-frontend

* Add actual steps back
2021-10-19 19:54:33 +03:00
Marcus Andersson
44c4d5d6fc Toolkit: Prevent toolkit from crashing when an error occur. (#40627) 2021-10-19 17:03:19 +02:00
Coleman Rollins
70f68289f5 Slider: Adjusts input to enforce min/max values on blur (#40524)
* [cr] adjusts slider input to enfore min/max values on blur

* [cr] additional test for blur action, min/max readability
2021-10-19 16:44:46 +02:00
Ashley Harrison
e48d77b1eb Variables: Improve display when selecting variables with the same value (#40607)
* Variables: Allow selection of different variables with the same value

* Variables: Don't modify this key
2021-10-19 14:13:17 +01:00
jcolladokuri
60b4e95d15 Azure Monitor: Add new starter dashboards (#39876)
* Adding more starter dashboards for Azure Monitor data source

* modified dashboard format to match grafana 3.1+ for panel datasource variable templating

* Minor fix to dashboard config

* Getting rid of individual links to dropdown and adding dropdown

* Minor config changes

* Readding dashboard linking and

* Renamed dashboards, added descriptios and exported them properly for external sharing
2021-10-19 09:06:38 -04:00
Torkel Ödegaard
c174664e63 Scale: Fixes handling of NaN percent when data min = data max (#40622) 2021-10-19 15:03:33 +02:00
Ivana Huckova
6ec2c54c5b Interval: Use gtime for parsing of time string to duration (#40624) 2021-10-19 14:56:57 +02:00
Gabriel MABILLE
fbc6febb0e AccessControl: keyword scope resolution (#40229) 2021-10-19 14:40:21 +02:00
Torkel Ödegaard
26dda75db5 ValueMappings: Fix so that value mappings work in stat/gauge/bargauge/piechart (#40612) 2021-10-19 14:11:31 +02:00
Josh Hunt
d5a0f719df Grafana-UI: Move Select container styles to outer most container (#40611)
* Grafana-UI: Move Select container styles to outer most container

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

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

* Rename file

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2021-10-19 13:29:33 +02:00
Gábor Farkas
58360923fd prometheus: monaco query editor: use new api from grafana-ui (#40466) 2021-10-19 12:32:54 +02:00
Andrej Ocenas
b9ff68d4d6 Tempo: Rename metrics for service graph (#40584)
* Rename tempo -> traces

* Fix tests

Co-authored-by: Ivana <ivana.huckova@gmail.com>
2021-10-19 11:58:21 +02:00
Giordano Ricci
6d4088292c Chore: Fix remaining ts strict error in Elasticsearch datasource (#40605) 2021-10-19 11:44:26 +02:00
Maria Alexandra
2ee0c73a8a Graph: Fix annotation description not being shown on hover (#40581) 2021-10-19 11:41:24 +02:00
An
f4e78ea27b Live: Test Converter tab (#40536) 2021-10-19 09:50:17 +02:00
Torkel Ödegaard
d179c2a4e9 Table: Tweak to type icon styles (#40596) 2021-10-19 08:53:56 +02:00
Uchechukwu Obasi
e226480e06 Docs: update frontend style guide to highlight new function paradigm (#40347)
* docs: update frontend style guide to highlight new function paradigm

* docs: add section for default exports

* chore: some typo/syntax/grammar fixes

* chore: change new additions from rule to recommendation

* small typo fix
2021-10-19 08:30:43 +02:00
Torkel Ödegaard
25813db334 RowsToFields: Fix issue with field names that are numbers (#40580)
* RowsToFields: Fix issue with field names that are numbers

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

* fix lint

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-10-19 07:27:24 +02:00
Nathan Marrs
7e59b92c8c Canvas: Improve enter / exit editor UX (#40591) 2021-10-18 13:10:07 -07:00
Kevin Minehart
9c2d70ce0f Packaging: Dependency updates (#40534)
* update loki

* install openssl from alpine's edge repository

* extracttraceid moved to tracing package

* remove exit if warning limit is exceeded

* disable flaky libraryelements test
2021-10-18 19:50:10 +02:00
Ryan McKinley
e7c3e54079 Geomap: use short name for marker selection (#40541) 2021-10-18 09:53:21 -07:00
Will Browne
e4297006f6 Chore: Propagate context for data source provisioning (#40235)
* context all the things

* apply feedback

* rollback some alerting changes

* rollback some alerting changes #2

* more rollbacks

* more rollbacks #2

* more rollbacks #3

* more rollbacks #4

* fix integration test

* add missing context

* add missing and remove incorrect dispatch
2021-10-18 17:06:19 +02:00
Ashley Harrison
ec0fcbbf4b Annotations: Improve tag search performance (#40567) 2021-10-18 15:00:46 +01:00
Guilherme Caulada
a9faab6b09 Dashboard: Add week start option to global and dashboard preferences (#40010)
* Add global week start option to shared preferences

* Add default_week_start to configuration docs

* Add week start option to dashboards

* Add week start argument to tsdb time range parser

* Fix strict check issues

* Add tests for week start

* Change wording on default_week_start documentation

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

* Update week_start column to be a nullable field

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

* Update configuration to include browser option

* Update WeekStartPicker container selector

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

* Add menuShouldPortal to WeekStartPicker to remove deprecation warning

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

* Add inputId to WeekStartPicker

* Use e2e selector on WeekStartPicker aria-label

* Simplify WeekStartPicker onChange condition

* Specify value type on WeekStartPicker weekStarts

* Remove setWeekStart side effect from reducer

* Fix updateLocale failing to reset week start

* Store week start as string to handle empty values

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2021-10-18 10:27:14 -03:00
kay delaney
db62ce477d A11y/Dashboard: Fix various fastpass issues for dashboard settings (#40335)
* A11y/Dashboard: Fix various fastpass issue for dashboard settings
See #39429
2021-10-18 13:51:26 +01:00
Ashley Harrison
f7cbb298f7 Update ci-frontend-metrics.sh (#40569) 2021-10-18 13:17:02 +01:00
idafurjes
ad79473ca3 Chore: Remove convey from dashboards (#39898)
* Remove Convey from dashboards

* Add context for dashboards

* Remove Convey from dashboards

* refactor tests to run setup each time

* Fix last tests

* Adjust after rebase

* Remove print statement

Co-authored-by: Serge Zaitsev <serge.zaitsev@grafana.com>
2021-10-18 14:06:47 +02:00
idafurjes
5a087d2708 Chore: Add context to team (#40504)
* Add ctx to team

* Remove convey from team
2021-10-18 14:02:39 +02:00
Domas
a531c6e26f frontend logging fixes (#39946) 2021-10-18 14:34:31 +03:00
renovate[bot]
71264835f2 Update dependency @welldone-software/why-did-you-render to v6 (#40564)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-18 13:30:31 +02:00
Ashley Harrison
99c51a491b Update ci-frontend-metrics.sh (#40562) 2021-10-18 11:49:19 +01:00
Duke Manh
9eccb8e416 CodeEditor: Trigger the lastest getSuggestions() passed to CodeEditor (#40544) 2021-10-18 12:36:13 +02:00
Gábor Farkas
1f44023ebe Loki: fix typescript-strict-mode error (#40566)
* loki: fix typescript-strict error

* loki: fix typescript-strict-mode error
2021-10-18 12:35:56 +02:00
Piotr Jamróz
8939636492 Loki: Logs volume improvements (#40327)
* Skip logfmt errors

* Run volume queries as range queries

* Remove auto-skipping parsing errors

* Remove auto-skipping parsing errors

* Cache logs volume results

* Remove auto-loading

* Fix tests

* Clean up

* Disable logs volume in live streaming

* Clean up

* Add logs volume timeout

* Switch tooltip mode

* Increase timeout to 15s

* Fix test

* Change timeout to 10 seconds

* Remove unused code

* Extract styles

* Remove info about zoom level
2021-10-18 12:22:41 +02:00
renovate[bot]
52b69a9a80 Update dependency @types/rimraf to v3 (#40467)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-18 11:23:37 +02:00
Gábor Farkas
bd8e07d6ed prometheus: more correct jsonData typescript type (#40559)
* prometheus: fix strict-mode typescript error

* it does not make the limit lower

but the change is still correct
2021-10-18 11:21:30 +02:00
Ivana Huckova
4a3be0f845 Prometheus: Pass scoped vars when creating PromLink query (#40525) 2021-10-18 11:17:13 +02:00
Ivana Huckova
4e1cf7dea7 Logs: Fix creating of detected fields for each letter in log line (#40507)
* Logs: Fix using of JSON parser for strings

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

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

* Update parser typing and documentation
2021-10-18 11:16:24 +02:00
Piotr Jamróz
2de769420e Chore: Reduce strict error in DataSourceHttpSettings.onChange callback (#40497)
* Reduce strict TS errors

* Update ERROR_COUNT_LIMIT after merging from main

* Update number of errors
2021-10-18 10:40:43 +02:00
Dominik Prokop
6201b5b1d9 Table panel: Fix filter not working for special characters and allow filter's case sensitivity control (#40458)
* Fix filter not working for special characters and allow case sansitive filter control

* Memoize regex
2021-10-18 09:19:05 +02:00
Marcus Andersson
80a7401cfb Chore: replaced the @grafana/api-extractor with the @microsoft/api-extractor (#40519)
* removed the @grafana/api-extractor and replaced it with the @microsoft/api-extractor.

* increased the limit.
2021-10-18 09:16:36 +02:00
Itay
ca0b1041a8 Docs: fix typo in a bug report template (#40545) 2021-10-16 12:10:20 +02:00
Anne E. Ulrich
99eddac406 Noting non-support of template queries in official documentation (#40169) 2021-10-15 17:37:38 -04:00
Nate Walters
f238342c17 Add copyright notice (#39206)
* Add copyright notice

* Update docs/sources/copyright/_index.md

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

* Update docs/sources/copyright/_index.md

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

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
Co-authored-by: Robby Milo <robby.milo@grafana.com>
Co-authored-by: achatterjee-grafana <aparajita.chatterjee@grafana.com>
2021-10-15 16:46:52 -04:00
achatterjee-grafana
c44f51d5c3 Fixed broken relrefs (#40533) 2021-10-15 15:55:44 -04:00
jpapp25
f4dd8bebdf Update _index.md (#40257)
Clicking the "Getting started with Grafana" link does nothing in this page.  Added the additional "getting-started" to the ref.

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-10-15 13:11:13 -04:00
Giordano Ricci
63fc12d186 Elasticsearch: Fix some strict typescript errors (#40517)
* Elasticsearch: Fix some strict typescript errors

* Fix tests

* Reduce strict error count

* actually fix tests
2021-10-15 16:20:20 +01:00
renovate[bot]
73ac9c2717 Update dependency @types/semver to v7 (#40515)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-15 13:25:42 +01:00
Piotr Jamróz
6dc21d5899 Refactor: Decouple Label Browser from LocalStorage (#40449)
* Refactor: Decouple Label Browser from LocalStorage

* Clean up
2021-10-15 14:18:11 +02:00
Ivana Huckova
7140867868 Prometheus: Run dashboard queries trough backend (#40333)
* Fix processing for table in dashboard - expolre compatible

* Add processing of histograms

* Interpolsate rate_interval in step field

* Add tests

* Fix function name

* Extract internal range and interval variables to constants

* Fix typings, refactor, simplify

* Fix constant that was missing _ms
2021-10-15 13:37:27 +02:00
renovate[bot]
58fdb717ba Update dependency @types/react to v17 (#40440)
* Update dependency @types/react to v17

* Chore: Typescript fixes

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-10-15 12:25:47 +01:00
Marcus Andersson
79ce09ddee PluginsCatalog: post installation, adding an "add datasource"-button. (#40155)
* added post installation steps.

* changes according to feedback.

* removing return union null type.

* added tests.

* changing the wording of the button to 'create a..'

* updated tests to check for the updated copy.

* changing the back to be a regular back button.

* updated snapshot
2021-10-15 13:18:39 +02:00
Gábor Farkas
8e070d6858 influxdb: config page: typescript-fix for strict-mode (#40465) 2021-10-15 11:29:41 +02:00
PunkoIvan
374041148d Updated MySQL provisioning doc (#39750)
Updated password to secureJsonData for MySQL provisioning
2021-10-15 10:38:58 +02:00
Ikko Ashimine
81e7cb60ff Chore: Fix typo in dashboard.go (#39928)
requets -> requests
2021-10-15 10:33:01 +02:00
Anne E. Ulrich
8b41d85b68 Some more grammar fixes (#40183) 2021-10-15 10:29:12 +02:00
Christoph Deil
060a16041d Fix typo in whats-new-in-v8-0.md (#38661) 2021-10-15 10:28:21 +02:00
za
793786918a Replaced & (ampersand) with and in "Access & secret key" (#40361)
GitHub issue: https://github.com/grafana/grafana/issues/39067
2021-10-15 10:15:40 +02:00
Hugo Häggmark
09bb890092 WIP Chore: reduce strict errors (#40462)
* Chore: reduce strict error in ngReact

* Chore: reduce strict errors for ShareModal

* Chore: reduce strict errors in VersioHistory

* Chore: reduce strict error in ExpressionDatasource

* Chore: reduce strict error in DashboardWatcher

* Chore: reduce strict error in PluginPage

* Chore: reduce strict errors for guard

* Chore: update threshold

* Chore: reduce strict errors in Graph

* Chore: reduce threshold

* Apply suggestions from code review

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>

* Chore: reduce strict errors in TimeSeries

* Chore: reduce threshold

* Chore: reduce strict errors in polyfill

* Chore: reduce threshold

* Chore: update after PR comments

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

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

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

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

* Chore: changes after PR comments

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2021-10-15 08:57:55 +02:00
Nathan Rodman
4fc86594c0 Alerting: Link prometheus and loki datasources to an alertmanager (#39887)
* add config option for alertmanager linking

* Add button for silencing a rule

* use uid for alertmanager

* move alertmanager link to separate function
2021-10-14 16:01:01 -07:00
An
0c5491d6fd Dahboard: Only show "Another session is editing this dashboard" once per edit session (#40485) 2021-10-14 11:40:35 -07:00
Ryan McKinley
7a35a31929 Icon Panel: add new alpha panel to show an icon (#40355) 2021-10-14 09:30:21 -07:00
renovate[bot]
d8c71370ef Update dependency @kusto/monaco-kusto to v4 (#40376)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-14 17:55:06 +02:00
nikki-kiga
86e89d9dc3 Geomap: Add icon to ResourceDimensionEditor and fix marker color (#40418)
* add resourcedimension icon and fix marker color

* update to input prefix and markerShapePath

* update to svg from icon
2021-10-14 08:30:24 -07:00
Uchechukwu Obasi
51a48e1869 Text Panel: fixes unnecessary scroll in markdown html tables (#40315)
* Text Panel: fixes unnecessary scroll in tables

* uses more robust solution that covers every edge case

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

* override margin for only h1 and figure elements

* remove override styles for h1,table markdown contents
2021-10-14 16:43:33 +02:00
Ivana Huckova
48eacd1ea6 Remove unused httpMethod (#40471) 2021-10-14 16:20:06 +02:00
Dimitris Sotirakis
89e7a56714 Makefile: Force use drone-cli 1.4.0 version (#40385)
* Force use drone-cli 1.4.0

* Small modifications to prevent null generation

* Sign drone

* Use bingo to declare drone-cli version

* Update message in Makefile

* Update to latest grabpl version
2021-10-14 16:02:45 +02:00
Dimitris Sotirakis
534e6b3f5a Add @grafana/grafana-release-eng to CODEOWNERS (#40468) 2021-10-14 15:39:54 +02:00
Peter Holmberg
75cff769f7 Alerting: Create alert from side menu (#40387)
* add entry for Create submeny

* extracting to function to resolve lint issue
2021-10-14 15:22:16 +02:00
Gábor Farkas
19972600d7 grafana-ui: export lazy-loaded version of react-monaco-editor (#39570)
* grafana-ui: refactor: move laziness to a lower level in code-editor

* grafana-ui: re-export react-monaco-editor

* rename export

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

* improved comment

* reverted name change

we already have an export with that name

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2021-10-14 14:33:45 +02:00
renovate[bot]
4565fcd0df Update dependency @testing-library/user-event to v13 (#40394)
* Update dependency @testing-library/user-event to v13

* Changes needed for userEvent v13

* Ignore pointer-event checks until jsdom issue is fixed

* Remove unused act imports

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-10-14 13:29:41 +01:00
Ursula Kallio
c0bd9fe551 Remove nesting of terms and definitions for plugin; use lowercase for improper nouns (#40332) 2021-10-14 14:21:21 +02:00
Zoltán Bedi
1e9aeb6f19 Fix: State timeline panel not to crash when only one threshold (#40371) 2021-10-14 13:03:20 +02:00
Jean-Philippe Quéméner
153c356993 Alerting: delete orphaned records from kvstore (#40337) 2021-10-14 12:04:00 +02:00
Jean-Philippe Quéméner
1b7ca0413a Alerting: add docs for the new webhook (#40314) 2021-10-14 11:07:31 +02:00
renovate[bot]
5664ffd094 Update dependency @opentelemetry/semantic-conventions to v1 (#40377)
* Update dependency @opentelemetry/semantic-conventions to v1

* chore(tempo): update import to match semantic-conventions api changes

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
2021-10-14 11:02:05 +02:00
Hugo Häggmark
31d50f931d Chore: Reduces strict errors in DashboardPickerByID (#40431)
* Chore: Reduces strict errors in DashboardPickerByID

* Chore: updates after PR comments

* Chore: fix for undefined strict error
2021-10-14 10:20:04 +02:00
renovate[bot]
0c7e27bada Update dependency @types/d3 to v7 (#40395)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-14 10:12:30 +02:00
Selene
a1230f44dc Fix user's total count in search (#40415) 2021-10-14 09:51:32 +02:00
Ilya Stoliar
665055dbbc CloudWatch: Add AWS Elastic GPUs metrics and dimensions (#40253)
* CloudWatch: Added AWS Elastic GPUs metrics and dimensions

* Delete extra space
2021-10-14 09:35:28 +02:00
Domas
c43b82d44b make alert tab create alert button work with default datasource (#40334) 2021-10-14 09:40:43 +03:00
Levente Balogh
6e395c8275 Plugins Catalog: use createAction() instead of string action type (#40393)
* refactor(Plugins/Admin): use createAction() instead of string action type

* refactor(Panel/Actions): use the new action name in the tests
2021-10-14 08:35:04 +02:00
Gábor Farkas
51c5afe840 yarn2: commit the pa11y-ci package from the cache (#40372) 2021-10-14 08:28:24 +02:00
Ryan McKinley
e62dd592c8 Chore: remove extra logging (#40428) 2021-10-14 07:35:40 +02:00
Hugo Häggmark
a981ea22fb A11y: Fix fastpass issues for share modal (#40386) 2021-10-14 07:13:15 +02:00
Arie Heinrich
b0414f66dc Update _index.md (#40421)
spelling
2021-10-13 22:37:41 -03:00
Connor Lindsey
2b2b70503e Explore: Rename Service Map to Service Graph and improve error handling (#40407)
* Handle error response from linked datasource

* Update response format

* Rename to service graph in the UI and docs
2021-10-13 14:41:42 -06:00
Nathan Marrs
8de30ccf9a Canvas: Add basic responsive design and layer editor UX (#40404) 2021-10-13 13:12:16 -07:00
Jesse Weaver
5af96544f3 Forbid creation of dashboard permissions with both a user and a team (#40104)
These permissions could be created through the API but would not show
correctly in the UI.
2021-10-13 12:16:58 -06:00
Travis Patterson
3fb8b87972 Add on datasource change to optional components -- alt -- (#40239)
* Add onDataSourceChange to optional components

- Fixes a bug where the user can select  twice and overwrite all queries
- Adds handler to control main datasoruce selection to the optional components.

* only pass onDatasource change when necessary
2021-10-13 09:49:40 -06:00
Torkel Ödegaard
c4ce7a40af AngularPanels: Move angular panel infra & components to angular/app folder (#40373)
* AngularPanels: Move to app/angular folder

* Fixing issues
2021-10-13 16:59:47 +02:00
Emil Tullstedt
1505b8c0b0 Docs: Document PKCE support for OAuth (#39949) 2021-10-13 16:45:39 +02:00
Emil Tullstedt
e73cd2fdeb OAuth: Support PKCE (#39948) 2021-10-13 16:45:15 +02:00
renovate[bot]
09587240ec Update dependency @testing-library/react to v12 (#40382)
* Update dependency @testing-library/react to v12

* Don't use wrapper syntax

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-10-13 15:42:09 +01:00
Marcus Efraimsson
415a92331a ReleaseNotes: Update changelog and release notes for v8.1.3 (#40384) 2021-10-13 15:49:22 +02:00
Hugo Häggmark
a512dcf1bb A11y: Fix fastpass issues for annotation/variables settings (#40364)
* A11y: Fix fastpass issues for annotation/variables settings

* Chore: fixes fastpass for annotations

* Chore: updates after PR comments

* Chore: readd div
2021-10-13 15:21:34 +02:00
Will Browne
281d60095f remove refs to --pure-lockfile (#40345) 2021-10-13 14:59:47 +02:00
renovate[bot]
0776fdd418 Configure Renovate (#40336)
* Add renovate.json

* Add renovate.json

* Chore(Renovate): Move config file, adjust settings, remove dependabot config

* Chore(Renovate): Remove duplicate renovate.json

* Chore(Renovate): Don't pin deps, only match root + grafana packages package.json

* Chore(Renovate): Update ignored paths

* Chore(Renovate): Use json5 to allow for comments

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-10-13 12:25:12 +01:00
Zoltán Bedi
7422189a88 Fix: State timeline tooltip not showing (#40100)
* Fix: State timeline tooltip not showing

* Check transformation instead of refId
2021-10-13 11:59:03 +02:00
Kevin Minehart
23bee50474 Prometheus: Fix issue where TCP connections not being reused when querying from Grafana alerting (#40349)
Fixes #40366

Co-authored-by: Dave Henderson <dave.henderson@grafana.com>
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2021-10-13 10:22:26 +02:00
Torkel Ödegaard
d62ca1283c PanelState: Introduce a new separate redux panel state not keyed by panel.id (#40302)
* Initial pass to move panel state to it's own, and make it by key not panel.id

* Progress

* Not making much progress, having panel.key be mutable is causing a lot of issues

* Think this is starting to work

* Began fixing tests

* Add selector

* Bug fixes and changes to cleanup, and fixing all flicking when switching library panels

* Removed console.log

* fixes after merge

* fixing tests

* fixing tests

* Added new test for changePlugin thunk
2021-10-13 08:53:36 +02:00
Ben RUBSON
3d9e2d8c82 Application: Make error-template title configurable (#40310)
* Fix error-template title

as in index-template.html

* Test: fix for AppTitle

Co-authored-by: Hugo Häggmark <hugo.haggmark@gmail.com>
2021-10-13 08:35:01 +02:00
Hugo Häggmark
30c1e7fa5c A11y: Fix fastpass issues for /explore with gdev-testdata (#40309)
* A11y: Fix fastpass issues for /explore with gdev-testdata

* Chore: changes after PR feedback

* Chore: revert file to main

* Tests: fix for e2e tests
2021-10-13 06:09:35 +02:00
gotjosh
2448123a65 Alerting: Remove invalid Slack URL as we migrate notification channels (#40344)
* Alerting: Remove invalid Slack URL as we migrate notification channels

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

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

* Add a log line when we modify the channel

Co-authored-by: Yuriy Tseretyan <yuriy.tseretyan@grafana.com>
2021-10-12 18:55:39 -04:00
Sarah Zinger
47f09fca8d E2E: Fix path for importDashboards (#40111)
* Small e2e fix for importDashboards
2021-10-12 15:48:36 -04:00
Paul Dee
24fa93bd58 Example fixes for #40173 (#40175) 2021-10-12 15:45:30 -04:00
Nathan Marrs
f7576b3cdf Canvas: Ability to move and resize elements freely (#40179) 2021-10-12 10:52:15 -07:00
gotjosh
48d73cb148 Alerting: Fixes a bug when trying to sync broken alertmanager config (#40338)
* Alerting: Fixes a bug when trying to sync broken alertmanager config

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

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

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

* Remove disable orgs
2021-10-12 18:10:08 +01:00
Kevin Minehart
fe5e49476b Packaging: Remove ProcSubset option in systemd (#40339)
* update rpm service file

* Update grafana-server.service
2021-10-12 11:18:49 -05:00
Ben RUBSON
34b5414905 Chore: fix logo URL in email template(#40311) 2021-10-12 08:35:30 -07:00
Alexander Kilian
7f7e81f832 correct spelling of InfluxDB in link text (#40312) 2021-10-12 11:00:00 -04:00
Uchechukwu Obasi
3cec0b1227 TimePickerCalendar: adds keyboard navigation to the widget (#39070)
* WIP: adds react-aria package to package.json

* adds focus trapping to the calendar widget

* makes focus to move in and out of the widget

* Chore: remove unused component

* WIP: adds keyboard nav to calendar

* adds close button to calendar on wide screen

* Chore: update test to reflect new changes

* use more descriptive aria label

* prune duplicate absolute timeRange aria label

* TimePicker: Use aria overlays to enable closing with esc (#40045)

* Move timepicker to function component

* update overlayprops

* Remove unused import

* Fix for picker closing before setting the range when selecting quick ranges

* use more descriptive aria label

* update test to correspond with new label

* chore: some nit fix

* chore: used specific version for react-aria/overlay package

* Chore: refactor timePickerCalendar component

* chore: nit fixes

* chore: nit fixes

* reverts back to main and re-add deps with yarn 2

* chore: removes react-aria deps from root

* Chore: replace default export

Co-authored-by: Oscar Kilhed <oscar.kilhed@grafana.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@gmail.com>
2021-10-12 16:48:24 +02:00
Tania B
f59aabbd3b Chore: Refactor secrets service (#40331) 2021-10-12 17:08:07 +03:00
Ivana Huckova
fd1b0de34b Prometheus: Set default value for query expr (#40330) 2021-10-12 15:58:48 +02:00
Jack Westbrook
084a9b7d1a Chore: Fix frontend metrics (#40325)
* build(yarn): add yarn-outdated plugin for checking outdated dependencies

* refactor(frontend-metrics): update dep and vulnerablity commands to work with yarn berry

* feat(frontend-metrics): introduce critical vulnerabilities count

* feat(frontend-metrics): echo out critical vulnerabilities
2021-10-12 15:45:03 +02:00
kay delaney
3c52df960a A11y/Dashboard: Fix a few more miscellaneous fastpass issues (#40328)
See #39429
2021-10-12 14:35:48 +01:00
Giordano Ricci
b0391d4933 Explore: Prevent empty Elasticsearch logs query responses from hiding the logs panel (#40217)
* remove return value from addPreferredVisualisationType

* Elasticsearch: send empty series instead when no data is received for a query
2021-10-12 13:59:28 +01:00
Ryan McKinley
ea0c1006f5 Dashboards: Show logs on time series when hovering (#40110)
* Dashboard: Show logs on time series when hovering

* Fix passing hover handler to LogRow

* use DataHoverEvent

* use DataHoverEvent

* Clean up

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
2021-10-12 14:57:17 +02:00
kay delaney
c443f244a0 A11y/Dashboard: Fix misc. fastpass issues (#40296)
* A11y/Dashboard: Fix misc. fastpass issues
See #39429
2021-10-12 13:26:01 +01:00
Giordano Ricci
0ac81e9e47 Chore: remove volta references (#40275) 2021-10-12 12:39:54 +01:00
Ivana Huckova
19ad08e6b8 Prometheus: Run exemplars explore queries through backend (#39531)
* Prometheus: Run Explore both queries trough backend

* Refactor, simplify

* Set default values for query type selector

* Run multiple queries as one query trough backend

* Remove trailing newlines

* Pass utcOffset

* Remove trailing comma

* WIP: Implementatioon of exemplars

* add sampling for exemplars

* Refactor to use response as custom metadata

* Simplify processing of exemplars

* Update, clean up

* Refactor the way how we get available exemplars

* Simplify exemplars disabling and running on frontend

* Add tests

* Update toggle

* Remove console log

* Fix go linting

* Fix e2e test

* Trigger Build

* Compare lengts, small fix

* Remove duplicated time check

* Address feedback

* Remove redundant ! as not needed

* Update
2021-10-12 13:16:09 +02:00
Ivana Huckova
2f0eccb421 Explore/Loki: Fix defaulting to instant query when switching from Prometheus (#40216)
* Loki: Pass only wanted query props when importing from Prometheus

* Update

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

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

* Add test

* Fix strict error

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2021-10-12 13:05:57 +02:00
Domas
b1f56b4863 fix rule form crashing when extra query editor actions are provided (#40319) 2021-10-12 13:49:30 +03:00
kay delaney
9fb6dfe11d Chore/PluginList: Consolidate PluginListItemRow & PluginListItemCard (#40271)
* Chore/PluginList: Consolidate PluginListItemRow & PluginListItemCard
2021-10-12 11:06:22 +01:00
Jean-Philippe Quéméner
e1dfec49f9 Alerting: cleanup alert resources on org removal (#39938) 2021-10-12 12:05:02 +02:00
Piotr Jamróz
6081790992 Add missing feature flag type (#40260) 2021-10-12 11:37:50 +02:00
gotjosh
f33f098b73 Alerting: Disable flaky assertion in TestSendingToExternalAlertmanager_WithMultipleOrgs (#40197)
* Alerting: Disable flaky assertion in TestSendingToExternalAlertmanager_WithMultipleOrgs

* Update pkg/services/ngalert/schedule/schedule_unit_test.go

Co-authored-by: Jean-Philippe Quéméner <JohnnyQQQQ@users.noreply.github.com>

* Update pkg/services/ngalert/schedule/schedule_unit_test.go

Co-authored-by: Jean-Philippe Quéméner <JohnnyQQQQ@users.noreply.github.com>

Co-authored-by: Jean-Philippe Quéméner <JohnnyQQQQ@users.noreply.github.com>
2021-10-12 10:07:29 +01:00
Jack Westbrook
fa03d2ae6a Chore: Bump Webpack dependencies (#40272)
* feat(yarn): introduce plugin-interactive-tools

* chore(webpack): bump webpack and loaders / plugins to latest
2021-10-12 11:04:36 +02:00
Dimitris Sotirakis
cc67b1802c Remove unused push_to_deployment_tools step (#40308) 2021-10-12 09:44:52 +03:00
Ryan McKinley
6996659448 Chore: add codeowners for edge squad (#40237) 2021-10-11 21:44:29 -07:00
Eric Leijonmarck
b88cd08177 feat: fallback for displayname of non-fixed role without displayname (#40277) 2021-10-11 16:00:54 +01:00
Giordano Ricci
24af3593a2 AWS: add OpenSearch to AWS services (#40290) 2021-10-11 15:53:04 +01:00
Hugo Häggmark
5a56f86a47 Chore: Updates latest.json (#40293) 2021-10-11 16:35:26 +02:00
Guilherme Caulada
36eab84ef1 Update auditing loggers config to use logger (#40288) 2021-10-11 10:20:00 -04:00
Grot (@grafanabot)
2fd869fd02 ReleaseNotes: Updated changelog and release notes for 8.2.1 (#40287)
* ReleaseNotes: Updated changelog and release notes for 8.2.1

* Update docs after running prettier:write

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-10-11 16:05:16 +02:00
Domas
571257226e Alerting: make alert state indicator in panel header work with Grafana 8 alerts (#38713) 2021-10-11 16:55:45 +03:00
George Robinson
8318e45452 Alerting: Fix error message in ngalert when notifications cannot be sent to alertmanager (#40158) 2021-10-11 14:50:50 +01:00
Domas
5267ea35ea alias react-hook-form in webpack config (#40284) 2021-10-11 15:24:03 +02:00
Carl Bergquist
621bd477d0 Context: Add context to hasEditPermission call bus call (#40107)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
2021-10-11 14:36:57 +02:00
Carl Bergquist
f20de5588b add context to api crud calls (#40047)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
2021-10-11 14:35:31 +02:00
Carl Bergquist
c9f25cf0a5 Context: Add context to /api/health calls (#40031)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
2021-10-11 14:35:03 +02:00
Serge Zaitsev
57fcfd578d Chore: replace macaron with web package (#40136)
* replace macaron with web package

* add web.go
2021-10-11 14:30:59 +02:00
kay delaney
78ebac0116 Chore/Nit: Fix minor alignment issue in panel editor (#40232) 2021-10-11 10:46:21 +01:00
Dimitris Sotirakis
5bf37d36e7 Build Pipeline: Split to test-backend and test-backend-integration steps (#40215)
* Split to test-backend and test-backend-integration

* Sign drone
2021-10-11 12:23:55 +03:00
Piotr Jamróz
ad757b48e7 Explore: Improve local storage error handling when rich history is added (#39943)
* Rich History: improve local storage error handling

* Reduce number of max items and update docs

* Rotate not-starred items and add tests

* Add missing property to initial state

* Unify date in richHistory tests

* Show a warning message that rich history limit has been reached

* Add missing param
2021-10-11 09:48:25 +02:00
Dimitris Sotirakis
08a20e2247 Update grabpl version to 2.5.1 (#40218) 2021-10-11 09:41:19 +03:00
Hugo Häggmark
d8e97fc024 Dashboard: Fixes rendering of repeating panels (#39991)
* Dashboard: Fixes rendering of repeating panels

* Chore: update after PR comments
2021-10-11 06:33:04 +02:00
Hugo Häggmark
7706483654 A11y: Fix for Fastpass issues on the Profile page (#40212)
* A11y: Fix for Fastpass issues on Profile page

* Chore: small fix

* Chore: fixes the tests
2021-10-11 06:32:54 +02:00
nikki-kiga
7756181ff9 Geomap: Custom markers using ResourcePicker with standard marker fallbacks (#39919)
* add custom icons

* use resourcePicker for marker icon

* use regular shapes for specific icons

* update type

* update svgs and remove marker shape selection

* update types and resourcePicker

* add migration and update markers

Co-authored-by: Ryan McKinley <ryantxu@users.noreply.github.com>

* quick cleanup

* update marker path and remove any

* update migration test

* use inline snapshot

* remove unused

* Docs: Add documentation for library elements API (#39829)

* LibraryElements: Adds api documentation

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Refactor: changes after PR comments

* Apply suggestions from code review

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

* Chore: updates after review

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

* CodeEditor: making sure we trigger the latest onSave callback provided to the component (#39835)

* Fix: prevent queryDisplyText in QueryRowHeader from overflowing (#40094)

* Revert "Fix Query Editor Row horizontal overflow (#39419)"

This reverts commit 42b1fa0f62.

* fix: prevent queryDisplyText in QueryRowHeader from overflowing

* Search: Fix local storage key (#40127)

* Default to 'General' if no folder title is present

* Add bottom padding

* Live: remote write sampling (#40079)

* Stat: recompute shared y range during streaming updates (#39485)

* NavBar: Order App plugins alphabetically (#40078)

* NavBar: Order App plugins alphabetically

* Update pkg/api/index.go

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

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

* Schema: use the generated graph.gen.ts (#40090)

* actually generate graph.gen.ts

* getting closer

* keep file where it is

* manual fixes

* Update packages/grafana-schema/src/schema/graph.gen.ts

Co-authored-by: sam boyer <sam.boyer@grafana.com>

* Docs: Whats new in 8.2 (#39945)

* Added time range controls updates

* Added plugins catalog update

* Added enterprise images

* Added community contributions highlights for 8.2

* accessibility statement

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* Apply suggestions from code review

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

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

* Live: array for Processor, Outputter and Subscriber in channel rule top level (#39677)

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

* more

* more

Co-authored-by: sam boyer <sam.boyer@grafana.com>
Co-authored-by: Petros Kolyvas <code@petros.io>
Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
Co-authored-by: Alexander Emelin <frvzmb@gmail.com>
Co-authored-by: Grot (@grafanabot) <43478413+grafanabot@users.noreply.github.com>

* Access Control: Add scope type prefix (#40076)

* prefix runtime scopes with key type

* Bump mocha from 7.0.1 to 9.1.2 (#39979)

* Bump mocha from 7.0.1 to 9.1.2

Bumps [mocha](https://github.com/mochajs/mocha) from 7.0.1 to 9.1.2.
- [Release notes](https://github.com/mochajs/mocha/releases)
- [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mochajs/mocha/compare/v7.0.1...v9.1.2)

---
updated-dependencies:
- dependency-name: mocha
  dependency-type: direct:development
  update-type: version-update:semver-major
...

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

* kick drone

* Remove mocha as it's not used by anything

* kick drone

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>

* ReleaseNotes: Updated changelog and release notes for 8.2.0 (#40141)

* ReleaseNotes: Updated changelog and release notes for 8.2.0

* Add link & remove empty line in CHANGELOG

* remove empty line

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

* Create search filters by interface (#39843)

* Extract search users to a new service

* Fix wire provider

* Fix common_test and remove RouteRegister

* Remove old endpoints

* Fix test

* Create search filters using interfaces

* Move Enterprise filter, rename filter for filters and allow use filters with params

* Each filter has unique key

* Back activeLast30Days filter to OSS

* Fix tests

* Delete unusued param

* Move filters to searchusers service and small refactor

* Fix tests

* Encryption: Refactor securejsondata.SecureJsonData to stop relying on global functions (#38865)

* Encryption: Add support to encrypt/decrypt sjd

* Add datasources.Service as a proxy to datasources db operations

* Encrypt ds.SecureJsonData before calling SQLStore

* Move ds cache code into ds service

* Fix tlsmanager tests

* Fix pluginproxy tests

* Remove some securejsondata.GetEncryptedJsonData usages

* Add pluginsettings.Service as a proxy for plugin settings db operations

* Add AlertNotificationService as a proxy for alert notification db operations

* Remove some securejsondata.GetEncryptedJsonData usages

* Remove more securejsondata.GetEncryptedJsonData usages

* Fix lint errors

* Minor fixes

* Remove encryption global functions usages from ngalert

* Fix lint errors

* Minor fixes

* Minor fixes

* Remove securejsondata.DecryptedValue usage

* Refactor the refactor

* Remove securejsondata.DecryptedValue usage

* Move securejsondata to migrations package

* Move securejsondata to migrations package

* Minor fix

* Fix integration test

* Fix integration tests

* Undo undesired changes

* Fix tests

* Add context.Context into encryption methods

* Fix tests

* Fix tests

* Fix tests

* Trigger CI

* Fix test

* Add names to params of encryption service interface

* Remove bus from CacheServiceImpl

* Add logging

* Add keys to logger

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

* Add missing key to logger

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

* Undo changes in markdown files

* Fix formatting

* Add context to secrets service

* Rename decryptSecureJsonData to decryptSecureJsonDataFn

* Name args in GetDecryptedValueFn

* Add template back to NewAlertmanagerNotifier

* Copy GetDecryptedValueFn to ngalert

* Add logging to pluginsettings

* Fix pluginsettings test

Co-authored-by: Tania B <yalyna.ts@gmail.com>
Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>

* Admin: Enable extending filters (#39825)

* Setup extensible filters

* Fix test

* Handle filter as array

* Add className

* Abstract getFilters

* Make docs link external

* Use underline for links in tooltips instead of link color

Co-authored-by: Selene <selenepinillos@gmail.com>

* Chore: update latest.json to 8.2 (#40153)

* Doc: Fixed issue 40017 (#40152)

* Added content as suggested by Will

* removed a few extra words.

* Update docs/sources/administration/configuration.md

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

* Update docs/sources/administration/configuration.md

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

* Update docs/sources/administration/configuration.md

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

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

* docs: Add keepCokkies cofiguration option in datasources (#39890)

Signed-off-by: Vinayak Kadam <kadamvinayak03@gmail.com>

* Grammar issues (#40168)

* Packaging: document systemd net bind capability rpm and deb installations (#40165)

* add systemd net bind capability docs for rpm and deb

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

* Alerting: declare constants for __dashboardUid__ and __panelId__ literals (#39976)

* Babel: Remove unused plugin (#40172)

* removed unused babel plugin

* Update lock file

* Chore(dependencies): Remove puppeteer since we don't use it anywhere (#40137)

* Folders: Prevents deletion of General folder (#40192)

* Datasources: Fix deletion of datasource if plugin cannot be found  (#40095)

* fix(pluginsettings): reject with error so datasource plugin loading failures still render ui

* feat(pluginpage): handle plugin loading error

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

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

* test(datasourcesettings): fix failing test

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

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

* Replace SAML library with fork (#40149)

* Update saml library to latest

* Use fork of crewjam/saml with fix for certificate chain bug

* CloudMonitoring: Migrate to use backend plugin SDK contracts (#38650)

* Use SDK contracts for cloudmonitoring

* Get build running, tests passing and do some refactoring (#38754)

* fix build+tests and refactor

* remove alerting stuff

* remove unused field

* fix plugin fetch

* end to end

* resp rename

* tidy annotations

* reformatting

* update refID

* reformat imports

* fix styling

* clean up unmarshalling

* uncomment + fix tests

* appease linter

* remove spaces

* remove old cruft

* add check for empty queries

* update tests

* remove pm as dep

* adjust proxy route contract

* fix service loading

* use UNIX val

* fix endpoint + resp

* h@ckz for frontend

* fix resp

* fix interval

* always set custom meta

* remove unused param

* fix labels fetch

* fix linter

* fix test + remove unused field

* apply pr feedback

* fix grafana-auto intervals

* fix tests

* resolve conflicts

* fix bad merge

* fix conflicts

* remove bad logger import

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

* Do codegen and check no-diff of all (non-blacklisted) CUE->TS codegen during CI (#39922)

* Add file blacklist to `grafana-cli cue gen-ts` cmd

* Add CI step checking all cuetsification is done

* Add dummy command to make the next one fail

* Generate drone bits

* Check diff output failure

* Echo list of untracked files, for failure locality

* Move git cleanness checking into script

* Blacklist of cue files is complete and correct

* Remove news panel plugin from cuetsify blacklist

* Dummy commit, check that untracked gen still fail

* Tie off remaining errors

* Re-add barchart to blacklist
* Remove file left around by earlier pipeline
* Commit generated news models.gen.ts

* Include eslint as part of cuetsified output gen

* Update pkg/cmd/grafana-cli/commands/cuetsify_command.go

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>

* Update scripts/drone/steps/lib.star

Co-authored-by: Maria Alexandra <239999+axelavargas@users.noreply.github.com>

* Update drone.yml

* Last fix on .drone.yml

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
Co-authored-by: Maria Alexandra <239999+axelavargas@users.noreply.github.com>

* Alerting: add organziation ID to the ngAlert webhook payload (#40189)

* Alerting: add organziation ID to the ngAlert webhook payload

* remove systemcallfilters sections from systemd unit files (#40176)

* Add Headers to http client Options (#40214)

* Docs: Add required library for the image renderer (#40201)

* update permissions scopes and description for role scopes (#40206)

* Chore: Migrate yarn from v1 to v2 (#39082)

* Chore: Migrate yarn from v1 to v2

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

* ReleaseNotes: Updated changelog and release notes for 8.2.0 (#40233)

Co-authored-by: Ryan McKinley <ryantxu@users.noreply.github.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
Co-authored-by: Giordano Ricci <me@giordanoricci.com>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
Co-authored-by: Alexander Emelin <frvzmb@gmail.com>
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: sam boyer <sam.boyer@grafana.com>
Co-authored-by: Petros Kolyvas <code@petros.io>
Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>
Co-authored-by: Grot (@grafanabot) <43478413+grafanabot@users.noreply.github.com>
Co-authored-by: Karl Persson <kalle.persson@grafana.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Selene <selenepinillos@gmail.com>
Co-authored-by: Joan López de la Franca Beltran <5459617+joanlopez@users.noreply.github.com>
Co-authored-by: Tania B <yalyna.ts@gmail.com>
Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
Co-authored-by: Vinayak <vinayak03@users.noreply.github.com>
Co-authored-by: Anne E. Ulrich <aeulrich1997@gmail.com>
Co-authored-by: Kevin Minehart <kmineh0151@gmail.com>
Co-authored-by: Yuriy Tseretyan <yuriy.tseretyan@grafana.com>
Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
Co-authored-by: Alexander Zobnin <alexanderzobnin@gmail.com>
Co-authored-by: idafurjes <36131195+idafurjes@users.noreply.github.com>
Co-authored-by: Will Browne <will.browne@grafana.com>
Co-authored-by: Maria Alexandra <239999+axelavargas@users.noreply.github.com>
Co-authored-by: Jean-Philippe Quéméner <JohnnyQQQQ@users.noreply.github.com>
Co-authored-by: Dimitris Sotirakis <dimitrios.sotirakis@grafana.com>
Co-authored-by: Agnès Toulet <35176601+AgnesToulet@users.noreply.github.com>
Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@gmail.com>
2021-10-08 15:49:04 -07:00
Grot (@grafanabot)
12b5956af2 ReleaseNotes: Updated changelog and release notes for 8.2.0 (#40233) 2021-10-08 19:26:25 +02:00
kay delaney
b2e94d0733 Chore: Migrate yarn from v1 to v2 (#39082)
* Chore: Migrate yarn from v1 to v2

Co-authored-by: Hugo Häggmark <hugo.haggmark@gmail.com>
2021-10-08 15:19:10 +01:00
Karl Persson
1b2a1a9621 update permissions scopes and description for role scopes (#40206) 2021-10-08 10:08:42 -04:00
Agnès Toulet
4c0bafa53a Docs: Add required library for the image renderer (#40201) 2021-10-08 10:07:52 -04:00
Dimitris Sotirakis
d023cabae6 Add Headers to http client Options (#40214) 2021-10-08 16:52:41 +03:00
Kevin Minehart
cdea812cee remove systemcallfilters sections from systemd unit files (#40176) 2021-10-08 15:50:59 +02:00
Jean-Philippe Quéméner
d9c0220824 Alerting: add organziation ID to the ngAlert webhook payload (#40189)
* Alerting: add organziation ID to the ngAlert webhook payload
2021-10-08 14:52:44 +02:00
sam boyer
0fe200ce41 Do codegen and check no-diff of all (non-blacklisted) CUE->TS codegen during CI (#39922)
* Add file blacklist to `grafana-cli cue gen-ts` cmd

* Add CI step checking all cuetsification is done

* Add dummy command to make the next one fail

* Generate drone bits

* Check diff output failure

* Echo list of untracked files, for failure locality

* Move git cleanness checking into script

* Blacklist of cue files is complete and correct

* Remove news panel plugin from cuetsify blacklist

* Dummy commit, check that untracked gen still fail

* Tie off remaining errors

* Re-add barchart to blacklist
* Remove file left around by earlier pipeline
* Commit generated news models.gen.ts

* Include eslint as part of cuetsified output gen

* Update pkg/cmd/grafana-cli/commands/cuetsify_command.go

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>

* Update scripts/drone/steps/lib.star

Co-authored-by: Maria Alexandra <239999+axelavargas@users.noreply.github.com>

* Update drone.yml

* Last fix on .drone.yml

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
Co-authored-by: Maria Alexandra <239999+axelavargas@users.noreply.github.com>
2021-10-08 08:47:55 -04:00
idafurjes
e822c8a24d CloudMonitoring: Migrate to use backend plugin SDK contracts (#38650)
* Use SDK contracts for cloudmonitoring

* Get build running, tests passing and do some refactoring (#38754)

* fix build+tests and refactor

* remove alerting stuff

* remove unused field

* fix plugin fetch

* end to end

* resp rename

* tidy annotations

* reformatting

* update refID

* reformat imports

* fix styling

* clean up unmarshalling

* uncomment + fix tests

* appease linter

* remove spaces

* remove old cruft

* add check for empty queries

* update tests

* remove pm as dep

* adjust proxy route contract

* fix service loading

* use UNIX val

* fix endpoint + resp

* h@ckz for frontend

* fix resp

* fix interval

* always set custom meta

* remove unused param

* fix labels fetch

* fix linter

* fix test + remove unused field

* apply pr feedback

* fix grafana-auto intervals

* fix tests

* resolve conflicts

* fix bad merge

* fix conflicts

* remove bad logger import

Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
Co-authored-by: Will Browne <will.browne@grafana.com>
2021-10-08 14:46:35 +02:00
Alexander Zobnin
d13c799aa6 Replace SAML library with fork (#40149)
* Update saml library to latest

* Use fork of crewjam/saml with fix for certificate chain bug
2021-10-08 14:19:04 +03:00
Jack Westbrook
7cf3c84c92 Datasources: Fix deletion of datasource if plugin cannot be found (#40095)
* fix(pluginsettings): reject with error so datasource plugin loading failures still render ui

* feat(pluginpage): handle plugin loading error

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

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

* test(datasourcesettings): fix failing test

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

* test(datasources): update action tests for latest changes
2021-10-08 12:31:43 +02:00
Hugo Häggmark
70e759e0c0 Folders: Prevents deletion of General folder (#40192) 2021-10-08 11:15:15 +02:00
Ashley Harrison
e367fefdae Chore(dependencies): Remove puppeteer since we don't use it anywhere (#40137) 2021-10-08 09:22:43 +01:00
Torkel Ödegaard
6e6f406377 Babel: Remove unused plugin (#40172)
* removed unused babel plugin

* Update lock file
2021-10-08 07:26:05 +02:00
Yuriy Tseretyan
5836def6c2 Alerting: declare constants for __dashboardUid__ and __panelId__ literals (#39976) 2021-10-07 17:30:06 -04:00
Kevin Minehart
c8651c46d0 Packaging: document systemd net bind capability rpm and deb installations (#40165)
* add systemd net bind capability docs for rpm and deb

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-10-07 22:56:42 +02:00
Anne E. Ulrich
872385dcee Grammar issues (#40168) 2021-10-07 16:22:24 -04:00
Vinayak
dbe1ab7d54 docs: Add keepCokkies cofiguration option in datasources (#39890)
Signed-off-by: Vinayak Kadam <kadamvinayak03@gmail.com>
2021-10-07 13:56:10 -04:00
achatterjee-grafana
821d92b882 Doc: Fixed issue 40017 (#40152)
* Added content as suggested by Will

* removed a few extra words.

* Update docs/sources/administration/configuration.md

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

* Update docs/sources/administration/configuration.md

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

* Update docs/sources/administration/configuration.md

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

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>
2021-10-07 11:54:31 -04:00
Giordano Ricci
db973f4422 Chore: update latest.json to 8.2 (#40153) 2021-10-07 17:36:33 +02:00
Alex Khomenko
b5f39637d4 Admin: Enable extending filters (#39825)
* Setup extensible filters

* Fix test

* Handle filter as array

* Add className

* Abstract getFilters

* Make docs link external

* Use underline for links in tooltips instead of link color

Co-authored-by: Selene <selenepinillos@gmail.com>
2021-10-07 17:41:52 +03:00
Joan López de la Franca Beltran
722c414fef Encryption: Refactor securejsondata.SecureJsonData to stop relying on global functions (#38865)
* Encryption: Add support to encrypt/decrypt sjd

* Add datasources.Service as a proxy to datasources db operations

* Encrypt ds.SecureJsonData before calling SQLStore

* Move ds cache code into ds service

* Fix tlsmanager tests

* Fix pluginproxy tests

* Remove some securejsondata.GetEncryptedJsonData usages

* Add pluginsettings.Service as a proxy for plugin settings db operations

* Add AlertNotificationService as a proxy for alert notification db operations

* Remove some securejsondata.GetEncryptedJsonData usages

* Remove more securejsondata.GetEncryptedJsonData usages

* Fix lint errors

* Minor fixes

* Remove encryption global functions usages from ngalert

* Fix lint errors

* Minor fixes

* Minor fixes

* Remove securejsondata.DecryptedValue usage

* Refactor the refactor

* Remove securejsondata.DecryptedValue usage

* Move securejsondata to migrations package

* Move securejsondata to migrations package

* Minor fix

* Fix integration test

* Fix integration tests

* Undo undesired changes

* Fix tests

* Add context.Context into encryption methods

* Fix tests

* Fix tests

* Fix tests

* Trigger CI

* Fix test

* Add names to params of encryption service interface

* Remove bus from CacheServiceImpl

* Add logging

* Add keys to logger

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

* Add missing key to logger

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

* Undo changes in markdown files

* Fix formatting

* Add context to secrets service

* Rename decryptSecureJsonData to decryptSecureJsonDataFn

* Name args in GetDecryptedValueFn

* Add template back to NewAlertmanagerNotifier

* Copy GetDecryptedValueFn to ngalert

* Add logging to pluginsettings

* Fix pluginsettings test

Co-authored-by: Tania B <yalyna.ts@gmail.com>
Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
2021-10-07 17:33:50 +03:00
Selene
da813877fb Create search filters by interface (#39843)
* Extract search users to a new service

* Fix wire provider

* Fix common_test and remove RouteRegister

* Remove old endpoints

* Fix test

* Create search filters using interfaces

* Move Enterprise filter, rename filter for filters and allow use filters with params

* Each filter has unique key

* Back activeLast30Days filter to OSS

* Fix tests

* Delete unusued param

* Move filters to searchusers service and small refactor

* Fix tests
2021-10-07 16:06:16 +02:00
Grot (@grafanabot)
e7b81e1918 ReleaseNotes: Updated changelog and release notes for 8.2.0 (#40141)
* ReleaseNotes: Updated changelog and release notes for 8.2.0

* Add link & remove empty line in CHANGELOG

* remove empty line

Co-authored-by: Elfo404 <me@giordanoricci.com>
2021-10-07 15:55:22 +02:00
dependabot[bot]
141462f5ab Bump mocha from 7.0.1 to 9.1.2 (#39979)
* Bump mocha from 7.0.1 to 9.1.2

Bumps [mocha](https://github.com/mochajs/mocha) from 7.0.1 to 9.1.2.
- [Release notes](https://github.com/mochajs/mocha/releases)
- [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mochajs/mocha/compare/v7.0.1...v9.1.2)

---
updated-dependencies:
- dependency-name: mocha
  dependency-type: direct:development
  update-type: version-update:semver-major
...

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

* kick drone

* Remove mocha as it's not used by anything

* kick drone

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-10-07 13:39:10 +01:00
Karl Persson
efbb4c890f Access Control: Add scope type prefix (#40076)
* prefix runtime scopes with key type
2021-10-07 11:54:43 +02:00
Ryan McKinley
ff9ad7ad20 Schema: use the generated graph.gen.ts (#40090)
* actually generate graph.gen.ts

* getting closer

* keep file where it is

* manual fixes

* Update packages/grafana-schema/src/schema/graph.gen.ts

Co-authored-by: sam boyer <sam.boyer@grafana.com>

* Docs: Whats new in 8.2 (#39945)

* Added time range controls updates

* Added plugins catalog update

* Added enterprise images

* Added community contributions highlights for 8.2

* accessibility statement

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* Apply suggestions from code review

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

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

* Live: array for Processor, Outputter and Subscriber in channel rule top level (#39677)

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

* more

* more

Co-authored-by: sam boyer <sam.boyer@grafana.com>
Co-authored-by: Petros Kolyvas <code@petros.io>
Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
Co-authored-by: Alexander Emelin <frvzmb@gmail.com>
Co-authored-by: Grot (@grafanabot) <43478413+grafanabot@users.noreply.github.com>
2021-10-07 05:19:58 -04:00
Ashley Harrison
009a26264c NavBar: Order App plugins alphabetically (#40078)
* NavBar: Order App plugins alphabetically

* Update pkg/api/index.go

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

Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
2021-10-07 10:08:47 +01:00
Leon Sorokin
d3815a851c Stat: recompute shared y range during streaming updates (#39485) 2021-10-07 10:48:49 +02:00
Alexander Emelin
8180121495 Live: remote write sampling (#40079) 2021-10-07 11:42:57 +03:00
Alex Khomenko
5c7e874008 Search: Fix local storage key (#40127)
* Default to 'General' if no folder title is present

* Add bottom padding
2021-10-07 11:35:31 +03:00
Giordano Ricci
95d9722afa Fix: prevent queryDisplyText in QueryRowHeader from overflowing (#40094)
* Revert "Fix Query Editor Row horizontal overflow (#39419)"

This reverts commit 42b1fa0f62.

* fix: prevent queryDisplyText in QueryRowHeader from overflowing
2021-10-07 09:13:07 +01:00
Marcus Andersson
d9ca3c5c5d CodeEditor: making sure we trigger the latest onSave callback provided to the component (#39835) 2021-10-07 08:51:23 +02:00
Hugo Häggmark
d09cdfb844 Docs: Add documentation for library elements API (#39829)
* LibraryElements: Adds api documentation

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Update docs/sources/http_api/library_element.md

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

* Refactor: changes after PR comments

* Apply suggestions from code review

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

* Chore: updates after review

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-10-07 07:29:27 +02:00
Petros Kolyvas
cb5f405d86 Docs: Whats new in 8.2 final changes (#40109)
* Added time range controls updates

* Added plugins catalog update

* Added enterprise images

* Added community contributions highlights for 8.2

* accessibility statement

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* Apply suggestions from code review

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

* Ran prettier:write to see if we can fix the issues

* Fix issues with template info

* Merge fix

* Template fix part 2

* What is a mergfix even

* Additional final fixes

* Markdown link error fix for time picker changes

* Ran prettier -w again to fix linting issues

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-10-07 01:57:00 +02:00
An
6567462de9 support settings array (#40103) 2021-10-06 15:55:54 -04:00
Ryan McKinley
3db98f417d Panel Options: support dynamic options editors (#39491) 2021-10-06 21:41:42 +02:00
Connor Lindsey
3a8d04603f Explore: Add opt-in config for Node Graph in Jaeger, Zipkin, and Tempo (#39958) 2021-10-06 13:39:14 -06:00
Grot (@grafanabot)
4a91ceeb1e ReleaseNotes: Updated changelog and release notes for 8.1.7 (#40081) 2021-10-06 18:47:13 +01:00
Alexander Emelin
5358c45a3a Live: array for Processor, Outputter and Subscriber in channel rule top level (#39677) 2021-10-06 20:43:25 +03:00
Petros Kolyvas
ed0c43b106 Docs: Whats new in 8.2 (#39945)
* Added time range controls updates

* Added plugins catalog update

* Added enterprise images

* Added community contributions highlights for 8.2

* accessibility statement

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* Apply suggestions from code review

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

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-10-06 17:22:38 +02:00
Connor Lindsey
3e33330e27 Tempo: Decrease the default Tempo search limit to 20 (#40030) 2021-10-06 08:43:13 -06:00
ian moone
98a9b4adc5 Fix typo in "filter by value" example (#40070) 2021-10-06 10:29:42 -04:00
Dimitris Sotirakis
f65372789e Chore: Add Kevin Minehart to CODEOWNERS for CI related code (#40074)
* Add Kevin Minehart to CODEOWNERS for CI related code

* Remove zserge from CODEOWNERS
2021-10-06 14:53:02 +02:00
Oscar Kilhed
ba31e4ee4d TimePicker: fix console error on time picker open (#40067)
* TimePicker: fix console error on time picker open
2021-10-06 14:17:24 +02:00
Carl Bergquist
075256923b Update the grafana-mixin to use HTTP histograms (#39155)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
2021-10-06 14:15:12 +02:00
Gabriel MABILLE
458371c8eb AccessControl: Extend scope parameters with extra params from context (#39722)
* AccessControl: Extend scope parameters with extra params from context

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
2021-10-06 13:15:09 +02:00
dependabot[bot]
d1b2b10e6a Chore: bump jest-junit from 6.4.0 to 13.0.0 (#40037)
Bumps [jest-junit](https://github.com/jest-community/jest-junit) from 6.4.0 to 13.0.0.
- [Release notes](https://github.com/jest-community/jest-junit/releases)
- [Commits](https://github.com/jest-community/jest-junit/compare/v6.4.0...v13.0.0)

---
updated-dependencies:
- dependency-name: jest-junit
  dependency-type: direct:production
  update-type: version-update:semver-major
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-10-06 11:59:49 +01:00
kay delaney
1ce750471f A11y: Fix fastpass issues for dashboard management pages (#39940)
* A11y: Fix fastpass issues for dashboard pages
See #39429
2021-10-06 11:58:18 +01:00
Serge Zaitsev
3131388084 Chore: Imperative request data binding (#39837)
* rename Bind to BindMiddleware

* make things private

* removed unused part of data bindings

* provide json and form binding helpers

* add example of binding migration in login api

* implement validation

* fix tests

* remove debug output

* put new bind api into macaron pacakge

* revert bind api breaking change
2021-10-06 12:52:27 +02:00
Zoltán Bedi
7fd7c98540 MySql: Fix reset button on config page (#39988)
* MySql: Fix reset button on config page

* Use button instead of anchor

* Add aria labels
2021-10-06 12:41:34 +02:00
George Robinson
935bd34a30 Panel ID annotation cannot be set without Dashboard UID (#40019) 2021-10-06 11:34:11 +01:00
Ashley Harrison
2f731d42f3 NewsPanel: Prevent Date and title collapsing to single row (#40016) 2021-10-06 11:14:37 +01:00
Sofia Papagiannaki
4f2a3f92e4 Docs: update alerting (#39899)
* Docs: update alerting

* Apply suggestions from code review

Co-authored-by: Armand Grillet <2117580+armandgrillet@users.noreply.github.com>
2021-10-06 11:53:22 +02:00
ying-jeanne
227c8403b5 Fix the disjuction of panels (#39412)
[As code] Correct trim apply defaults when import/export dashboards
2021-10-06 11:39:23 +02:00
Dimitris Sotirakis
ccd6a2eae3 Remove dockerize leftovers (#39960) 2021-10-06 11:37:42 +03:00
achatterjee-grafana
cfc31ce523 Doc: Organized the Getting Started section (#39813)
* First commit with reorganized and updated content.

* Updated Getting started topic.

* Changed some wording.

* Removed extra word "setting".

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

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

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

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

* Updated doc based on review.

* Fix linting errors

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>
Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
2021-10-05 20:49:13 -04:00
achatterjee-grafana
d7ff94906d Doc: Fix escalation issue 903 (#40034)
* First set of reorg of Playlist topic. Also fixed a broken bookmark in Azure authentication topic.

* More re-org.

* Added note requested in issue 903.

* Updated a note added dashboard HTTP API endpoint.

* Update docs/sources/dashboards/playlist.md

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

* Update docs/sources/dashboards/playlist.md

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

* Update docs/sources/dashboards/playlist.md

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

* Update docs/sources/dashboards/playlist.md

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

* Update docs/sources/dashboards/playlist.md

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

* Update docs/sources/dashboards/playlist.md

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

* Updated image position and name.

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>
2021-10-06 01:46:29 +02:00
Marcus Efraimsson
329f96db1a Fix static path matching issue in macaron (#40023)
Co-authored-by: Malcolm Holmes <mdh@odoko.co.uk>
2021-10-05 19:38:09 +02:00
Marcus Efraimsson
feaa56a7fe ReleaseNotes: Updated changelog and release notes (#40022) 2021-10-05 19:11:57 +02:00
Ieva
71c6d7285e AccessControl: document FGAC licensing permissions (#39192)
* document licensing permissions and roles

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

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>

* Update docs/sources/enterprise/access-control/permissions.md

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>

* update action name for "licensing.reports:read"

* put licensing editor role back in, more table formatting

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
2021-10-05 18:35:01 +02:00
Eric Leijonmarck
5374eaca89 fix: marshal displayname RoleDTO (#40015) 2021-10-05 16:29:34 +02:00
Ieva
52220b2470 AccessControl: frontend changes for adding FGAC to licensing (#39484)
* refactor licenseURL function to use context and export permission evaluation fction

* remove provisioning file

* refactor licenseURL to take in a bool to avoid circular dependencies

* remove function for appending nav link, as it was only used once and move the function to create admin node

* better argument names

* create a function for permission checking

* extend permission checking when displaying server stats

* enable the use of enterprise access control actions when evaluating permissions

* import ordering

* move licensing FGAC action definitions to models package to allow access from oss

* move evaluatePermissions for routes to context serve

* change permission evaluator to take in more permissions

* move licensing FGAC actions again to appease wire

* avoid index out of bounds issue in case no children are passed in when creating server admin node

* simplify syntax for permission checking

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

* update loading state for server stats

* linting

* more linting

* fix test

* fix a frontend test

* update "licensing.reports:read" action naming

* UI doesn't allow reading only licensing reports and not the rest of licensing info

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2021-10-05 14:54:26 +01:00
Eric Leijonmarck
f384288183 AccessControl: Add displayname field to Role (#39904)
* feat: add displayname

* refactor: marshal role for fallback displayname

* refactor: moved to private heuristic function for displaynames

* refactor: display name trimspace and remove prefix

* refactor: renaming of fallbackFunction

* refactor: moved methods below struct types
2021-10-05 13:07:16 +01:00
idafurjes
2759b16ef5 Chore: Add context for dashboards (#39844)
* Add context for dashboards

* Remove GetDashboardCtx

* Remove ctx.TODO
2021-10-05 13:26:24 +02:00
dependabot[bot]
697a90699b Chore: Remove pretty-format since it's not used (#39980)
* Bump pretty-format from 25.1.0 to 27.2.4

Bumps [pretty-format](https://github.com/facebook/jest/tree/HEAD/packages/pretty-format) from 25.1.0 to 27.2.4.
- [Release notes](https://github.com/facebook/jest/releases)
- [Changelog](https://github.com/facebook/jest/blob/main/CHANGELOG.md)
- [Commits](https://github.com/facebook/jest/commits/v27.2.4/packages/pretty-format)

---
updated-dependencies:
- dependency-name: pretty-format
  dependency-type: direct:development
  update-type: version-update:semver-major
...

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

* Chore(dependencies): Remove pretty-format as it's not currently used

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-10-05 11:58:16 +01:00
Torkel Ödegaard
ead8429210 Annotations: Improve rendering performance of event markers (#39984) 2021-10-05 12:53:25 +02:00
dependabot[bot]
cdeb3e730d Bump execa from 4.0.0 to 5.1.1 (#39654)
Bumps [execa](https://github.com/sindresorhus/execa) from 4.0.0 to 5.1.1.
- [Release notes](https://github.com/sindresorhus/execa/releases)
- [Commits](https://github.com/sindresorhus/execa/compare/v4.0.0...v5.1.1)

---
updated-dependencies:
- dependency-name: execa
  dependency-type: direct:production
  update-type: version-update:semver-major
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-10-05 09:24:43 +01:00
Gabriel MABILLE
4160429b71 AccessControl: rename data source id read action (#39966) 2021-10-05 09:39:00 +02:00
Zoltán Bedi
2098bcab9b Dep: Ignore ora lib bump for now (#39957) 2021-10-05 08:28:30 +02:00
Torkel Ödegaard
e0b576fff4 PanelContext: Adds app property of type CoreApp enum to inform panel about what the outer container/app is (#39952)
* PanelContext: Adds a container enum / string to inform panel about what the outer container/app state is

* Changing to use existing CoreApp

* fixing unified alerting type errors
2021-10-05 08:07:57 +02:00
Ivana Huckova
3e01db9a1e Docs: Add API endpoints used for templating in Prometheus (#39639) 2021-10-04 21:54:25 +02:00
Michael D
ccd7f8a5ba Some documentation fixes (#39951)
* Some documentation fixes

* Address review comments

* Fixed lint issues using prettifier.

Co-authored-by: achatterjee-grafana <aparajita.chatterjee@grafana.com>
2021-10-04 15:03:26 -04:00
Santiago
562cd9e44e Alerting template functions (#39261)
* Alerting: (wip) add template funcs

* Alerting: (wip) numeric template functions

* Alerting: (wip) template functions

* Test for the "args" function

* Alerting: (wip) Documentation for template functions

* Alerting: template functions - refactor

* code review changes

* disable linter error

* Use Prometheus implementation of TemplateExpander

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

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

* change templateCaptureValue to support using template functions

* Update pkg/services/ngalert/state/template.go

Co-authored-by: gotjosh <josue.abreu@gmail.com>

* Test and documentation added for reReplaceAll template function

* complete missing functions, documentation and tests

* Use the alert instance's evaluation time for expanding the template

* strvalue graphlink and tablelink functions

* delete duplicate test

* make strvalue return an empty string

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
Co-authored-by: gotjosh <josue.abreu@gmail.com>
2021-10-04 15:04:37 -03:00
Oscar Kilhed
3cd7b11eb4 TimePicker: Close timepicker with esc (#39962) 2021-10-04 18:59:24 +02:00
George Robinson
2a4c1b1aa6 You can now get alert rules for a dashboard or a panel using /api/v1/rules endpoints. (#39476)
Get alert rules for a dashboard and panel in /api/v1/rules
2021-10-04 16:33:55 +01:00
Ashley Harrison
a3783a4eb7 Navigation: Increase navigation width + make icons a consistent size (#39959)
* Navigation: Increase navigation width + make icons a consistent size

* Navigation: Move style to only apply to headers
2021-10-04 16:18:17 +01:00
achatterjee-grafana
991b5fee3d Doc: Updated Azure AD OAuth2 authentication topic. (#39609)
* Updated topic.

* Added bookmarks.

* Update docs/sources/auth/azuread.md

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

* Update docs/sources/auth/azuread.md

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

* Update docs/sources/auth/azuread.md

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

* Fixed bulleted list.

* Updated list again.

* Format change.

* Removed spaces.

* Run prettifier to fix whitespace issues.

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>
2021-10-04 11:14:33 -04:00
dependabot[bot]
4f411497b4 Bump react-is from 16.8.0 to 17.0.2 (#39941)
* Bump react-is from 16.8.0 to 17.0.2

Bumps [react-is](https://github.com/facebook/react/tree/HEAD/packages/react-is) from 16.8.0 to 17.0.2.
- [Release notes](https://github.com/facebook/react/releases)
- [Changelog](https://github.com/facebook/react/blob/main/CHANGELOG.md)
- [Commits](https://github.com/facebook/react/commits/v17.0.2/packages/react-is)

---
updated-dependencies:
- dependency-name: react-is
  dependency-type: direct:development
  update-type: version-update:semver-major
...

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

* Chore: Remove react-is since it doesn't seem to be used anywhere

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-10-04 16:11:36 +01:00
dependabot[bot]
03804fb4b9 Bump @sentry/utils from 5.24.2 to 6.13.2 (#39932)
* Bump @sentry/utils from 5.24.2 to 6.13.2

Bumps [@sentry/utils](https://github.com/getsentry/sentry-javascript) from 5.24.2 to 6.13.2.
- [Release notes](https://github.com/getsentry/sentry-javascript/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript/blob/master/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript/compare/5.24.2...6.13.2)

---
updated-dependencies:
- dependency-name: "@sentry/utils"
  dependency-type: direct:production
  update-type: version-update:semver-major
...

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

* Chore: fix type checks by updating buffer.add to add a function instead of a promise

* kick drone

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-10-04 15:43:23 +01:00
idafurjes
f4f0d74838 Chore: Add context to user (#39649)
* Add context to user

* Add context for enterprise

* Add context for UpdateUserLastSeenAtCommand

* Remove xorm
2021-10-04 15:46:09 +02:00
Isabella Siu
42d7c32759 AzureMonitor: Remove unused editor component (#39874) 2021-10-04 09:17:59 -04:00
gotjosh
6572017ec7 Alerting: Allow more characters in label names so notifications are sent (#38629)
Remove validation for labels to be accepted in the Alertmanager, This helps with datasources that produce non-compatible labels.

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

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

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

Co-authored-by: Kyle Brandt <kyle@grafana.com>
Co-authored-by: Nathan Rodman <nathanrodman@gmail.com>
2021-10-04 15:06:40 +02:00
Guilherme Caulada
706a665240 Auth: add name parameter to auth.saml (#39883)
* add name parameter to auth.saml

* Create constant to store default SAML name
2021-10-04 09:58:16 -03:00
dependabot[bot]
5219c72a6c Bump simple-git from 1.132.0 to 2.46.0 (#39931)
* Bump simple-git from 1.132.0 to 2.46.0

Bumps [simple-git](https://github.com/steveukx/git-js) from 1.132.0 to 2.46.0.
- [Release notes](https://github.com/steveukx/git-js/releases)
- [Changelog](https://github.com/steveukx/git-js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/steveukx/git-js/compare/v1.132.0...v2.46.0)

---
updated-dependencies:
- dependency-name: simple-git
  dependency-type: direct:production
  update-type: version-update:semver-major
...

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

* simple-git/promise is deprecated

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2021-10-04 14:30:02 +02:00
Zoltán Bedi
47a9613b3e Dev: Add debug jest test to vscode launch (#39905) 2021-10-04 14:26:19 +02:00
dependabot[bot]
e2e70d036e Bump @types/sinon from 7.5.2 to 10.0.4 (#39729)
Bumps [@types/sinon](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/sinon) from 7.5.2 to 10.0.4.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/sinon)

---
updated-dependencies:
- dependency-name: "@types/sinon"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-10-04 12:21:32 +02:00
Ashley Harrison
c2c04f218a Chore(DashboardSearch): Convert to use useTheme2 (#39918) 2021-10-04 10:32:29 +01:00
Alex Khomenko
d6fd17531d QueryEditor: Add missing keys to extra action components (#39913) 2021-10-04 09:05:43 +03:00
Nathan Rodman
427f75d9b0 Alerting: UI standardization and fixes (#38770)
* Add expand all button for rule list group view

* filter out recording rules by default

* Create rule type filter

* Add placeholder text for inputs

* WIP move Silences to use DynamicTable

* Use dynamic table for silences page

* hide expand all for state list view

* Add placeholders for inputs

* Update selector in receivers test

* Fix strict error for ruleType

* remove redundant placeholder text and cleanup hooks

* add fixed width for schedule

* Rebase with dynamic table for silences

* only show expand/collapse when filters are active
2021-10-01 15:15:55 -07:00
Ryan McKinley
9f93a81bee Geomap: use panel context editor state (#39920) 2021-10-01 11:06:11 -07:00
kay delaney
816d70a7e5 A11y: Fix fastpass issues for /org/ pages (#39902)
* A11y: Fix fastpass issues for /org/ pages
See #39429
2021-10-01 15:58:18 +01:00
Pedro Araújo
54afe20b44 Add missing comma in IAM policy (#39914) 2021-10-01 10:57:01 -04:00
Ashley Harrison
4350f4931d NavBar: Styling tweaks to tidy up appearance (#39871)
* NavBar: Styling tweaks to tidy up appearance

* NavBar: Add external link icon to external links

* NavBar: Dim the external link icon

* bump drone

* NavBar: Rename variable to better describe what it's doing
2021-10-01 15:53:56 +01:00
Yuriy Tseretyan
4dadb8fc51 Alerting: Remove extra field orgId from notifier.Alertmanager (#39870) 2021-10-01 09:54:37 -04:00
Domas
e343b62665 Alerting: make /api/prometheus/grafana/api/v1/rules faster (#39660) 2021-10-01 16:39:04 +03:00
Domas
a1d4be0700 Alerting: Alertmanager datasource support for upstream Prometheus AM implementation (#39775) 2021-10-01 16:24:56 +03:00
Jack Westbrook
cc7f7e30e9 Plugins: Mock Icon component to prevent console errors (#39901)
* feat(grafana-ui): externalise react-inlinesvg for mocking

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

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

* feat(toolkit): set testId to match the Icon name prop in react-inlinesvg mock
2021-10-01 15:07:22 +02:00
Rishabh Gupta
a17e38f638 docs: access-control endpoint typo fix (#39877)
Tested by @donomii.
2021-10-01 14:54:09 +02:00
Tania B
62689ec804 Security: Add secrets service (#39418)
* Add secrets service

* Revert accidental changes in util encryption

* Make minor changes

Move functional options to models

Revert renaming types to models

* Add context

* Minor change in GetDataKey

* Use CreateDataKeyWithDBSession in CreateDataKey

* Handle empty DEK name in DeleteDataKey

* Rename defaultProvider

* Remove secrets store service
2021-10-01 15:39:57 +03:00
Piotr Jamróz
a6a3ef74be Refactor: Decouple logs from DataSourceApi (#39536)
* Decouple logs from DataSourceApi

* Remove unused code

* Mark log context methods as deprecated

* Update jsdocs deprecation message

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

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

* Check for undefined in hasLogsContextSupport

* Add release tags

* Change release tag

* Retrigger the build

* Post-merge: revert index.md changes

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2021-10-01 13:38:16 +02:00
Piotr Jamróz
5120765b0c Docs: Lint CloudWatch index page (#39900) 2021-10-01 12:15:01 +02:00
Torkel Ödegaard
962745ff21 PanelEditor: Adds panel instance state and a way to share this between panel & option editors (#39637)
* PanelEditor: Adds panel instance state and a way to share this between panel & option editors

* Refactoring to use PanelContext
2021-10-01 11:08:11 +02:00
Andrej Ocenas
0b89bdd47d CloudWatch Logs: Docs for X-Ray links (#39725) 2021-10-01 09:48:42 +02:00
Andrej Ocenas
3e47fb1432 CloudWatch Logs: Skip caching for Log queries (#39860)
* Add x-skip-cache header to queries

* Specify caching works for CW metrics
2021-10-01 09:45:37 +02:00
dependabot[bot]
c18585a4f3 Bump pngjs from 3.4.0 to 6.0.0 (#39728)
Bumps [pngjs](https://github.com/lukeapage/pngjs) from 3.4.0 to 6.0.0.
- [Release notes](https://github.com/lukeapage/pngjs/releases)
- [Commits](https://github.com/lukeapage/pngjs/commits)

---
updated-dependencies:
- dependency-name: pngjs
  dependency-type: direct:production
  update-type: version-update:semver-major
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-10-01 09:35:58 +02:00
Dimitris Sotirakis
33c4893a59 Upgrade to grabpl 2.4.8 (#39885) 2021-10-01 09:33:33 +02:00
Noah van der Aa
0f42b37e21 Fix folder icons for alert rules (#39873) 2021-10-01 09:52:43 +03:00
dependabot[bot]
71eb217476 Bump @types/fs-extra from 8.1.0 to 9.0.13 (#39884)
Bumps [@types/fs-extra](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/fs-extra) from 8.1.0 to 9.0.13.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/fs-extra)

---
updated-dependencies:
- dependency-name: "@types/fs-extra"
  dependency-type: direct:production
  update-type: version-update:semver-major
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-10-01 08:37:55 +02:00
Oscar Kilhed
fcce367fc3 Docs: Update time picker docs (#39847)
* Docs: Update time picker docs

* Update docs/sources/dashboards/time-range-controls.md

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

* Update docs/sources/dashboards/time-range-controls.md

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

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-10-01 07:13:23 +02:00
Hugo Häggmark
7c7b21b39e DashboardList/AlertList: Fix for missing All folder value (#39772)
* DashboardList/AlertList: Fix for missing All folder value

* Refactor: Fixes case where folder does not exist in results
2021-10-01 06:20:25 +02:00
Hugo Häggmark
9de633d3a3 Chore: lower pa11y-ci thresholds (#39853) 2021-10-01 06:07:55 +02:00
An
ecf9733a66 add: rule settings editor (#39875) 2021-09-30 16:37:31 -04:00
Yuriy Tseretyan
526961f298 Alerting: rule evaluation loop to not access multiorg Alertmanager if no alerts to add (#39872) 2021-09-30 15:07:56 -04:00
Alexander Emelin
29f3e175b6 Live: test pipeline convert endpoint (#39480) 2021-09-30 19:28:06 +02:00
Andrej Ocenas
14d90b0cf8 Link to contributing docs and fix some image markdown examples (#39726) 2021-09-30 12:59:35 -04:00
Yuriy Tseretyan
2b4e51f478 Alerting: Parse App URL only once (#39855) 2021-09-30 12:51:20 -04:00
Alexander Emelin
a696fc8b2b Live: pipeline rule crud (file-based, still for MVP) (#39238) 2021-09-30 19:29:32 +03:00
Levente Balogh
3ad5ee87a3 Plugins Catalog: fix overflowing text in plugin cards (#39862)
* refactor(Plugins/Admin): add a "badge" for displaying available updates

* refactor(Plugins/Admin): rename component

* refactor(Plugins/Admin): use the PluginListItemBadges component
2021-09-30 17:23:40 +02:00
An
fffbdf4c82 feature: allow delete request to accept body (#39817) 2021-09-30 10:59:53 -04:00
kay delaney
451d023c79 A11y: Fix fastpass issues for /org/teams pages (#39848)
* A11y: Fix fastpass issues for /org/teams pages
See #39429
2021-09-30 15:46:10 +01:00
Erik Sundell
b711bc00b9 Aws: Update AWS authentication documentation (#39236)
* wip: adding workspace iam role

* add intro

* minor adjustment

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* revert to on behalf of

* remove permissions

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-09-30 15:58:52 +02:00
Gábor Farkas
d363c36853 Prometheus: metrics browser: handle label values with special characters (#39713)
* prometheus: handle label-values with special characters

* added comment
2021-09-30 15:50:02 +02:00
Piotr Jamróz
124e9daf26 Loki: Full range logs volume (#39327)
* Basic implementation of getLogsVolumeQuery method

* Add todos

* Add a switcher to automatically load logs volume

* De-scope dismissing logs volume panel

* De-scope logs volume query cancellation

* Remove todo

* Aggregate logs volume components in single panel

* Show logs volume only when it's available

* Aggregate logs volume by level

* Simplify aggregation

* Handle no logs volume data

* Add error handling

* Do not show auto-load logs volume switcher when loading logs volume is not available

* Remove old logs volume graph

* Clean up

* Make getting data provider more generic

* Provide complete logs volume data (error, isLoading)

* Display more specific error message

* Add missing props to mocks

* Remove setRequest method

* Mark getQueryRelatedDataProviders as internal

* Add missing dataQueryRequest and add a todo

* Remove redundant loading state

* Do not mutate existing queries

* Apply fix for zooming-in from main

* Post-merge fixes

* Create collection for data provider results

* Use more generic names

* Move aggregation logic to Loki logs volume provider

* Move LogsVolume to common types

* Update tests

* Post-merge fixes

* Fix mapping related data values

* Simplify prop mappings

* Add docs

* Fix property name

* Clean-up

* Mark new types as internal

* Reduce number of providers to logs volume only

* Simplify data structure to DataQueryResponse

* Move Logs Volume panel to a separate component

* Test logsVolumeProvider.ts

* Add observable version of datasource mock

* Test getLogsVolumeDataProvider method

* Test LogsVolumePanel

* Test logs volume reducer

* Clean up

* Clean up

* Fix test

* Use sum by to use level field directly

* Fix strict type errors

* Fix strict type errors

* Use "logs" instead of "unknown" if only one level was detected

* Add docs about logs volume

* Rename histogramRequest to logsVolumeRequest

* Use LogsVolumeContentWrapper all content types

* Move `autoLoadLogsVolume` local storage handling

* Fix strict error

* Move getting autoLoadLogsVolume to initial state

* Cancel current logs volume subscription

* Test cancelling subscriptions

* Update docs/sources/datasources/loki.md

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

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

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

* Inline container styles

* Ensure logs volume is aggregated per each subscription separately

* Simplify logs volume provider

* Type-guard support for logs volume provider

* Simplify event handlers to avoid casting

* Clean up and docs

* Move auto-load switcher to logs volume panel

* Fix test

* Move DataSourceWithLogsVolumeSupport to avoid cross referencing

* Simplify interface

* Bring back old histogram and hide the new one behind a feature flag

* Add missing props to logs histogram panel

* Clean up the provider when it's not supported

* Simplify storing autoLoadLogsVolume

* Remove docs

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

Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com>

* Skip dataframes without fields (instant queries)

* Revert styles changes

* Revert styles changes

* Add release tag

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com>
2021-09-30 15:46:11 +02:00
Dimitris Sotirakis
b7a68a9516 Put make gen-go in initialize step (#39854) 2021-09-30 15:39:48 +02:00
Gábor Farkas
97367acc0a Update latest.json (#39852) 2021-09-30 15:25:21 +02:00
Grot (@grafanabot)
58aa595527 ReleaseNotes: Updated changelog and release notes for 8.2.0-beta2 (#39832)
* ReleaseNotes: Updated changelog and release notes for 8.2.0-beta2

* Update _index.md

* Fix linting errors

* Update CHANGELOG.md

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

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
Co-authored-by: Ivana <ivana.huckova@gmail.com>
Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-09-30 14:30:25 +02:00
Hugo Häggmark
53db344acf Chore: update CODEOWNERS file (#39834) 2021-09-30 12:39:29 +02:00
dependabot[bot]
b0e2b35153 Bump react-calendar from 2.19.2 to 3.4.0 (#39658)
* Bump react-calendar from 2.19.2 to 3.4.0

Bumps [react-calendar](https://github.com/wojtekmaj/react-calendar) from 2.19.2 to 3.4.0.
- [Release notes](https://github.com/wojtekmaj/react-calendar/releases)
- [Commits](https://github.com/wojtekmaj/react-calendar/compare/v2.19.2...v3.4.0)

---
updated-dependencies:
- dependency-name: react-calendar
  dependency-type: direct:production
  update-type: version-update:semver-major
...

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

* Chore: Update import + add type declarations

* Chore: Add dependency to correct package

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-09-30 09:01:43 +01:00
Dimitris Sotirakis
4017c5c800 Build: Separate frontend linting from frontend testing (#39808)
* Create new lint-frontend step

* Use lint-frontend step / separate from test-frontend

* Fix typo
2021-09-30 09:56:08 +02:00
Oscar Kilhed
738d5e499e Add fiscal years and search to time picker (#39073)
* Add search to time picker

* implement fiscal datemath

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2021-09-30 09:40:02 +02:00
Piotr Jamróz
787e5e78dd Graphite: Ensure only valid queries are used for interpolation (#39761)
* Graphite: Ensure only valid queries are used for interpolation

* Add a unit test
2021-09-30 09:26:11 +02:00
Piotr Jamróz
f8ebcaa0d9 Explore: Fix displaying rich history saving error message (#39766)
* Explore: Fix displaying rich history saving error message

* Keep generic error message

* remove testing snippet
2021-09-30 09:22:57 +02:00
Levente Balogh
c2754eb9cc Plugins Catalog: Make the catalog the default way to interact with plugins (#39779)
* chore(Plugins/Admin): make the Plugins Catalog the default way to interact with plugins

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

* test(Plugins): make the tests pass
2021-09-30 08:34:03 +02:00
Ryan McKinley
4c8c2f6c96 Scatter: support bubble and line charts with out-of-order data (alpha) (#39377)
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2021-09-29 10:14:15 -07:00
Gabriel MABILLE
6aa006b699 AccessControl: Document new permissions restricting data source access. (#39091)
* Add data sources roles and permissions to docs

Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
2021-09-29 17:45:27 +02:00
Ashley Harrison
ff009bee9f DashboardRow: Prevent unintended editing of DashboardRow with keyboard shortcut 'e' (#39792) 2021-09-29 16:33:11 +01:00
Alex Khomenko
62dc10829a Admin: Show licensed roles and unit membership in UI (#39773)
* Extend User type

* Render licensed roles and org units

* Combine admin icon with units

* Extract search users to a new service

* Fix wire provider

* remove mock data

* Fix icon margin

* Fix common_test and remove RouteRegister

* Remove old endpoints

* Fix test

* Add indexes to dashboards and orgs tables

* Fix lint

* Revert docs changes

* undo docs formatting

* Change order of input and filters

* Abstract aria-label into a function

* Add accessible info about user's membership

* UI tweaks

Co-authored-by: spinillos <selenepinillos@gmail.com>
2021-09-29 18:26:50 +03:00
Torkel Ödegaard
0f34ae4fbb Revert "Bra: Run wire re-gen on code change (#39774)" (#39799)
This reverts commit abc5f50715.
2021-09-29 17:26:04 +02:00
Todd Treece
9f1de095b7 Docs: Add docs for Redis cluster caching backend configuration (#39687)
* caching: add docs for redis cluster config

* address PR comments

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

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-09-29 11:20:03 -04:00
kay delaney
75a55379f1 A11y: Fixes some fastpass errors for /datasources/* routes (#39577)
* A11y: Fixes some fastpass errors for /datasources/* routes
See #39429
2021-09-29 16:16:30 +01:00
Giordano Ricci
f61c8d3eed A11y: Fix fastpass issues for /explore page (#39507)
* Fix(A11y): add label to explore short url button

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

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

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

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2021-09-29 16:14:30 +01:00
Ivana Huckova
df81676d9e Prometheus: Run Explore both queries trough backend (#39462)
* Prometheus: Run Explore both queries trough backend

* Refactor, simplify

* Set default values for query type selector

* Run multiple queries as one query trough backend

* Remove trailing newlines

* Pass utcOffset

* Remove trailing comma

* Add meta to frames only at 1 place

* Set exemplars to falsee if they are disabled

* Revert "Set exemplars to falsee if they are disabled"

This reverts commit e7b697c9f3.
2021-09-29 16:42:31 +02:00
Sarah Zinger
aeeaa67b0a E2E: improvements to the importDashboard flow (#39693)
* E2E: improvements to the importDashboard flow
2021-09-29 10:27:49 -04:00
Sofia Papagiannaki
012d4f0905 Alerting: Remove ngalert feature toggle and introduce two new settings for enabling Grafana 8 alerts and disabling them for specific organisations (#38746)
* Remove `ngalert` feature toggle

* Update frontend

Remove all references of ngalert feature toggle

* Update docs

* Disable unified alerting for specific orgs

* Add backend tests

* Apply suggestions from code review

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

* Disabled unified alerting by default

* Ensure backward compatibility with old ngalert feature toggle

* Apply suggestions from code review

Co-authored-by: gotjosh <josue@grafana.com>
2021-09-29 16:16:40 +02:00
Marcus Andersson
2dedbcd3c3 PluginsCatalog: adding support for viewing the plugins list as both table and list (#39466)
* working version but with duplications.

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

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

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

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

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

* refactor(Plugins/Admin): rename variable

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

* test(PluginListItemRow): add tests

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

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

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

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

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
2021-09-29 15:44:57 +02:00
Torkel Ödegaard
bc01c9cdbc Prettier: Fix all markdown files and add markdown files to CI verify step (#39776) 2021-09-29 14:34:40 +02:00
Torkel Ödegaard
abc5f50715 Bra: Run wire re-gen on code change (#39774) 2021-09-29 14:30:50 +02:00
Oscar Kilhed
630a120a15 OrgPage: Minor typo fix (#39764) 2021-09-29 14:05:54 +02:00
Selene
02702eb82d Extract search users functions into a service (#39002)
* Extract search users to a new service

* Fix wire provider

* Fix common_test and remove RouteRegister

* Remove old endpoints

* Fix test

* Add indexes to dashboards and orgs tables

* Fix lint
2021-09-29 12:51:49 +02:00
Grot (@grafanabot)
0ecf13e5a3 ReleaseNotes: Updated changelog and release notes for 7.5.4 (#39763) 2021-09-29 12:03:17 +02:00
Ashley Harrison
2058193e98 BarGauge: Improve behaviour when working with streaming data (#39737)
* BarGauge: Improve behaviour when working with streaming data

* BarGauge: Refactor default min/max into grafana/data
2021-09-29 10:12:27 +01:00
sam boyer
c786d22705 Schema: introduce CLI command to convert all CUE files to TS (#39694)
* First pass at cuetsify command

* Update go deps

* Small tweaks to input cue files

* Correct ts import structure, whitespace

* Latest version of cuetsy

* add ordinal option

* upate cue file

* Fix merge garbage

* Remove dead code

* Revert "upate cue file"

This reverts commit e40b1df83e.

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-09-29 04:59:05 -04:00
Grot (@grafanabot)
4263357bbc ReleaseNotes: Updated changelog and release notes for 8.0.0-beta3 (#39758) 2021-09-29 10:50:51 +02:00
Erik Sundell
db8c9122aa add support for interaction events (#39752) 2021-09-29 10:41:16 +02:00
Zoltán Bedi
4682cf5b7c TimeSeries: Fix shared cursor (#39738) 2021-09-29 10:27:04 +02:00
Grot (@grafanabot)
a17244e522 ReleaseNotes: Updated changelog and release notes for 8.1.0-beta1 (#39724) 2021-09-29 09:57:57 +02:00
Dominik Prokop
f887576a27 Table panel: Make filter case insensitive (#39746)
* Expose FilterInput from grafana/ui

* Make table filter case insensitive

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

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

Co-authored-by: Oscar Kilhed <oscar.kilhed@grafana.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
2021-09-29 09:35:41 +02:00
Tania B
990911a3b9 Chore: Cleanup usageStatsMock duplication (#39710)
* Chore: Cleanup usageStatsMock duplication

* Remove making a new slice for UsageStatsMock
2021-09-29 09:59:02 +03:00
Marcus Andersson
b626ba223f Hooks: Adding possibility to display banner on the top of the page (#39099)
* adding working version of notificaion banner trigger.

* Move it to enterprise

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

* fixing explore

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2021-09-29 08:28:07 +02:00
Petros Kolyvas
c4adf5be8e Docs: Update docker image names for oss-specific Grafana image and channel (#39443)
* Initial draft

* Added the what's new in 8.2 link to the what's new parent page

* Docker image namespace change for grafana-oss

* Additional changes and inclusion of Enterprise Docker image namespace and examples

* Fixed language related to Ubuntu-specific images, fixed some markdown and updated some version references

* Fixed enterprise image name because apparently I don't read too well
2021-09-28 14:22:57 -03:00
Connor Lindsey
06592410b2 Tempo: Improve search form defaults and validation (#39534)
* Tempo: add default limit, option to hide Loki search, and run query on hotkey in dropdowns
2021-09-28 10:52:57 -06:00
idafurjes
b255c1b992 Chore: Add context to star and stats (#39591)
* Add context to star and stats

* Use WithTransactionalDbSession

* Add additional ctx

* Remove convey

* Fix star handler name

* Use WithDbSession, use DispatchCtx

* Remove xorm from star
2021-09-28 17:54:45 +02:00
ying-jeanne
580cdc46fc [Chore] update to cue v0.4.0 (#39641)
* change global flag to flagset

* update pr with comments

* replace flag.args by flagset

* fix build

* migrate the schema package to use cue 4.0

* fix the load package
2021-09-28 11:09:09 -04:00
Connor Lindsey
05bb451a1d grafana-ui: Improve PartialHighlighter error handling (#39685)
* Improve PartialHighlighter error handling
2021-09-28 09:07:58 -06:00
Jack Westbrook
fffcee7c1f Plugin Catalog: support Grafana instances that cannot communicate with gcom (#39638)
* added possibility to track if remote plugins could be fetched.

* adding hook to detect if remote plugins are available.

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

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

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

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

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

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

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

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

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
2021-09-28 16:46:29 +02:00
Yuriy Tseretyan
5d0d7dcb3a Update migration to not delete existing Grafana alerts (#39541)
* keep existing unified alert rules untouched
* move silences and other alertmanager files to the organization directory (only if it is a single organization deployment)
* assign the existing notification settings and routes to the first organization
* create default notification settings for each organization in the case of multi org deployment
2021-09-28 10:27:23 -04:00
Sofia Papagiannaki
eead8cd8e1 Docs: alerting fixes (#39717)
* Docs: alerting fixes
2021-09-28 16:37:07 +03:00
Gábor Farkas
e74ae99f48 dependabot: ignore ts-loader (#39702) 2021-09-28 15:27:35 +02:00
Isabella Siu
bf9be975ac AzureMonitor: move metric deep link code to backend (#39524) 2021-09-28 09:24:18 -04:00
Grot (@grafanabot)
73936fc63c ReleaseNotes: Updated changelog and release notes for 8.1.0 (#39719) 2021-09-28 14:29:05 +02:00
Grot (@grafanabot)
95c36c5e0b ReleaseNotes: Updated changelog and release notes for 8.1.1 (#39708) 2021-09-28 13:35:32 +02:00
dependabot[bot]
178cc3ee7b Bump fs-extra from 9.1.0 to 10.0.0 (#39692)
Bumps [fs-extra](https://github.com/jprichardson/node-fs-extra) from 9.1.0 to 10.0.0.
- [Release notes](https://github.com/jprichardson/node-fs-extra/releases)
- [Changelog](https://github.com/jprichardson/node-fs-extra/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jprichardson/node-fs-extra/compare/9.1.0...10.0.0)

---
updated-dependencies:
- dependency-name: fs-extra
  dependency-type: direct:production
  update-type: version-update:semver-major
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-09-28 12:25:04 +01:00
dependabot[bot]
887efce8b1 Bump actions/setup-node from 2.4.0 to 2.4.1 (#39665)
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 2.4.0 to 2.4.1.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v2.4.0...v2.4.1)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-09-28 12:18:43 +01:00
dependabot[bot]
b5f256dcdf Chore(deps): Bump actions-ecosystem/action-regex-match (#39497)
Bumps [actions-ecosystem/action-regex-match](https://github.com/actions-ecosystem/action-regex-match) from 2.0.1 to 2.0.2.
- [Release notes](https://github.com/actions-ecosystem/action-regex-match/releases)
- [Commits](https://github.com/actions-ecosystem/action-regex-match/compare/v2.0.1...v2.0.2)

---
updated-dependencies:
- dependency-name: actions-ecosystem/action-regex-match
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-09-28 12:16:02 +01:00
Sofia Papagiannaki
f6f3a54742 Alerting: tune rule evaluation via configuration (#35623)
* Alerting: Configure max evaluation retries

* Alerting: Enforce minimum rule evaluation interval

* Alerting: Disable rule evaluation from configuration

* Update docs

* Alerting: Configure rule evaluation timeout

* Move options on unified_alerting config section

* Apply suggestions from code review

Co-authored-by: gotjosh <josue@grafana.com>
2021-09-28 13:00:16 +03:00
Peter Holmberg
cc94c55e48 Alerting: Prevent preview if no condition is set (#39659)
* prevent preview if no condition is set

* fixes after pr feedback

* watch on type and condition
2021-09-28 11:35:10 +02:00
Ivana Huckova
79c797c232 Loki: Fix creating coontext query for logs with parsed labels (#39648) 2021-09-28 10:42:38 +02:00
Ben Bodenmiller
01492ebbfc Typo fix in upgrading.md (#39691) 2021-09-28 09:24:22 +03:00
Torkel Ödegaard
0bb426ec33 Add orientation prop to Gauge panel (#39682) 2021-09-28 08:21:46 +02:00
Hugo Häggmark
9a178e7ba9 Variables: Prevents enter key from refreshing page or changing focus (#39666) 2021-09-28 06:07:03 +02:00
Ursula Kallio
2d616285d9 Model imperative verbiage in PR examples. (#39041) 2021-09-27 21:36:53 +02:00
Grot (@grafanabot)
1396aa954f ReleaseNotes: Updated changelog and release notes for 8.2.0-beta1 (#39676) 2021-09-27 21:03:11 +02:00
Ashley Harrison
58d69d1055 Update CODEOWNERS (#39678) 2021-09-27 17:45:47 +01:00
nikki-kiga
8d92e7ab90 Geomap: Style based on feature property (#39498)
* hardcode styles

* add custom styles and rules

* refactor and test to check feature matches rule

* update types and default style

* format geojsonmapper

* adjust types and reformat tests

* remove unused property

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-09-27 09:44:19 -07:00
Jack Westbrook
6eceb69d43 Plugins Catalog: Remove notice asking user to refresh browser (#39592) 2021-09-27 18:07:31 +02:00
Jack Westbrook
4dc556445c Plugin Catalog: Use routing for PluginDetails Tabs (#39555)
* feat(catalog): introduce id and href to PluginDetailsTabs

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

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

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

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

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

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

* test(catalog): update tests with correct props and wrap in router
2021-09-27 18:06:47 +02:00
dependabot[bot]
a79ee09cf5 Bump eslint-plugin-jsdoc from 31.6.1 to 36.1.0 (#39668)
Bumps [eslint-plugin-jsdoc](https://github.com/gajus/eslint-plugin-jsdoc) from 31.6.1 to 36.1.0.
- [Release notes](https://github.com/gajus/eslint-plugin-jsdoc/releases)
- [Commits](https://github.com/gajus/eslint-plugin-jsdoc/compare/v31.6.1...v36.1.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-jsdoc
  dependency-type: direct:production
  update-type: version-update:semver-major
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-09-27 17:00:19 +01:00
idafurjes
65ebb04cf3 Chore: Add context to org users (#39526)
* Add context to org users

* Fix go lint

* Roll back xorm refactor

* Use WithTransactionalDbSession

* Update sqlstore.go

Fix typo

* Update org_users.go

Fix typo
2021-09-27 16:43:16 +02:00
dependabot[bot]
60f5bceda5 Bump @types/prettier from 1.18.3 to 2.4.0 (#39653)
Bumps [@types/prettier](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/prettier) from 1.18.3 to 2.4.0.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/prettier)

---
updated-dependencies:
- dependency-name: "@types/prettier"
  dependency-type: direct:production
  update-type: version-update:semver-major
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-09-27 14:51:54 +01:00
Andrew Hackmann
184fa2a227 QueryActionComponent: Add dataSourceRef to ActionComponetProps (#39486)
* Add dataSourceRef to ActionComponetProps

* pass whole datasource instance settings into modal

Co-authored-by: Travis Patterson <travis.patterson@grafana.com>
2021-09-27 07:40:19 -06:00
Ashley Harrison
0aac00839a Update dependabot.yml (#39663) 2021-09-27 14:34:36 +01:00
Hugo Häggmark
80c55ffc83 Annotations: Deprecate AnnotationsSrv (#39631) 2021-09-27 15:23:54 +02:00
Connor Lindsey
24479ff6b0 Tempo: Show warning if search is not available. Add opt-out config (#39489)
* Tempo: Show warning if search is not available. Add opt-out config
2021-09-27 07:22:49 -06:00
Ashley Harrison
11e362ff0a Chore(dependabot): Add explicit dependabot config to raise PRs for major version bumps (#39640)
* chore(dependabot): introduce explicit npm settings

* Chore(dependabot): ignore minor/patch versions for now

* Chore(dependabot): Ignore some things that will probably require work.

* Chore(dependabot): Let's keep the yaml formatting consistent

* Chore(dependabot): Remove zone.js as it's not used anymore

* Chore(dependabot): Update reviewers to frontend-ops team

* Chore(dependabot): Set the correct frontend-ops group :|

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
2021-09-27 13:34:25 +01:00
Marcus Efraimsson
45a844e77e Elasticsearch/Prometheus: Set correct service namespace for SigV4 (#39439)
Makes sure to set the SigV4 service namespace for Elasticsearch and Prometheus.

Fixes #38440
2021-09-27 14:32:19 +02:00
Ashley Harrison
bbf64722e4 Update lockfile to correct output after running yarn install (#39646)
* Update lockfile to correct output after running `yarn install`

* Chore: Remove caniuse-db since nothing is using it anymore
2021-09-27 13:30:35 +01:00
dependabot[bot]
0e60abfe00 Bump prismjs from 1.24.0 to 1.25.0 (#39450)
Bumps [prismjs](https://github.com/PrismJS/prism) from 1.24.0 to 1.25.0.
- [Release notes](https://github.com/PrismJS/prism/releases)
- [Changelog](https://github.com/PrismJS/prism/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PrismJS/prism/compare/v1.24.0...v1.25.0)

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

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-09-27 11:36:27 +01:00
dependabot[bot]
057c9a4fe1 Bump tmpl from 1.0.4 to 1.0.5 (#39475)
Bumps [tmpl](https://github.com/daaku/nodejs-tmpl) from 1.0.4 to 1.0.5.
- [Release notes](https://github.com/daaku/nodejs-tmpl/releases)
- [Commits](https://github.com/daaku/nodejs-tmpl/commits/v1.0.5)

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

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-09-27 11:35:01 +01:00
Gábor Farkas
9f027e32b7 InfluxDB: Flux: make $__interval and $__interval_ms work in alerting (#38889)
* influxdb: flux: handle $__interval and $__interval_ms in alert-queries

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

* $__interval should be rounded

* added comment
2021-09-27 12:03:04 +02:00
Zoltán Bedi
24475cfdda Fix: State timeline panel tooltip error when data is not in sync (#39438)
* Fix: State timeline panel tooltip error when data is not in sync

* Move check from tooltip to panel
2021-09-27 09:46:30 +02:00
Agnès Toulet
57b20335e6 LibraryPanels: Refactor to use context.Context instead of models.ReqContext (#39561) 2021-09-27 09:04:36 +02:00
Alexander Emelin
1d1da09568 Live: disable centrifuge-js debug mode (#39625) 2021-09-25 15:17:39 -07:00
Ryan McKinley
c9ae46a9ad PanelOptions: fix array with siblings (#39620) 2021-09-25 08:22:52 -07:00
Alexander Emelin
0db6ba9d70 Live: pipeline subscription authorization based on user role (#39587) 2021-09-23 19:33:12 -07:00
nikki-kiga
930cf07aba Geomap: add geojson feature hover and tooltip (#39608) 2021-09-23 19:31:36 -07:00
Dimitris Sotirakis
f860becc88 Chore: Move jwilder/dockerize installation to build-container (#39581)
* Move dockerize to build-container

* Sync drone

* Fix command to not point in bin dir

* Update build container version
2021-09-23 23:41:34 +02:00
achatterjee-grafana
ab77bf61d7 Added note. (#39603) 2021-09-23 17:24:56 -04:00
achatterjee-grafana
e25df899f8 Doc: Added note on how to uncomment a line in configuration files. (#39598)
* Added note about removing ; to uncomment a line. Also, reordered content and make the wordings tighter.

* Updated heading and fixed a typo.

* Bunch of small changes to make the first few sections read better.
2021-09-23 16:42:46 -04:00
Yuriy Tseretyan
05eb30e323 Alerting: Move alertmanager default config to UnifiedAlertingSettings (#39597) 2021-09-23 13:52:20 -04:00
Ryan McKinley
01deae2105 Options: support array value paths for panel options (#39499) 2021-09-23 09:28:16 -07:00
Marcus Efraimsson
518a0d0458 Chore: Propagate context for dashboard guardian (#39201)
Require guardian.New to take context.Context as first argument. 
Migrates the GetDashboardAclInfoListQuery to be dispatched using context.

Ref #36734

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
Co-authored-by: sam boyer <sam.boyer@grafana.com>
2021-09-23 17:43:32 +02:00
Alexander Emelin
914ae81026 live: pipeline remote write buffer (#39586) 2021-09-23 18:35:09 +03:00
Erik Sundell
c2604e04ab CloudWatch: Set period in math expressions (#39458)
* set period field

* add test

* add insights rule permission to docs
2021-09-23 16:03:58 +02:00
Ashley Harrison
0229146c3b Update PageToolbar.tsx (#39572) 2021-09-23 14:36:53 +01:00
Maria Alexandra
1e946316e0 Pipeline: Fix flakiness on Pa11y CI (#39358)
* Pipeline: Add wait prop into pa11y configuration for all the pages

* Pa11y: Use e2e instance to generate html report local environment

* Pipeline: use pa11y-ci hash commit

* Pipeline: Update Pa11y thresholds

* Update package.json

* Update yarn.lock

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2021-09-23 15:02:30 +02:00
Connor Lindsey
1865689411 Tempo: Improve how Tempo Search fetches autocomplete values (#39371)
* Improve how tempo search fetches autocomplete values

* Refetch autocomplete options on menu load
2021-09-23 07:00:14 -06:00
Hugo Häggmark
a6c5af19a6 Chore: Upgrades Cypress to 8.4.1 (#39573)
* Chore: Upgrades Cypress to 8.4.1

* Update typescriptPreprocessor.js

Found this https://github.com/cypress-io/cypress/issues/2316
2021-09-23 14:28:22 +02:00
Ashley Harrison
6948dbe550 BarGauge: Set cell color to off if numeric value is NaN (#39574)
* BarGauge: Set cell color to off if numeric value is NaN

* BarGauge: Pull getCellColor out into a pure function and add unit tests
2021-09-23 13:25:13 +01:00
Sofia Papagiannaki
ba4242bdb9 Cleanup kv_store alertmanager namespace when disabling unified alerting (#39554) 2021-09-23 13:21:49 +02:00
Serge Zaitsev
dfbd7bf64f Chore: Update goxmldsig dependency (#39566) 2021-09-23 12:33:31 +02:00
Hugo Häggmark
af5296bee7 Variables: Prevents panel from crashing when using adhoc variable in data links (#39546)
* Variables: Prevents panel from crashing when using adhoc variable in data links

* Refactor: uses isAdhoc instead

* Chore: updates after PR feedback
2021-09-23 11:56:33 +02:00
Armand Grillet
a2650b898d Fix order in CODEOWNERS (#39565)
Before this fix, changes to `/pkg/services/sqlstore/migrations/ualert` were not assigned to the Alerting squad.
2021-09-23 11:56:15 +02:00
Tania B
b9acdce837 Chore: Fix grafana live stats reset when sending usage stats (#39558) 2021-09-23 12:55:00 +03:00
Hugo Häggmark
65d79d9a30 Dashboard: Short url generation works for variables values with spaces (#39552) 2021-09-23 11:50:09 +02:00
Sofia Papagiannaki
81e82ebbbd Alerting: fix the migrated silence file content (#39557) 2021-09-23 11:17:38 +02:00
Ashley Harrison
4aed940738 VersionHistory: Remove global scss causing conflicts elsewhere (#39437) 2021-09-23 09:54:53 +01:00
Oscar Kilhed
71122930b9 Remove ? as header for piechart table legend (#39521) 2021-09-23 10:41:35 +02:00
Oscar Kilhed
4a6e354497 PieChart: Fix sorting for null values in piechart (#39516)
* Fix sorting for null values in piechart

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-09-23 10:40:44 +02:00
Joan López de la Franca Beltran
b891af935a Usage Stats: Decouple from alerting.UsageStatsQuerier (#39515)
* Usage Stats: Decouple from alerting.UsageStatsQuerier

Co-authored-by: Tania B <yalyna.ts@gmail.com>
2021-09-23 03:12:12 +02:00
kay delaney
00dad0f4e8 A11y: Fix fastpass issues for /admin/* pages (#39435)
* A11y: Fix fastpass issues for /admin/* pages
See #39429
2021-09-22 21:23:54 +01:00
Ryan McKinley
1c64f7d3ff Chore: update typescript and tslib versions (#39389)
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-09-22 21:15:37 +02:00
Benedikt Spellmeyer
f76a11c955 CloudMonitoring: Fix INT64 label unmarshal error (#39441) 2021-09-22 17:05:36 +02:00
Joan López de la Franca Beltran
c75737c808 Usage Stats: Decouple from GrafanaLive (#39512)
* Usage Stats: Decouple from GrafanaLive
2021-09-22 16:28:40 +02:00
Ashley Harrison
a4d41d35d0 Chore(Navigation): Rename SideMenu -> NavBar (#39483) 2021-09-22 14:56:15 +01:00
George Robinson
27609dc2c5 Fix alerts with evaluation interval more than 30 seconds resolving in Alertmanager (#39513) 2021-09-22 14:55:46 +01:00
Scott Lepper
593140cfa4 Table: Adds new footer feature that can show Totals or other column calculations (#38653)
* table footer for showing calculations

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-09-22 09:29:07 -04:00
Gábor Farkas
bf0dc3ef62 influxdb: flux: use more precise start and end timestamps (#39415)
* influxdb: flux: use more precise start and end timestamps

* added unit test
2021-09-22 15:26:36 +02:00
Gabriel MABILLE
1d56c32ab0 AccessControl: Protect /datasources endpoints consistently with NavLinks permissions (#39319) 2021-09-22 13:50:21 +02:00
Uchechukwu Obasi
eb2e1197e9 PlaylistPage: fix search input (#39226)
* PlaylistPage: removes search due to no wildcard support

* PlaylistPage: adds back search input and wildcard search support

* makes banner to appear only when playlist does not exist

* Chore: small refactor

* Chore: some code refactoring to make it readable

* fixes focus leaving input when query is cleared

* adds styling to the emptyQueryList banner

* extracts emptyQueryListBanner component to a separate file

* adds debounce to search

* use new theme for styling

* Chore: some nit fix

* fixes empty list banner showing for a second before the full list is loaded

* Fix: removes search when playlist is empty

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

Co-authored-by: Hugo Häggmark <hugo.haggmark@gmail.com>
2021-09-22 10:45:29 +01:00
Oscar Kilhed
a1d8d6e95e PieChart: Filter NaN values from total calculation (#39503)
* Filter NaN values from total calculation

* remove duplicated code, use missing value string for NaN and hidden series
2021-09-22 11:41:40 +02:00
Giordano Ricci
5f48d0641b Explore: prevent eplore from hiding errors containing refId (#39504)
* Explore: prevent eplore from hiding errors containing refId

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

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

Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
2021-09-22 10:33:31 +01:00
Emil Tullstedt
de9bcd6163 Docs: Document new exporter for usage insights (#38593) 2021-09-22 11:21:53 +02:00
Ilya Stoliar
dfb8a4cd13 CloudWatch: Add AWS Gateway ELB metrics and dimensions (#39490) 2021-09-22 10:04:04 +02:00
Santiago
342ac0641a Upgrade Prometheus packages and related dependencies (#39303)
* Upgrade Prometheus packages and related dependencies

* Update CHANGELOG.md

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

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-09-21 17:51:47 -03:00
Alexander Emelin
0bf70b14fd Live: api to show available pipeline entities (#39469)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-09-21 11:57:58 -07:00
Joan López de la Franca Beltran
a680162792 Usage Stats: Split domain & service packages (#39488) 2021-09-21 20:50:37 +02:00
Selene
b31316753a Disable external user's change role in admin (#39172)
* Disable external user's change role in admin

* Missing part of the tooltip text

* Disable change button with the tooltip instead dropdown

* Missing refactor

* Apply suggestion
2021-09-21 17:47:35 +02:00
Yuriy Tseretyan
1910d85ae0 Alerting: Optimization of fetching data in multiorg alertmanager (#39237)
* Add method GetAllLatestAlertmanagerConfiguration to DBStore
* add method ApplyConfig to AlertManager
* update multiorg alert manager to load all alertmanager configs at once
2021-09-21 11:01:23 -04:00
Yuriy Tseretyan
428f32bcf9 fix makefile to make lint-go command visibile in help (#39256) 2021-09-21 10:30:47 -04:00
Dan Cech
878b54c83c update links in README.md (#33195)
* update links in README.md

* Switch links to use HEAD url

Co-authored-by: Richard Hartmann <RichiH@users.noreply.github.com>

Co-authored-by: Richard Hartmann <RichiH@users.noreply.github.com>
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2021-09-21 10:21:27 -04:00
Gábor Farkas
346a53145c prometheus: metadata: simplify the metrics-metadata format (#39411)
* prometheus: metadata: simplify the metrics-metadata format

* fixed unit test

* fixed tests
2021-09-21 15:19:52 +02:00
dependabot[bot]
f1edd0ea08 Chore(deps): Bump actions-ecosystem/action-regex-match from 2 to 2.0.1 (#33966)
Bumps [actions-ecosystem/action-regex-match](https://github.com/actions-ecosystem/action-regex-match) from 2 to 2.0.1.
- [Release notes](https://github.com/actions-ecosystem/action-regex-match/releases)
- [Commits](https://github.com/actions-ecosystem/action-regex-match/compare/v2...v2.0.1)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-09-21 15:10:55 +02:00
dependabot[bot]
f8b5b3386f Bump actions/setup-node from 2.1.5 to 2.4.0 (#37619)
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 2.1.5 to 2.4.0.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v2.1.5...v2.4.0)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-09-21 15:10:29 +02:00
Marcus Efraimsson
3ba195a2e0 Update latest.json (#39474) 2021-09-21 14:53:22 +02:00
Grot (@grafanabot)
e653f5d1d9 ReleaseNotes: Updated changelog and release notes for 8.1.5 (#39464)
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2021-09-21 13:39:56 +02:00
Levente Balogh
660afc6279 Plugins Catalog: add a few more tests (#39433)
* refactor(Plugins/Admin): add an extra line-break between tests

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

* fix(Plugins/Admin): fix accidental linting issue
2021-09-21 13:15:37 +02:00
Andres Martinez Gotor
64c8d32fe7 Use sdk pkg for gtime (#39354) 2021-09-21 13:08:52 +02:00
Andres Martinez Gotor
875be5ef7c Chore: Update packages version to 8.2.0-pre (#39335) 2021-09-21 13:08:40 +02:00
Giordano Ricci
42b1fa0f62 Fix Query Editor Row horizontal overflow (#39419) 2021-09-21 09:14:41 +01:00
Jeremy Price
5ce5571c73 Add extra fields to OSS types to support enterprise (#39427) 2021-09-21 09:58:35 +02:00
Nathan Rodman
d03f75726b Alerting: Add filtering for Silences (#39109)
* Add filtering for Silences page

* Add tests Silences and SilenceEditor

* pr feedback: add field validation and test refactor

* Add test for checking content

* fix overflow for validation error message

* increase login threshold for pa11y

* Make silence filter state its own type and function
2021-09-20 15:32:25 -07:00
Todd Treece
1781c8ec7d Chore: Add go-redis v8 dependency (#39442)
* adds redis v8 client dependency

* remove go-redis v5 dependency
2021-09-20 22:21:59 +02:00
Ryan McKinley
ad3c7529b0 Schema: unify bar/point/etc visibility modes (#39378) 2021-09-20 12:25:56 -07:00
Ryan McKinley
a6fbb8d724 Live: show popup if local changes exist (#36093)
* change tracker

* not needed
2021-09-20 18:28:46 +02:00
gotjosh
fcbcfd232b Alerting: Move spammy log line to debug in the state manager (#39410) 2021-09-20 16:05:55 +01:00
Marcus Efraimsson
1e4a660ea7 Chore: Propagate context for quotas (#39205)
Propagate context for quotas and queries/commands.

Ref #36734
2021-09-20 17:05:30 +02:00
Levente Balogh
fef8e646ea Plugins Catalog: add unit tests for data-munging (#39338)
* test(Plugins/Admin): add tests for the helper functions

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

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

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

* fix(Plugins/Admin): fix a rebase bug
2021-09-20 16:59:18 +02:00
Andrew Hackmann
d96a9171ae Recorded Queries: Adding create and add recorded query buttons to (#38049)
* add create and add buttons that will be linked to enterprise

* wip

* wip

* clean up

* Co-authored-by: Travis Patterson <masslessparticle@gmail.com>
Added Query Modal that can be accessed from enterprise.

* reset docs

* reset docs

* docs changing

* docs

* docs

* unexporting props

* added generic ways to add more query actions and create actions

* cleanup

* adding internal tag

* adding onAddQuery to props so actions can add queries

* created a single query action component

* adding partial to query

* casting dataquery

Co-authored-by: Travis Patterson <travis.patterson@grafana.com>
2021-09-20 09:36:04 -05:00
Ivana Huckova
ffdeb4a57a Prometheus: Run Explore instant queries trough backend (#39351)
* Prometheus: Add running of instant queries trough backend

* Rename response, keep zero length frames

* Remove debug log

* Simplify and fix value text

* Update duplicated and redundant go test

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

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

* Refactor using model to create Promquery

* Fix the response length

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2021-09-20 16:05:21 +02:00
Ivana Huckova
46f922fe1a Prometheus: Remove autocomplete limit for metrics (#39363)
* Remove limit on metrics

* Remove unused variable
2021-09-20 14:58:01 +02:00
Jack Westbrook
4a11d0dab9 Plugins Catalog: Fix a11y issues (#39407)
* refactor(catalog): fix a11y issues in Browse and PluginListCard

* test(catalog): fix failing PluginListCard tests
2021-09-20 14:47:18 +02:00
Ashley Harrison
e2c87caff0 Chore: Remove postcss-browser-reporter (#39409) 2021-09-20 13:38:23 +02:00
Gábor Farkas
dc61edc8ac prometheus: monaco: do not recalculate not-changing function-list (#39406) 2021-09-20 13:24:55 +02:00
Alexander Kubyshkin
8cdc752497 Fix variable input field size (#38850) (#39156) 2021-09-20 12:11:24 +02:00
Levente Balogh
c8e94a2443 Plugins Catalog: update the available panels on install/uninstall (#39293)
* feat(Plugins/Admin): add a function to update panels

* fix(Plugins/Admin): update the available panels on plugin install / uninstall
2021-09-20 11:40:07 +02:00
Hugo Häggmark
2696be49b9 LibraryPanels: Improves export and import of library panels between orgs (#39214)
* Chore: adds tests to reducer

* Refactor: rewrite state

* Refactor: adds library panels to export

* wip

* Refactor: adds import library panels

* Refactor: changes UI

* Chore: pushing drone

* Update public/app/features/manage-dashboards/components/ImportDashboardForm.tsx

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

* Update public/app/features/manage-dashboards/components/ImportDashboardForm.tsx

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

* Chore: reverted unknown merge changes

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-09-20 10:58:24 +02:00
kay delaney
d5b885f958 A11y/Menu: Add keyboard support to Menu component (#38974) 2021-09-20 09:08:46 +01:00
Ashley Harrison
f3475b864c Chore: Tidy up emotion css with better theme breakpoint (#39340) 2021-09-20 08:55:31 +01:00
Hugo Häggmark
e696a9ab42 Variables: Prevents unnecessary duplicate requests (#39394) 2021-09-20 09:21:25 +02:00
gotjosh
2ad82b9354 Alerting: Move the unified alerting settings to its own struct (#39350) 2021-09-20 10:12:21 +03:00
Marcus Andersson
f3002931f4 PluginsCatalog: adding error information about disabled plugins. (#39171)
* added errors in plugin list.

* added error to details page.

* adding badge on details page.

* added some more tests.

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

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

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

* fixing some nits

* added missing isDisabeld to the mock.

* adding tests to verify scenarios when plugin is disabled.

* fixed issue with formatting after file changed on GH.

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
2021-09-20 09:08:00 +02:00
Torkel Ödegaard
a899e9be10 ValueMappings: Value mapping and specifying only color should not affect value formatting (decimals, unit, etc) (#39315) 2021-09-20 09:04:48 +02:00
Torkel Ödegaard
06012a8da0 ConfirmModal: Fix confirm button focus on modal open (#39328) 2021-09-20 09:03:57 +02:00
Nick Reilingh
85391c59d0 docs: removed nonsense line from standard-options.md (#39381) 2021-09-19 11:04:21 -04:00
sam boyer
39f2ee7692 Make "dist" version of dashboard scuemata directly importable in CUE (#39251)
* Update embeds with new paths, remove deprefixing

* Add dist dashboard scuemata, in CUE

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

* Remove comment detritus

* Check error return

* Remove hardcoded path prefix from cli validator
2021-09-17 16:17:55 -04:00
Yuriy Tseretyan
e1aae0549e Provide reader to alertmanager silence instead of file path (#39305) 2021-09-17 14:12:27 -04:00
Alexander Emelin
be2b08798b live: prevent pipeline recursion (#39366) 2021-09-17 21:00:00 +03:00
Leon Sorokin
474461ba15 GraphNG: uPlot 1.6.16 (#39260) 2021-09-17 12:33:39 -05:00
gotjosh
35e5bfce40 Alerting: Metrics should have the label org instead of user (#39353)
An user within Grafana has a completely different meaning. Multi-tenancy is done via Organizations as a top-level concept.
2021-09-17 17:17:26 +01:00
Maria Alexandra
ef36bbbfbd Pipeline: Make Pa11y ci not mandatory on PR stage (#39285) 2021-09-17 17:47:00 +02:00
Sumit Bopche
7d873fa795 namespace should be AWS/Rekognition (#39094) 2021-09-17 17:16:22 +02:00
Leon Sorokin
29e8728ef0 BarChart: Fix field enumeration for bar value display and legend items (#39308) 2021-09-17 09:57:57 -05:00
Alexander Emelin
e1f1773036 Live: pipeline subscriber interface (#39299) 2021-09-17 16:40:32 +03:00
Gábor Farkas
73873f99cd prometheus: monaco-query-field: fix metrics-list (#39347) 2021-09-17 15:01:39 +02:00
Zoltán Bedi
4eff846285 Plugins: Update schema of scopes from string to string array (#39337)
* Plugins: Update schema of scopes from string to string array

* Update metadata.md
2021-09-17 14:04:56 +02:00
Ivana Huckova
81756cd702 Prometheus: Run Explore range queries trough backend (#39133)
* Run Explore range queries trough backend

* Remove trailing comma

* Add timeRange step alignment to backend

* Remove creation of instant query on backend as it is not supported ATM

* Remove non-related frontend changes

* Pass offset to calculate aligned range trough prom query

* Update order in query error message

* tableRefIds shouldn't contain undefined refIds

* Remove cloning of dataframes when processing

* Don't mutate response

* Remove ordering of processed frames

* Remove df because not needed
2021-09-17 13:39:26 +02:00
Andres Martinez Gotor
0606618d4a Update latest.json (#39332) 2021-09-17 13:07:20 +02:00
Andres Martinez Gotor
0c1550b026 Docs: add 8.2.0-beta1 relese notes link (#39322) 2021-09-17 13:03:53 +02:00
Ashley Harrison
06571e0af6 Dashboard: Don't show SectionHeader unless section has a title (#39336)
* Dashboard: Don't show SectionHeader unless section has a title

* Dashboard: Add unit test to prevent regression
2021-09-17 11:59:15 +01:00
Gábor Farkas
d116b2d71b influxdb: influxql: more robust resultformat-handling (#39330) 2021-09-17 12:33:09 +02:00
Ashley Harrison
52d7358d83 Chore: More TypeScript strict fixes (#39300)
* Chore: More TypeScript strict fixes

* Chore: Use filter instead of reduce to fix TypeScript error

* Chore: Retype AzureResultFormat as string

* Chore: Account for getBlocks() poor typings of reduce

* Chore: Need to explicitly check for undefined here since '' is falsey
2021-09-17 09:47:23 +01:00
Dominik Prokop
5eb46281a4 Publishing packages: Add grafana/schema (#39317) 2021-09-17 10:14:28 +02:00
Gábor Farkas
8489575c84 prometheus: monaco: handle multiple query fields at the same time (#39286) 2021-09-17 09:50:19 +02:00
Grot (@grafanabot)
c457c03a9c ReleaseNotes: Updated changelog and release notes for 8.2.0-beta1 (#39291)
Co-authored-by: Andres Martinez Gotor <andres.martinez@grafana.com>
Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-09-17 09:28:44 +02:00
Gabriel MABILLE
4be9ec8f72 AccessControl: Protect org users lookup (#38981)
* Move legacy accesscontrol to middleware layer

* Remove bus usage for this endpoint

* Add tests for legacy accesscontrol

* Fix tests for org user and remove one more bus usage

* Added test for FolderAdmin as suggested in the review
2021-09-17 09:19:36 +02:00
Gábor Farkas
f8de33da8d prometheus: query-editor: better duration-completions (#39284) 2021-09-17 09:05:37 +02:00
Tobias Skarhed
eefb5fe4ea Devenv: Add a dashboard with all panels (#38113)
* Add a dashboard with all panels

* Remove nulls from exported JSON

* Remove link, add orientation

* Open base panel structure for unknown panel types

* Fix all panels dashboard

* Update

Co-authored-by: sam boyer <sdboyer@grafana.com>
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2021-09-16 18:21:46 +02:00
Ashley Harrison
d0ae3a324f Update ci-check-strict.sh (#39298) 2021-09-16 16:51:35 +01:00
Alexander Emelin
87cdda4106 Live: return pipeline menu, now with feature toggle (#39280) 2021-09-16 08:34:12 -07:00
Connor Lindsey
9c4e7eb659 Tempo: Run search query with keyboard shortcut from input fields (#39247)
* Tempo: Run query with keyboard shortcut from duration fields
2021-09-16 09:26:34 -06:00
gotjosh
7db97097c9 Alerting: Support Unified Alerting with Grafana HA (#37920)
* Alerting: Support Unified Alerting in Grafana's HA mode.
2021-09-16 15:33:51 +01:00
Petros Kolyvas
92209f1011 Docs: Add whats new link to What's New index page (#39294)
* Initial draf

* Added the what's new in 8.2 link to the what's new parent page
2021-09-16 16:11:52 +02:00
Connor Lindsey
c57ff8beed Tempo: Format tempo search query history text (#39250)
* Format tempo search query history text
2021-09-16 08:04:15 -06:00
Agnès Toulet
b7eac0f655 Docs: Move image renderer doc to its own section and add configuration doc (#38759)
* Move image renderer doc to its own section and add configuration doc

* revert unwanted changes

* remove unwanted formatting

* revert change

* Improve configuration section

* update default flags for 3.1.0 update

* Clean up and add some links

* fix broken links

* clean up notes & links and small updates

* fix after merge

* fix broken link

* fix typo

* Apply suggestions from code review

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

* Apply PR feedback

* Update monitoring.md

* Apply suggestions from code review

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

* Update troubleshooting.md

* add alias for old image rendering doc page

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
Co-authored-by: Mitch Seaman <mjseaman@users.noreply.github.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-09-16 15:53:43 +02:00
Petros Kolyvas
10066cdb8d Docs: Initial draft of What's New in Grafana 8.2 for the 8.2 beta (#39257)
* Initial draf

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

Removing fiscal year / fiscal quarter until we're confident.
2021-09-16 10:22:14 -03:00
Grot (@grafanabot)
06782207ed ReleaseNotes: Updated changelog and release notes for 8.1.4 (#39288)
* ReleaseNotes: Updated changelog and release notes for 8.1.4

* Chore: changed threshold for now

* add link to 8.1.4 release notes

Co-authored-by: Erik Sundell <erik.sundell@grafana.com>
2021-09-16 14:15:32 +02:00
Assaf Dayan
64f898c5f6 Explore: Fixed default data source loading (#37059)
Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com>
2021-09-16 12:07:27 +02:00
Levente Balogh
02f9564607 Plugins Catalog: show a confirmation modal when uninstalling a plugin (#39244)
* feat(Plugins/Admin): show a confirmation modal when uninstalling a plugin

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

* test(Plugins/Admin): test if the modal disappears after an uninstall
2021-09-16 11:27:29 +02:00
kay delaney
35f1d0facb AdHocFilter: Adds min width to segment input (#39225)
Closes #38937
2021-09-16 09:37:43 +01:00
Andres Martinez Gotor
fc632276f1 Update release notes and what’s new links (#39277) 2021-09-16 10:32:40 +02:00
Torkel Ödegaard
95fd659bfc SideMenu: Remove live section from main side menu (#39278) 2021-09-16 10:12:54 +02:00
Peter Holmberg
4f7e1db57c Graphs: Fix threshold handle being visible in dashboards (#39270) 2021-09-16 08:59:36 +02:00
rodrigosilva-ciandt
b5ed47c95c Docs: Update azuread docs to mention about env variables (#39203)
* Update azuread docs to mention about env variables

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

* Update docs/sources/auth/azuread.md

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

* Update docs/sources/auth/azuread.md

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

* fix typo

* Revert "fix typo"

This reverts commit ff84f70773.

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

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

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

* Refactoring error checks

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

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

* Update docs/sources/administration/configuration.md

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

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

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

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

* Alerting: (wip) numeric template functions

* Alerting: (wip) template functions

* Test for the "args" function

* Alerting: (wip) Documentation for template functions

* Alerting: template functions - refactor

* code review changes

* disable linter error

* Use Prometheus implementation of TemplateExpander

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

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

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

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

* Update docs/sources/administration/provisioning.md

Takes into account suggestion from @domasx2

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

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

This reverts commit d7085355a6.

* Adding content back.

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

* Apply suggestions from code review

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

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

* Snapshot updates

* Optimize styles memoization

* change threshold from graph

* renames and logging

* using useeffect to update graph

* Fix react worning about setting state on unmounted component

* revert panelrenderer

* using onFieldConfig change

* use a useeffect

* simplied fieldConfig state

* Do not use plot context in ThresholdControlsPlugin

* Do not throw setState warnings when drag handle is dropped

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

* fix issues with rerenders

* prevent thresholds on conditions with range

* only edit the first threshold

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

* fix metric namespace from resetting

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

* Functional without custom wrapper component, needs highlight

* Remove latency from explore

* Sync eventbus

* Some cleanup & removal of unused code

* Avoid clearing queries when running all empty queries

* Run remaining queries when removing one

* Update snapshots

* fix failing tests

* type cleanup

* Refactor QueryRows

* update snapshot

* Remove highlighter expressions

* minor fixes in queryrows

* remove unwanted change

* fix failing e2e test

* Persist refId in explore url state

* make traces test slightly more robust

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

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

* start adding migration steps for 7 -> 8

* added information about the data frame format changes.

* added plugin.json changes.

* added emotion 11 imports.

* added information about theme v1 being deprecated.

* added steps for backend plugin migration.

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

* docs(pluginmigration): introduce getColorForTheme changes

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

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

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

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

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

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

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

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

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

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

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

* Apply suggestions from code review

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

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

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

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

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

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

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

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

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

* suggestion from review.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

minor correction in not equals regex

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

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

* Update tests

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

* read config and pass to backend

* update config docs

* change var name

* use connection string instead of instrumentation key

* add config for endpoint url. update docs

* update default ini

* add spaces

* remove space

* Update docs/sources/administration/configuration.md

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

* Update conf/defaults.ini

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

* Update conf/defaults.ini

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

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

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

* fix url param names without colon prefix

* change context params to vars

* replace url vars in tests using new api

* rename vars to params

* add some comments

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

* Add link to config page

* Change message about missing xray to alert

* Add xrayTraceLinks

* Fix typo in field name

* Fix tests and lint

* Move test

* Add test for trace id link

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

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

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

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

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

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

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

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

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

* Fix after merge

* Changes after review

* Various fixes

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

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

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

* Applied suggestion from review.

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

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

* Applied some suggestions from doc review.

* Applied all doc review.

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

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

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

Allow role mapping for GitLab accounts.

Example:

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

* Support `role_attribute_path` for GitLab OAuth

Allow role mapping for GitLab accounts.

Example:

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

* docs: add docs for role_attribute_path

* Apply suggestions from code review

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

* docs: update example

example should suggest a full configuration

* Apply suggestions from code review

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

* Apply suggestions from code review

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

* docs: add suggestions from tech writers

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

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

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

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

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

* add warning for grpc plugins

* add windows support

* update go.mod

* reorganize imports

* update naming

* remove Windows logic

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

* fix build

* tidy go.mod

* feedback

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

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

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

Closes #38975
Ref #39095

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

* Fix mockCalculator to mach Calculator

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

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

* prometheus: monaco: add help-text to functions

* prometheus: monaco: add help-text to metrics

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

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

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

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

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

Ref #35390
Ref #38666

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

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

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

* Fix lint

* Fix tests

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

* Add max_bytes_reader.go

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

* Fixes according to reviewer's comments

* Add tests for max_bytes_reader

* Add small piece in configuration.md

* Further fixes according to reviewer's comments

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

* Remove plot ctx usage: Context menu plugin

* Remove plot ctx usage: Annotations plugin

* Remove plot ctx usage: Exemplars plugin

* Remove plot ctx usage: EventsCanvas plugin

* Remove plot ctx usage: EventsCanvas/XYCanvas plugin

* Remove plot ctx usage: AnnotationEditor plugin

* Remove plot ctx usage: AnnotationMarker

* Remove plot context

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

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

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

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

* refactor(Plugins/Admin): remove unnecessary comment

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

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

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

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

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

* Chore: added check for uid length after PR comments

* Refactor: creates IsShortUIDTooLong function

* Refactor: adds UID to PATCH endpoint

* Refactor: clarifies the patch code

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

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

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

* Bring back alert state and metric values to annotation tooltip

* Make sure alert state is only shown when present

* Update test

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* refactor(Plugins/Admin): rename api methods

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

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

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

* refactor(Plugins/Admin): fix typings

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* fix(Plugins): fix strict type errors

* chore(catalog): remove todos

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

* feat(catalog): use the proper store state

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

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

* style(catalog): fix prettier error in api

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

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

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

* Fix unit test

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

* Add error propagation

* Fix tests

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

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

* Transform dataframe to Zipkin format

* Add endpoint type and shared to Zipkin

* Transform dataframe to OTLP format

* Add data tab tests and note in inspector docs

* Remove comments and logs

* Resolve typescript strict errors

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

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

* Update docs

* Improve OTLP conversion to include service info and additional tags

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

* ReleaseNotes: Updated changelog and release notes for 8.1.3

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

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

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

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

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

* fix: make apply send on change

* move to resource folder

* allow empty

* type

* icon modal

* fix: edit styles

* fix: edit styles

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

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

* Apply suggestions from code review

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

* Docs: Update frontend to match docs

* kick drone

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

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

* WIP: transpile errors

* Chore: bumps redux and react redux

* Chore: removes unused dispatch

* make alerting compile with updated redux toolkit

* Test: Fixes broken test

* Chore: fixes strict errors

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

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

* Update contribute/merge-pull-request.md

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

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

* make draft

* postgres

* intermedia

* get datasourceinfo filled at the beginning of the service

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

* fix mysql test

* fix mssql

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

* fix some issue about intervalv2 package

* update sql test

* wire migration for SQLs

* add sqls to the background process

* make it register instead of register and start

* revert formatting

* fix tests

* fix linter

* remove integration test

* Postgres test fix

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

* Rename steps

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

* Open up dashboard schema composition points

* Introduce composition space at front of scuemata

* Refactor go code to use new composition structure

* Bunch of small cleanups in dashboard.cue

* Enable both base and dist tests of devenv

* Get rid of obsolete CUE loading hacks

* Skip weird failures on these tests

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

* Apply suggestions from code review

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

* OAuth: add availability note for disableAutoLogin

* Update docs/sources/auth/overview.md

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

* Update docs/sources/auth/overview.md

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

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

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

* E2e: Use dynamic uid

* Tests: fixes e2e test

* Chore: adds back waits

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

* Fix strict errors in Loki and lower error count

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

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

* reverted by-mistake changed import

* simplify code

now we can rely on DataQuery.Interval always being good

* removed unnecessary test

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

* Tests: adds tests

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

* add more details to description

* add icon to Select and specify icons for FieldType

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

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

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

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

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

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

* fix optional props

* Refactor & add tests

* Fix & lower strict ts count

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

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

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

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

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

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

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

replacing ternary by or

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

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

* Remove libcrypto1.1 libssl1.1 version dependencies

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

* Add rendered diagrams

* Move QueryCtrl to flux

* Remove redundant param in the reducer

* Use named imports for lodash and fix typing for GraphiteTagOperator

* Add missing async/await

* Extract providers to a separate file

* Clean up async await

* Rename controller functions back to main

* Simplify creating actions

* Re-order controller functions

* Separate helpers from actions

* Rename vars

* Simplify helpers

* Move controller methods to state reducers

* Remove docs (they are added in design doc)

* Move actions.ts to state folder

* Add docs

* Add old methods stubs for easier review

* Check how state dependencies will be mapped

* Rename state to store

* Rename state to store

* Rewrite spec tests for Graphite Query Controller

* Update docs

* Update docs

* Add GraphiteTextEditor

* Add play button

* Add AddGraphiteFunction

* Use Segment to simplify AddGraphiteFunction

* Memoize function defs

* Fix useCallback deps

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* Add more type definitions

* Remove submitOnClickAwayOption

This behavior is actually needed to remove parameters in functions

* Load function definitions before parsing the target on initial load

* Add button padding

* Fix loading function definitions

* Change targetChanged to updateQuery to avoid mutating state directly

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

* Fix updating query after adding a function

* Simplify updating function params

* Migrate function editor to react

* Simplify setting Segment Select min width

* Remove unnecessary changes to SegmentInput

* Extract view logic to a helper and update types definitions

* Clean up types

* Update FuncDef types and add tests

* Show red border for unknown functions

* Autofocus on new params

* Extract params mapping to a helper

* Split code between params and function editor

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

* Add function editor tests

* Remove todo marker

* Fix adding new functions

* Allow empty value in selects for removing function params

* Add placeholders and fix styling

* Add more docs

* Create basic implementation for metrics and tags

* Post merge fixes

These files are not .ts

* Remove mapping to Angular dropdowns

* Simplify mapping tag names, values and operators

* Simplify mapping metrics

* Fix removing tags and autocomplete

* Simplify debouncing providers

* Ensure options are loaded twice and segment is opened

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

* Clean up

* Move debouncing to components

* Simplify mapping to selectable options

* Add docs

* Group all components

* Remove unused controller methods

* Create Dispatch context

* Group Series and Tags Sections

* Create Functions section

* Create Section component

* use getStyles

* remove redundant async/await

* Remove

* remove redundant async/await

* Remove console.log and silent test console output

* Do not display the name of the selected dropdown option

* Move Section to grafana-ui

* Update storybook

* Simplify SectionLabel

* Fix Influx tests

* Fix API Extractor warnings

* Fix API Extractor warnings

* Do not show hidden functions

* Use block docs for better doc generation

* Handle undefined values provided for autocomplete

* Basic integration

* Move creating state to context.tsx

* Update tests

* Rename test

* Clean up dependencies

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

* Update time range when it changes

* Change action name

* Simplify segments cloning

* Remove redundant variable

* Use styles instead of direct css

* Update docs

* Remove angular wrappers

* Remove redundant tests

* Section -> SegmentSection

* Simplify section styling

* Remove redundant div

* Fix unit tests

* Simplify SegmentSection component

* Use theme.spacing

* Use empty label instead of a single space label

* Remove targetFull

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

* Revert "Remove targetFull"

This reverts commit 499f8b33

* Bring back calculating targetFull

* Clean up

* Add missing dep

* Add missing dep in tests

* Fix time range synchronization

* Fix warning message

* Remove unused type

* Synchronize changes to the query

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

* Update docs

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

* Update failing snapshot

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

* namespace/group editing docs

* explain namespaces & groups

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

* Enable filtering users by active in last 30 days

* Add loading state

* Update last active age strings

* Tweak user list

* Use theme spacing

* Improve table's accessibility

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

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

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

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

* fixes deleted item to be removed instantly without manual refresh

* update confirmModal to reference playlist name

* refactor confirmModal message to be clear enough

* WIP: some unit tests for the playlistPage

* added more tests and did some cleanup

* some code refactoring

* adds ability for user roles to control playlist delete

* some abstraction to cleanup code

* modified alert message for delete button to correspond with action

* tried a better approach to modify the alert message

* fixes playlist lookup on each render

* update handlers to not use anonymous function

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

* used better naming convention

* removes unecessary async/await construct

* some code refactoring

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

* WIP

* Chore: fixes update for duplicate lib panels

* Chore: reverts implementation

* Chore: show library options only for library panels

* Chore: ui fixes after PR comments

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

* Add tests for encryption service

* Inject encryption service into http server

* Replace encryption global function usage in login tests

* Migrate to Wire

* Move Encryption bindings to OSS Wire set

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

* Fix dashboard snapshot tests

* Remove no longer user test

* Add dashboard snapshots service tests

* Refactor service initialization

* Set up dashboard snapshots service as a background service

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

* remove com dependency from bindings module

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

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

* removed wireguard override i used for my local

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

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

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

* add del method, avoid ErrNotFound (#38627)

* switch value column to medium text

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

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

* Add tests for encryption service

* Inject encryption service into http server

* Replace encryption global function usage in login tests

* Refactor UpdatePluginSetting

* Refactor EncryptSecureSettings

* Fix wire.go

* Refactor service initialization

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

* fixed failing test

* refactor: use interval instead of tsdb

* fix typo

* added unit-test

* added comment

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

* Add tests for encryption service

* Inject encryption service into http server

* Replace encryption global function usage in login tests

* Migrate to Wire

* Refactor authinfoservice to use encryption service

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

for now it is behind a feature-flag

* added new trigger character

* better separate grafana-specifc and prom-specific code

* better styling

* more styling

* more styling

* simpler monaco-import

* better imports

* simplified code

* simplified type imports

* refactor: group completion-provider files together

* renamed type

* simplify type-import

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

* handle no-metric-name autocompletes

* updated comment

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

* build(webpack): update postcss dependencies

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

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

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

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

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

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

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

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

* build(webpack): get production builds working

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

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

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

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

* build(webpack): remove deprecation warnings flag

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

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

* build(storybook): speed up dev build

* chore(yarn): refresh lock file

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

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

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

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

* chore: remove react-hot-loader from codebase

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

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

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

* build(webpack): update postcss dependencies

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

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

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

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

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

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

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

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

* build(webpack): get production builds working

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

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

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

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

* build(webpack): remove deprecation warnings flag

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

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

* build(storybook): speed up dev build

* chore(yarn): refresh lock file

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

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

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

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

* chore: remove react-hot-loader from codebase

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

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

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

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

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

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

* build(webpack): fix dev script colors error

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

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

* BottomNavLinks: Rewrite existing enzyme tests in RTL

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

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

* Further updates

* Run go mod tidy on go 1.17

* Apply suggestions from code review

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

* Use build-container:1.4.2

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

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

* Add tests for encryption service

* Inject encryption service into http server

* Replace encryption global function usage in login tests

* Apply suggestions from code review

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

* Migrate to Wire

* Undo non-desired changes

* Move Encryption bindings to OSS Wire set

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

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

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

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

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

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

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

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

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

* feat: show signature information on the plugins details page

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

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

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

* fix(Plugins): fix typo

* fix: make installed plugin config an optional param again

* refactor: cache plugin meta requests

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

* minor fixes to the datetime picker

* correct datetime to picker

* move datetime calc to function

* set maxDate

* set maxDate

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

* respect hard and soft axis limits for % threshold steps

* revert state-timeline changes

* enable by-threshold coloring in histogram and barchart

* revert yMin

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

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

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

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

add stringToTime transformer

start to add format

add type and dateformat

rename stringToTime to fieldConversion

add more type support and use FieldNamePicker

add field conversion transformation

* adjust for performance feedback

rename and adjust labels and widths

shorten labels and null values

rename to convertFieldType

update test

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

* Move grid lines config to field config (axis)

* Fix merge

* Auto grid mode

* Fix ts

* Align naming

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

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

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

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>

* remove 'grid' from props diff array since field.config.custom.* is handled by structureRev diffing

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2021-08-27 12:30:42 -05:00
Giordano Ricci
b5e4a0a39a Elasticsearch: Only show numbers in histogram field autocomplete (#38631) 2021-08-27 17:19:44 +01:00
Jack Westbrook
5898824a48 Chore: Fix version format (#38649) 2021-08-27 18:12:37 +02:00
Petros Kolyvas
4a73e0f9a8 Docs: Remove an unnecessary legacy alerts notification webhook listing and reduce promotional content (#38644)
* Removed an unecessary webhook listing and modified some text to reduce promotion for specific tooling.

* Updated doc content with Eve and Ursula's review.

* Removed "the".

Co-authored-by: achatterjee-grafana <aparajita.chatterjee@grafana.com>
2021-08-27 11:17:58 -04:00
Olof Bourghardt
8da634f780 Loki: add tests for addAdHocFilters (#38594)
* Loki: add tests for addAdHocFilters

* Change description of test

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>

* Replace ADD_FILTER with "=" operator in test description

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>

* Loki: refafctor test for addAdHocFilter

* Loki: refactor tests for better readability

* Remove comments

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
2021-08-27 17:06:22 +02:00
Jack Westbrook
beeb8330c4 Chore: Update packages version to 8.2.0-pre (#38635)
* chore(packages): run packages:prepare script

* chore: update package.json version

* chore: put back semver compliant version
2021-08-27 17:01:19 +02:00
Giordano Ricci
eaca54a9f2 Elasticsearch: change terms default min_doc_count to 1 (#38632) 2021-08-27 14:22:12 +01:00
Armand Grillet
72d296843d Docs: clarify state of Unified Alerting (#38603)
* Docs: clarify state of Unified Alerting

* Update docs/sources/alerting/unified-alerting/_index.md

Co-authored-by: Kyle Brandt <kyle@grafana.com>

* Adjusted note to move below the introduction.

* Fixed a typo and added beta notes.

* Minor typo fix.

* Docs: remove innacurate beta label for Grafana 8.0

Grafana 8.0 is not in beta, only unified alerting.

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
Co-authored-by: Kyle Brandt <kyle@grafana.com>
Co-authored-by: achatterjee-grafana <aparajita.chatterjee@grafana.com>
2021-08-27 15:09:28 +02:00
Ikko Ashimine
202f295e51 Chore: Fix typo in nodes.go (#38636)
commmon -> common
2021-08-27 14:57:41 +02:00
Marcus Efraimsson
e872032a2b Docs: Add v8.1 upgrade note regarding unencrypted data source passwords (#38449)
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-08-27 13:23:56 +02:00
Alexander Emelin
a95a40d87d Live: allow connections with request host matching origin host (#38538) 2021-08-27 13:26:28 +03:00
Andres Martinez Gotor
b25eb0aa74 AzureMonitor: Fix wrong merge (#38623) 2021-08-27 11:31:17 +02:00
Torkel Ödegaard
bbaf6a23bb Docs: Add info and links about our hosted services to our grafana install docs (#38544)
* Add info and links about our hosted services to our grafana install docs

* review updates

* Update docs/sources/installation/debian.md

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-08-27 10:46:45 +02:00
Marcus Efraimsson
0ef5831332 v8.2.0-pre.0 2021-08-27 10:39:53 +02:00
Olof Bourghardt
458bced826 Jaeger: fix bug where query is executed twice (#38550)
* Jaeger: add empty callback to QueryField onBlur to stop query from being run twice

* Jaeger: add wait call on 500ms to accomodate for debouncing by the QueryField component
2021-08-27 10:36:18 +02:00
Alex Khomenko
a15e33e693 Admin: remove Redux from ServerStats (#38581)
* Admin: remove Redux from ServerStats

* Admin: Fix import
2021-08-27 11:09:17 +03:00
Alex Khomenko
c08d5eeda0 Update the location of the server stats tab (#38548) 2021-08-27 10:04:57 +03:00
Gábor Farkas
8e88600c04 style-guide: frontend: describe directory naming style (#38607)
* style-guide: frontend: describe directory naming style

* apply recommended changes

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-08-27 08:27:56 +02:00
Dimitris Sotirakis
d7daaa19df Add CODEOWNERS for CI related code (#38606) 2021-08-27 09:06:15 +03:00
Jack Westbrook
2cb141d4ec Plugins: Refactor installation buttons component (#37642)
* refactor(catalog): split out installcontrols into multiple components

* test(catalog): update tests for plugindetails page

* refactor(catalog): rename installcontrols -> index

* refactor(catalog): remove redundant curlies

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>

* tests(plugindetails): fix assertions and naming of tests

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>

* refactor(installcontrols): prefer enum over duplicate union type, rename disabled prop

* refactor(installcontrols): use PluginStatus enum for installcontrols pluginStatus

* refactor(installcontrols): remove redundant curlies

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
2021-08-26 17:15:43 +02:00
idafurjes
568549e810 Bug: Return empty plugins.DataTimeSeriesSlice when the frame field vector is epmty (#38587)
* Add check if the vector is empty

* Use Rows() instead of Len() on field

* Remove redundant condition
2021-08-26 16:39:50 +02:00
Jack Westbrook
5339275793 Grafana UI: Fix TS error property css is missing in type (#38078) 2021-08-26 16:00:52 +02:00
Stephanie Hingtgen
785072086c Add event after datasource create (#38467)
* Add event after datasource create
2021-08-26 08:50:05 -05:00
Kevin Minehart
1ced2bc6df move main.go logic out of commands (#38555)
* move main.go logic out of commands
2021-08-26 15:42:22 +02:00
Domas
2847f25781 Alerting: UI to edit cortex/loki namespace & group names, group eval interval (#38543) 2021-08-26 16:40:27 +03:00
Dimitris Sotirakis
00886afaf1 Force use versions of libcrypto1.1 and libssl1.1 (#38585) 2021-08-26 15:22:53 +02:00
Ashley Harrison
a583f7e160 Sidemenu: Refactor SideMenuDropDown (#38554)
* SideMenuDropDown: Refactor to be more component-ey + rewrite tests in RTL

* SideMenuDropDown: Rename childLinks -> items

* Rename mockChildLinks -> mockItems as well
2021-08-26 14:08:27 +01:00
Marcus Efraimsson
b231afd50f Docs: Fix error in provisioning docs for discord notifier (#38579)
Fixes an error in provisioning docs for discord notifier referencing the wrong 
name of the "message content" setting.

Fixes #38494
2021-08-26 12:29:29 +02:00
Marcus Efraimsson
2f07af1b54 Chore: Skip test TestDevenvDashboardValidity for now (#38577)
Skipping TestDevenvDashboardValidity test for now to resolve broken 
test-backend step in main/branches. Did also run scripts/stripnulls.sh 
hence the devenv dashboard changes.
2021-08-26 11:45:57 +02:00
Marcus Efraimsson
ec88295a0b Testdata: Fix proper initialization (#38576)
Fixes #38566
2021-08-26 11:39:04 +02:00
Torkel Ödegaard
d5ed4e9c8c Geomap: Minor style fixes (#38532)
* Fixed hover font-weight, option casing, and added simple test dashboard with 3 panels

* Update theme colors

* Style tweaks to legend

* Updated

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-08-26 10:17:03 +02:00
Dimitris Sotirakis
12320dda3c Elasticsearch: Fix metric names for alert queries (#38546)
* Export fieldName to var

* Add empty string as frame name
2021-08-26 09:20:38 +02:00
Dimitris Sotirakis
8a04af412e Build pipeline: Cleanup build-main pipeline steps (#38484)
* Refactor dependencies

* Regenerate drone.yml

* Reorder steps in starlark files

* Make build depend on test

* Make test steps depend on lint

* Make gen-version step depend on build steps

* Refactor step dependencies

* Move e2e-tests step before upload_cdn

* Sync with main
2021-08-26 10:11:22 +03:00
idafurjes
7faea40674 API: Add short url validation (#38436)
* Add short url validation
Path should not contain string ../

* Update pkg/api/short_url.go

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2021-08-26 09:07:27 +02:00
dependabot[bot]
0b945f3db4 Bump actions/cache from 2.1.5 to 2.1.6 (#34867)
Bumps [actions/cache](https://github.com/actions/cache) from 2.1.5 to 2.1.6.
- [Release notes](https://github.com/actions/cache/releases)
- [Commits](https://github.com/actions/cache/compare/v2.1.5...v2.1.6)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-26 08:27:37 +02:00
achatterjee-grafana
e32e135c73 Docs move "visualizations" folder up one level in TOC (#38523)
* Moved Visualizations folder one level up. Fixed a bunch of broken relrefs.

* More broken relrefs.

* Fixed the last of the broken relrefs

* Adjusted weight and added alias.

* Added aliases to a bunch of visualization topics.

* More topics with aliases.

* More aliases, adjusted some weight and other metadata information.
2021-08-25 14:14:00 -04:00
Ryan McKinley
9267014a45 Schema: export existing types in @grafana/data|ui (#38518) 2021-08-25 09:59:03 -07:00
Connor Lindsey
76ade24f2f Add catch around JSON trace upload for more error handling (#38520) 2021-08-25 10:08:46 -06:00
Ivana Huckova
d1b6132302 Loki: Fix ad-hoc filter when used with parser (#38542)
* Fix ad hoc filter when used with parser

* Update
2021-08-25 16:08:41 +02:00
Patrick O'Carroll
2e772d41a7 Themes: align hover and focus opacity (#38498)
* new warning and success color in light theme, slight tweak to primary text

* changed hover opacity to the same as focues opacity

* Updated generated files

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2021-08-25 15:34:19 +02:00
Ashley Harrison
b30882bd2b Sidemenu: Refactor DropDownChild (#38509)
* DropDownChild: Refactor DropDownChild to be more component-like

* Rewrite tests in RTL

* Let's not do this just yet...
2021-08-25 14:27:04 +01:00
Arve Knudsen
78596a6756 Migrate to Wire for dependency injection (#32289)
Fixes #30144

Co-authored-by: dsotirakis <sotirakis.dim@gmail.com>
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: Ida Furjesova <ida.furjesova@grafana.com>
Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com>
Co-authored-by: spinillos <selenepinillos@gmail.com>
Co-authored-by: Karl Persson <kalle.persson@grafana.com>
Co-authored-by: Leonard Gram <leo@xlson.com>
2021-08-25 15:11:22 +02:00
sam boyer
e61bc33163 Move dashboard scuemata to grafana-schema (#38470)
* Relocate dashboard scuemata to grafana-schema

* Update assorted tests, vars with dashboard path

* Remove crufty commented var

* Not sure...why that failed

* Remove prefix from base dashboard path var

* Move cue/ui remnants into grafana-schema

* Update import paths in plugin models

* Remove mudball, add package statements

* Remove cuegen.sh

Wooooo we ain't got no codegen

* Revert "Remove mudball, add package statements"

This reverts commit 9bed3098f1.

* Tidy up all the cue files

* Move dashboard scuemata into scuemata/ subdir

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-08-25 06:55:04 -04:00
Olof Bourghardt
a19ad25eaa Jaeger: support running queries with keyboard shortcut (#37958)
* Jaeger: add QueryField component

* Remove unused imports

* Fix e2e test so that it checks for QueryField component

* Remove comments

* Fix failing e2e test
2021-08-25 11:30:32 +02:00
Ashley Harrison
7c97b9d03f QueryEditor: Don't use _.defaults as it mutates the query prop directly (#37965)
* QueryEditor: Don't use _.defaults as it mutates the query prop directly

* QueryEditor: Update the query type on mount if none exists

* QueryEditor: Mutate in the constructor instead of render

* Apply defaults immutably in render
2021-08-25 10:19:02 +01:00
Witek Bedyk
65501cbad3 Licensing: Provide correct URL for AGPL license (#36917)
* Provide correct link for AGPL license

* Change LicenseURL to point go Grafana OSS page

* Keep utm_source query parameter

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2021-08-25 10:43:43 +02:00
dependabot[bot]
f8a0c38763 Bump path-parse from 1.0.6 to 1.0.7 (#37789)
Bumps [path-parse](https://github.com/jbgutierrez/path-parse) from 1.0.6 to 1.0.7.
- [Release notes](https://github.com/jbgutierrez/path-parse/releases)
- [Commits](https://github.com/jbgutierrez/path-parse/commits/v1.0.7)

---
updated-dependencies:
- dependency-name: path-parse
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-25 10:17:34 +02:00
dependabot[bot]
c5df1c6430 Bump tar from 4.4.13 to 4.4.15 (#37536)
Bumps [tar](https://github.com/npm/node-tar) from 4.4.13 to 4.4.15.
- [Release notes](https://github.com/npm/node-tar/releases)
- [Changelog](https://github.com/npm/node-tar/blob/main/CHANGELOG.md)
- [Commits](https://github.com/npm/node-tar/compare/v4.4.13...v4.4.15)

---
updated-dependencies:
- dependency-name: tar
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-25 10:13:08 +02:00
Will Browne
1618d5ad6f use most appropriate func for registering core plugins (#38497) 2021-08-25 10:08:48 +02:00
Patrick O'Carroll
84de946daa changed opacity on disabled, secondary and secondary shade in both themes (#38453) 2021-08-25 09:47:46 +02:00
Domas
2e8a7c1161 set basic auth for prometheus backend ds requests (#38496) 2021-08-25 10:05:17 +03:00
dependabot[bot]
7751c0a706 Bump ws from 6.2.1 to 6.2.2 (#35085)
Bumps [ws](https://github.com/websockets/ws) from 6.2.1 to 6.2.2.
- [Release notes](https://github.com/websockets/ws/releases)
- [Commits](https://github.com/websockets/ws/commits)

---
updated-dependencies:
- dependency-name: ws
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-25 08:51:05 +02:00
Dimitris Sotirakis
29d0a1536c Chore: Update grabpl version to 2.3.3 (#38516)
* Update grabpl version to 2.3.1

* Update grabpl version to 2.3.2

* Update grabpl version
2021-08-25 08:50:41 +03:00
Gabriel MABILLE
f9273d0d37 AccessControl: Add a mock (#38515) 2021-08-24 20:12:48 +02:00
gotjosh
14a0519338 Alerting: Remove Multiorg alertmangaer from the top-level services (#38506)
Removes the registration of the multi-org alertmanager, it is started as a subservice of ngalerting.
2021-08-24 19:11:28 +02:00
gotjosh
2f27a5240b Alerting: Fix flake on test receiver tests (#38511)
* Alerting: Fix flake on test receiver tests

* Make the actual result from the API be sorted

* Use the correct letters
2021-08-24 17:22:11 +01:00
Alex Khomenko
6e639f3c72 Admin: Update stats page UI (#38014)
* Add StatCard

* Style cards

* Update types

* Add tests

* Move stats tab into licencing

* Prevent UI jumps when loading stats

* Fix merge conflicts

* Revert docs format
2021-08-24 19:13:48 +03:00
Ryan McKinley
fcceb5716d Schema: move existing grafana/ui models into schema (#38469) 2021-08-24 08:22:34 -07:00
Dimitris Sotirakis
e8faa2c900 Build pipeline: Cleanup PR pipeline steps (#38447)
* Refactor dependencies

* Regenerate drone.yml

* Reorder steps in starlark files

* Make build depend on test

* Make test steps depend on lint

* Make gen-version step depend on build steps
2021-08-24 17:07:06 +02:00
Stephanie Closson
8bb9600cc6 Chore: Updated plugin schema docs ref PR@38463 (#38501)
* updated plugin schema docs ref PR@38463

* Documentation updates as per review
2021-08-24 11:45:41 -03:00
dependabot[bot]
d1ed0cb275 Bump dns-packet from 1.3.1 to 1.3.4 (#34861)
Bumps [dns-packet](https://github.com/mafintosh/dns-packet) from 1.3.1 to 1.3.4.
- [Release notes](https://github.com/mafintosh/dns-packet/releases)
- [Changelog](https://github.com/mafintosh/dns-packet/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mafintosh/dns-packet/compare/v1.3.1...v1.3.4)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-24 16:34:51 +02:00
Dimitris Sotirakis
da72dc55cb Update to golang:1.16.1-alpine3.14 (#38508) 2021-08-24 16:13:12 +02:00
Maria Alexandra
856cb1d80f Pipeline: Fix pa11y ci when server is not available and fix publish frontend metrics step (#38485) 2021-08-24 13:44:52 +02:00
Patrick O'Carroll
8fb4882a01 Light theme palette update (#38487)
* new warning and success color in light theme, slight tweak to primary text

* Update generated light theme scss

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2021-08-24 13:23:01 +02:00
David Parrott
7fbeefc090 Alerting: create wrapper for Alertmanager to enable org level isolation (#37320)
Introduces org-level isolation for the Alertmanager and its components.

Silences, Alerts and Contact points are not separated by org and are not shared between them.

Co-authored with @davidmparrott and @papagian
2021-08-24 11:28:09 +01:00
Karl Persson
7ebf4027a7 Access Control: refactor permission evaluator to be more flexible (#35996)
* add a more flexible way to create permissions

* update interface for accesscontrol to use new eval interface

* use new eval interface

* update middleware to use new eval interface

* remove evaluator function and move metrics to service

* add tests for accesscontrol middleware

* Remove failed function from interface and update inejct to create a new
evaluator

* Change name

* Support Several sopes for a permission


* use evaluator and update fakeAccessControl

* Implement String that will return string representation of permissions
for an evaluator

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
2021-08-24 11:36:28 +02:00
Domas
9d8f61c738 Alerting: allow creating/editing recording rules for Loki and Cortex (#38064) 2021-08-24 10:31:56 +02:00
Dimitris Sotirakis
309d263531 Chore: Add public/lib to .prettierignore (#38479)
* Add public/lib to .prettierignore

* Fixes according to reviewer's comments
2021-08-24 10:11:44 +02:00
Vicky Lee
c5f384c654 docs: update cloud data sources README links (#37820)
* docs: update cloud data sources README links

* Update public/app/plugins/datasource/cloudwatch/README.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update public/app/plugins/datasource/grafana-azure-monitor-datasource/README.md

* Update public/app/plugins/datasource/cloud-monitoring/README.md

Co-authored-by: Daniel Lee <dan.limerick@gmail.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-08-24 10:11:07 +02:00
Olof Bourghardt
05b0df2254 Zipkin: support running queries with keyboard shortcut (#37960)
* Zipkin: replace input field with QueryField component

* Fix failing tests

* Remove console.log

* Partially migrate test to react

* Zipkin: finish migration from enzyme to react

* Remove comments
2021-08-24 09:52:34 +02:00
idafurjes
ccab9611cb API: Add theme validation (#38432)
* Add theme validation

* Fix lint for const
2021-08-24 08:41:15 +02:00
Leon Sorokin
403bbd0144 GraphNG: optimize measureText(), drop estimation for y-axis auto-sizing (#38475) 2021-08-24 00:11:19 -05:00
Villena Guillaume
4cb87b6b60 Annotations Panel: Show annotations end time if present (#38425)
* Annotation Panel: Show annotation end time if present

* Added hyphen between dates
2021-08-23 20:57:44 -07:00
Travis Patterson
6548cd89af Add honeycomb plugin logo (#38461) 2021-08-23 14:33:55 -06:00
Ryan McKinley
425ec7ca9e Schema: create a new schema package for basic models (#38409) 2021-08-23 13:03:41 -07:00
Stephanie Closson
8d126de305 Added enterprise features to the schema (#38463) 2021-08-23 16:39:26 -03:00
Tharun Rajendran
2156980edb Datasource: add button to navigate to explore from settings (#36119)
Fixes #13737
2021-08-23 09:23:49 -06:00
Maria Alexandra
ef8e95ac7f Pipeline: Revert a11y changes to fix publish frontend metrics step (#38452) 2021-08-23 16:45:59 +02:00
Karl Persson
864c526d9a Access Control: Update docs with the correct scope name (#38444)
* Update docs with the correct scope name

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-08-23 16:39:40 +02:00
Connor Lindsey
a2525005e5 Manually set query type in Tempo explore on component mount (#38408)
* Manually set query type in Tempo explore on component mount
2021-08-23 07:51:45 -06:00
Ivana Huckova
74fef637af Prometheus: Use default POST method if no httpMethod provided (#38446)
* Prometheus: If no httpMethod, use default POST method

* Use http.MethodPost
2021-08-23 15:25:40 +02:00
Alex Khomenko
49fdab7e43 grafana/ui: Clarify InlineField docs (#38100)
* grafana/ui: clarify InlineField docs

* grafana/ui: revert formatting

* grafana/ui: revert formatting[2]

* grafana/ui: do not format code samples

* grafana/ui: disable mdx formatting
2021-08-23 16:25:09 +03:00
Peter Holmberg
eba21f3145 Alerting: Append appSubUrl to links if present (#38069)
* append appSubUrl if present

* remove null check
2021-08-23 14:57:30 +02:00
idafurjes
769b7a5865 Bug: Register OpenTSDB with correct service name (#37581)
* Bug: Register OpenTSDB with correct service name

* USe Register instead of RegisterAndStart
2021-08-23 14:56:53 +02:00
Maria Alexandra
6396f05320 Pa11y: add logs to a11y step in terminal to provide more info of status (#38445) 2021-08-23 14:54:33 +02:00
Jeremy Price
9a71cec1f0 Access Control: Make the evaluator prefix match only (#38025)
* Make the evaluator prefix match only

* Handle empty scopes

* Bump version of settings read role

Co-authored-by: Karl Persson <kalle.persson@grafana.com>
2021-08-23 14:03:20 +02:00
Villena Guillaume
1b3eecddcd Annotation Panel: Fix annotation with end time not being centered (#38423)
* Annotation Panel: Fix annotation with end time not being centered

* Update public/app/plugins/panel/annolist/AnnoListPanel.tsx

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-08-23 12:03:27 +01:00
Dimitris Sotirakis
64cb000d37 Chore: Add e2e-tests-server as dependencies on steps that publish packages (#38059)
* Add e2e-tests-server as dependencies on steps that publish packages

* Sign drone yaml
2021-08-23 13:39:16 +03:00
Jeremy Price
e124167d05 access control: 1527/Correct grammar in usage-scenarios (#35142)
* First revision

* Update docs/sources/enterprise/access-control/usage-scenarios.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/enterprise/access-control/usage-scenarios.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Note about creating roles

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
Co-authored-by: Daniel Lee <dan.limerick@gmail.com>
2021-08-23 11:37:19 +02:00
Uchechukwu Obasi
ab74bb78b2 A11y metrics: fixes frontend script that pushes to CI Stat dashboard (#38435) 2021-08-23 11:36:39 +02:00
Maria Alexandra
b579a707e3 A11y - Add Pa11y CI in main pipeline to collect a11y issues (#37741)
Co-authored-by: 
Hugo Häggmark <hugo.haggmark@gmail.com>
thisisobate <obasiuche62@gmail.com>
2021-08-23 10:08:01 +02:00
Gábor Farkas
9e8035ef30 devenv: influxdb: update telegraf config (#37835) 2021-08-23 09:38:47 +02:00
Jack Westbrook
bafe16368a Chore: Migrate CustomScrollbar to react-custom-scrollbars-2 (#38013) 2021-08-23 09:28:58 +02:00
idafurjes
b9a538aff0 Bug: Add check before delete org (#38056)
* Add check before delete org

* Fix comment

* Simpify check if signed in user belongs to the org

* Add check on login if user has and existing org
change error code to 400, when org can not be deleted

* Roll back last commit, regarding an different issue
2021-08-23 08:58:35 +02:00
Ryan McKinley
8c4c05493b Dashboard: keep live timeseries moving left (v2) (#37769) 2021-08-20 14:48:55 -07:00
Travis Patterson
32e11434da Fire event after datasource delete (#38090) 2021-08-20 14:51:31 -06:00
Ryan McKinley
b88f8bacf3 DataFrame: add frame type key to DataFrame structure (#38092) 2021-08-20 09:26:40 -07:00
achatterjee-grafana
d38ce58045 replace "blah" with "example". (#38114) 2021-08-20 10:09:21 -04:00
Will Browne
ae17cce316 Plugins: Add Hide OAuth Forward config option (#36306)
* add prop

* add angular conf

* invert naming

* undo md changes

* fix wording

* y u fail 4 me

* refactor(datasourcesettings): rename hideForwardOAuthIdentityOption prop

* refactor(datasourcesettings): rename scope.hideForwardOAuthIdentityOption

* Update contribute/style-guides/e2e.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* feat(datasourcehttpsettings): add showForwardOAuthIdentityOption to angular wrappers & template

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-08-20 15:53:54 +02:00
Olof Bourghardt
5231660627 Explore: use GrafanaTheme2 (LiveLogs component) (#37452)
* Explore: use GrafanaTheme2

* Explore: add correct style values. Add theme.v1 to the styles that were uncertain

* Logs: add use of GrafanaTheme2 in varioius log components

* Styles: add some of the correct values recieved via feedback

* Add correct style values

* Update public/app/features/dashboard/components/AddPanelWidget/AddPanelWidget.tsx

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>

* Update public/app/features/dashboard/components/AddPanelWidget/AddPanelWidget.tsx

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>

* Update public/app/plugins/panel/dashlist/styles.ts

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>

* Explore: fix failing tests

* Explore: add styling values from v2

* Fix small type error

* Replace v1 styles with v2 styles

* Remove forgotten v1 values

* Remove more v1 style values

* Apply correct style value to LogRowMessage

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
2021-08-20 14:53:03 +02:00
Kevin Minehart
b3c4b20953 Docker: Update base alpine version (fix CVE-2021-36159) (#38088)
* update base alpine version and update apk packages in Dockerfile

* update base alpine version

* don't need to apk update

* remove space

* Update to alpine 3.14.1

Co-authored-by: Malcolm Holmes <mdh@odoko.co.uk>
2021-08-20 12:54:03 +01:00
Jack Westbrook
d9a2dd8a4b Chore: Align enzyme dependencies in root and jaeger workspace (#38006)
* chore: align enzyme dependencies in root and jaeger workspace

* chore(yarn): refresh lock file
2021-08-20 12:54:29 +02:00
Hugo Häggmark
a0773b290b Dashboard: Prevents folder change when navigating to general settings (#38103)
* Dashboard: Prevents folder change when navigating to general settings

* Tests: fixes broken tests

* Chore: changes from PR feedback
2021-08-20 11:53:48 +02:00
Jack Westbrook
5ff3b7bf3f Chore: Bump storybook to 6.3.7 (#38008) 2021-08-20 11:40:20 +02:00
Dimitris Sotirakis
16c518582f Chore: Prevent branches beginning with "v*" from being considered as versioned branches (#38016)
* Add v8* and v9* "regex" to only build versioned branches

* Add glob pattern matching

* Sign drone yaml
2021-08-20 09:22:53 +03:00
Jason Stangroome
28784935b8 Sort notification channels alphabetically (#37426)
Even without the ability to control the sort order or to filter, this notably improves usability for long lists of notification channels.

Partially fixes #20067.
2021-08-19 22:49:14 +02:00
Grot (@grafanabot)
170d1bf954 ReleaseNotes: Updated changelog and release notes for 8.1.2 (#38086) 2021-08-19 23:15:30 +03:00
Douglas Thrift
d18205ff20 Matchers: handle undefined with Is/Is not null (#38036) 2021-08-19 11:24:01 -07:00
Mitch Seaman
5edba603a8 Add metadata (#30138)
* Sentence case

* Fix typo

* steps not paragraph

* prepare for merge conflict

* another merge conflict fix

* Update docs/sources/enterprise/license/activate-license.md

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

* add suggested changes from docs team manually

Co-authored-by: Daniel Lee <dan.limerick@gmail.com>
Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-08-19 19:26:26 +02:00
Leon Sorokin
7cc15c848f Chore: sync yarn.lock (#38077) 2021-08-19 11:24:38 -05:00
Nathan Rodman
df791ae2af Alerting: Add custom grouping for alert groups (#37378)
* Group alertmangaer alerts by custom grouping

* Filter am groups

* Style filter components

* Style filter bar and add clear functionality

* rename components to alert group

* use query params for group filters

* filter style improvements

* add tests for group by

* Add grouping banner to better highlight groupings

* clean up hook logic
2021-08-19 09:22:52 -07:00
Connor Lindsey
6ed60c0bec Tempo: Use echo endpoint when testing Tempo datasource (#38018)
* Use echo endpoint when testing Tempo datasource

* Remove unreachable error message

* Null check response
2021-08-19 09:56:03 -06:00
Piotr Jamróz
f7501ff77f Graphite: Convert tag values returned as numbers to strings (#37882)
* Convert tag values returned as numbers to string

This is a bug in Graphite <= 1.1.7. Since 1.1.8 all values are converted to strings.

* Simplify type conversions

* Fix linting errors
2021-08-19 08:40:13 -07:00
Connor Lindsey
76b891b001 Tempo: Add Tempo search behind feature flag (#37765)
* Add Tempo search behind feature flag

* Add query fields for Tempo search

* Only show loki search if a logs-to-traces datasource is set up

* Refactor tempo search to use separate fields for service name, span name, and tags

* Add tests to buildSearchQuery

* Move search to separate component and rename type to native search

* Improve Tempo tokenizer syntax
2021-08-19 09:15:46 -06:00
Josh Hunt
17306217aa AzureMonitor: Support PostgreSQL and MySQL Flexible Servers (#38075) 2021-08-19 16:56:58 +02:00
Tobias Skarhed
1f091c448f Template variables: Keyboard navigation improvements (#38001)
* Fix variable labels

* Add proper labeling for input

* Add ids to PickerRenderer

* Fix tests

* Update PR feedback

* OptionsPicker: Change to id

* Inherit aria attributes

* Add checkbox role

* Fix typo

* Add proper label reference

* Update role and label

* Prevent spreadng non-DOM attributes

* Move form layout to other component

* Remove haspopup

* Add testid to selector

* Add HTMLProps extension

* Use list

* Move styles outside of class

* Add cx
2021-08-19 16:28:25 +02:00
Olof Bourghardt
28cf93e42c Explore: use GrafanaTheme2 (LiveTailButton component) (#37516)
* Explore: use GrafanaTheme2 in LiveTailsButton

* Remove unused theme
2021-08-19 16:17:28 +02:00
Kyle Brandt
d43d9207ee Alerting/Docs: $labels and $values not available with classic condition (#38011)
fixes #37836
2021-08-19 09:02:41 -04:00
Jack Westbrook
e988d9b56d Piechart: Update @visx dependencies to 2.1.0 and move to root package.json (#38000)
* chore: move visx dependencies to root package.json

* chore(piechart): bump visx dependencies to 2.1.0

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2021-08-19 14:49:09 +02:00
Ivana Huckova
7f8576ee37 Postgres: For template queries return [] and not error (#38060)
* Postgres: For template queries return [] and not error

* remove the console error

* update mssql and mysql

Co-authored-by: Ying WANG <ying.wang@grafana.com>
2021-08-19 13:43:41 +02:00
Leon Sorokin
ecfa32c8cb AnnotationEditor: simplify plugin (#37463) 2021-08-19 06:40:40 -05:00
Raymond Chen
befdfedfb6 Add documentation for setting up debugging in VSCode (#29987) 2021-08-19 12:08:43 +02:00
billabongrob
2fe62af685 Admin: Obfuscate azure_blob Account Key
Obfuscate azure_blob Account Key #37970
2021-08-19 11:41:26 +02:00
Hugo Häggmark
4ba2636aba Dashboard: Fix so panels are rendered correctly on SoloPanelPage (#38050)
* Dashboard: Fix so panels are rendered correctly on SoloPanelPage

* Refactor: narrows down the path
2021-08-19 08:47:37 +02:00
Hugo Häggmark
dba15190af Chore: Upgrades rxjs to 7.3.0 (#37913)
* Chore: upgrades rxjs to 7.3.0

* Chore: replaces toPromise with lastValueFrom

* Chore: removes unused mock that caused test error

* Chore: fixes build error in PieChartPanel

* Chore: fixed build error in requestAllIndices

* Chore: fixes comment

* Chore: trying to reduce docs errors

* Chore: searches for explicit api extractor warnings

* Chore: updates rxjs-spy to 8.0.0

* Chore: reverts to main

* Chore: upgrade rxjs and rxjs-spy
2021-08-19 06:38:31 +02:00
Villena Guillaume
646d95b8fb TimeSeries: Support Ctrl key for marking annotations (#38034) 2021-08-18 16:38:02 -05:00
w-endre
c5f8d98709 <Explore>: Minor documentation update" (#36338)
* Clarification added for using the Explore tool.

* Update docs/sources/explore/_index.md

Co-authored-by: Daniel Lee <dan.limerick@gmail.com>
2021-08-18 21:59:57 +02:00
An
7b813c81ac revert: change to events canvas (#38023) 2021-08-18 15:47:25 -04:00
Leon Sorokin
49b129b110 GraphNG: fix mem leaks & avoid plot re-inits (#38017)
* State timeline: fix mem leak caused by excessive plot re-init

* Update PlotTooltipInterpolator type

* Do not reference config object in the setCursor hook

* fix excessive BarChart re-init caused by shallow diff of text config

* one less error

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-08-18 13:43:53 -05:00
MDS
63a85a4ac0 Fix typo in set-up-for-high-availability.md (#36316)
* Update set-up-for-high-availability.md

fixed a minor typo

* Update docs/sources/administration/set-up-for-high-availability.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: Daniel Lee <dan.limerick@gmail.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-08-18 20:08:48 +02:00
Chip Wolf ‮
fe09879ff5 Alerting: correct property names for Slack bot icons (#33376) 2021-08-18 21:06:05 +03:00
Robby Milo
552eed75e2 docs - update publishing details, add menuTitle instructions (#37441)
* docs - update publishing details, add menuTitle instructions.

* Update docs/README.md

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

* Update docs/README.md

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
Co-authored-by: Daniel Lee <dan.limerick@gmail.com>
2021-08-18 19:59:04 +02:00
Ole Ernst
c0d6fc0255 avoid duplicate log in development environment (#36609)
avoid logging performance metrics in production environment
2021-08-18 19:45:54 +02:00
Alexandre de Verteuil
0bf9b6a931 Typo fix in saml.md (#31451) 2021-08-18 16:49:10 +02:00
Oscar Kilhed
21f45d4927 Postgres UUID group issue (#37999)
* Add UUID to types that can be grouped by

* Remove noop switch
2021-08-18 16:17:30 +02:00
Petros Kolyvas
861fe60d01 Updating CONTRIBUTING.md to redirect to GitHub Discussions for Enhancements (#37039) 2021-08-18 16:16:28 +02:00
wengelbrecht-grafana
3843eda130 Update auditing.md (#37312)
Fixed small spelling mistake
2021-08-18 16:12:38 +02:00
Jon Gyllenswärd
b01c0eb571 Docs update for request security (#33974)
* added link to request security feature

* Update docs/sources/administration/security.md

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

* Update docs/sources/administration/security.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-08-18 16:11:53 +02:00
Andrej Ocenas
60a0c5da05 CloudWatch/Logs: Don't group dataframes for non time series queries (#37998)
* Don't split response when there is no time field

* Refactor grouping to separate function

* Add test
2021-08-18 15:05:06 +02:00
Peter Holmberg
a7b22a73b6 Alerting: Add Copy link to Alert on View rule page (#37967)
* add button to page

* add url to getText

* reorder imports

* build url function

* remove log

* encode
2021-08-18 14:25:56 +02:00
Victor Cinaglia
0819d15942 profiling: Support binding pprof server to custom network interfaces (#36580)
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-08-18 13:28:39 +02:00
Jack Westbrook
552ecfeda3 Chore: Update NPM packages with react peer deps (#36598)
* chore: bump npm packages with react peer deps

* chore: bump rc-cascader to 1.4.3

* chore: bump react-table to 7.7.0

* chore: bump types packages

* refactor(buttoncascader): use CascaderValueType (fixes typescript errors)

* refactor(cascader): use CascaderValueType (fixes typescript errors)

* chore: bump rc-drawer to 4.4.0

* refactor(drawer): update component to match rc-drawer 4.4.0 api changes

* refactor(cascader): provide backwards compatibility for component apis

* chore(react-test-renderer): bump to match react 17.0.1

* fix(drawer): defer opening RcDrawer so animations play correctly

* chore: bump rc-cascader to 1.5.0
2021-08-18 11:23:34 +02:00
Simon Podlipsky
9900f2ed48 Fix url util converting false into true (#37402)
A value of key-value pair is stripped for boolean values. While this is ok for `true`, it kind of inverts `false`
2021-08-18 10:10:29 +02:00
Sergey Kostrukov
c6356c5bba Fix scopes mutation by cloning original array (#37981) 2021-08-18 10:05:14 +02:00
Dimitris Sotirakis
050dc7bc8f Cloudwatch: Unwrap errors - throw error from upstream (#36334)
* Unwrap errors - throw error from upstream

* Fixes according to reviewer's comments

* Fix linting

* Remove unused code
2021-08-18 10:37:13 +03:00
Domas
cb9912ec0a Alerting: button to test contact point (#37475) 2021-08-18 10:16:35 +03:00
Hugo Häggmark
a160930e24 Chore: skip e2e test for examplars (#37991) 2021-08-18 08:29:03 +02:00
An
b028dbc537 EventsCanvas: Clean up action to avoid memory leak (#37592) 2021-08-17 17:29:24 -07:00
Ryan McKinley
16b1922cdc Devenv: remove unused options from timeseries panel (#37980) 2021-08-17 16:29:15 -07:00
Nathan Rodman
b153bb6101 Alerting: Add alertmanager notifications panel (#37078)
* Add filter parsing to rule list filters

* Add unit tests for label parsing

* Make label operators an enum

* add example for parsing function

* Update labels operator regex

* Use tooltip for query syntax example

* refactor to use Matchers for filtering

* wip: initial alertmanager notifications panel

* Panel for alertmanager notificaitons

* add filtering for notifications list

* remove icon

* rename am notifications to alert groups

* naming fixes

* Feature toggle

* Add toggle for expand all

* add pluralize

* add action buttons

* test work in progress

* Tests for alert groups panel

* Add useEffect for expandAll prop change

* Set panel to alpha state

* Fix colors

* fix polling interval callback

Co-authored-by: Domas <domas.lapinskas@grafana.com>

Co-authored-by: Domas <domas.lapinskas@grafana.com>
2021-08-17 15:02:03 -07:00
Nathan Rodman
6579872122 Alerting: update matchers field operators to Select (#37809)
* Alerting: update matchers field operators to Select

* Add matcher field to routes

* fix default values

* min-width for matcher operator

* dry up matcher field options

* change MatcherField name to MatcherValue
2021-08-17 14:48:39 -07:00
Petros Kolyvas
9008ebd27a Relative reference error for influxdb gettting started guide (#37979) 2021-08-17 17:09:36 -04:00
Ryan McKinley
2ff4b028c8 Core: move dimensions out of geomap into app/features (#37946) 2021-08-17 13:43:54 -07:00
Piotr Jamróz
d93d989a5a Graphite: Migrate to React (part 4 & 5: group all components) (#37590)
* Add UMLs

* Add rendered diagrams

* Move QueryCtrl to flux

* Remove redundant param in the reducer

* Use named imports for lodash and fix typing for GraphiteTagOperator

* Add missing async/await

* Extract providers to a separate file

* Clean up async await

* Rename controller functions back to main

* Simplify creating actions

* Re-order controller functions

* Separate helpers from actions

* Rename vars

* Simplify helpers

* Move controller methods to state reducers

* Remove docs (they are added in design doc)

* Move actions.ts to state folder

* Add docs

* Add old methods stubs for easier review

* Check how state dependencies will be mapped

* Rename state to store

* Rename state to store

* Rewrite spec tests for Graphite Query Controller

* Update docs

* Update docs

* Add GraphiteTextEditor

* Add play button

* Add AddGraphiteFunction

* Use Segment to simplify AddGraphiteFunction

* Memoize function defs

* Fix useCallback deps

* Update public/app/plugins/datasource/graphite/state/helpers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/helpers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/helpers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Add more type definitions

* Remove submitOnClickAwayOption

This behavior is actually needed to remove parameters in functions

* Load function definitions before parsing the target on initial load

* Add button padding

* Fix loading function definitions

* Change targetChanged to updateQuery to avoid mutating state directly

It's also needed for extra refresh/runQuery execution as handleTargetChanged doesn't handle changing the raw query

* Fix updating query after adding a function

* Simplify updating function params

* Migrate function editor to react

* Simplify setting Segment Select min width

* Remove unnecessary changes to SegmentInput

* Extract view logic to a helper and update types definitions

* Clean up types

* Update FuncDef types and add tests

* Show red border for unknown functions

* Autofocus on new params

* Extract params mapping to a helper

* Split code between params and function editor

* Focus on the first param when a function is added even if it's an optional argument

* Add function editor tests

* Remove todo marker

* Fix adding new functions

* Allow empty value in selects for removing function params

* Add placeholders and fix styling

* Add more docs

* Create basic implementation for metrics and tags

* Post merge fixes

These files are not .ts

* Remove mapping to Angular dropdowns

* Simplify mapping tag names, values and operators

* Simplify mapping metrics

* Fix removing tags and autocomplete

* Simplify debouncing providers

* Ensure options are loaded twice and segment is opened

* Remove focusing new segments logic (not supported by React's segment)

* Clean up

* Move debouncing to components

* Simplify mapping to selectable options

* Add docs

* Group all components

* Remove unused controller methods

* Create Dispatch context

* Group Series and Tags Sections

* Create Functions section

* Create Section component

* use getStyles

* remove redundant async/await

* Remove

* remove redundant async/await

* Remove console.log and silent test console output

* Do not display the name of the selected dropdown option

* Move Section to grafana-ui

* Update storybook

* Simplify SectionLabel

* Fix Influx tests

* Fix API Extractor warnings

* Fix API Extractor warnings

* Do not show hidden functions

* Use block docs for better doc generation

* Handle undefined values provided for autocomplete

* Section -> SegmentSection

* Simplify section styling

* Remove redundant div

* Simplify SegmentSection component

* Use theme.spacing

* Use empty label instead of a single space label

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2021-08-17 18:50:31 +02:00
Ashley Harrison
f8d7726187 DashboardGrid: compare window width against theme breakpoints (#37868) 2021-08-17 16:53:25 +01:00
Josh Hunt
1e221b6452 AzureMonitor: Show error message when subscriptions request fails in ConfigEditor (#37837)
* Fix jsdoc description for datasourceRequest

* Align default subscription width with other fields

* AzureMonitor: Show error message when requesting default subscriptions in ConfigEditor

* update snapshots:
2021-08-17 16:46:15 +01:00
Andrej Ocenas
11c848f00d Tempo: Service map (#37661)
* Add prometheus queries

* Add stats

* Refactor transform

* Fix stat format

* Refactor transform

* Hide behind feature flag

* Better linking error messages

* Add test

* Add test for datasource

* Fix lint

* Make optionality checking more explicit
2021-08-17 15:48:29 +02:00
cyhone
6aa2a0dc8a refactor: simplify serverlock code (#37451) 2021-08-17 15:34:03 +02:00
Hugo Häggmark
0d2aaed3e8 Annotations: Fixes so alert annotations are visible in the correct Panel (#37959) 2021-08-17 15:14:11 +02:00
George Robinson
3ca00f90b5 Contact point testing (#37308)
This commit adds contact point testing to ngalerts via a new API
endpoint. This endpoint accepts JSON containing a list of
receiver configurations which are validated and then tested
with a notification for a test alert. The endpoint returns JSON
for each receiver with a status and error message. It accepts
a configurable timeout via the Request-Timeout header (in seconds)
up to a maximum of 30 seconds.
2021-08-17 13:49:05 +01:00
Josh Hunt
afabc617ed AzureMonitor: Apply query migrations in QueryEditor (#37704)
* move query migrations out of the angular controller

* Migrate queries in QueryEditor

* finish up migrations

* update deprecated comment

* remove comment
2021-08-17 14:03:18 +02:00
sam boyer
6aba592741 Schema: get all devenv dashboards passing validation (#37857)
* Strip nulls (again)

* Add stripnulls script

* Add transformations field

* Close FieldConfig struct; proper plugin validating

* s/graph/viz/ field in histogram dashboard

* Use ui.GraphFieldConfig in histogram model

* Add models for stat, gauge, barguage panel plugins

Also toss necessary shared types into cue/ui/gen.cue, with TODOs to move
them appropriately later.

* Add required license headers

* Heap of updates to cue UI components

* Fix barchart types and one old devenv input

* Use the GraphFieldConfig directly for timeseries

* Add models.cue for a few panel plugins

Barchart, state-timeline, and status-history

* Enable the test validating all devenv dashboards!!

* Fix effects of not checking after making comments

* Update packages/grafana-ui/src/options/models.gen.ts

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>

* Realign and unalign cue with ts types

* Update devenv test to sniff for null errors

Best option we have right now for helping people to know they need to
strip nulls from devenv dashboards.

* Add speculative default for barchart stacking

* Fixup some dated devenv dashboards

timeline-modes needed to be regenerated with the appropriate tooltip
values included, per typing requirements, and timeline-demo needed to
have the `mode` field removed, as it is not intended to be persisted.

* Add necessary missing options for various panels

* Regenerate devenv dashboards

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-08-17 07:11:57 -04:00
Josh Hunt
368da73ac4 AzureMonitor: Fix crash from infinite render loop (#37924) 2021-08-17 11:50:37 +01:00
Will Browne
697ac937c6 fix with global config state (#37293) 2021-08-17 12:16:34 +02:00
Will Browne
8a2f63ee06 Update Makefile (#37926) 2021-08-17 12:06:33 +02:00
Jack Westbrook
483c597740 Storybook: Fix Graph with Tooltip story (#37937) 2021-08-17 10:14:57 +02:00
Olof Bourghardt
f433cfd8d9 Explore: add functionality for supporting different step modes in prometheus (#37829) 2021-08-17 07:48:45 +02:00
Atif Shoukat Ali
f6c9c196ba Live: No connection warning for user with no org (#37943) 2021-08-16 22:11:39 -07:00
Evan Sosenko
5d74c47cf8 Add missing AWS/Cognito metrics (#37768)
* Add missing AWS/Cognito metrics

https://docs.aws.amazon.com/cognito/latest/developerguide/metrics-for-cognito-user-pools.html

* Add missing Cognito dimensions

* Remove Cognito usage metrics
2021-08-16 20:44:32 +02:00
Ashley Harrison
344c43f2e8 PanelEdit: Fix 'Actual' size by passing the correct panel size to DashboardPanel (#37885) 2021-08-16 16:01:54 +01:00
Tobias Skarhed
89572926c3 Search: Make search icon keyboard navigable (#37865)
* Make search icon keyboard navigable

* Update text

* Update test

* Remove unused line

* Add global focus-visible styles for button
2021-08-16 15:51:44 +02:00
Maria Alexandra
1735f9a56b Navigation: Add aria-label to top section links to improve a11y for screen readers (#36953) 2021-08-16 15:10:57 +02:00
Dimitris Sotirakis
37b0c20984 Chore: Update channel to where failed Docker nightly builds are posted (#37927)
* Update channel

* Sign drone.yml
2021-08-16 14:54:52 +02:00
Olof Bourghardt
d26f3cdd03 Loki: add support for resolution (#36710)
* Add input to specify min step

* Add stepInterval to as input to component

* Add onBlur to Input component

* Loki: add functionality for min step

* Loki: change name on props to step to make it more clear

* Loki: add resolution as a query option

* Loki: Add min,max,exact as step options

* Loki: add functionality for different step modes

* Loki: fix bug where step function isn't working

* Loki: fix bug where exact step isn't working

* Loki: change width of step input field

* Loki: add tests for adjustInterval function

* Loki: add check for max step oprio to make sure it's not below the safe interval

* Loki: fix bug with some tests

* Loki: fix bug with tests

* Explore: add tooltip to loki step function

* Loki: remove resolution as a logs option

* Loki: update snapshots

* Fix failing tests

* Loki: add select component for choosing resolution

* Loki: add functionality for calculating correct interval with resolution applied

* Loki: remove functionality for step mode

* Loki: remove tests for step mode

* Loki: add tooltip to line limit and resolution

* Loki: add backend support for resolution

* Loki: fixed backend bug where resolution was undefined

* Loki: add check for resolution
2021-08-16 14:02:13 +02:00
Dimitris Sotirakis
1aeafa34d1 Elasticsearch: Fix metric names for alert queries (#37871)
* Use props names as metrics names

* Make aliases work
2021-08-16 14:45:20 +03:00
Sherwin Daganato
118c811c61 CloudWatch: Add AWS/EC2 MetadataNoToken metric (#37427) 2021-08-16 10:04:21 +02:00
Gábor Farkas
668f397a8e Prometheus/Alerting: handle datasource.timeRange is nil case (#37888) 2021-08-16 09:20:58 +02:00
Domas
5ab8d6a3b9 remove guideliens form rule list state table (#37839) 2021-08-16 10:12:07 +03:00
Stephanie Hingtgen
db2e0d46b7 Update http error code when datasource health check fails (#37895)
Since the datasource settings are configured by the user, the health check error could be a client error. A 506 error may be sufficient as well.
2021-08-16 09:49:34 +03:00
Ivana Huckova
15edaa5837 Add pattern parser to syntax (#37824) 2021-08-15 21:20:37 +02:00
Ikko Ashimine
1a5529d244 Annotations: Fix typo in types.ts (#37910) 2021-08-15 09:22:38 -07:00
Sergey Kostrukov
10cc9bda74 Toolkit: return original stack trace for webpack errors (#37814) 2021-08-14 13:49:56 -07:00
Teppo Kurki
5c69f899b5 doc: add missing LoadingState.Streaming (#37903)
The final query is missing this and does not work without it.
2021-08-14 09:35:33 -04:00
sam boyer
6d08be157f Don't reuse plugin action for cue subcommands (#37858) 2021-08-13 17:01:12 -04:00
Leon Sorokin
0e3fb55caa Tooltip: bring back optimized hoverpoint code (#37901) 2021-08-13 15:35:41 -05:00
Ryan McKinley
f5b8e8b48a Devenv: remove unused stacking setting (#37898) 2021-08-13 21:09:57 +02:00
Travis Patterson
00709ec1db Add prometheus remote client (#37755) 2021-08-13 10:44:56 -06:00
Dominik Eckelmann
e49aa48dbb Added note on pagerduty alert notification (#37759) 2021-08-13 12:32:42 -04:00
shuotli
6ecf401cd1 AzureMonitor: Add data links to deep link to Azure Portal Azure Resource Graph (#35591)
* Add deep link in ARG

* add soverigh clouds

* add query to Azure portal link

* move deep link to backend

* cloud specific to ARG

* Add unit test

* fix lint

* fix escape issue

* use constant & fix test

* fix constant & use pathEscape

* use cmp.Equal for test
2021-08-13 16:21:24 +01:00
Leon Sorokin
6a77cd43ae GraphNG: refactor by-value color schemes (#37670)
* GraphNG: account for top canvas padding in gradient gen for color scheme/thresholds-by-value

* Updated test dashboard

* Added fix for issue when scaleMin was same as threshold

* fixed firefox issue

* revert docs changes

* update gdev dash for easier comparisons & regression spotting

* refactor

* optimize gradient re-gen/re-use and color more tinycolor.setAlpha() -> alpha(). update uPlot to dev build.

* fix percentage steps

* implement % threshold region rendering

* crisp threshold line rendering

* simplify

* WIP: hoverpoint dynamic color interpolation

* fix hover point color interp

* re-use gradient gen to draw threshold areas

* re-implement by-value color scales

* tweak comment

* mimic tinycolor behavior in colorManipulator.alpha() for empty colors

* explicitly disable hover points for BarChart and Histogram

* reduce test failures and required changes to tests

* fix barchart tests

* uPlot 1.6.15

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-08-13 09:38:04 -05:00
Sergey Kostrukov
dd0a906fb7 Fix alternative Azure cloud names (#37133) 2021-08-13 14:58:05 +01:00
Uchechukwu Obasi
4e98ade2af Annotations: fixes variable values not displaying in annotations. (#37883)
* Fixes wrong annotation when opening dashboard with URL encoded variable
Co-authored-by: Ashley Harrison, Hugo Haggmark, and Tobias Skarhed.

* added a more descriptive comment
2021-08-13 14:38:57 +01:00
Sofia Papagiannaki
7a01fb369d Alerting: Fix API spec generation (#37852)
* Alerting: Fix API spec generation

* Apply suggestion from code review

Co-authored-by: gotjosh <josue@grafana.com>
2021-08-13 16:15:53 +03:00
gotjosh
f3f3fcc727 Alerting: Introduces /api/v1/ngalert/alertmanagers to expose discovered and dropped Alertmanager(s) (#37632)
* Alerting: Expose discovered and dropped Alertmanagers

Exposes the API for discovered and dropped Alertmanagers.

* make admin config poll interval configurable

* update after rebase

* wordsmith

* More wordsmithing

* change name of the config

* settings package too
2021-08-13 13:14:36 +01:00
Dimitris Sotirakis
db91a55d49 Remove duplicated title from slack notification (#37834) 2021-08-13 15:13:02 +03:00
Ursula Kallio
e8696f978f Fix #747; remove 'other variables'. (#37866) 2021-08-13 08:02:04 -04:00
Matt Abrams
f76248cdbf [docs] : fix broken link (#37860)
found a broken link. This PR points the hyperlink at the new URL 👍
2021-08-13 07:45:38 -04:00
Josh Hunt
81cfc2c347 AzureMonitor: Use React QueryEditor for annotations editor (#37633) 2021-08-13 11:05:57 +01:00
Ashley Harrison
d4098cf098 Select: Add menuShouldPortal to a couple that got missed (#37847) 2021-08-13 08:35:24 +01:00
Hugo Häggmark
5449f1c1e6 Variables: Fix issue with empty dropdowns on navigation (#37776) 2021-08-13 09:10:37 +02:00
Olof Bourghardt
13a91f791d Explore: use GrafanaTheme2 (Explore component) (#37445)
* Explore: use GrafanaTheme2

* Explore: change width and paneel padding

* Explore: remove the use of stylyesFactory

* Explore: fix failing tests

* Simpify calculation of width for ExploreGraphNGPanel

* Update public/app/features/explore/Explore.tsx

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>

* Update public/app/features/explore/Explore.tsx

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>

* Prettified code

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2021-08-13 08:02:49 +02:00
Kyle Brandt
aef67994a1 Annotations: Fix alerting annotation coloring (#37412)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-08-12 09:37:54 -07:00
ying-jeanne
d18bd03a82 Scuemeta: Fix cue schemas for panels (#37788)
* complete the data model of graph panel

* fix histogram graph

* fix timeseries panel type

* Update cue/ui/gen.cue

Co-authored-by: sam boyer <sam.boyer@grafana.com>

* fix graph/viz and gradientMode enum

* add the changes into cue component and remove fields for graph panel

Co-authored-by: sam boyer <sam.boyer@grafana.com>
2021-08-12 09:52:03 -04:00
sam boyer
a17339cb9a One-off schema support for old graph and row plugins (#37810)
* Add special types for graph and row panels

* Update old keys on dashboard json
2021-08-12 09:50:10 -04:00
Sofia Papagiannaki
04d5dcb7c8 Alerting: modify DB table, accessors and migration to restrict org access (#37414)
* Alerting: modify table and accessors to limit org access appropriately

* Update migration to create multiple Alertmanager configs

* Apply suggestions from code review

Co-authored-by: gotjosh <josue@grafana.com>

* replace mg.ClearMigrationEntry()

mg.ClearMigrationEntry() would create a new session.
This commit introduces a new migration for clearing an entry from migration log for replacing  mg.ClearMigrationEntry() so that all dashboard alert migration operations will run inside the same transaction.
It adds also `SkipMigrationLog()` in Migrator interface for skipping adding an entry in the migration_log.

Co-authored-by: gotjosh <josue@grafana.com>
2021-08-12 16:04:09 +03:00
Connor Lindsey
4a9fdb8b76 Add span duration to left panel in trace viewer (#37806) 2021-08-12 06:54:55 -06:00
Ashley Harrison
8ffce22e7c Chore: Update optimize-css-assets-webpack-plugin to 5.0.5 (#37746)
* Chore: Update optimize-css-assets-webpack-plugin to 5.0.5

* kick github
2021-08-12 11:40:26 +01:00
Tobias Skarhed
b6ede8d96d Chore: Low hanging a11y fruits (#37783)
* aria-label disallowed on header element

* A11y issues for Getting Started and panel header

* Add unique identifier to search navigation

* Add dashboard header markup

* Fix news panel low hanging fruits
2021-08-12 11:13:03 +02:00
Alex Khomenko
059ef4ee9a PasswordField: Fix button role (#37816)
* Fix button role

* Fix tests
2021-08-12 10:46:33 +02:00
Dimitris Sotirakis
e4779cfb4f Remove pkg-archive from Makefile (#37821) 2021-08-12 11:39:09 +03:00
Andrej Ocenas
b5f7df3e62 CloudWatch/Logs: Fix crash when time column has nil values (#37708) 2021-08-12 10:36:06 +02:00
Domas
e76848acee Alerting: improve rule list error message (#37734) 2021-08-12 09:57:52 +02:00
Gábor Farkas
28229fc344 devenv: influxdb: simplified versioning for old-version influxdb (#37726) 2021-08-12 08:36:50 +02:00
Gábor Farkas
4afa74232f prometheus: alerting: respect datasource.scrapeInterval (#37799) 2021-08-11 20:34:51 +02:00
Will Browne
45754edfbc bump plugin-sdk-go to fix tls verify field issue (#37797) 2021-08-11 16:23:07 +02:00
Serge Zaitsev
e2227c38a3 Remove debug log from gzipper (#37790) 2021-08-11 14:04:08 +02:00
Ursula Kallio
a058a09b9b Include voice and tone summary (#37742)
Fix https://github.com/grafana/technical-documentation/issues/35.
2021-08-11 11:30:40 +02:00
dependabot[bot]
94b58b87ea Bump prismjs from 1.23.0 to 1.24.0 (#36236)
Bumps [prismjs](https://github.com/PrismJS/prism) from 1.23.0 to 1.24.0.
- [Release notes](https://github.com/PrismJS/prism/releases)
- [Changelog](https://github.com/PrismJS/prism/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PrismJS/prism/compare/v1.23.0...v1.24.0)

---
updated-dependencies:
- dependency-name: prismjs
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-11 09:56:20 +01:00
Ryan McKinley
3205450210 Transformations: support a synchronous transformation pattern (#37780) 2021-08-11 01:25:33 -07:00
Ashley Harrison
181d6a78ed Chore: Fix some more typescript strict errors (#37750) 2021-08-11 09:10:41 +01:00
Ivana Huckova
4cf097c4e5 Small UX updates (#37694) 2021-08-11 09:56:23 +02:00
Ryan McKinley
36c798eb2f Chore: define base panel type in @grafana/data (#37766) 2021-08-11 00:23:41 -07:00
Ryan McKinley
7a8e861c1f Timeseries: migrate log scale (#37771) 2021-08-11 00:23:12 -07:00
Piotr Jamróz
31bb3522c8 Graphite: Migrate to React (part 3: migrate segments) (#37309)
* Add UMLs

* Add rendered diagrams

* Move QueryCtrl to flux

* Remove redundant param in the reducer

* Use named imports for lodash and fix typing for GraphiteTagOperator

* Add missing async/await

* Extract providers to a separate file

* Clean up async await

* Rename controller functions back to main

* Simplify creating actions

* Re-order controller functions

* Separate helpers from actions

* Rename vars

* Simplify helpers

* Move controller methods to state reducers

* Remove docs (they are added in design doc)

* Move actions.ts to state folder

* Add docs

* Add old methods stubs for easier review

* Check how state dependencies will be mapped

* Rename state to store

* Rename state to store

* Rewrite spec tests for Graphite Query Controller

* Update docs

* Update docs

* Add GraphiteTextEditor

* Add play button

* Add AddGraphiteFunction

* Use Segment to simplify AddGraphiteFunction

* Memoize function defs

* Fix useCallback deps

* Update public/app/plugins/datasource/graphite/state/helpers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/helpers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/helpers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Add more type definitions

* Remove submitOnClickAwayOption

This behavior is actually needed to remove parameters in functions

* Load function definitions before parsing the target on initial load

* Add button padding

* Fix loading function definitions

* Change targetChanged to updateQuery to avoid mutating state directly

It's also needed for extra refresh/runQuery execution as handleTargetChanged doesn't handle changing the raw query

* Fix updating query after adding a function

* Simplify updating function params

* Migrate function editor to react

* Simplify setting Segment Select min width

* Remove unnecessary changes to SegmentInput

* Extract view logic to a helper and update types definitions

* Clean up types

* Update FuncDef types and add tests

* Show red border for unknown functions

* Autofocus on new params

* Extract params mapping to a helper

* Split code between params and function editor

* Focus on the first param when a function is added even if it's an optional argument

* Add function editor tests

* Remove todo marker

* Fix adding new functions

* Allow empty value in selects for removing function params

* Add placeholders and fix styling

* Add more docs

* Create basic implementation for metrics and tags

* Post merge fixes

These files are not .ts

* Remove mapping to Angular dropdowns

* Simplify mapping tag names, values and operators

* Simplify mapping metrics

* Fix removing tags and autocomplete

* Simplify debouncing providers

* Ensure options are loaded twice and segment is opened

* Remove focusing new segments logic (not supported by React's segment)

* Clean up

* Move debouncing to components

* Simplify mapping to selectable options

* Add docs

* use getStyles

* remove redundant async/await

* Remove

* remove redundant async/await

* Remove console.log and silent test console output

* Do not display the name of the selected dropdown option

* Use block docs for better doc generation

* Handle undefined values provided for autocomplete

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2021-08-11 09:13:55 +02:00
Olof Bourghardt
2a1363f175 Explore: use GrafanaTheme2 (MetaInfoText component) (#37539)
* Explore: use GrafanaTheme2 in MetaInfoText component

* Explore: change font-size to h6 size

* Explore: add correct font weight

* Use correct style value for font-size

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Use error color style

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Use bodySmall font-size instead of h6 font-size

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2021-08-11 08:25:54 +02:00
nikki-kiga
87b8a74576 Tooltip: display ms within minute time range (#37569)
* Tooltip: add hasMs flag for system dateTime format

* Tooltip: display ms in sub minute time range

* Tooltip: add field check, increase range on tests

* Add diffrentiating test

* minimize parsing to string values

Co-authored-by: Oscar Kilhed <oscar.kilhed@grafana.com>
2021-08-10 13:54:44 -07:00
SLAMA
5986d99f51 Alerting frontend : fix line notifier (#37744)
- Fixes #37425
- change `line` type string to uppercase
2021-08-10 18:59:53 +01:00
achatterjee-grafana
1da779103e Added missing period. (#37737) 2021-08-10 17:06:14 +02:00
Tobias Skarhed
fa731f16bf DashboardLinks: Screen reader accessibility #37682 2021-08-10 16:55:25 +02:00
Gábor Farkas
476a227505 influxdb: check for invalid program-flow (#37474) 2021-08-10 14:18:29 +02:00
Serge Zaitsev
707d3536f0 Macaron: Strip down renderer middleware (#37627)
* strip down macaron renderer

* inline renderHTML

* remove IndentJSON parameter

* replace renderer with a html/template set

* fix failing test

* fix renderer paths in tests

* make template reloading even simpler

* unify ignored gzip path lookup

* fix csp middleware usage
2021-08-10 13:29:46 +02:00
Tobias Skarhed
5b575ae91f TimeRangeOption: Make entire list item clickable #37730 2021-08-10 12:43:50 +02:00
Jeremy Price
06368abf44 Accesscontrol fix permission name (#37717)
* Fixes permission name for services:accesscontrol
2021-08-10 11:11:13 +02:00
Zoltán Bedi
ad6a4edfeb UI: FileDropzone component to handle file list overwrite (#37685)
* UI: FileDropzone component to handle file list overwrite

* FileListItem: use type=button everywhere

* Update packages/grafana-ui/src/components/FileDropzone/FileDropzone.story.tsx

Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>

* FileListItem: add aria-hidden and change cancel text

* Update packages/grafana-ui/src/components/FileDropzone/FileListItem.test.tsx

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>

Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2021-08-10 10:23:49 +02:00
Domas
3e124c854e Alerting: interpolate variables when creating alert rule from dashboard panel (#37201) 2021-08-10 10:59:48 +03:00
Gábor Farkas
488930dbe3 influxdb: influxql: update provisioning example (#37701) 2021-08-10 09:07:23 +02:00
Serge Zaitsev
0dfac9c3aa Macaron: convert CSP middleware (#37672) 2021-08-10 09:03:22 +02:00
Serge Zaitsev
377b323faf truncate float64 values to a lower precision to look the same on all platforms (#37677) 2021-08-10 09:03:01 +02:00
Ivana Huckova
a02f9be0c6 Explore: Fix showing of full log context (#37442)
* Fix log context

* Update to auto values insted of unset

* Update comment

* Fix redundant left margin for non-wrapped logs

* Remove unused css styling

* Adjust width and height
2021-08-10 09:01:57 +02:00
Julien Duchesne
7e63118ea9 Run builds on single-build agents (#37702)
This is an effort to reduce cache errors when multiple agents try to build the yarn cache at the same time
https://github.com/grafana/deployment_tools/issues/13329
2021-08-10 09:16:09 +03:00
Zoltán Bedi
33aeee60ff Toolkit: Fix matchMedia not found error (#37643) 2021-08-10 07:34:35 +02:00
Leonard Gram
7d503d4331 Update latest to v8.1.1 (#37715) 2021-08-09 21:01:38 +02:00
achatterjee-grafana
b556bafc4d Updated note as requested. Also adjusted the weight of some of the topics to list data sources alphabetically in TOC. (#37713) 2021-08-09 20:37:21 +02:00
Grot (@grafanabot)
72b1b0e90e ReleaseNotes: Updated changelog and release notes for 8.1.1 (#37692)
* ReleaseNotes: Updated changelog and release notes for 8.1.1

* Update _index.md

* Update CHANGELOG.md

Co-authored-by: Leonard Gram <leo@xlson.com>
2021-08-09 19:53:44 +02:00
achatterjee-grafana
2bc2315e99 Updated note by adding the word "longer". (#37707) 2021-08-09 19:37:11 +02:00
sam boyer
6ae5db5608 Adapt dashboard schema to validate on some devenv dashboards (#37594)
* Remove null values from JSON

* Specify the color field

* Add note about openness of custom field's struct

* Update schemaVersion

* Specify thresholds

* Add panel id

* Add maxDataPoints and interval

* Add mappings, albeit very under-specified

* Allow empty string for timezone field

This is probably not a good idea - same as allowing nulls.

* Allow false for refresh - otherwise, string

* Make threshold value optional

* Make interval optional

* Fix broken and changed decls in ui models

* Add models.cue for timeseries panel

* Fixups for home dashboard

* Add timeShift, timeFrom

* Abstract out #Target, rejigger comments
2021-08-10 00:49:58 +08:00
sam boyer
e1637f70bd Strip nulls from all latest devenv dashboards (#37602)
Everything schemaVersion >= 30
2021-08-10 00:42:41 +08:00
Josh Hunt
88487806e3 Docs: Clarify how to enable "Forward OAuth Identity" for data sources (#37696)
* Docs: Clarify how to enable "Forward OAuth Identity" for data sources

* Update docs/sources/developers/plugins/add-authentication-for-data-source-plugins.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update add-authentication-for-data-source-plugins.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-08-09 17:22:40 +01:00
achatterjee-grafana
acc77d5cef Fix typo. (#37697) 2021-08-09 17:18:30 +02:00
Will Browne
e0315dabe8 Plugins: Use file extension allowlist when serving plugin assets instead of checking for UNIX executable (#37688)
* explicitly check for plugin binary

* remove check completely

* resolve conflicts

* allow module + logos

* add tests

* simplify

* rework to allowlist

* add case

* remove old stuff

* simplify

* add case insensitive test
2021-08-09 16:07:54 +02:00
Jeremy Price
fe500315f0 Accesscontrol update api examples (#37654)
* Fix status, add global flags

* Check examples are working, correct where they aren't
2021-08-09 15:26:27 +02:00
Ivana Huckova
c5eea16cfe Logs panel: Set default scrolling for ascending order to bottom (#37634)
* LogsPanel: When ascending order, scroll to bottom

* Add tests

* Refactor style

* Update scroll position when logs change
2021-08-09 15:19:46 +02:00
Alex Khomenko
a6a09add7a DateTimePicker: Use TZ independent formatter (#37676) 2021-08-09 12:37:53 +03:00
Dimitris Sotirakis
27c71a1f09 Prometheus: Migrate to use SDK contracts (#37358)
* Use SDK contracts (test needs fixing)

* Fix tests

* Add customQueryParametersMiddleware

* Fix merge conflicts
2021-08-09 11:11:19 +02:00
Tobias Skarhed
2d33ddf37f Dashboard: Accessible text for search links #37593 2021-08-09 09:59:29 +02:00
Olof Bourghardt
e300696792 Epxplore: use GrafanaTheme (SecondaryActions component) (#37543) 2021-08-09 08:47:47 +02:00
Alexander Emelin
ff1837a768 live: add ha with redis to what's new (#37652) 2021-08-06 20:51:46 +03:00
Connor Lindsey
b78a67cec7 PackageJson: Prettify markdown/mdx on commit with lint-staged (#37616)
* Format md,mdx files with prettier on lint-staged

* Manually run prettier on docs/sources
2021-08-06 07:52:36 -06:00
Andrej Ocenas
e9c032f10f CloudWatch Logs: Fix crash when no region is configured (#37639) 2021-08-06 15:47:27 +02:00
gotjosh
f83cd401e5 Alerting: Send alerts to external Alertmanager(s) (#37298)
* Alerting: Send alerts to external Alertmanager(s)

Within this PR we're adding support for registering or unregistering
sending to a set of external alertmanagers. A few of the things that are
going are:

- Introduce a new table to hold "admin" (either org or global)
  configuration we can change at runtime.
- A new periodic check that polls for this configuration and adjusts the
  "senders" accordingly.
- Introduces a new concept of "senders" that are responsible for
  shipping the alerts to the external Alertmanager(s). In a nutshell,
this is the Prometheus notifier (the one in charge of sending the alert)
mapped to a multi-tenant map.

There are a few code movements here and there but those are minor, I
tried to keep things intact as much as possible so that we could have an
easier diff.
2021-08-06 13:06:56 +01:00
Zoltán Bedi
7e42bb5df0 Toolkit: rename deprecated tsConfig to tsconfig (#37630) 2021-08-06 14:04:42 +02:00
Jack Westbrook
e0ca9585fe Build: bump fork-ts-checker-webpack-plugin to 6.3.1 (#37472) 2021-08-06 10:34:49 +02:00
Jack Westbrook
6ff599e25a Plugins: Fix plugin signature status (#37583) 2021-08-06 09:49:29 +02:00
Ivana Huckova
ba76877d28 Datasource: Pass access type to data source instance settings (#37577)
* Pass Access info to datasourceInstance

* Update packages/grafana-data/src/types/datasource.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Type access as direct | proxy

* Fix tests where mocking datasourceInstance, include access

* Pass access to data source instance mocks

* Update comment

* Pass access to data source instance mocks

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2021-08-06 09:24:35 +02:00
Ivana Huckova
8e7c4af366 Prometheus: Add browser access mode deprecation warning (#37578)
* Add browser deprecation info

* Update copy

* Add info to documentation

* Update copy
2021-08-06 09:22:39 +02:00
Leon Sorokin
cf1c2c374f Tooltip: fix time label mismatched with cursor & hover points (#37615) 2021-08-05 22:33:26 -05:00
achatterjee-grafana
ef19e2edce Removed section. (#37601) 2021-08-05 18:51:08 +02:00
Will Browne
74f89cfd3a update latest.json for 8.1.0 stable (#37599) 2021-08-05 18:05:40 +02:00
Grot (@grafanabot)
2418a99f09 ReleaseNotes: Updated changelog and release notes for 8.1.0 (#37589) 2021-08-05 17:22:12 +02:00
Giordano Ricci
2f21bf5cfd Chore: Reduce Elasticsearch data source plugin strict errors (#37399) 2021-08-05 16:03:38 +01:00
Zoltán Bedi
e0010860bd Tempo: add ability to upload trace json (#37407)
* Tempo: upload json

* Add test for upload

* Minor changes

* Add docs

* Update docs/sources/datasources/tempo.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Add graphframes as well to upload

* Add comments to code

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-08-05 15:13:44 +02:00
Will Browne
5a54deb38b Add 8.1.0 release notes link (#37591) 2021-08-05 15:04:05 +02:00
Gábor Farkas
9417e86316 Updated "react-use" package to newest version (#37579)
* package.json: updated react-use to newest version

* fixes (typescript and other)
2021-08-05 14:32:51 +02:00
Olof Bourghardt
8073be2e4e Explore: use GrafanaTheme2 in LogsNavigation component (#37518) 2021-08-05 13:31:39 +02:00
Olof Bourghardt
ba2dfe5ec4 Explore: use GrafanaTheme (LogsNavigationPages component) (#37523)
* Explore: use GrafanaTheme in LogsNavigationPages

* Explore: remove comment
2021-08-05 13:31:21 +02:00
Olof Bourghardt
0bbfe3f7b4 Explore: use GrafanaTheme2 (NoDataSourceCallToAction component) (#37542)
* Explore: use GrafanaTheme2 in NoDataSourceCallToAction component

* Explore: add px to the end of styling
2021-08-05 13:30:31 +02:00
idafurjes
7ff16c47e1 Chore: Refactor tempo using SDK contracts (#37440)
* Refactor tempo using SDK contracts

* Remove commented code

* Removing simplejson use

* Unmarshal JSON
2021-08-05 11:14:17 +02:00
Josh Hunt
f41f45f6bf AzureMonitor: Remove Angular query editor (#37532)
* Remove angular query editor

* call debounced onRunQuery, and set some default query values
2021-08-05 10:12:25 +01:00
Zoltán Bedi
44c7e65fac Zipkin: add ability to upload trace json (#37483)
* Zipkin: upload json

* Change back mock json
2021-08-05 10:55:15 +02:00
idafurjes
0563bc68fc Chore: Refactor loki to use SDK contracts (#37400)
* Refactor loki to use SDK contracts

* Register with service name

* Initialize interval calculator

* Return always created result

* Use go library instead of simplejson

* Update pkg/tsdb/loki/loki.go

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>

* Remove newline

* Merge with main

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2021-08-05 10:25:31 +02:00
Ivana Huckova
1083bef030 Prometheus: Implement stepMode for alerting queries (#36796)
* Add select component for choosing step option

* Add onStepChange

* Add functionality for max step

* Rename minInterval to stepInterval to describe min, max and exact step interval

* Change select option from standard to exact

* Add new type StepType for better type safety

* Add tests for adjustInterval

* Add functionality and tests for exact step option

* Prometheus: Spell out min and max in select component

* Prometheus: Change width of step select component and add placeholder

* Prometheus: Adjust for the factor in exact step

* Prometheus: Update tooltip of step lable to include max and exact options and add padding to select component to give it some breathing room from other components

* Update snapshot for step tooltip

* Prometheus: make tooltip more informative

* Prometheus: add tooltip to interval input element

* Prometheus: extract default step option

* Prometheus: update snapshot for PromQueryEditor

* Prometheus: change step labels to uppercase

* Prometheus: define a default step option

* Prometheus: use default step option in both ui component and logic

* Prometheus: update snapshot for PromQueryEditor

* Prometheus: refactor datasource.ts for better readability

* Prometheus: change tool tip for step

* Prometheus: update snapshots

* Prometheus: add correct styling

* Prometheus: update snapshots

* Prometheus change variable name to something less superfluous

* Prometheus: refactor

* Prometheus: add new test for adjustInterval

* Docs: Update docummentation on the step parameter for prometheus

* Prometheus: make step input field smaller and change placeholder text to 15s

* Prometheus: update snapshots

* Prometheus: Make stepMode uniform in all places in the code

* Adjust step based on stepMode

* Adjust comment

* Check if we have queryInterval

* Refactor, add safe interval

* Fix merge resolutions

* Fix tests and add tests

* Update snapshot

* Update docs/sources/datasources/prometheus.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/prometheus.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/prometheus.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/prometheus.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/prometheus.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/prometheus.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/prometheus.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Implement calculation with intervalMode in calculator.go

* Update tests, add calculate safe interval method

* Replace panic with error

* Update pkg/tsdb/interval/interval_test.go

Co-authored-by: idafurjes <36131195+idafurjes@users.noreply.github.com>

* Update pkg/tsdb/calculator_test.go

Co-authored-by: idafurjes <36131195+idafurjes@users.noreply.github.com>

* Impotrt require

* Remove lint errors

Co-authored-by: Olof Bourghardt <ob655088@gmail.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
Co-authored-by: idafurjes <36131195+idafurjes@users.noreply.github.com>
2021-08-05 09:09:49 +02:00
Leon Sorokin
d49ce5ad47 GraphNG: optimize cursor (#37460) 2021-08-04 16:13:11 -05:00
Leon Sorokin
27b94139ed XYCanvas: useMemo() for className gen (#37513) 2021-08-04 13:47:43 -05:00
Leon Sorokin
1fe3452886 Field: use 0-based field.state.seriesIndex (#37563) 2021-08-04 13:02:27 -05:00
Will Browne
e403d54ba4 Plugins: Update plugin catalog docs (#37557)
* docs(catalog): update documentation for 8.1 changes

* docs(catalog): update the image and video links

* Apply suggestions from code review

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* make catalog refs consistent

* Update docs/sources/plugins/catalog.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-08-04 18:35:15 +02:00
An
968817b151 Geomap: Use set to order labels in reducer (#37509)
* shared location config

* shared locaiton config

* shared locaiton config

* remove file

* add alpha annotations

* chore: set is already ordered

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-08-04 12:07:59 -04:00
achatterjee-grafana
7323ba5ec1 Added new section "Support for AES-GCM encryption algorithm". (#37556) 2021-08-04 12:01:39 -04:00
Jack Westbrook
e21ecf237b Catalog: Update enterprise license messaging in PluginDetails (#37547)
* feat(catalog): change messaging if enterprise license is missing and add link

* test(catalog): fix failing PluginDetails test
2021-08-04 17:55:03 +02:00
ying-jeanne
fcd0dac814 Dependency: update collector to v.31.0 (#37546)
* update collector to v.31.0

* Change protobuf unmarshal function after upgrade

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2021-08-04 17:41:07 +02:00
Sriram
800967a413 Docs: Added missing enterprise plugins (#36786)
* Added missing enterprise plugins

* Update tests
2021-08-04 16:08:43 +01:00
Alex Khomenko
1a46123dbf TimeRangePicker: fix DOM nesting (#37550) 2021-08-04 17:04:31 +02:00
Mitch Seaman
978384b27e small typo fix (#37527) 2021-08-04 10:48:40 -04:00
Ashley Harrison
8aa3845f70 Select: Make portalling the menu opt-in, but opt-in *everywhere* (#37501)
* Select: Don't portal by default

* Select: Portal all the Selects

* Fix indendentation in this comment

* Select: Remove @example docs until formatting is correct

* Docs: Add some documentation for the Select changes

* Update docs/sources/whatsnew/whats-new-in-v8-1.md

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

* Update docs/sources/whatsnew/whats-new-in-v8-1.md

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

* Update packages/grafana-ui/src/components/Select/types.ts

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

* Update public/app/core/components/TransformersUI/configFromQuery/ConfigFromQueryTransformerEditor.tsx

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

* Update public/app/core/components/TransformersUI/configFromQuery/ConfigFromQueryTransformerEditor.tsx

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

* Update public/app/core/components/TransformersUI/configFromQuery/ConfigFromQueryTransformerEditor.tsx

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

* Update public/app/core/components/TransformersUI/prepareTimeSeries/PrepareTimeSeriesEditor.tsx

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

* Docs: Variants instead of varients

* Update public/app/core/components/TransformersUI/configFromQuery/ConfigFromQueryTransformerEditor.tsx

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-08-04 15:47:53 +01:00
Ivana Huckova
a0f94866b4 Update dashboard loki query editor (#37541) 2021-08-04 16:23:16 +02:00
Jack Westbrook
cc7c54be0e Plugins: Update Catalog Card UI (#37350)
* feat(catalog): lazy load and add alt text to plugin logos

* refactor(catalog): use plugin types, make sure data is available for new ui

* test(catalog): fix up tests after types refactor

* feat(catalog): introduce Tile and PluginBadge components for ui updates

* refactor(catalog): update PluginList to use new components, lazy load images, add creditcard icon

* test(catalog): update Browse.test types

* fix(catalog): if local and remote make sure to get the correct local plugin from array

* refactor(catalog): prefer grafana/ui components over custom Tile component

* chore(catalog): delete redundant components

* feat(catalog): introduce ascending descending name sort for Browse

* refactor(catalog): prefer theme spacing over hardcoded values

* refactor(catalog): update Local and Remote plugin types to match api responses

* fix(catalog): prefer local.hasUpdate and local.signature so updateable plugin signature is valid

* test(catalog): update test plugin mocks

* test(catalog): add tests for sorting and categorise

* test(catalog): add tests for plugin cards, remove grid component

* test(catalog): add tests for PluginBadges component

* refactor(catalog): change enterprise learn more link to open plugin page on website
2021-08-04 15:09:57 +02:00
Jeremy Price
e8e1a0b50b Revert "Revert "AccessControl: Implement a way to register fixed roles (#35641)" (#37397)" (#37535)
This reverts commit 55efeb0c02.
2021-08-04 14:44:37 +02:00
Ivana Huckova
7fd94e69c3 Loki: Update labels in log browser when time range changes (#37520)
* Refresh label when time range changes

* Refactor solution

* Add tests

* Update tests comments

* Update test

* Update public/app/plugins/datasource/loki/components/LokiQueryField.tsx

* Update public/app/plugins/datasource/loki/components/LokiQueryField.tsx
2021-08-04 14:37:19 +02:00
Jack Westbrook
224b062cac Catalog: Fix InstallControls for externally managed users (#37531) 2021-08-04 13:52:01 +02:00
Maria Alexandra
d48febee75 Fix: Wrong annotations show on a given dashboard. Correct annotations show on page refresh. #37160 (#37496) 2021-08-04 11:57:27 +02:00
Jack Westbrook
cdcccfcc53 Plugins: Fix catalog permissions for org and server admins (#37504)
* simplify toggle + add link to server admin

* feat(catalog): org admins can configure plugin apps, cannot install/uninstall plugins

* fix(catalog): dont show buttons if user doesn't have install permissions

* feat(catalog): cater for accessing catalog via /plugins and /admin/plugins

* feat(catalog): use location for list links and match.url to define breadcrumb links

* test(catalog): mock isGrafanaAdmin for PluginDetails tests

* test(catalog): preserve default bootdata in PluginDetails mock

* refactor(catalog): move orgAdmin check out of state and make easier to reason with

Co-authored-by: Will Browne <will.browne@grafana.com>
2021-08-04 11:49:05 +02:00
Ashley Harrison
81cf09af9e DashboardPrompt: Implement beforeunload handler (#37490) 2021-08-04 10:08:13 +01:00
Gábor Farkas
4da398014f influxdb: more robust query-has-variables check (#37493)
* influxdb: moved queryUtils file to better place

* influxdb: more robust query-has-variables check
2021-08-04 10:45:37 +02:00
Tobias Skarhed
aba7013ce5 TimeRangePicker: Accessiblity improvements (#36912)
* Add low hanging aria markup

* Add a list of radio buttons

* Add ref to put focus

* Add landmark markup

* Add labels to icon buttons

* Add radio button groupings

* Add keyboard focus styles

* Improve markup

* Update test selector

* Remove testid in favor of text

* Fiddle around with test labels

* Get correct testid selector

* Add aria-expanded to button

* Change order of quick select for keyboard nav

* Create headings for easier heading navigation

* Add another h3

* Add testid

* Use selectors in e2e test

* Add dataid selector for narrow absolute button

* Update e2e test with proper selectors

* Add more verbose aria-label

* Change editor to picker
2021-08-04 09:53:52 +02:00
Selene
0fc7dffee8 Remove _url from loading logo (#37480) 2021-08-04 09:36:42 +02:00
Olof Bourghardt
0b376522ac Explore: use GrafanaTheme2 (AdHocFilter component) (#37434)
* Explore: use GrafanaTheme2 and useStyles2 instead of the old ones

* Explore: delete files and components that were'nt being used
2021-08-04 09:24:25 +02:00
Oscar Kilhed
e3fe4a2d11 GraphNG: make sure we update when children changes (#37333) 2021-08-04 09:07:00 +02:00
Olof Bourghardt
2e476167eb Explore: use GrafanaTheme2 (ExploreGraphNGPanel component) (#37450)
* Explore: use GrafanaTheme2

* Explore: add correct style values

* Update public/app/features/explore/ExploreGraphNGPanel.tsx

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>

* Explore: change margin-right to xs

* Explore: change margin-right to new theme xs

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
2021-08-04 08:47:37 +02:00
Leon Sorokin
0b7253406b Portal: optimizations (#37459)
Co-authored-by: An Le <an.le@grafana.com>
2021-08-03 16:27:27 -05:00
Maria Alexandra
d48e65bf74 Annotations: Fix Datasource as template variable not available for annotations (#37506) 2021-08-03 19:54:49 +02:00
Tania B
bfc8a5cf49 Docs: Update docs for enterprise reporting (#37314)
* Docs: Update docs for enterprise reporting

* Apply feedback

* Remove old scheduler section and add screenshots

* Update images links

* Update reporting scheduler intro

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

* Update Send now

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

* Update Send later

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

* Apply more feedback

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

* Apply review feedback

* Apply review feedback

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

* Apply review feedback

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

* Apply more feedback

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-08-03 18:09:26 +03:00
Stephanie Hingtgen
a05ae6768c Docs: Documents caching encryption in enterprise config (#36766)
* Enterprise: adding documentation of two new configuration flags

* Update docs/sources/enterprise/enterprise-configuration.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update enterprise-configuration.md

* Fix grammar

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-08-03 10:20:05 -04:00
Leon Sorokin
0d2cd90150 GraphNG: fix y axis autosizing (#37464) 2021-08-03 08:18:05 -05:00
Park Beomsu
75c8bd26fc Docs: fix wrong formula (#37432) 2021-08-03 08:56:38 -04:00
Gábor Farkas
bc0ab3cc7a influxdb: better query-has-variable check (#37453) 2021-08-03 14:32:48 +02:00
Torkel Ödegaard
0965132bff Azure: Fixes annotations query editor not working properly (#37476) 2021-08-03 12:43:25 +02:00
MicahChiu
c2247f51e6 Style: Fix for Flex compatibility in lower versions of browsers (#36913) 2021-08-03 11:32:53 +01:00
Ashley Harrison
9934c883cc Select: Expose menuPortalTarget on SelectBase (#37456)
* Select: Expose Select props for greater flexibility

* Select: only expose menuPortalTarget

* Select: Add deprecation notice for menuPortalTarget prop

* Select: Add deprecation warning to component
2021-08-03 11:55:09 +02:00
Josh Hunt
e530d66275 AzureMonitor: Refactor query state and fetching data for Metrics (#37067)
* Split query modifications into seperate file

* seperate setQueryValue for Logs

* wip for centralising api requests

* more wip

* moved data hooks out into seperate module, added post-request cleanup

* metric metadata

* ,

* more cleanup

* update tests, fix hasOption to work with grouped variables

* update ARG subscriptiopns field

* last select stuff

* remove todo comment

* pr feedback

* more pr feedback :) :)

* updated comment
2021-08-03 10:04:04 +01:00
Maria Alexandra
f10c5020f1 Annotation: Fix "Enabled" button disappear after Grafana v8.0.6 upgrade (#37454) 2021-08-03 09:42:13 +02:00
Will Browne
312e78ff0b fix typo (#37457) 2021-08-03 09:41:31 +02:00
nikki-kiga
9fa8f5cc95 TooltipPlugin: add crosshair exception (#37285)
* TooltipPlugin: add crosshair exception

* TooltipPlugin: set active plot and add class

* Plot: hide cursor pts when not active in crosshair mode

* TooltipPlugin: clean up adding class

* TooltipPlugin: rename crosshair class

* rename class, move up to chart root element

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2021-08-02 11:25:51 -07:00
Connor Lindsey
6906a74179 Jaeger: Sync getTraceName improvements from upstream (#37408)
* Improve trace name resolution

* Use getTraceName in transformTraceData

* Improve getTraceName performance

* Change trace-viewer extension back to ts
2021-08-02 08:23:43 -06:00
Connor Lindsey
0699a04dcd Refactor UNSAFE_component... from SpanGraph and VirtualizedTraceView (#37418) 2021-08-02 08:03:08 -06:00
Olof Bourghardt
bc6e7d32e2 Explore: use GrafanaTheme2 (#37305)
* Explore: refactor to use GrafanaTheme2

* Explore: change style values

* Explore: change styles

* Explore: change last style values to the correct ones

* Explore: remove stylesFactory

* Update public/app/features/explore/Logs.tsx

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>

* Update public/app/features/explore/Logs.tsx

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>

* Update public/app/features/explore/Logs.tsx

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2021-08-02 15:47:41 +02:00
Julien Duchesne
e5f52a05f2 Put back signature in drone.yml (#37447)
Repository protection will be enabled for grafana/grafana today
2021-08-02 15:35:49 +02:00
Connor Lindsey
e4f0d269f4 Connor/jaeger misc sync (#37420)
* Avoid resize on mouse hover (KeyValueTable)

* Add null check for span.logs in filter-spans

* Display references unless it's a single CHILD_OF

* Identify uninstrumented services

* Improve span duration formatting
2021-08-02 06:28:20 -06:00
Ashley Harrison
e7d4b175b7 Update ci-check-strict.sh (#37449) 2021-08-02 13:38:36 +02:00
Tobias Skarhed
b0dcbd568a PasswordField: Don't show password on enter #37444 2021-08-02 12:58:00 +02:00
Domas
73d36d5521 put alerting admin page under ngalert flag (#37437) 2021-08-02 10:12:01 +02:00
Alexander Emelin
31903778ae Live: display stream rate, fix duplicate channels in list response (#37365) 2021-07-30 21:05:39 +03:00
achatterjee-grafana
012b9c41a5 Doc issue 37280 (#37416)
* Additional fix: Resized two images in 8.1 what's new to make them smaller

* Fixed some broken links and deleted another empty Grafana 8 alert topic.

* Replaced reference to troubleshooting with state and health check.
2021-07-30 12:21:51 -04:00
Torkel Ödegaard
185894b756 Docs: Fix image in what's new article (#37411) 2021-07-30 17:50:49 +02:00
Agnès Toulet
0757ba1c64 Renderer: delete debug.log file when Grafana is stopped (#37367) 2021-07-30 17:29:02 +02:00
idafurjes
9d496d6f48 SDK: update plugin-sdk to v0.111.0 (#37405) 2021-07-30 16:54:52 +02:00
achatterjee-grafana
e8e45f30c0 Doc update 8.1 what's new, draft 3 (#37406)
* Updated image paths, also updated prettified JSON section.

* Rearranged content.

* Added 2 new image links for prettified JSON section.
2021-07-30 10:44:09 -04:00
Joan López de la Franca Beltran
8433def04f Encryption: Convert functions into global variables (#37240) 2021-07-30 15:48:27 +02:00
achatterjee-grafana
132e9c74c0 Topics deleted are "troubleshooting" and "view-alerts". (#37395) 2021-07-30 08:07:23 -04:00
Emil Tullstedt
55efeb0c02 Revert "AccessControl: Implement a way to register fixed roles (#35641)" (#37397)
This reverts commit 88c11f1cc0.
2021-07-30 13:58:49 +02:00
Jack Westbrook
9494c2cd4f Plugins: Add filter for plugin type and update search, filter and sort ui (#37301)
* feat(catalog): introduce additive filters for plugin type, installed status and search

* feat(catalog): prefer FilterInput over custom styled search field

* feat(catalog): update Browse page to use new search, filter features

* refactor(catalog): keep filters with usePluginsByFilter hook

* test(catalog): update tests to reflect new filtering and searching

* refactor(catalog): rearrange filterByType radio buttons

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>

* feat(catalog): ntroduce css for responsive filter layout

* refactor(catalog): introduce pluginfilter type and give filter methods better names

* fix(catalog): default q param to empty string so FiterInput doesn't show clear button on load

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-07-30 13:23:33 +02:00
Vardan Torosyan
53072bcad1 Update Settings Update documentation with the information about fine-grained access control (#37300) 2021-07-30 13:04:13 +02:00
Gabriel MABILLE
88c11f1cc0 AccessControl: Implement a way to register fixed roles (#35641)
* AccessControl: Implement a way to register fixed roles

* Add context to register func

* Use FixedRoleGrantsMap instead of FixedRoleGrants

* Removed FixedRoles map to sync.map


* Wrote test for accesscontrol and provisioning

* Use mutexes+map instead of sync maps

* Create a sync map struct out of a Map and a Mutex

* Create a sync map struct for grants as well

* Validate builtin roles

* Make validation public to access control

* Handle errors consistently with what seeder does

* Keep errors consistant amongst accesscontrol impl

* Handle registration error

* Reverse the registration direction thanks to a RoleRegistrant interface

* Removed sync map in favor for simple maps since registration now happens during init

* Work on the Registrant interface

* Remove the Register Role from the interface to have services returning their registrations instead

* Adding context to RegisterRegistrantsRoles and update descriptions

* little bit of cosmetics

* Making sure provisioning is ran after role registration

* test for role registration

* Change the accesscontrol interface to use a variadic

* check if accesscontrol is enabled

* Add a new test for RegisterFixedRoles and fix assign which was buggy

* Moved RegistrationList def to roles.go

* Change provisioning role's description

* Better comment on RegisterFixedRoles

* Correct comment on ValidateFixedRole

* Simplify helper func to removeRoleHelper

* Add log to saveFixedRole and assignFixedRole

Co-authored-by: Vardan Torosyan <vardants@gmail.com>
Co-authored-by: Jeremy Price <Jeremy.price@grafana.com>
2021-07-30 09:52:09 +02:00
Petros Kolyvas
faf1653230 Fixed image urls for Geopmap and Annotation list, added prettify JSON… (#37382)
* Fixed image urls for Geopmap and Annotation list, added prettify JSON logs

* Update docs/sources/whatsnew/whats-new-in-v8-1.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-07-30 02:24:47 +02:00
Ryan McKinley
d269d901fc Geomap: fix scale calculations (#37375) 2021-07-29 23:27:52 +02:00
Petros Kolyvas
bee185b637 Doc: second draft of 8.1 what's new (#37370)
* Updated first half of what's new

* Update docs/sources/whatsnew/whats-new-in-v8-1.md

Fixes for the intro

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Moved geomap and annitations panel sections.

* Had to update the intro again, all set now.

* Added more content.

* Updated enterprise section

* Few more changes.

* Fixed annotations image caption.

* minor updates to intro verbiage,

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
Co-authored-by: achatterjee-grafana <aparajita.chatterjee@grafana.com>
2021-07-29 17:22:30 -04:00
An
c564736c68 Transformers: allow label fields in the reduce processor (#37373)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-07-29 13:56:07 -07:00
Connor Lindsey
c4c28a5b63 Explore: Support custom display label for derived fields buttons for Loki datasource (#37273) 2021-07-29 12:42:20 -06:00
Kyle Brandt
aa904a5a04 NGAlert: Send resolve signal to alertmanager on alerting -> Normal (#37363) 2021-07-29 20:29:17 +02:00
Velociraptor85
c8216244a2 Update overview.md (#37260)
* Update overview.md

* Update grafana.md

* Update grafana.md
2021-07-29 13:03:02 -04:00
Zoltán Bedi
e3dde3510e Jaeger: upload json file (#37205)
* Dropzone component

* Add file list

* Add progress, error and cancelation to filelistitem

* Update Dropzone component to support progress

Cancelation
Retry

* Update file name changes

* Rename to FileDropzone

* FileListItem tests

A11y updates for icon buttons
Use value formatter from grafana/data

* Add tests for FileDropzone

Review comments

* export FileDropzoneDefaultChildren

* Jaeger: Upload trace json

* Change primary text when multiple false

* styling

* Review comments addressed

* Add test for upload trace json

* Add docs for Jaeger upload

* Fix strict type check error

* Update docs/sources/datasources/jaeger.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Minor changes

Render all the options from one function.
Add graph frames to the result.

* Address review comments

* Update docs/sources/datasources/jaeger.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* docs: move image

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-07-29 18:07:07 +02:00
idafurjes
d9d795ef2c Update latest json (#37361) 2021-07-29 17:34:27 +02:00
Grot (@grafanabot)
cba765c5f2 ReleaseNotes: Updated changelog and release notes for 8.1.0-beta3 (#37342) 2021-07-29 16:31:10 +02:00
Ganesh Vernekar
10f8a138ae Alerting: Deduplicate receivers during migration (#36812)
* Alerting: Deduplicate receivers during migration

Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>

* Fix review comments

Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>

* Better naming of contact points

Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>

* Handle some edge cases

Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>

* Don't add routes which point to default contact point

Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-07-29 15:56:19 +02:00
idafurjes
2bf2f30e97 Add release note link for 8.1.0-beta3 (#37343) 2021-07-29 12:56:19 +02:00
Will Browne
08a73a5291 Plugins: Perform plugin update check prior to uninstall (#36909)
* only uninstall if update is possible

* add .

* update lingo for clarity
2021-07-29 11:52:23 +02:00
Leonard Gram
8ebba0a93d Auth: refactor to not use the global bus (#37345) 2021-07-29 11:47:32 +02:00
Vardan Torosyan
2c810506a5 Add fine-grained access control information to the features which now support it (#37303)
* Add fine-grained access control information to the features which now support it

* Mention the new permissions in Explore docs
2021-07-29 10:38:46 +02:00
Leonard Gram
d51b2630c7 Auth: creates a hook in the user mapping flow (#37190)
* wip

* Auth Info: refactored out into it's own service

* Auth: adds extension point where users are being mapped

* Update pkg/services/login/authinfoservice/service.go

Co-authored-by: Joan López de la Franca Beltran <joanjan14@gmail.com>

* Update pkg/services/login/authinfoservice/service.go

Co-authored-by: Joan López de la Franca Beltran <joanjan14@gmail.com>

* Auth: simplified code

* moved most authinfo stuff to its own package

* added back code

* linter

* simplified

Co-authored-by: Joan López de la Franca Beltran <joanjan14@gmail.com>
2021-07-29 10:18:42 +02:00
Ivana Huckova
4f340550ee Change master to latest for docker block (#37310) 2021-07-29 10:10:45 +02:00
Ilya Stoliar
b62fe58cac CloudWatch: Add AWS LookoutMetrics (#37329) 2021-07-29 09:31:04 +02:00
idafurjes
180b1973e0 SQL: Fix SQL dataframe resampling (fill mode + time intervals) (#36937)
* Refactor resample logic

* Adjust test to have one more timestamp out of range

* adjust test + ensure filling

* revert flag flip

* Undo logic - should be timeseries only

* change data calculation based on previous interval

* fix the logics

* fix typo

* fix resample start time, to reuse what sql api returned

* calculate the start point with from truncate by interval

Co-authored-by: Will Browne <will.browne@grafana.com>
Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
Co-authored-by: Ying WANG <ying.wang@grafana.com>
2021-07-29 08:38:41 +02:00
Leon Sorokin
78f46e28c7 Stat: fix shared y scale range, reduce plot re-inits (#37324) 2021-07-28 22:42:18 -07:00
Ryan McKinley
ced26bc624 Geomap: implement basic tooltip support (#37318)
Co-authored-by: Bryan Uribe <buribe@hmc.edu>
2021-07-29 03:34:42 +02:00
Leon Sorokin
8b80d2256d GraphNG: stack by % (#37127) 2021-07-28 20:31:07 -05:00
Petros Kolyvas
4fa17c8040 Docs: Initial docs for the annotation panel launching in 8.1 (#37230)
* closed issues

* First draft of annotation panel

* Update docs/sources/panels/visualizations/annotations.md

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>

* Update docs/sources/panels/visualizations/annotations.md

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>

* Removal of extraneous file

* Update docs/sources/panels/visualizations/annotations.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/annotations.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/annotations.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/annotations.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/annotations.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/annotations.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/annotations.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/annotations.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/visualizations/annotations.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Added additional help text related to the Display section

* Removed additional files

* Apply suggestions from code review

Included Jita's suggestions in final commit.

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-07-29 02:06:42 +02:00
Zoltán Bedi
9a62db6943 Exemplars: Disable exemplars only on query it failed (#37296) 2021-07-28 16:34:46 +02:00
Jack Westbrook
99891e1a88 Catalog: Add breadcrumb to plugin details page (#37095)
* feat(catalog): introduce a breadcrumb to plugindetails page

* refactor(catalog): use aria-labels and nav element for a11y breadcrumbs
2021-07-28 15:32:14 +02:00
Olof Bourghardt
ddf5b65c51 Prometheus: add functionality to specify desired step interval in dashboards panels (#36422)
* Add select component for choosing step option

* Add onStepChange

* Add functionality for max step

* Rename minInterval to stepInterval to describe min, max and exact step interval

* Change select option from standard to exact

* Add new type StepType for better type safety

* Add tests for adjustInterval

* Add functionality and tests for exact step option

* Prometheus: Spell out min and max in select component

* Prometheus: Change width of step select component and add placeholder

* Prometheus: Adjust for the factor in exact step

* Prometheus: Update tooltip of step lable to include max and exact options and add padding to select component to give it some breathing room from other components

* Update snapshot for step tooltip

* Prometheus: make tooltip more informative

* Prometheus: add tooltip to interval input element

* Prometheus: extract default step option

* Prometheus: update snapshot for PromQueryEditor

* Prometheus: change step labels to uppercase

* Prometheus: define a default step option

* Prometheus: use default step option in both ui component and logic

* Prometheus: update snapshot for PromQueryEditor

* Prometheus: refactor datasource.ts for better readability

* Prometheus: change tool tip for step

* Prometheus: update snapshots

* Prometheus: add correct styling

* Prometheus: update snapshots

* Prometheus change variable name to something less superfluous

* Prometheus: refactor

* Prometheus: add new test for adjustInterval

* Docs: Update docummentation on the step parameter for prometheus

* Prometheus: make step input field smaller and change placeholder text to 15s

* Prometheus: update snapshots

* Prometheus: Make stepMode uniform in all places in the code

* Prometheus: update documentation and tooltip for step

* Prometheus: update snapshots
2021-07-28 08:26:09 +02:00
Domas
69dff96c1b Alerting: ability to edit alertmanager config as json via UI (#37268) 2021-07-28 09:21:42 +03:00
Ryan McKinley
5f41c2f334 Geomap: fix esri server config (#37283) 2021-07-27 22:26:42 -07:00
Eunice Kim
ee51df3715 Geomap: Document the Geomap plugin (#37221)
* Add base layer documentation

* Add initial overlay documentation

* Fix title of overlays

* Fix typos

* Add details on each overlay options

* Add location doc

* Address comments

* Address comments

* Address Base layer comments

* Address data layer comments

* Update image names

* Change titles to sentence case

* Follow UI for capitalizations
2021-07-27 22:47:38 +02:00
Karl Persson
4127db3d3a Remove Licensing as dependency of UsageStats (#37259)
* Remove Licensing as dependency

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
2021-07-27 17:19:03 +02:00
Dimitris Sotirakis
c189851339 Chore: Update grabpl version (#37253)
* Update grabpl version to 2.3.1

* Update grabpl version to 2.3.2
2021-07-27 13:18:06 +02:00
Piotr Jamróz
8d7e22e1bb Graphite: Migrate to React (part 2B: migrate FunctionEditor) (#37070)
* Add UMLs

* Add rendered diagrams

* Move QueryCtrl to flux

* Remove redundant param in the reducer

* Use named imports for lodash and fix typing for GraphiteTagOperator

* Add missing async/await

* Extract providers to a separate file

* Clean up async await

* Rename controller functions back to main

* Simplify creating actions

* Re-order controller functions

* Separate helpers from actions

* Rename vars

* Simplify helpers

* Move controller methods to state reducers

* Remove docs (they are added in design doc)

* Move actions.ts to state folder

* Add docs

* Add old methods stubs for easier review

* Check how state dependencies will be mapped

* Rename state to store

* Rename state to store

* Rewrite spec tests for Graphite Query Controller

* Update docs

* Update docs

* Add GraphiteTextEditor

* Add play button

* Add AddGraphiteFunction

* Use Segment to simplify AddGraphiteFunction

* Memoize function defs

* Fix useCallback deps

* Update public/app/plugins/datasource/graphite/state/helpers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/helpers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/helpers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Update public/app/plugins/datasource/graphite/state/providers.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Add more type definitions

* Remove submitOnClickAwayOption

This behavior is actually needed to remove parameters in functions

* Load function definitions before parsing the target on initial load

* Add button padding

* Fix loading function definitions

* Change targetChanged to updateQuery to avoid mutating state directly

It's also needed for extra refresh/runQuery execution as handleTargetChanged doesn't handle changing the raw query

* Fix updating query after adding a function

* Simplify updating function params

* Migrate function editor to react

* Simplify setting Segment Select min width

* Remove unnecessary changes to SegmentInput

* Extract view logic to a helper and update types definitions

* Clean up types

* Update FuncDef types and add tests

* Show red border for unknown functions

* Autofocus on new params

* Extract params mapping to a helper

* Split code between params and function editor

* Focus on the first param when a function is added even if it's an optional argument

* Add function editor tests

* Remove todo marker

* Fix adding new functions

* Allow empty value in selects for removing function params

* Add placeholders and fix styling

* Add more docs

* Rename .tsx -> .ts

* Update types

* Use ?? instead of || + add test for mapping options

* Use const (let is not needed here)

* Revert test name change

* Allow removing only optional params and mark additional params as optional (only the first one is required)

* Use theme.typography.bodySmall.fontSize

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2021-07-27 13:10:39 +02:00
gotjosh
442a6677fc Alerting: Refactor Run of the scheduler (#37157)
* Alerting: Refactor `Run` of the scheduler

A bit of a refactor to make the diff easier to read for supporting
external Alertmanagers.

We'll introduce another routine that checks the database for
configuration and spawns other routines accordingly.

* Block the wait.

* Fix test
2021-07-27 11:52:59 +01:00
Dimitris Sotirakis
0c804df763 Update grabpl version to 2.3.1 (#37208) 2021-07-27 12:52:01 +03:00
Will Browne
56702376b6 delay go mod verify until all is copied (#37246) 2021-07-27 11:50:25 +02:00
Piotr Jamróz
e8eb73f271 Graphite: Update text editor state on initial load (#37202)
* Update current query when props change

* Remove managed state in GraphiteTextEditor

* Fix tests
2021-07-27 11:41:11 +02:00
Alexander Emelin
75bd0bbacd live: experimental HA with Redis (#36787)
Grafana 8.1.0 will include experimental high availability setup support by
using Redis PUB/SUB and data structures for inter-node state sharing.
This commit documents this but also explicitly marks feature as experimental
since integration of Live with Redis may slightly evolve with time as soon as
we get more understanding about Grafana Live usage scenarios.
2021-07-27 10:40:00 +03:00
Ganesh Vernekar
e8ac802e4f Alerting: Remove unused fields in Pagerduty struct (#37198)
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-07-27 10:41:48 +05:30
nikki-kiga
01e984c394 ColorPicker: display colors as rgba in input (#37231)
* SpectrumPalette: change input to display rgba string

* fieldOverrides: remove extra hex string check
2021-07-26 15:54:13 -07:00
An
154c380c8c Geomap: configure legend on map (#37077)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-07-27 00:50:15 +02:00
Nathan Rodman
5f0bc252bc Alerting: support label matcher syntax in alert rule list filter (#36408)
* Add filter parsing to rule list filters

* Add unit tests for label parsing

* Make label operators an enum

* add example for parsing function

* Update labels operator regex

* Add tests to rule list for filtering

* add additional test for testing alert instances filtering

* Use tooltip for query syntax example

* refactor to use Matchers for filtering

* Update docs for label filtering on rules list

* style fixes
2021-07-26 12:05:49 -07:00
Ryan McKinley
ffa0ef9b3d Annotations: fire an event when changing annotations (#37175) 2021-07-26 20:57:52 +02:00
nikki-kiga
3e35021f7e ColorPicker: return values as hex strings and update theme (#37173)
* Color: fix alpha calculation < 16/255 and State-timeline threshold alpha

* SpectrumPalette: Update to getColorByName

* ColorValueEditor: Update to theme2

* SpectrumPalette: Update to theme2

* ColorPickerPopover: Format hex color

* SpectrumPalette: Format hex color

* SpectrumPalette: Refactor hex color alpha helper

* SpectrumPalette: Fix import and update helper

* ColorPickerPopover: Fix test to not make lowercase

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-07-26 11:11:53 -07:00
Ryan McKinley
be4b753aa0 Panels: allow interaction in corners when no title exists (#37169) 2021-07-26 19:19:07 +02:00
Alex Khomenko
8c8d2fe08b Use dateTime vs new Date() (#37210) 2021-07-26 18:18:15 +02:00
David Parrott
b5f464412d Alerting: automatically remove stale alerting states (#36767)
* initial attempt at automatic removal of stale states

* test case, need espected states

* finish unit test

* PR feedback

* still multiply by time.second

* pr feedback
2021-07-26 18:12:04 +02:00
jmrieger
81b98745c0 Docs: Add missing backtick in time range table (#37209) 2021-07-26 11:12:49 -04:00
Olof Bourghardt
5d101fece1 Docs: add documentation with regards to the new prettify function (#36856)
* Docs: add information about prettify function

* Docs: add info in logs-panel

* Docs: update prettify function in logs-integration

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Docs: update prettify function in logs-panel

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-07-26 16:20:29 +02:00
Connor Lindsey
b644ea9e6e Loki: Add fuzzy search to label browser (#36864) 2021-07-26 08:04:03 -06:00
Ganesh Vernekar
a65975cca0 Alerting: Remove the fixed wait for notification delivery (#37203)
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-07-26 15:15:09 +02:00
Ilya Stoliar
59c691a777 CloudWatch: Add AWS IVS metrics and dimensions (#37178) 2021-07-26 14:53:18 +02:00
Zoltán Bedi
04a196da4b UI: Dropzone component (#36646)
* Dropzone component

* Add file list

* Add progress, error and cancelation to filelistitem

* Update Dropzone component to support progress

Cancelation
Retry

* Update file name changes

* Rename to FileDropzone

* FileListItem tests

A11y updates for icon buttons
Use value formatter from grafana/data

* Add tests for FileDropzone

Review comments

* export FileDropzoneDefaultChildren

* Change primary text when multiple false

* Review comments addressed

* Extract remove file to constant

* No need to await after await
2021-07-26 13:21:35 +02:00
Gábor Farkas
b254e4eb31 influxdb: influxql: fix dataframe column-names (#37195) 2021-07-26 12:08:02 +02:00
Serge Zaitsev
e42a597e87 Remove unused Macaron code and interfaces (#37194) 2021-07-26 11:47:13 +02:00
Luca Fenu
e3622ac1da Influx: fix typo (#37181) 2021-07-26 08:44:09 +02:00
Serge Zaitsev
827a5b7021 add FromContext API for macaron and reqcontext, add API for standard middleware in macaron (#37057) 2021-07-26 06:11:43 +02:00
Leon Sorokin
f78452be30 Color: fix alpha calculation < 16/255 and State-timeline threshold alpha (#35911) 2021-07-23 20:50:47 -05:00
Dmitry
81dce0716b Change PostgeSQL version selector (#37166) 2021-07-23 16:29:46 -07:00
Ryan McKinley
feb9e528aa Geomap: zoom full extent (#37174) 2021-07-23 16:23:35 -07:00
Leon Sorokin
4c3e197e26 TimeSeries: make cursor hover the nearest non-null/undefined datapoint (#34552) 2021-07-23 16:05:09 -05:00
Alexander Emelin
32b74e75a3 live: various code cleanups (#37165) 2021-07-23 19:47:08 +03:00
achatterjee-grafana
72cac20e1d Removed note about frequent changes. (#37119) 2021-07-23 11:27:21 -04:00
Ashley Harrison
26abec2287 Chore: Update slate types to fix more strict TypeScript errors (#37159) 2021-07-23 15:33:53 +01:00
idafurjes
2601a4dd6e Update latest.json (#37156) 2021-07-23 15:04:15 +02:00
Grot (@grafanabot)
c39a4e9c4e ReleaseNotes: Updated changelog and release notes for 8.1.0-beta2 (#37150)
* ReleaseNotes: Updated changelog and release notes for 8.1.0-beta2

* Update CHANGELOG.md

* Update release-notes-8-1-0-beta2.md

* Update CHANGELOG.md

* Update release-notes-8-1-0-beta2.md

* Update release-notes-8-1-0-beta2.md

* Update CHANGELOG.md

Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
2021-07-23 13:34:13 +02:00
Grot (@grafanabot)
3b875def76 ReleaseNotes: Updated changelog and release notes for 8.1.0-beta2 (#37144)
* ReleaseNotes: Updated changelog and release notes for 8.1.0-beta2

* Update docs/sources/release-notes/release-notes-8-1-0-beta2.md

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-07-23 12:48:28 +02:00
Will Browne
0069d13929 Docs: Add 8.1.0 beta1 and beta2 release note links (#37140) 2021-07-23 13:00:23 +03:00
Ashley Harrison
75ff031789 Chore: Fix TypeScript strict errors with components using connect (#37109)
* Chore: Fix TypeScript strict errors with components using connect

* Chore: More TypeScript fixes

* Chore: Update strict check values

* Still need to export these types...

* Declare connector at the top of the file

* Careful with find and replace...
2021-07-23 11:33:26 +02:00
Bryan Uribe
2b51e94537 Gazetteer: Update Countries Json (#37129) 2021-07-23 00:42:34 +02:00
nikki-kiga
a1bbe797df StatPanel: Disable selection on Sparkline (#37125) 2021-07-22 15:12:31 -07:00
nikki-kiga
1de14ea257 check for bar value visibility never (#37122) 2021-07-22 14:09:43 -07:00
Sergey Kostrukov
c1963024ec Infra: Azure authentication in HttpClientProvider (#36932)
* Azure middleware in HttpClientProxy

* Azure authentication under feature flag

* Minor fixes

* Add prefixes to not clash with JsonData

* Return error if JsonData cannot be parsed

* Return original string if URL invalid

* Tests for datasource_cache
2021-07-22 21:43:10 +01:00
Sergey Kostrukov
4664cba935 Prometheus: Azure authentication in configuration UI (#35860)
* Azure authentication settings

* Persisting credentials

* Azure settings

* Prometheus-specific settings component

* Azure Prometheus Resource ID configuration

* DataSourceHttpSettings with extensibility for Azure

* Feature toggle for Azure auth

* Fix snapshot

* Update format of persisted credentials

* AzureSettings renamed to AzureAuthSettings
2021-07-22 19:53:49 +01:00
achatterjee-grafana
013218e075 Doc: first draft of 8.1 what's new (#37021)
* Create whats-new-in-v8-1.md

* Updated index page.

* Fixed two relrefs.

* Added section for annotation panel
2021-07-22 14:27:32 -04:00
Dan Cech
5a56594f0c add instructions for managing redirects when moving docs pages around (#37113) 2021-07-22 13:46:40 -04:00
Grot (@grafanabot)
ddde5a5f2d ReleaseNotes: Updated changelog and release notes for 8.1.0-beta1 (#37111) 2021-07-22 18:10:11 +02:00
Tobias Skarhed
437424d5d6 Storybook: Add a11y addon (#36790)
* Storybook: Add a11y addon

* Update lockfile

* Bump Storybook addon versions

* Put Icon at top

* addon-knobs 6.3.0
2021-07-22 17:28:38 +02:00
Alexander Emelin
6b2d33dc14 fix sample.ini (#37106) 2021-07-22 16:50:27 +02:00
George Robinson
2f4c893cf3 Expand the value string in annotations and labels of alerts (#37051)
This commit makes it possible to use the value string in
annotations and labels for alerts with "{{ $value }}"
2021-07-22 15:20:44 +01:00
yuwaMSFT2
ad1f792b8b Auth: Pass user role to Grafana using auth proxy (#36729)
* Pass role to Grafana using auth proxy

By default, the role will be applied to the default org of the user.
If the request uses the standard header "X-Grafana-Org-Id", the role will be applied to the specified org

Tested in both unit test and manually E2E

* Address comment: only allow the user role to be applied to the default org

Co-authored-by: Leonard Gram <leo@xlson.com>
2021-07-22 15:49:58 +02:00
Andrej Ocenas
93b4cc7035 Explore: Fix encoding of internal URLs (#36919)
* Encode internal explore url

* Fix tests

* Fix comma
2021-07-22 14:42:20 +02:00
Tobias Skarhed
8af83b8b78 IconButton: Put tooltip text as aria-label (#36760)
* Make tooltip prop aria-label

* Add ariaLabel prop
2021-07-22 13:56:25 +02:00
Sofia Papagiannaki
b96dd1877c Folder API: optionally force deleting Grafana 8 alerts when deleting a folder (or error) (#36427)
* Folder API: Add an optional query parameter for allowing deleting a  folder containing rules

* Update frontend

- Set forceDeleteRules=true when frontend deletes a folder
- Improve modal text

* Update docs

* Apply suggestions from code review

Co-authored-by: gotjosh <josue@grafana.com>
Co-authored-by: Nathan Rodman <nathanrodman@gmail.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-07-22 12:27:13 +03:00
4234 changed files with 273533 additions and 107979 deletions

12
.bingo/.gitignore vendored Normal file
View File

@@ -0,0 +1,12 @@
# Ignore everything
*
# But not these files:
!.gitignore
!*.mod
!README.md
!Variables.mk
!variables.env
*tmp.mod

14
.bingo/README.md Normal file
View File

@@ -0,0 +1,14 @@
# Project Development Dependencies.
This is directory which stores Go modules with pinned buildable package that is used within this repository, managed by https://github.com/bwplotka/bingo.
- Run `bingo get` to install all tools having each own module file in this directory.
- Run `bingo get <tool>` to install <tool> that have own module file in this directory.
- For Makefile: Make sure to put `include .bingo/Variables.mk` in your Makefile, then use $(<upper case tool name>) variable where <tool> is the .bingo/<tool>.mod.
- For shell: Run `source .bingo/variables.env` to source all environment variable for each tool.
- For go: Import `.bingo/variables.go` to for variable names.
- See https://github.com/bwplotka/bingo or -h on how to add, remove or change binaries dependencies.
## Requirements
- Go 1.14+

31
.bingo/Variables.mk Normal file
View File

@@ -0,0 +1,31 @@
# Auto generated binary variables helper managed by https://github.com/bwplotka/bingo v0.5.1. DO NOT EDIT.
# All tools are designed to be build inside $GOBIN.
BINGO_DIR := $(dir $(lastword $(MAKEFILE_LIST)))
GOPATH ?= $(shell go env GOPATH)
GOBIN ?= $(firstword $(subst :, ,${GOPATH}))/bin
GO ?= $(shell which go)
# Below generated variables ensure that every time a tool under each variable is invoked, the correct version
# will be used; reinstalling only if needed.
# For example for drone variable:
#
# In your main Makefile (for non array binaries):
#
#include .bingo/Variables.mk # Assuming -dir was set to .bingo .
#
#command: $(DRONE)
# @echo "Running drone"
# @$(DRONE) <flags/args..>
#
DRONE := $(GOBIN)/drone-v1.4.0
$(DRONE): $(BINGO_DIR)/drone.mod
@# Install binary/ries using Go 1.14+ build command. This is using bwplotka/bingo-controlled, separate go module with pinned dependencies.
@echo "(re)installing $(GOBIN)/drone-v1.4.0"
@cd $(BINGO_DIR) && $(GO) build -mod=mod -modfile=drone.mod -o=$(GOBIN)/drone-v1.4.0 "github.com/drone/drone-cli/drone"
WIRE := $(GOBIN)/wire-v0.5.0
$(WIRE): $(BINGO_DIR)/wire.mod
@# Install binary/ries using Go 1.14+ build command. This is using bwplotka/bingo-controlled, separate go module with pinned dependencies.
@echo "(re)installing $(GOBIN)/wire-v0.5.0"
@cd $(BINGO_DIR) && $(GO) build -mod=mod -modfile=wire.mod -o=$(GOBIN)/wire-v0.5.0 "github.com/google/wire/cmd/wire"

7
.bingo/drone.mod Normal file
View File

@@ -0,0 +1,7 @@
module _ // Auto generated by https://github.com/bwplotka/bingo. DO NOT EDIT
go 1.17
replace github.com/docker/docker => github.com/docker/engine v17.12.0-ce-rc1.0.20200309214505-aa6a9891b09c+incompatible
require github.com/drone/drone-cli v1.4.0 // drone

1
.bingo/go.mod Normal file
View File

@@ -0,0 +1 @@
module _ // Fake go.mod auto-created by 'bingo' for go -moddir compatibility with non-Go projects. Commit this file, together with other .mod files.

14
.bingo/variables.env Normal file
View File

@@ -0,0 +1,14 @@
# Auto generated binary variables helper managed by https://github.com/bwplotka/bingo v0.5.1. DO NOT EDIT.
# All tools are designed to be build inside $GOBIN.
# Those variables will work only until 'bingo get' was invoked, or if tools were installed via Makefile's Variables.mk.
GOBIN=${GOBIN:=$(go env GOBIN)}
if [ -z "$GOBIN" ]; then
GOBIN="$(go env GOPATH)/bin"
fi
DRONE="${GOBIN}/drone-v1.4.0"
WIRE="${GOBIN}/wire-v0.5.0"

5
.bingo/wire.mod Normal file
View File

@@ -0,0 +1,5 @@
module _ // Auto generated by https://github.com/bwplotka/bingo. DO NOT EDIT
go 1.16
require github.com/google/wire v0.5.0 // cmd/wire

View File

@@ -1,5 +1,6 @@
[run]
init_cmds = [
["make", "gen-go"],
["go", "run", "build.go", "-dev", "build-cli"],
["go", "run", "build.go", "-dev", "build-server"],
["./bin/grafana-server", "-packaging=dev", "cfg:app_mode=development"]
@@ -12,8 +13,10 @@ watch_dirs = [
"$WORKDIR/conf",
]
watch_exts = [".go", ".ini", ".toml", ".template.html"]
ignore_files = ["wire_gen.go"]
build_delay = 1500
cmds = [
["make", "gen-go"],
["go", "run", "build.go", "-dev", "build-server"],
["./bin/grafana-server", "-packaging=dev", "cfg:app_mode=development"]
]

View File

@@ -12,7 +12,14 @@ Dockerfile
docs
dump.rdb
node_modules
/local
**/node_modules
/tmp
*.yml
!.yarnrc.yml
*.md
.yarn/*
!.yarn/patches
!.yarn/releases
!.yarn/plugins
!.yarn/versions
!.yarn/cache

View File

@@ -4,12 +4,12 @@
# 3. Run `make drone`
# More information about this process here: https://github.com/grafana/deployment_tools/blob/master/docs/infrastructure/drone/signing.md
load('scripts/pr.star', 'pr_pipelines')
load('scripts/main.star', 'main_pipelines')
load('scripts/release.star', 'release_pipelines', 'test_release_pipelines')
load('scripts/version.star', 'version_branch_pipelines')
load('scripts/job.star', 'cronjobs')
load('scripts/vault.star', 'secrets')
load('scripts/drone/pipelines/pr.star', 'pr_pipelines')
load('scripts/drone/pipelines/main.star', 'main_pipelines')
load('scripts/drone/pipelines/release.star', 'release_pipelines', 'test_release_pipelines')
load('scripts/drone/version.star', 'version_branch_pipelines')
load('scripts/drone/pipelines/cron.star', 'cronjobs')
load('scripts/drone/vault.star', 'secrets')
def main(ctx):
edition = 'oss'

5873
.drone.yml

File diff suppressed because it is too large Load Diff

View File

@@ -6,3 +6,5 @@ devenv
data
dist
e2e/tmp
public/lib/monaco
deployment_tools_config.json

102
.github/CODEOWNERS vendored
View File

@@ -14,13 +14,20 @@
# Documentation owner: Jita Chatterjee
/docs/ @grafana/docs-squad @pkolyvas
/contribute/ @marcusolsson @grafana/docs-squad @pkolyvas
/docs/sources/developers/plugins/ @marcusolsson @grafana/docs-squad
/docs/sources/developers/plugins/ @marcusolsson @grafana/docs-squad @grafana/plugins-platform-frontend @grafana/plugins-platform-backend
/docs/sources/developers/plugins/backend @marcusolsson @grafana/docs-squad @grafana/plugins-platform-backend
/docs/sources/enterprise/ @osg-grafana @grafana/docs-squad
# Backend code
*.go @grafana/backend-platform
go.mod @grafana/backend-platform
go.sum @grafana/backend-platform
/.bingo @grafana/backend-platform
# Continuous Integration
.drone.yml @grafana/grafana-release-eng
.drone.star @grafana/grafana-release-eng
/scripts/drone/ @grafana/grafana-release-eng
# Cloud Datasources backend code
/pkg/tsdb/cloudwatch @grafana/cloud-datasources @grafana/observability-squad
@@ -36,40 +43,87 @@ go.sum @grafana/backend-platform
/pkg/tsdb/zipkin @grafana/observability-squad
/pkg/tsdb/tempo @grafana/observability-squad
# Database migrations
/pkg/services/sqlstore/migrations @grafana/backend-platform @grafana/hosted-grafana-team
*_mig.go @grafana/backend-platform @grafana/hosted-grafana-team
# Grafana live
/pkg/services/live/ @grafana/grafana-edge-squad
# Unified Alerting
/pkg/services/ngalert @grafana/alerting-squad
/pkg/services/sqlstore/migrations/ualert @grafana/alerting-squad
# Database migrations
/pkg/services/sqlstore/migrations @grafana/backend-platform @grafana/hosted-grafana-team
*_mig.go @grafana/backend-platform @grafana/hosted-grafana-team
# Library Services
/pkg/services/libraryelements @grafana/user-essentials
/pkg/services/librarypanels @grafana/user-essentials
# Plugins
/pkg/api/pluginproxy @grafana/plugins-platform-backend
/pkg/plugins @grafana/plugins-platform-backend
/pkg/services/datasourceproxy @grafana/plugins-platform-backend
/pkg/services/datasources @grafana/plugins-platform-backend
# Backend code docs
/contribute/style-guides/backend.md @grafana/backend-platform
/contribute/architecture/backend @grafana/backend-platform
/contribute/engineering/backend @grafana/backend-platform
/e2e @grafana/grafana-frontend-platform
/packages @grafana/grafana-frontend-platform
/plugins-bundled @grafana/grafana-frontend-platform
/public @grafana/grafana-frontend-platform
/scripts/build/release-packages.sh @grafana/grafana-frontend-platform
/scripts/circle-release-next-packages.sh @grafana/grafana-frontend-platform
/scripts/ci-frontend-metrics.sh @grafana/grafana-frontend-platform
/scripts/grunt @grafana/grafana-frontend-platform
/scripts/webpack @grafana/grafana-frontend-platform
package.json @grafana/grafana-frontend-platform
tsconfig.json @grafana/grafana-frontend-platform
lerna.json @grafana/grafana-frontend-platform
.babelrc @grafana/grafana-frontend-platform
.prettierrc.js @grafana/grafana-frontend-platform
.eslintrc @grafana/grafana-frontend-platform
/e2e @grafana/user-essentials
/packages @grafana/user-essentials @grafana/plugins-platform-frontend @grafana/grafana-bi-squad
/packages/grafana-e2e-selectors @grafana/user-essentials
/packages/grafana-e2e @grafana/user-essentials
/packages/grafana-toolkit @grafana/plugins-platform-frontend
/packages/grafana-ui/.storybook @grafana/plugins-platform-frontend
/packages/grafana-ui/src/components/DateTimePickers @grafana/grafana-bi-squad
/packages/grafana-ui/src/components/GraphNG @grafana/grafana-bi-squad
/packages/grafana-ui/src/components/Table @grafana/grafana-bi-squad
/packages/grafana-ui/src/components/TimeSeries @grafana/grafana-bi-squad
/packages/grafana-ui/src/components/uPlot @grafana/grafana-bi-squad
/packages/grafana-ui/src/utils/storybook @grafana/plugins-platform-frontend
/packages/jaeger-ui-components/ @grafana/observability-squad
/plugins-bundled @grafana/plugins-platform-frontend
/public @grafana/user-essentials
/public/app/core/components/TimePicker @grafana/grafana-bi-squad
/public/app/core/components/Layers @grafana/grafana-edge-squad
/public/app/features/canvas/ @grafana/grafana-edge-squad
/public/app/features/dimensions/ @grafana/grafana-edge-squad
/public/app/features/live/ @grafana/grafana-edge-squad
/public/app/features/explore/ @grafana/observability-squad
/public/app/features/plugins @grafana/plugins-platform-frontend
/public/app/plugins/panel/alertlist @grafana/alerting-squad
/public/app/plugins/panel/barchart @grafana/grafana-bi-squad
/public/app/plugins/panel/heatmap @grafana/grafana-bi-squad
/public/app/plugins/panel/histogram @grafana/grafana-bi-squad
/public/app/plugins/panel/nodeGraph @grafana/observability-squad
/public/app/plugins/panel/piechart @grafana/grafana-bi-squad
/public/app/plugins/panel/state-timeline @grafana/grafana-bi-squad
/public/app/plugins/panel/status-history @grafana/grafana-bi-squad
/public/app/plugins/panel/table @grafana/grafana-bi-squad
/public/app/plugins/panel/timeseries @grafana/grafana-bi-squad
/public/app/plugins/panel/geomap @grafana/grafana-edge-squad
/public/app/plugins/panel/canvas @grafana/grafana-edge-squad
/public/app/plugins/panel/candlestick @grafana/grafana-edge-squad
/public/app/plugins/panel/icon @grafana/grafana-edge-squad
/scripts/build/release-packages.sh @grafana/plugins-platform-frontend
/scripts/circle-release-next-packages.sh @grafana/plugins-platform-frontend
/scripts/ci-frontend-metrics.sh @grafana/user-essentials @grafana/plugins-platform-frontend @grafana/grafana-bi-squad
/scripts/ci-reference-docs-build.sh @grafana/plugins-platform-frontend
/scripts/ci-reference-docs-lint.sh @grafana/plugins-platform-frontend
/scripts/grunt @grafana/frontend-ops
/scripts/webpack @grafana/frontend-ops
/scripts/generate-a11y-report.sh @grafana/user-essentials
package.json @grafana/frontend-ops
tsconfig.json @grafana/frontend-ops
lerna.json @grafana/frontend-ops
.babelrc @grafana/frontend-ops
.prettierrc.js @grafana/frontend-ops
.eslintrc @grafana/frontend-ops
.pa11yci.conf.js @grafana/user-essentials
.pa11yci-pr.conf.js @grafana/user-essentials
# @grafana/ui component documentation
*.mdx @marcusolsson @jessover9000 @grafana/grafana-frontend-platform
/public/app/features/explore/ @grafana/observability-squad
/packages/jaeger-ui-components/ @grafana/observability-squad
*.mdx @marcusolsson @jessover9000 @grafana/plugins-platform-frontend
# Core datasources
/public/app/plugins/datasource/cloudwatch @grafana/cloud-datasources @grafana/observability-squad
@@ -90,4 +144,4 @@ lerna.json @grafana/grafana-frontend-platform
/public/app/plugins/datasource/alertmanager @grafana/alerting-squad
# Cloud middleware
/grafana-mixin/ @grafana/cloud-middleware
/grafana-mixin/ @grafana/hosted-grafana-team

View File

@@ -5,7 +5,7 @@ labels: 'type: bug'
---
<!--
Please use this template to create your bug report. By providing as much info as possible you help us understand the issue, reproduce it and resolve it for you quicker. Therefor take a couple of extra minutes to make sure you have provided all info needed.
Please use this template to create your bug report. By providing as much info as possible you help us understand the issue, reproduce it and resolve it for you quicker. Therefore take a couple of extra minutes to make sure you have provided all info needed.
PROTIP: record your screen and attach it as a gif to showcase the issue.

16
.github/commands.json vendored
View File

@@ -49,5 +49,21 @@
"action": "close",
"addLabel": "not implemented",
"comment": "This feature request has been open for a long time with few received upvotes or comments, so we are closing it. We're trying to limit open GitHub issues in order to better track planned work and features. \r\n\r\nThis doesn't mean that we'll never ever implement it or that we will never accept a PR for it. A closed issue can still attract upvotes and act as a ticket to track feature demand\/interest. \r\n\r\nThank You to you for taking the time to create this issue!"
},
{
"type": "label",
"name": "oss-user-essentials",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/78"
}
},
{
"type": "label",
"name": "area/plugins-catalog",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/76"
}
}
]

9
.github/pr-checks.json vendored Normal file
View File

@@ -0,0 +1,9 @@
[
{
"type": "check-milestone",
"title": "Milestone Check",
"targetUrl": "https://github.com/grafana/grafana/blob/main/contribute/merge-pull-request.md#assign-a-milestone",
"success": "Milestone set",
"failure": "Milestone not set"
}
]

View File

@@ -66,9 +66,6 @@
"packaging/**/*",
"scripts/build/**/*",
"scripts/*.sh",
"scripts/*.star",
".drone.star",
".drone.yml",
"Makefile",
"Dockerfile",
"Dockerfile.ubuntu"
@@ -76,6 +73,16 @@
"action": "updateLabel",
"addLabel": "type/build-packaging"
},
{
"type": "changedfiles",
"matches": [
"scripts/*.star",
".drone.star",
".drone.yml"
],
"action": "updateLabel",
"addLabel": "type/ci"
},
{
"type": "changedfiles",
"matches": [ "public/app/plugins/datasource/grafana-azure-monitor-datasource/**/*", "pkg/tsdb/azuremonitor/**/*"],
@@ -176,6 +183,7 @@
"type": "author",
"name": "pr/external",
"notMemberOf": { "org": "grafana" },
"ignoreList": ["renovate[bot]"],
"action": "updateLabel",
"addLabel": "pr/external"
}

47
.github/renovate.json5 vendored Normal file
View File

@@ -0,0 +1,47 @@
{
"extends": [
"config:base"
],
"enabledManagers": ["npm"],
"ignoreDeps": [
"@types/systemjs",
"@types/d3-force", // we should bump this once we move to esm modules
"@types/d3-interpolate", // we should bump this once we move to esm modules
"@types/d3-scale-chromatic", // we should bump this once we move to esm modules
"@types/react-icons", // jaeger-ui-components is being refactored to use @grafana/ui icons instead
"d3",
"d3-force", // we should bump this once we move to esm modules
"d3-interpolate", // we should bump this once we move to esm modules
"d3-scale-chromatic", // we should bump this once we move to esm modules
"eslint", // wait until `eslint-plugin-react-hooks>4.2.0` is released
"execa", // we should bump this once we move to esm modules
"history", // we should bump this together with react-router-dom
"react-icons", // jaeger-ui-components is being refactored to use @grafana/ui icons instead
"react-router-dom", // we should bump this together with history
"slate",
"slate-plain-serializer",
"systemjs",
"ts-loader", // we should remove ts-loader and use babel-loader instead
"ora" // we should bump this once we move to esm modules
],
"ignorePaths": ["packages/grafana-toolkit/package.json", "emails/**", "plugins-bundled/**", "**/mocks/**"],
"labels": ["area/frontend", "dependencies"],
"packageRules": [
{
"matchUpdateTypes": ["patch"],
"extends": ["schedule:monthly"]
}
],
"patch": {
"enabled": false
},
"pin": {
"enabled": false
},
"prConcurrentLimit": 10,
"reviewers": ["team:grafana/frontend-ops"],
"separateMajorMinor": false,
"vulnerabilityAlerts": {
"addLabels": ["area/security"]
}
}

View File

@@ -10,7 +10,7 @@ jobs:
runs-on: ubuntu-latest
steps:
# This is a basic workflow to help you get started with Actions
- uses: actions-ecosystem/action-regex-match@v2
- uses: actions-ecosystem/action-regex-match@v2.0.2
id: regex-match
with:
text: ${{ github.event.inputs.version }}
@@ -53,7 +53,7 @@ jobs:
repository: "grafana/grafana-github-actions"
path: ./actions
ref: main
- uses: actions/setup-node@v2.1.5
- uses: actions/setup-node@v2.4.1
with:
node-version: '14'
- name: Install Actions

28
.github/workflows/pr-checks.yml vendored Normal file
View File

@@ -0,0 +1,28 @@
name: PR Checks
on:
pull_request:
types:
- opened
- synchronize
issues:
types:
- milestoned
- demilestoned
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 PR Checks
uses: ./actions/pr-checks
with:
token: ${{secrets.GITHUB_TOKEN}}
configPath: pr-checks

View File

@@ -0,0 +1,17 @@
name: Run when PRs are closed
on:
pull_request:
types:
- closed
jobs:
close_job:
# this job will only run if the PR has been closed without being merged
if: github.event.pull_request.merged == false
runs-on: ubuntu-latest
steps:
- run: |
echo PR #${{ github.event.number }} has been closed without being merged, removing milestone.
gh pr edit ${{ github.event.number }} --milestone "" --repo $GITHUB_REPOSITORY
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

View File

@@ -16,16 +16,21 @@ jobs:
steps:
- uses: actions/checkout@v1
- run: git clone --single-branch --no-tags --depth 1 -b master https://grafanabot:${{ secrets.GH_BOT_ACCESS_TOKEN }}@github.com/grafana/website-sync ./.github/actions/website-sync
- uses: actions/cache@v2.1.5
with:
path: '**/node_modules'
key: ${{ runner.os }}-modules-${{ hashFiles('**/yarn.lock') }}
- name: generate-packages-docs
uses: actions/setup-node@v2.1.5
uses: actions/setup-node@v2.4.1
id: generate-docs
with:
node-version: '14'
- run: yarn install --pure-lockfile --no-progress
- name: Get yarn cache directory path
id: yarn-cache-dir-path
run: echo "::set-output name=dir::$(yarn config get cacheFolder)"
- uses: actions/cache@v2.1.6
with:
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
key: yarn-${{ hashFiles('**/yarn.lock') }}
restore-keys: |
yarn-
- run: yarn install --immutable
- run: ./scripts/ci-reference-docs-build.sh
- name: publish-to-git
uses: ./.github/actions/website-sync

23
.github/workflows/remove-milestone.yml vendored Normal file
View File

@@ -0,0 +1,23 @@
name: Remove milestone
on:
workflow_dispatch:
inputs:
version:
required: true
description: Needs to match, exactly, the name of a milestone
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: Remove milestone from open issues
uses: ./actions/remove-milestone
with:
token: ${{secrets.GH_BOT_ACCESS_TOKEN}}

28
.gitignore vendored
View File

@@ -7,17 +7,28 @@ awsconfig
/.awcache
/dist
/public/build
public/dist/tsconfig.tsbuildinfo
/public/views/index.html
/public/views/error.html
/emails/dist
/reports
/e2e/tmp
.yarnrc
.yarn/
vendor/
/docs/menu.yaml
/requests
# Yarn
.yarn/*
!.yarn/patches
!.yarn/releases
!.yarn/plugins
!.yarn/sdks
!.yarn/versions
# we temporarily commit this file because yarn downloading it
# somehow produces different checksum values
!.yarn/cache/pa11y-ci-https-1e9675e9e1-668c9119bd.zip
.pnp.*
# Enterprise emails
/emails/templates/enterprise_*
/public/emails/enterprise_*
@@ -53,6 +64,7 @@ public/css/*.min.css
!.vscode/launch.json
.vs/
.eslintcache
.stylelintcache
/data/*
/bin/*
@@ -75,6 +87,8 @@ profile.cov
/pkg/cmd/grafana-server/grafana-server
/pkg/cmd/grafana-server/debug
/pkg/extensions/*
/pkg/server/wireexts_enterprise.go
/pkg/cmd/grafana-cli/runner/wireexts_enterprise.go
!/pkg/extensions/main.go
/public/app/extensions
debug.test
@@ -82,6 +96,7 @@ debug.test
/packaging/**/*.rpm
/packaging/**/*.deb
/packaging/**/*.tar.gz
/packaging/**/*.tar.gz.sha256
# Ignore OSX indexing
.DS_Store
@@ -122,8 +137,17 @@ compilation-stats.json
!/e2e/**/screenshots/expected/*
/e2e/**/videos/*
# a11y tests
/pa11y-ci-results.json
/pa11y-ci-report
# report dumping the whole system env
/report.*.json
# auto generated frontend docs
/docs/sources/packages_api
# auto generated Go files
*_gen.go
deployment_tools_config.json

4
.husky/pre-commit Executable file
View File

@@ -0,0 +1,4 @@
#!/bin/sh
. "$(dirname "$0")/_/husky.sh"
yarn run precommit

123
.pa11yci-pr.conf.js Normal file
View File

@@ -0,0 +1,123 @@
var config = {
defaults: {
concurrency: 1,
runners: ['axe'],
useIncognitoBrowserContext: false,
chromeLaunchConfig: {
args: ['--no-sandbox'],
},
// see https://github.com/grafana/grafana/pull/41693#issuecomment-979921463 for context
// on why we're ignoring singleValue/react-select-*-placeholder elements
hideElements: '#updateVersion, [class*="-singleValue"], [id^="react-select-"][id$="-placeholder"]',
},
urls: [
{
url: '${HOST}/login',
wait: 500,
rootElement: '.main-view',
threshold: 12,
},
{
url: '${HOST}/login',
wait: 500,
actions: [
"wait for element input[name='user'] to be added",
"set field input[name='user'] to admin",
"set field input[name='password'] to admin",
"click element button[aria-label='Login button']",
"wait for element [aria-label='Skip change password button'] to be visible",
],
threshold: 13,
rootElement: '.main-view',
},
{
url: '${HOST}/?orgId=1',
wait: 500,
threshold: 0,
},
{
url: '${HOST}/d/O6f11TZWk/panel-tests-bar-gauge',
wait: 500,
rootElement: '.main-view',
threshold: 0,
},
{
url: '${HOST}/d/O6f11TZWk/panel-tests-bar-gauge?orgId=1&editview=settings',
wait: 500,
rootElement: '.main-view',
threshold: 0,
},
{
url: '${HOST}/?orgId=1&search=open',
wait: 500,
rootElement: '.main-view',
threshold: 0,
},
{
url: '${HOST}/alerting/list',
wait: 500,
rootElement: '.main-view',
// the unified alerting promotion alert's content contrast is too low
// see https://github.com/grafana/grafana/pull/41829
threshold: 5,
},
{
url: '${HOST}/datasources',
wait: 500,
rootElement: '.main-view',
threshold: 0,
},
{
url: '${HOST}/org/users',
wait: 500,
rootElement: '.main-view',
threshold: 0,
},
{
url: '${HOST}/org/teams',
wait: 500,
rootElement: '.main-view',
threshold: 0,
},
{
url: '${HOST}/plugins',
wait: 500,
rootElement: '.main-view',
threshold: 0,
},
{
url: '${HOST}/org',
wait: 500,
rootElement: '.main-view',
threshold: 0,
},
{
url: '${HOST}/org/apikeys',
wait: 500,
rootElement: '.main-view',
threshold: 0,
},
{
url: '${HOST}/dashboards',
wait: 500,
rootElement: '.main-view',
threshold: 0,
},
],
};
function myPa11yCiConfiguration(urls, defaults) {
const HOST_SERVER = process.env.HOST || 'localhost';
const PORT_SERVER = process.env.PORT || '3001';
for (var idx = 0; idx < urls.length; idx++) {
urls[idx] = { ...urls[idx], url: urls[idx].url.replace('${HOST}', `${HOST_SERVER}:${PORT_SERVER}`) };
}
return {
defaults: defaults,
urls: urls,
};
}
module.exports = myPa11yCiConfiguration(config.urls, config.defaults);

106
.pa11yci.conf.js Normal file
View File

@@ -0,0 +1,106 @@
var config = {
defaults: {
concurrency: 1,
runners: ['axe'],
useIncognitoBrowserContext: false,
chromeLaunchConfig: {
args: ['--no-sandbox'],
},
// see https://github.com/grafana/grafana/pull/41693#issuecomment-979921463 for context
// on why we're ignoring singleValue/react-select-*-placeholder elements
hideElements: '#updateVersion, [class*="-singleValue"], [id^="react-select-"][id$="-placeholder"]',
},
urls: [
{
url: '${HOST}/login',
wait: 500,
rootElement: '.main-view',
},
{
url: '${HOST}/login', //skip password and login
actions: [
"wait for element input[name='user'] to be added",
"set field input[name='user'] to admin",
"set field input[name='password'] to admin",
"click element button[aria-label='Login button']",
"wait for element [aria-label='Skip change password button'] to be visible",
],
wait: 500,
rootElement: '.main-view',
},
{
url: '${HOST}/?orgId=1',
wait: 500,
},
{
url: '${HOST}/d/O6f11TZWk/panel-tests-bar-gauge',
wait: 500,
rootElement: '.main-view',
},
{
url: '${HOST}/d/O6f11TZWk/panel-tests-bar-gauge?orgId=1&editview=settings',
wait: 500,
rootElement: '.main-view',
},
{
url: '${HOST}/?orgId=1&search=open',
wait: 500,
rootElement: '.main-view',
},
{
url: '${HOST}/alerting/list',
wait: 500,
rootElement: '.main-view',
},
{
url: '${HOST}/datasources',
wait: 500,
rootElement: '.main-view',
},
{
url: '${HOST}/org/users',
wait: 500,
rootElement: '.main-view',
},
{
url: '${HOST}/org/teams',
wait: 500,
rootElement: '.main-view',
},
{
url: '${HOST}/plugins',
wait: 500,
rootElement: '.main-view',
},
{
url: '${HOST}/org',
wait: 500,
rootElement: '.main-view',
},
{
url: '${HOST}/org/apikeys',
wait: 500,
rootElement: '.main-view',
},
{
url: '${HOST}/dashboards',
wait: 500,
rootElement: '.main-view',
},
],
};
function myPa11yCiConfiguration(urls, defaults) {
const HOST_SERVER = process.env.HOST || 'localhost';
const PORT_SERVER = process.env.PORT || '3001';
for (var idx = 0; idx < urls.length; idx++) {
urls[idx] = { ...urls[idx], url: urls[idx].url.replace('${HOST}', `${HOST_SERVER}:${PORT_SERVER}`) };
}
return {
defaults: defaults,
urls: urls,
};
}
module.exports = myPa11yCiConfiguration(config.urls, config.defaults);

View File

@@ -5,8 +5,9 @@ pkg/
node_modules
public/vendor/
vendor/
data/
/data/
e2e/tmp
public/build/
public/sass/*.generated.scss
devenv/
public/lib/monaco

6
.vim/coc-settings.json Normal file
View File

@@ -0,0 +1,6 @@
{
"eslint.packageManager": "yarn",
"eslint.nodePath": ".yarn/sdks",
"workspace.workspaceFolderCheckCwd": false,
"tsserver.tsdk": ".yarn/sdks/typescript/lib"
}

9
.vscode/launch.json vendored
View File

@@ -9,6 +9,15 @@
"program": "${workspaceFolder}/pkg/cmd/grafana-server/",
"env": {},
"args": ["--homepath", "${workspaceFolder}", "--packaging", "dev"]
},
{
"name": "Debug Jest test",
"type": "node",
"request": "launch",
"runtimeArgs": ["--inspect-brk", "${workspaceRoot}/node_modules/.bin/jest", "--runInBand", "${file}"],
"console": "integratedTerminal",
"internalConsoleOptions": "neverOpen",
"port": 9229
}
]
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

768
.yarn/releases/yarn-3.1.1.cjs vendored Executable file

File diff suppressed because one or more lines are too long

20
.yarn/sdks/eslint/bin/eslint.js vendored Executable file
View File

@@ -0,0 +1,20 @@
#!/usr/bin/env node
const {existsSync} = require(`fs`);
const {createRequire, createRequireFromPath} = require(`module`);
const {resolve} = require(`path`);
const relPnpApiPath = "../../../../.pnp.cjs";
const absPnpApiPath = resolve(__dirname, relPnpApiPath);
const absRequire = (createRequire || createRequireFromPath)(absPnpApiPath);
if (existsSync(absPnpApiPath)) {
if (!process.versions.pnp) {
// Setup the environment to be able to require eslint/bin/eslint.js
require(absPnpApiPath).setup();
}
}
// Defer to the real eslint/bin/eslint.js your application uses
module.exports = absRequire(`eslint/bin/eslint.js`);

20
.yarn/sdks/eslint/lib/api.js vendored Normal file
View File

@@ -0,0 +1,20 @@
#!/usr/bin/env node
const {existsSync} = require(`fs`);
const {createRequire, createRequireFromPath} = require(`module`);
const {resolve} = require(`path`);
const relPnpApiPath = "../../../../.pnp.cjs";
const absPnpApiPath = resolve(__dirname, relPnpApiPath);
const absRequire = (createRequire || createRequireFromPath)(absPnpApiPath);
if (existsSync(absPnpApiPath)) {
if (!process.versions.pnp) {
// Setup the environment to be able to require eslint
require(absPnpApiPath).setup();
}
}
// Defer to the real eslint your application uses
module.exports = absRequire(`eslint`);

6
.yarn/sdks/eslint/package.json vendored Normal file
View File

@@ -0,0 +1,6 @@
{
"name": "eslint",
"version": "7.28.0-sdk",
"main": "./lib/api.js",
"type": "commonjs"
}

6
.yarn/sdks/integrations.yml vendored Normal file
View File

@@ -0,0 +1,6 @@
# This file is automatically generated by @yarnpkg/sdks.
# Manual changes might be lost!
integrations:
- vscode
- vim

20
.yarn/sdks/prettier/index.js vendored Executable file
View File

@@ -0,0 +1,20 @@
#!/usr/bin/env node
const {existsSync} = require(`fs`);
const {createRequire, createRequireFromPath} = require(`module`);
const {resolve} = require(`path`);
const relPnpApiPath = "../../../.pnp.cjs";
const absPnpApiPath = resolve(__dirname, relPnpApiPath);
const absRequire = (createRequire || createRequireFromPath)(absPnpApiPath);
if (existsSync(absPnpApiPath)) {
if (!process.versions.pnp) {
// Setup the environment to be able to require prettier/index.js
require(absPnpApiPath).setup();
}
}
// Defer to the real prettier/index.js your application uses
module.exports = absRequire(`prettier/index.js`);

6
.yarn/sdks/prettier/package.json vendored Normal file
View File

@@ -0,0 +1,6 @@
{
"name": "prettier",
"version": "2.2.1-sdk",
"main": "./index.js",
"type": "commonjs"
}

20
.yarn/sdks/stylelint/bin/stylelint.js vendored Executable file
View File

@@ -0,0 +1,20 @@
#!/usr/bin/env node
const {existsSync} = require(`fs`);
const {createRequire, createRequireFromPath} = require(`module`);
const {resolve} = require(`path`);
const relPnpApiPath = "../../../../.pnp.cjs";
const absPnpApiPath = resolve(__dirname, relPnpApiPath);
const absRequire = (createRequire || createRequireFromPath)(absPnpApiPath);
if (existsSync(absPnpApiPath)) {
if (!process.versions.pnp) {
// Setup the environment to be able to require stylelint/bin/stylelint.js
require(absPnpApiPath).setup();
}
}
// Defer to the real stylelint/bin/stylelint.js your application uses
module.exports = absRequire(`stylelint/bin/stylelint.js`);

20
.yarn/sdks/stylelint/lib/index.js vendored Normal file
View File

@@ -0,0 +1,20 @@
#!/usr/bin/env node
const {existsSync} = require(`fs`);
const {createRequire, createRequireFromPath} = require(`module`);
const {resolve} = require(`path`);
const relPnpApiPath = "../../../../.pnp.cjs";
const absPnpApiPath = resolve(__dirname, relPnpApiPath);
const absRequire = (createRequire || createRequireFromPath)(absPnpApiPath);
if (existsSync(absPnpApiPath)) {
if (!process.versions.pnp) {
// Setup the environment to be able to require stylelint/lib/index.js
require(absPnpApiPath).setup();
}
}
// Defer to the real stylelint/lib/index.js your application uses
module.exports = absRequire(`stylelint/lib/index.js`);

6
.yarn/sdks/stylelint/package.json vendored Normal file
View File

@@ -0,0 +1,6 @@
{
"name": "stylelint",
"version": "14.0.1-sdk",
"main": "lib/index.js",
"type": "commonjs"
}

20
.yarn/sdks/typescript/bin/tsc vendored Executable file
View File

@@ -0,0 +1,20 @@
#!/usr/bin/env node
const {existsSync} = require(`fs`);
const {createRequire, createRequireFromPath} = require(`module`);
const {resolve} = require(`path`);
const relPnpApiPath = "../../../../.pnp.cjs";
const absPnpApiPath = resolve(__dirname, relPnpApiPath);
const absRequire = (createRequire || createRequireFromPath)(absPnpApiPath);
if (existsSync(absPnpApiPath)) {
if (!process.versions.pnp) {
// Setup the environment to be able to require typescript/bin/tsc
require(absPnpApiPath).setup();
}
}
// Defer to the real typescript/bin/tsc your application uses
module.exports = absRequire(`typescript/bin/tsc`);

20
.yarn/sdks/typescript/bin/tsserver vendored Executable file
View File

@@ -0,0 +1,20 @@
#!/usr/bin/env node
const {existsSync} = require(`fs`);
const {createRequire, createRequireFromPath} = require(`module`);
const {resolve} = require(`path`);
const relPnpApiPath = "../../../../.pnp.cjs";
const absPnpApiPath = resolve(__dirname, relPnpApiPath);
const absRequire = (createRequire || createRequireFromPath)(absPnpApiPath);
if (existsSync(absPnpApiPath)) {
if (!process.versions.pnp) {
// Setup the environment to be able to require typescript/bin/tsserver
require(absPnpApiPath).setup();
}
}
// Defer to the real typescript/bin/tsserver your application uses
module.exports = absRequire(`typescript/bin/tsserver`);

20
.yarn/sdks/typescript/lib/tsc.js vendored Normal file
View File

@@ -0,0 +1,20 @@
#!/usr/bin/env node
const {existsSync} = require(`fs`);
const {createRequire, createRequireFromPath} = require(`module`);
const {resolve} = require(`path`);
const relPnpApiPath = "../../../../.pnp.cjs";
const absPnpApiPath = resolve(__dirname, relPnpApiPath);
const absRequire = (createRequire || createRequireFromPath)(absPnpApiPath);
if (existsSync(absPnpApiPath)) {
if (!process.versions.pnp) {
// Setup the environment to be able to require typescript/lib/tsc.js
require(absPnpApiPath).setup();
}
}
// Defer to the real typescript/lib/tsc.js your application uses
module.exports = absRequire(`typescript/lib/tsc.js`);

184
.yarn/sdks/typescript/lib/tsserver.js vendored Normal file
View File

@@ -0,0 +1,184 @@
#!/usr/bin/env node
const {existsSync} = require(`fs`);
const {createRequire, createRequireFromPath} = require(`module`);
const {resolve} = require(`path`);
const relPnpApiPath = "../../../../.pnp.cjs";
const absPnpApiPath = resolve(__dirname, relPnpApiPath);
const absRequire = (createRequire || createRequireFromPath)(absPnpApiPath);
const moduleWrapper = tsserver => {
if (!process.versions.pnp) {
return tsserver;
}
const {isAbsolute} = require(`path`);
const pnpApi = require(`pnpapi`);
const isVirtual = str => str.match(/\/(\$\$virtual|__virtual__)\//);
const normalize = str => str.replace(/\\/g, `/`).replace(/^\/?/, `/`);
const dependencyTreeRoots = new Set(pnpApi.getDependencyTreeRoots().map(locator => {
return `${locator.name}@${locator.reference}`;
}));
// VSCode sends the zip paths to TS using the "zip://" prefix, that TS
// doesn't understand. This layer makes sure to remove the protocol
// before forwarding it to TS, and to add it back on all returned paths.
function toEditorPath(str) {
// We add the `zip:` prefix to both `.zip/` paths and virtual paths
if (isAbsolute(str) && !str.match(/^\^?(zip:|\/zip\/)/) && (str.match(/\.zip\//) || isVirtual(str))) {
// We also take the opportunity to turn virtual paths into physical ones;
// this makes it much easier to work with workspaces that list peer
// dependencies, since otherwise Ctrl+Click would bring us to the virtual
// file instances instead of the real ones.
//
// We only do this to modules owned by the the dependency tree roots.
// This avoids breaking the resolution when jumping inside a vendor
// with peer dep (otherwise jumping into react-dom would show resolution
// errors on react).
//
const resolved = isVirtual(str) ? pnpApi.resolveVirtual(str) : str;
if (resolved) {
const locator = pnpApi.findPackageLocator(resolved);
if (locator && dependencyTreeRoots.has(`${locator.name}@${locator.reference}`)) {
str = resolved;
}
}
str = normalize(str);
if (str.match(/\.zip\//)) {
switch (hostInfo) {
// Absolute VSCode `Uri.fsPath`s need to start with a slash.
// VSCode only adds it automatically for supported schemes,
// so we have to do it manually for the `zip` scheme.
// The path needs to start with a caret otherwise VSCode doesn't handle the protocol
//
// Ref: https://github.com/microsoft/vscode/issues/105014#issuecomment-686760910
//
// Update Oct 8 2021: VSCode changed their format in 1.61.
// Before | ^zip:/c:/foo/bar.zip/package.json
// After | ^/zip//c:/foo/bar.zip/package.json
//
case `vscode <1.61`: {
str = `^zip:${str}`;
} break;
case `vscode`: {
str = `^/zip/${str}`;
} break;
// To make "go to definition" work,
// We have to resolve the actual file system path from virtual path
// and convert scheme to supported by [vim-rzip](https://github.com/lbrayner/vim-rzip)
case `coc-nvim`: {
str = normalize(resolved).replace(/\.zip\//, `.zip::`);
str = resolve(`zipfile:${str}`);
} break;
// Support neovim native LSP and [typescript-language-server](https://github.com/theia-ide/typescript-language-server)
// We have to resolve the actual file system path from virtual path,
// everything else is up to neovim
case `neovim`: {
str = normalize(resolved).replace(/\.zip\//, `.zip::`);
str = `zipfile:${str}`;
} break;
default: {
str = `zip:${str}`;
} break;
}
}
}
return str;
}
function fromEditorPath(str) {
switch (hostInfo) {
case `coc-nvim`:
case `neovim`: {
str = str.replace(/\.zip::/, `.zip/`);
// The path for coc-nvim is in format of /<pwd>/zipfile:/<pwd>/.yarn/...
// So in order to convert it back, we use .* to match all the thing
// before `zipfile:`
return process.platform === `win32`
? str.replace(/^.*zipfile:\//, ``)
: str.replace(/^.*zipfile:/, ``);
} break;
case `vscode`:
default: {
return process.platform === `win32`
? str.replace(/^\^?(zip:|\/zip)\/+/, ``)
: str.replace(/^\^?(zip:|\/zip)\/+/, `/`);
} break;
}
}
// Force enable 'allowLocalPluginLoads'
// TypeScript tries to resolve plugins using a path relative to itself
// which doesn't work when using the global cache
// https://github.com/microsoft/TypeScript/blob/1b57a0395e0bff191581c9606aab92832001de62/src/server/project.ts#L2238
// VSCode doesn't want to enable 'allowLocalPluginLoads' due to security concerns but
// TypeScript already does local loads and if this code is running the user trusts the workspace
// https://github.com/microsoft/vscode/issues/45856
const ConfiguredProject = tsserver.server.ConfiguredProject;
const {enablePluginsWithOptions: originalEnablePluginsWithOptions} = ConfiguredProject.prototype;
ConfiguredProject.prototype.enablePluginsWithOptions = function() {
this.projectService.allowLocalPluginLoads = true;
return originalEnablePluginsWithOptions.apply(this, arguments);
};
// And here is the point where we hijack the VSCode <-> TS communications
// by adding ourselves in the middle. We locate everything that looks
// like an absolute path of ours and normalize it.
const Session = tsserver.server.Session;
const {onMessage: originalOnMessage, send: originalSend} = Session.prototype;
let hostInfo = `unknown`;
Object.assign(Session.prototype, {
onMessage(/** @type {string} */ message) {
const parsedMessage = JSON.parse(message)
if (
parsedMessage != null &&
typeof parsedMessage === `object` &&
parsedMessage.arguments &&
typeof parsedMessage.arguments.hostInfo === `string`
) {
hostInfo = parsedMessage.arguments.hostInfo;
if (hostInfo === `vscode` && process.env.VSCODE_IPC_HOOK && process.env.VSCODE_IPC_HOOK.match(/Code\/1\.([1-5][0-9]|60)\./)) {
hostInfo += ` <1.61`;
}
}
return originalOnMessage.call(this, JSON.stringify(parsedMessage, (key, value) => {
return typeof value === `string` ? fromEditorPath(value) : value;
}));
},
send(/** @type {any} */ msg) {
return originalSend.call(this, JSON.parse(JSON.stringify(msg, (key, value) => {
return typeof value === `string` ? toEditorPath(value) : value;
})));
}
});
return tsserver;
};
if (existsSync(absPnpApiPath)) {
if (!process.versions.pnp) {
// Setup the environment to be able to require typescript/lib/tsserver.js
require(absPnpApiPath).setup();
}
}
// Defer to the real typescript/lib/tsserver.js your application uses
module.exports = moduleWrapper(absRequire(`typescript/lib/tsserver.js`));

View File

@@ -0,0 +1,184 @@
#!/usr/bin/env node
const {existsSync} = require(`fs`);
const {createRequire, createRequireFromPath} = require(`module`);
const {resolve} = require(`path`);
const relPnpApiPath = "../../../../.pnp.cjs";
const absPnpApiPath = resolve(__dirname, relPnpApiPath);
const absRequire = (createRequire || createRequireFromPath)(absPnpApiPath);
const moduleWrapper = tsserver => {
if (!process.versions.pnp) {
return tsserver;
}
const {isAbsolute} = require(`path`);
const pnpApi = require(`pnpapi`);
const isVirtual = str => str.match(/\/(\$\$virtual|__virtual__)\//);
const normalize = str => str.replace(/\\/g, `/`).replace(/^\/?/, `/`);
const dependencyTreeRoots = new Set(pnpApi.getDependencyTreeRoots().map(locator => {
return `${locator.name}@${locator.reference}`;
}));
// VSCode sends the zip paths to TS using the "zip://" prefix, that TS
// doesn't understand. This layer makes sure to remove the protocol
// before forwarding it to TS, and to add it back on all returned paths.
function toEditorPath(str) {
// We add the `zip:` prefix to both `.zip/` paths and virtual paths
if (isAbsolute(str) && !str.match(/^\^?(zip:|\/zip\/)/) && (str.match(/\.zip\//) || isVirtual(str))) {
// We also take the opportunity to turn virtual paths into physical ones;
// this makes it much easier to work with workspaces that list peer
// dependencies, since otherwise Ctrl+Click would bring us to the virtual
// file instances instead of the real ones.
//
// We only do this to modules owned by the the dependency tree roots.
// This avoids breaking the resolution when jumping inside a vendor
// with peer dep (otherwise jumping into react-dom would show resolution
// errors on react).
//
const resolved = isVirtual(str) ? pnpApi.resolveVirtual(str) : str;
if (resolved) {
const locator = pnpApi.findPackageLocator(resolved);
if (locator && dependencyTreeRoots.has(`${locator.name}@${locator.reference}`)) {
str = resolved;
}
}
str = normalize(str);
if (str.match(/\.zip\//)) {
switch (hostInfo) {
// Absolute VSCode `Uri.fsPath`s need to start with a slash.
// VSCode only adds it automatically for supported schemes,
// so we have to do it manually for the `zip` scheme.
// The path needs to start with a caret otherwise VSCode doesn't handle the protocol
//
// Ref: https://github.com/microsoft/vscode/issues/105014#issuecomment-686760910
//
// Update Oct 8 2021: VSCode changed their format in 1.61.
// Before | ^zip:/c:/foo/bar.zip/package.json
// After | ^/zip//c:/foo/bar.zip/package.json
//
case `vscode <1.61`: {
str = `^zip:${str}`;
} break;
case `vscode`: {
str = `^/zip/${str}`;
} break;
// To make "go to definition" work,
// We have to resolve the actual file system path from virtual path
// and convert scheme to supported by [vim-rzip](https://github.com/lbrayner/vim-rzip)
case `coc-nvim`: {
str = normalize(resolved).replace(/\.zip\//, `.zip::`);
str = resolve(`zipfile:${str}`);
} break;
// Support neovim native LSP and [typescript-language-server](https://github.com/theia-ide/typescript-language-server)
// We have to resolve the actual file system path from virtual path,
// everything else is up to neovim
case `neovim`: {
str = normalize(resolved).replace(/\.zip\//, `.zip::`);
str = `zipfile:${str}`;
} break;
default: {
str = `zip:${str}`;
} break;
}
}
}
return str;
}
function fromEditorPath(str) {
switch (hostInfo) {
case `coc-nvim`:
case `neovim`: {
str = str.replace(/\.zip::/, `.zip/`);
// The path for coc-nvim is in format of /<pwd>/zipfile:/<pwd>/.yarn/...
// So in order to convert it back, we use .* to match all the thing
// before `zipfile:`
return process.platform === `win32`
? str.replace(/^.*zipfile:\//, ``)
: str.replace(/^.*zipfile:/, ``);
} break;
case `vscode`:
default: {
return process.platform === `win32`
? str.replace(/^\^?(zip:|\/zip)\/+/, ``)
: str.replace(/^\^?(zip:|\/zip)\/+/, `/`);
} break;
}
}
// Force enable 'allowLocalPluginLoads'
// TypeScript tries to resolve plugins using a path relative to itself
// which doesn't work when using the global cache
// https://github.com/microsoft/TypeScript/blob/1b57a0395e0bff191581c9606aab92832001de62/src/server/project.ts#L2238
// VSCode doesn't want to enable 'allowLocalPluginLoads' due to security concerns but
// TypeScript already does local loads and if this code is running the user trusts the workspace
// https://github.com/microsoft/vscode/issues/45856
const ConfiguredProject = tsserver.server.ConfiguredProject;
const {enablePluginsWithOptions: originalEnablePluginsWithOptions} = ConfiguredProject.prototype;
ConfiguredProject.prototype.enablePluginsWithOptions = function() {
this.projectService.allowLocalPluginLoads = true;
return originalEnablePluginsWithOptions.apply(this, arguments);
};
// And here is the point where we hijack the VSCode <-> TS communications
// by adding ourselves in the middle. We locate everything that looks
// like an absolute path of ours and normalize it.
const Session = tsserver.server.Session;
const {onMessage: originalOnMessage, send: originalSend} = Session.prototype;
let hostInfo = `unknown`;
Object.assign(Session.prototype, {
onMessage(/** @type {string} */ message) {
const parsedMessage = JSON.parse(message)
if (
parsedMessage != null &&
typeof parsedMessage === `object` &&
parsedMessage.arguments &&
typeof parsedMessage.arguments.hostInfo === `string`
) {
hostInfo = parsedMessage.arguments.hostInfo;
if (hostInfo === `vscode` && process.env.VSCODE_IPC_HOOK && process.env.VSCODE_IPC_HOOK.match(/Code\/1\.([1-5][0-9]|60)\./)) {
hostInfo += ` <1.61`;
}
}
return originalOnMessage.call(this, JSON.stringify(parsedMessage, (key, value) => {
return typeof value === `string` ? fromEditorPath(value) : value;
}));
},
send(/** @type {any} */ msg) {
return originalSend.call(this, JSON.parse(JSON.stringify(msg, (key, value) => {
return typeof value === `string` ? toEditorPath(value) : value;
})));
}
});
return tsserver;
};
if (existsSync(absPnpApiPath)) {
if (!process.versions.pnp) {
// Setup the environment to be able to require typescript/lib/tsserverlibrary.js
require(absPnpApiPath).setup();
}
}
// Defer to the real typescript/lib/tsserverlibrary.js your application uses
module.exports = moduleWrapper(absRequire(`typescript/lib/tsserverlibrary.js`));

20
.yarn/sdks/typescript/lib/typescript.js vendored Normal file
View File

@@ -0,0 +1,20 @@
#!/usr/bin/env node
const {existsSync} = require(`fs`);
const {createRequire, createRequireFromPath} = require(`module`);
const {resolve} = require(`path`);
const relPnpApiPath = "../../../../.pnp.cjs";
const absPnpApiPath = resolve(__dirname, relPnpApiPath);
const absRequire = (createRequire || createRequireFromPath)(absPnpApiPath);
if (existsSync(absPnpApiPath)) {
if (!process.versions.pnp) {
// Setup the environment to be able to require typescript/lib/typescript.js
require(absPnpApiPath).setup();
}
}
// Defer to the real typescript/lib/typescript.js your application uses
module.exports = absRequire(`typescript/lib/typescript.js`);

6
.yarn/sdks/typescript/package.json vendored Normal file
View File

@@ -0,0 +1,6 @@
{
"name": "typescript",
"version": "4.4.3-sdk",
"main": "./lib/typescript.js",
"type": "commonjs"
}

82
.yarnrc.yml Normal file
View File

@@ -0,0 +1,82 @@
enableTelemetry: false
nodeLinker: pnp
packageExtensions:
"@grafana/slate-react@0.22.10-grafana":
peerDependencies:
slate-react: ">=0.22.0"
"@mdx-js/loader@1.6.22":
peerDependencies:
react: 17.0.1
"@storybook/addon-docs@6.4.4":
peerDependencies:
"@storybook/manager-webpack5": 6.4.4
"@storybook/addon-essentials@6.4.4":
peerDependencies:
"@storybook/components": 6.4.4
"@storybook/core-events": 6.4.4
"@storybook/manager-webpack5": 6.4.4
"@storybook/theming": 6.4.4
"@storybook/core-server@6.4.4":
peerDependencies:
"@babel/core": ^7.0.0
"@storybook/core@6.4.4":
peerDependencies:
"@babel/core": ^7.0.0
"@storybook/manager-webpack5": 6.4.4
"@storybook/csf-tools@6.4.4":
peerDependencies:
"@babel/core": ^7.0.0
"@storybook/react@6.4.4":
peerDependencies:
"@storybook/manager-webpack5": 6.4.4
doctrine@3.0.0:
dependencies:
assert: 2.0.0
moveable@0.26.0:
dependencies:
"@daybrush/utils": 1.6.0
framework-utils: ^1.1.0
react-simple-compat: 1.2.1
rc-time-picker@3.7.3:
peerDependencies:
react: 17.0.1
react-dom: 17.0.1
rc-trigger@2.6.5:
peerDependencies:
react: 17.0.1
react-dom: 17.0.1
react-compat-moveable@0.14.0:
dependencies:
"@egjs/agent": ^2.2.1
"@egjs/children-differ": ^1.0.1
"@scena/matrix": 1.1.1
css-to-mat: ^1.0.3
gesto: ^1.4.0
overlap-area: ^1.0.0
peerDependencies:
framework-utils: ^1.1.0
react-dev-utils@11.0.4:
peerDependencies:
typescript: 4.4.3
webpack: 5.51.1
react-docgen-typescript-loader@3.7.2:
peerDependencies:
webpack: 4.41.5
react-icons@2.2.7:
peerDependencies:
prop-types: "*"
react-resizable@3.0.4:
peerDependencies:
react-dom: 17.0.1
plugins:
- path: .yarn/plugins/@yarnpkg/plugin-typescript.cjs
spec: "@yarnpkg/plugin-typescript"
- path: .yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs
spec: "@yarnpkg/plugin-interactive-tools"
- path: .yarn/plugins/@yarnpkg/plugin-outdated.cjs
spec: "https://mskelton.dev/yarn-outdated/v2"
yarnPath: .yarn/releases/yarn-3.1.1.cjs

File diff suppressed because it is too large Load Diff

View File

@@ -1,4 +1,3 @@
# 5.4.5 (2019-08-29)
- **Security**: Urgent security patch release. Please read more in our [blog](https://grafana.com/blog/2019/08/29/grafana-5.4.5-and-6.3.4-released-with-important-security-fix/)
@@ -180,7 +179,7 @@ See [security announcement](https://community.grafana.com/t/grafana-5-3-3-and-4-
- **Alerting**: Link to view full size image in Microsoft Teams alert notifier [#13121](https://github.com/grafana/grafana/issues/13121), thx [@holiiveira](https://github.com/holiiveira)
- **Alerting**: Fixes a bug where all alerts would send reminders after upgrade & restart [#13402](https://github.com/grafana/grafana/pull/13402)
- **Alerting**: Concurrent render limit for graphs used in notifications [#13401](https://github.com/grafana/grafana/pull/13401)
- **Postgres/MySQL/MSSQL**: Add support for replacing $__interval and $\_\_interval_ms in alert queries [#11555](https://github.com/grafana/grafana/issues/11555), thx [@svenklemm](https://github.com/svenklemm)
- **Postgres/MySQL/MSSQL**: Add support for replacing $\_\_interval and $\_\_interval_ms in alert queries [#11555](https://github.com/grafana/grafana/issues/11555), thx [@svenklemm](https://github.com/svenklemm)
# 5.3.0-beta1 (2018-09-06)
@@ -214,18 +213,18 @@ See [security announcement](https://community.grafana.com/t/grafana-5-3-3-and-4-
- **OAuth**: Fix overriding tls_skip_verify_insecure using environment variable [#12747](https://github.com/grafana/grafana/issues/12747), thx [@jangaraj](https://github.com/jangaraj)
- **Prometheus**: Fix graph panel bar width issue in aligned prometheus queries [#12379](https://github.com/grafana/grafana/issues/12379)
- **Prometheus**: Heatmap - fix unhandled error when some points are missing [#12484](https://github.com/grafana/grafana/issues/12484)
- **Prometheus**: Add $__interval, $**interval_ms, \$**range, $__range_s & $\_\_range_ms support for dashboard and template queries [#12597](https://github.com/grafana/grafana/issues/12597) [#12882](https://github.com/grafana/grafana/issues/12882), thx [@roidelapluie](https://github.com/roidelapluie)
- **Prometheus**: Add $**interval, $**interval_ms, \$**range, $**range_s & $\_\_range_ms support for dashboard and template queries [#12597](https://github.com/grafana/grafana/issues/12597) [#12882](https://github.com/grafana/grafana/issues/12882), thx [@roidelapluie](https://github.com/roidelapluie)
- **Elasticsearch**: For alerting/backend, support having index name to the right of pattern in index pattern [#12731](https://github.com/grafana/grafana/issues/12731)
- **Graphite**: Fix for quoting of int function parameters (when using variables) [#11927](https://github.com/grafana/grafana/pull/11927)
- **InfluxDB**: Support timeFilter in query templating for InfluxDB [#12598](https://github.com/grafana/grafana/pull/12598), thx [kichristensen](https://github.com/kichristensen)
- **Postgres/MySQL/MSSQL**: New $__unixEpochGroup and $\_\_unixEpochGroupAlias macros [#12892](https://github.com/grafana/grafana/issues/12892), thx [@svenklemm](https://github.com/svenklemm)
- **Postgres/MySQL/MSSQL**: New $\_\_unixEpochGroup and $\_\_unixEpochGroupAlias macros [#12892](https://github.com/grafana/grafana/issues/12892), thx [@svenklemm](https://github.com/svenklemm)
- **Postgres/MySQL/MSSQL**: Add previous fill mode to \$\_\_timeGroup macro which will fill in previously seen value when point is missing [#12756](https://github.com/grafana/grafana/issues/12756), thx [@svenklemm](https://github.com/svenklemm)
- **Postgres/MySQL/MSSQL**: Use floor rounding in \$\_\_timeGroup macro function [#12460](https://github.com/grafana/grafana/issues/12460), thx [@svenklemm](https://github.com/svenklemm)
- **Postgres/MySQL/MSSQL**: Use metric column as prefix when returning multiple value columns [#12727](https://github.com/grafana/grafana/issues/12727), thx [@svenklemm](https://github.com/svenklemm)
- **Postgres/MySQL/MSSQL**: New $__timeGroupAlias macro. Postgres $\_\_timeGroup no longer automatically adds time column alias [#12749](https://github.com/grafana/grafana/issues/12749), thx [@svenklemm](https://github.com/svenklemm)
- **Postgres/MySQL/MSSQL**: New $\_\_timeGroupAlias macro. Postgres $\_\_timeGroup no longer automatically adds time column alias [#12749](https://github.com/grafana/grafana/issues/12749), thx [@svenklemm](https://github.com/svenklemm)
- **Postgres/MySQL/MSSQL**: Escape single quotes in variables [#12785](https://github.com/grafana/grafana/issues/12785), thx [@eMerzh](https://github.com/eMerzh)
- **Postgres/MySQL/MSSQL**: Min time interval support [#13157](https://github.com/grafana/grafana/issues/13157), thx [@svenklemm](https://github.com/svenklemm)
- **MySQL/MSSQL**: Use datetime format instead of epoch for $__timeFilter, $**timeFrom and \$**timeTo macros [#11618](https://github.com/grafana/grafana/issues/11618) [#11619](https://github.com/grafana/grafana/issues/11619), thx [@AustinWinstanley](https://github.com/AustinWinstanley)
- **MySQL/MSSQL**: Use datetime format instead of epoch for $\_\_timeFilter, $**timeFrom and \$**timeTo macros [#11618](https://github.com/grafana/grafana/issues/11618) [#11619](https://github.com/grafana/grafana/issues/11619), thx [@AustinWinstanley](https://github.com/AustinWinstanley)
- **Postgres**: Escape ssl mode parameter in connectionstring [#12644](https://github.com/grafana/grafana/issues/12644), thx [@yogyrahmawan](https://github.com/yogyrahmawan)
- **Cloudwatch**: Improved error handling [#12489](https://github.com/grafana/grafana/issues/12489), thx [@mtanda](https://github.com/mtanda)
- **Cloudwatch**: AppSync metrics and dimensions [#12300](https://github.com/grafana/grafana/issues/12300), thx [@franciscocpg](https://github.com/franciscocpg)
@@ -1019,7 +1018,7 @@ Pull Request: [#8472](https://github.com/grafana/grafana/pull/8472)
## Enhancements
- **Telegram**: Added Telegram alert notifier [#7098](https://github.com/grafana/grafana/pull/7098), thx [@leonoff](https://github.com/leonoff)
- **Templating**: Make $__interval and $\_\_interval_ms global built in variables that can be used in by any data source (in panel queries), closes [#7190](https://github.com/grafana/grafana/issues/7190), closes [#6582](https://github.com/grafana/grafana/issues/6582)
- **Templating**: Make $\_\_interval and $\_\_interval_ms global built in variables that can be used in by any data source (in panel queries), closes [#7190](https://github.com/grafana/grafana/issues/7190), closes [#6582](https://github.com/grafana/grafana/issues/6582)
- **S3 Image Store**: External s3 image store (used in alert notifications) now support AWS IAM Roles, closes [#6985](https://github.com/grafana/grafana/issues/6985), [#7058](https://github.com/grafana/grafana/issues/7058) thx [@mtanda](https://github.com/mtanda)
- **SingleStat**: Implements diff aggregation method for singlestat [#7234](https://github.com/grafana/grafana/issues/7234), thx [@oliverpool](https://github.com/oliverpool)
- **Dataproxy**: Added setting to enable more verbose logging in dataproxy [#7209](https://github.com/grafana/grafana/pull/7209), thx [@Ricky-N](https://github.com/Ricky-N)

View File

@@ -26,10 +26,12 @@ Report a bug by submitting a [bug report](https://github.com/grafana/grafana/iss
Follow the issue template and add additional information that will help us replicate the problem.
For data visualization issues:
- Query results from the inspect drawer (data tab & query inspector)
- Panel settings can be extracted in the panel inspect drawer JSON tab
For a dashboard related issues:
- Dashboard JSON can be found in the dashboard settings JSON model view
For authentication and alerting Grafana server logs are useful.
@@ -40,7 +42,7 @@ If you believe you've found a security vulnerability, please read our [security
### Suggest enhancements
If you have an idea of how to improve Grafana, submit an [enhancement request](https://github.com/grafana/grafana/issues/new?labels=type%3A+feature+request&template=2-feature_request.md).
If you have an idea of how to improve Grafana, submit an [enhancement request](https://github.com/grafana/grafana/discussions/new).
We want to make Grafana accessible to even more people. Submit an [accessibility issue](https://github.com/grafana/grafana/issues/new?labels=type%3A+accessibility&template=3-accessibility.md) to help us understand what we can improve.

View File

@@ -1,14 +1,17 @@
FROM node:14.16.0-alpine3.13 as js-builder
FROM node:16-alpine3.14 as js-builder
WORKDIR /usr/src/app/
ENV NODE_OPTIONS=--max_old_space_size=8000
COPY package.json yarn.lock ./
WORKDIR /grafana
COPY package.json yarn.lock .yarnrc.yml ./
COPY .yarn .yarn
COPY packages packages
COPY plugins-bundled plugins-bundled
RUN apk --no-cache add git
RUN yarn install --pure-lockfile --no-progress
RUN yarn install
COPY tsconfig.json .eslintrc .editorconfig .browserslistrc .prettierrc.js ./
COPY tsconfig.json .eslintrc .editorconfig .browserslistrc .prettierrc.js babel.config.json ./
COPY public public
COPY tools tools
COPY scripts scripts
@@ -17,25 +20,26 @@ COPY emails emails
ENV NODE_ENV production
RUN yarn build
FROM golang:1.16.1-alpine3.13 as go-builder
FROM golang:1.17.3-alpine3.14 as go-builder
RUN apk add --no-cache gcc g++
RUN apk add --no-cache gcc g++ make
WORKDIR $GOPATH/src/github.com/grafana/grafana
COPY go.mod go.sum embed.go ./
RUN go mod verify
WORKDIR /grafana
COPY go.mod go.sum embed.go Makefile build.go package.json ./
COPY cue cue
COPY packages/grafana-schema packages/grafana-schema
COPY public/app/plugins public/app/plugins
COPY pkg pkg
COPY build.go package.json ./
COPY scripts scripts
COPY cue.mod cue.mod
COPY .bingo .bingo
RUN go run build.go build
RUN go mod verify
RUN make build-go
# Final stage
FROM alpine:3.13
FROM alpine:3.14.3
LABEL maintainer="Grafana team <hello@grafana.com>"
@@ -43,43 +47,45 @@ ARG GF_UID="472"
ARG GF_GID="0"
ENV PATH="/usr/share/grafana/bin:$PATH" \
GF_PATHS_CONFIG="/etc/grafana/grafana.ini" \
GF_PATHS_DATA="/var/lib/grafana" \
GF_PATHS_HOME="/usr/share/grafana" \
GF_PATHS_LOGS="/var/log/grafana" \
GF_PATHS_PLUGINS="/var/lib/grafana/plugins" \
GF_PATHS_PROVISIONING="/etc/grafana/provisioning"
GF_PATHS_CONFIG="/etc/grafana/grafana.ini" \
GF_PATHS_DATA="/var/lib/grafana" \
GF_PATHS_HOME="/usr/share/grafana" \
GF_PATHS_LOGS="/var/log/grafana" \
GF_PATHS_PLUGINS="/var/lib/grafana/plugins" \
GF_PATHS_PROVISIONING="/etc/grafana/provisioning"
WORKDIR $GF_PATHS_HOME
RUN apk add --no-cache ca-certificates bash tzdata && \
apk add --no-cache openssl musl-utils
RUN apk add --no-cache ca-certificates bash tzdata musl-utils
RUN apk add --no-cache openssl ncurses-libs ncurses-terminfo-base --repository=http://dl-cdn.alpinelinux.org/alpine/edge/main
RUN apk upgrade ncurses-libs ncurses-terminfo-base --repository=http://dl-cdn.alpinelinux.org/alpine/edge/main
RUN apk info -vv | sort
COPY conf ./conf
RUN if [ ! $(getent group "$GF_GID") ]; then \
addgroup -S -g $GF_GID grafana; \
fi
addgroup -S -g $GF_GID grafana; \
fi
RUN export GF_GID_NAME=$(getent group $GF_GID | cut -d':' -f1) && \
mkdir -p "$GF_PATHS_HOME/.aws" && \
adduser -S -u $GF_UID -G "$GF_GID_NAME" grafana && \
mkdir -p "$GF_PATHS_PROVISIONING/datasources" \
"$GF_PATHS_PROVISIONING/dashboards" \
"$GF_PATHS_PROVISIONING/notifiers" \
"$GF_PATHS_PROVISIONING/plugins" \
"$GF_PATHS_PROVISIONING/access-control" \
"$GF_PATHS_LOGS" \
"$GF_PATHS_PLUGINS" \
"$GF_PATHS_DATA" && \
cp "$GF_PATHS_HOME/conf/sample.ini" "$GF_PATHS_CONFIG" && \
cp "$GF_PATHS_HOME/conf/ldap.toml" /etc/grafana/ldap.toml && \
chown -R "grafana:$GF_GID_NAME" "$GF_PATHS_DATA" "$GF_PATHS_HOME/.aws" "$GF_PATHS_LOGS" "$GF_PATHS_PLUGINS" "$GF_PATHS_PROVISIONING" && \
chmod -R 777 "$GF_PATHS_DATA" "$GF_PATHS_HOME/.aws" "$GF_PATHS_LOGS" "$GF_PATHS_PLUGINS" "$GF_PATHS_PROVISIONING"
mkdir -p "$GF_PATHS_HOME/.aws" && \
adduser -S -u $GF_UID -G "$GF_GID_NAME" grafana && \
mkdir -p "$GF_PATHS_PROVISIONING/datasources" \
"$GF_PATHS_PROVISIONING/dashboards" \
"$GF_PATHS_PROVISIONING/notifiers" \
"$GF_PATHS_PROVISIONING/plugins" \
"$GF_PATHS_PROVISIONING/access-control" \
"$GF_PATHS_LOGS" \
"$GF_PATHS_PLUGINS" \
"$GF_PATHS_DATA" && \
cp "$GF_PATHS_HOME/conf/sample.ini" "$GF_PATHS_CONFIG" && \
cp "$GF_PATHS_HOME/conf/ldap.toml" /etc/grafana/ldap.toml && \
chown -R "grafana:$GF_GID_NAME" "$GF_PATHS_DATA" "$GF_PATHS_HOME/.aws" "$GF_PATHS_LOGS" "$GF_PATHS_PLUGINS" "$GF_PATHS_PROVISIONING" && \
chmod -R 777 "$GF_PATHS_DATA" "$GF_PATHS_HOME/.aws" "$GF_PATHS_LOGS" "$GF_PATHS_PLUGINS" "$GF_PATHS_PROVISIONING"
COPY --from=go-builder /go/src/github.com/grafana/grafana/bin/*/grafana-server /go/src/github.com/grafana/grafana/bin/*/grafana-cli ./bin/
COPY --from=js-builder /usr/src/app/public ./public
COPY --from=js-builder /usr/src/app/tools ./tools
COPY --from=go-builder /grafana/bin/*/grafana-server /grafana/bin/*/grafana-cli ./bin/
COPY --from=js-builder /grafana/public ./public
COPY --from=js-builder /grafana/tools ./tools
EXPOSE 3000

View File

@@ -1,14 +1,18 @@
FROM node:14.15.1-slim AS js-builder
FROM node:16-alpine3.14 as js-builder
ENV NODE_OPTIONS=--max_old_space_size=8000
WORKDIR /usr/src/app/
COPY package.json yarn.lock ./
COPY packages packages
COPY .yarnrc.yml ./
COPY .yarn .yarn
COPY plugins-bundled plugins-bundled
RUN apt-get update && apt-get install -yq git
RUN yarn install --pure-lockfile
RUN yarn install
COPY tsconfig.json .eslintrc .editorconfig .browserslistrc .prettierrc.js ./
COPY tsconfig.json .eslintrc .editorconfig .browserslistrc .prettierrc.js babel.config.json ./
COPY public public
COPY tools tools
COPY scripts scripts
@@ -17,20 +21,21 @@ COPY emails emails
ENV NODE_ENV production
RUN yarn build
FROM golang:1.16 AS go-builder
FROM golang:1.17.3 AS go-builder
WORKDIR /src/grafana
COPY go.mod go.sum embed.go ./
RUN go mod verify
COPY build.go package.json ./
COPY Makefile build.go package.json ./
COPY .bingo .bingo
COPY pkg pkg/
COPY cue cue/
COPY cue.mod cue.mod/
COPY packages/grafana-schema packages/grafana-schema/
COPY public/app/plugins public/app/plugins/
RUN go run build.go build
RUN go mod verify
RUN make build-go
FROM ubuntu:20.04

View File

@@ -4,7 +4,7 @@ The main goal of issue triage is to categorize all incoming Grafana issues and m
> **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.
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:
@@ -18,6 +18,7 @@ If you don't have the knowledge or time to code, consider helping with triage. T
## Simplified flowchart diagram of the issue triage process
<!-- https://textik.com/#610afa78553def29 -->
```
+--------------------------+
+----------------+ New issue opened/ |
@@ -76,15 +77,16 @@ Instructions for setting up filters in Gmail can be found [here](#setting-up-gma
## 2. Ensure the issue contains basic information
Before triaging an issue very far, make sure that the issue's author provided the standard issue information. This will help you make an educated recommendation on how to categorize the issue. The Grafana project utilizes [GitHub issue templates](https://help.github.com/en/articles/creating-issue-templates-for-your-repository) to guide contributors to provide standard information that must be included for each type of template or type of issue.
Before triaging an issue very far, make sure that the issue's author provided the standard issue information. This will help you make an educated recommendation on how to categorize the issue. The Grafana project utilizes [GitHub issue templates](https://help.github.com/en/articles/creating-issue-templates-for-your-repository) to guide contributors to provide standard information that must be included for each type of template or type of issue.
### Standard issue information that must be included
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.
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 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
- Data source type & version
- Platform & OS Grafana is installed on
@@ -170,10 +172,12 @@ If it's not perfectly clear that it's an actual bug, quickly try to reproduce it
4. Move on to [prioritizing the issue](#4-prioritization-of-issues).
**It can't be reproduced:**
1. Either [ask for more information](#2-ensure-the-issue-contains-basic-information) needed to investigate it more thoroughly.
2. Either [delegate further investigations](#investigation-of-issues) to someone else.
**It works as intended/by design:**
1. Kindly and politely add a comment explaining briefly why we think it works as intended and close the issue.
2. Label the issue `type/works-as-intended`.
@@ -195,6 +199,7 @@ Second, label the issue `type/docs` and at least one `area/*` or `datasource/*`
**Minor typo/error/lack of information:**
There's a minor typo/error/lack of information that adds a lot of confusion for users and given the amount of work is a big win to make sure fixing it:
1. Either update the documentation yourself and open a pull request.
2. Either delegate the work to someone else by assigning that person to the issue and add the issue to next major/minor milestone.
@@ -299,12 +304,12 @@ 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
## 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/main/.github/commands.json). Or in other [GitHub Actions](https://github.com/grafana/grafana/tree/main/.github/workflows)
* Add /duplicate `#<issue number>` to have Grafana label & close issue with an appropriate message.
* Add `bot/question` and the bot will close it with an appropriate message.
- Add /duplicate `#<issue number>` to have Grafana label & close issue with an appropriate message.
- Add `bot/question` and the bot will close it with an appropriate message.
[Read more on bot actions](https://github.com/grafana/grafana/blob/main/.github/bot.md)
@@ -324,6 +329,7 @@ Part of issue triage should also be triaging of external PRs. Main goal should b
If you're using Gmail it's highly recommended that you setup filters to automatically remove email from the inbox and label them accordingly to make it easy for you to understand when you need to act upon a notification or process all incoming issues that haven't been triaged.
This may be setup by personal preference, but here's a working configuration for reference.
1. Follow instructions in [gist](https://gist.github.com/marefr/9167c2e31466f6316c1cba118874e74f)
2. In Gmail, go to Settings -> Filters and Blocked Addresses
3. Import filters -> select xml file -> Open file
@@ -332,6 +338,7 @@ This may be setup by personal preference, but here's a working configuration for
6. Create filters
This will give you a structure of labels in the sidebar similar to the following:
```
- Inbox
...

View File

@@ -2,9 +2,12 @@
##
## For more information, refer to https://suva.sh/posts/well-documented-makefiles/
-include local/Makefile
WIRE_TAGS = "oss"
.PHONY: all deps-go deps-js deps build-go build-server build-cli build-js build build-docker-dev build-docker-full lint-go golangci-lint test-go test-js test run run-frontend clean devenv devenv-down protobuf drone help
-include local/Makefile
include .bingo/Variables.mk
.PHONY: all deps-go deps-js deps build-go build-server build-cli build-js build build-docker-full lint-go golangci-lint test-go test-js gen-ts test run run-frontend clean devenv devenv-down protobuf drone help
GO = go
GO_FILES ?= ./pkg/...
@@ -23,11 +26,15 @@ deps: deps-js ## Install all dependencies.
node_modules: package.json yarn.lock ## Install node modules.
@echo "install frontend dependencies"
yarn install --pure-lockfile --no-progress
YARN_ENABLE_PROGRESS_BARS=false yarn install --immutable
##@ Building
build-go: ## Build all Go binaries.
gen-go: $(WIRE)
@echo "generate go files"
$(WIRE) gen -tags $(WIRE_TAGS) ./pkg/server ./pkg/cmd/grafana-cli/runner
build-go: gen-go ## Build all Go binaries.
@echo "build go files"
$(GO) run build.go build
@@ -36,7 +43,7 @@ build-server: ## Build Grafana server.
$(GO) run build.go build-server
build-cli: ## Build Grafana CLI application.
@echo "build in CI environment"
@echo "build grafana-cli"
$(GO) run build.go build-cli
build-js: ## Build frontend assets.
@@ -79,7 +86,7 @@ golangci-lint: scripts/go/bin/golangci-lint
--config ./scripts/go/configs/.golangci.toml \
$(GO_FILES)
lint-go: golangci-lint # Run all code checks for backend.
lint-go: golangci-lint ## Run all code checks for backend. You can use GO_FILES to specify exact files to check
# with disabled SC1071 we are ignored some TCL,Expect `/usr/bin/env expect` scripts
shellcheck: $(SH_FILES) ## Run checks for shell scripts.
@@ -88,13 +95,6 @@ shellcheck: $(SH_FILES) ## Run checks for shell scripts.
##@ Docker
build-docker-dev: ## Build Docker image for development (fast).
@echo "build development container"
@echo "\033[92mInfo:\033[0m the frontend code is expected to be built already."
$(GO) run build.go -goos linux -pkg-arch amd64 ${OPT} build pkg-archive latest
cp dist/grafana-latest.linux-x64.tar.gz packaging/docker
cd packaging/docker && docker build --tag grafana/grafana:dev .
build-docker-full: ## Build Docker image for development.
@echo "build docker container"
docker build --tag grafana/grafana:dev .
@@ -140,13 +140,19 @@ clean: ## Clean up intermediate build artifacts.
rm -rf node_modules
rm -rf public/build
gen-ts:
@echo "generating TypeScript definitions"
go get github.com/tkrajina/typescriptify-golang-structs/typescriptify@v0.1.7
tscriptify -interface -package=github.com/grafana/grafana/pkg/services/live/pipeline -import="import { FieldConfig } from '@grafana/data'" -target=public/app/features/live/pipeline/models.gen.ts pkg/services/live/pipeline/config.go
go mod tidy
# This repository's configuration is protected (https://readme.drone.io/signature/).
# Use this make target to regenerate the configuration YAML files when
# Use this make target to regenerate the configuration YAML files when
# you modify starlark files.
drone:
drone starlark
drone lint
drone --server https://drone.grafana.net sign --save grafana/grafana
drone: $(DRONE)
$(DRONE) starlark --format
$(DRONE) lint .drone.yml --trusted
$(DRONE) --server https://drone.grafana.net sign --save grafana/grafana
help: ## Display this help.
@awk 'BEGIN {FS = ":.*##"; printf "\nUsage:\n make \033[36m<target>\033[0m\n"} /^[a-zA-Z_-]+:.*?##/ { printf " \033[36m%-15s\033[0m %s\n", $$1, $$2 } /^##@/ { printf "\n\033[1m%s\033[0m\n", substr($$0, 5) } ' $(MAKEFILE_LIST)

View File

@@ -1,6 +1,4 @@
Copyright 2014-2021 Grafana Labs
This software is based on Kibana:
This software is based on Kibana:
Copyright 2012-2013 Elasticsearch BV

View File

@@ -1,27 +1,27 @@
# Plugin development
# Plugin development
This document is not meant as a complete guide for developing plugins but more as a changelog for changes in
Grafana that can impact plugin development. Whenever you as a plugin author encounter an issue with your plugin after
upgrading Grafana please check here before creating an issue.
upgrading Grafana please check here before creating an issue.
## Plugin development resources
- [Grafana plugin developer guide](http://docs.grafana.org/plugins/developing/development/)
- [Grafana plugin developer guide](https://grafana.com/docs/grafana/latest/developers/plugins/)
- [Webpack Grafana plugin template project](https://github.com/CorpGlory/grafana-plugin-template-webpack)
- [Simple JSON datasource plugin](https://github.com/grafana/simple-json-datasource)
## Changes in Grafana v4.6
This version of Grafana has big changes that will impact a limited set of plugins. We moved from systemjs to webpack
for built-in plugins and everything internal. External plugins still use systemjs but now with a limited
set of Grafana components they can import. Plugins can depend on libs like lodash & moment and internal components
like before using the same import paths. However since everything in Grafana is no longer accessible, a few plugins could encounter issues when importing a Grafana dependency.
for built-in plugins and everything internal. External plugins still use systemjs but now with a limited
set of Grafana components they can import. Plugins can depend on libs like lodash & moment and internal components
like before using the same import paths. However since everything in Grafana is no longer accessible, a few plugins could encounter issues when importing a Grafana dependency.
[List of exposed components plugins can import/require](https://github.com/grafana/grafana/blob/main/public/app/features/plugins/plugin_loader.ts#L48)
If you think we missed exposing a crucial lib or Grafana component let us know by opening an issue.
If you think we missed exposing a crucial lib or Grafana component let us know by opening an issue.
### Deprecated components
### Deprecated components
The angular directive `<spectrum-picker>` is now deprecated (will still work for a version more) but we recommend plugin authors
upgrade to new `<color-picker color="ctrl.color" onChange="ctrl.onSparklineColorChange"></color-picker>`

View File

@@ -30,8 +30,8 @@ The Grafana documentation is available at [grafana.com/docs](https://grafana.com
If you're interested in contributing to the Grafana project:
- Start by reading the [Contributing guide](/CONTRIBUTING.md).
- Learn how to set up your local environment, in our [Developer guide](/contribute/developer-guide.md).
- Start by reading the [Contributing guide](https://github.com/grafana/grafana/blob/HEAD/CONTRIBUTING.md).
- Learn how to set up your local environment, in our [Developer guide](https://github.com/grafana/grafana/blob/HEAD/contribute/developer-guide.md).
- Explore our [beginner-friendly issues](https://github.com/grafana/grafana/issues?q=is%3Aopen+is%3Aissue+label%3A%22beginner+friendly%22).
- Look through our [style guide and Storybook](https://developers.grafana.com/ui/latest/index.html).
@@ -40,8 +40,8 @@ If you're interested in contributing to the Grafana project:
- Follow [@grafana on Twitter](https://twitter.com/grafana/).
- Read and subscribe to the [Grafana blog](https://grafana.com/blog/).
- If you have a specific question, check out our [discussion forums](https://community.grafana.com/).
- For general discussions, join us on the [official Slack](http://slack.raintank.io/) team.
- For general discussions, join us on the [official Slack](https://slack.grafana.com) team.
## License
Grafana is distributed under [AGPL-3.0-only](LICENSE). For Apache-2.0 exceptions, see [LICENSING.md](LICENSING.md).
Grafana is distributed under [AGPL-3.0-only](LICENSE). For Apache-2.0 exceptions, see [LICENSING.md](https://github.com/grafana/grafana/blob/HEAD/LICENSING.md).

View File

@@ -1,5 +1,5 @@
# Roadmap
The roadmap is a tentative plan for the core development team. Things change constantly as pull requests come in and priorities change, but it will give you an idea of our current vision and plan.
The roadmap is a tentative plan for the core development team. Things change constantly as pull requests come in and priorities change, but it will give you an idea of our current vision and plan.
To view the Roadmap, go to the Issues tab on GitHub. There you will find three roadmap issues pinned at the top.

View File

@@ -1,10 +1,10 @@
# Reporting security issues
If you think you have found a security vulnerability, please send a report to [security@grafana.com](mailto:security@grafana.com). This address can be used for all of Grafana Labs's open source and commercial products (including but not limited to Grafana, Grafana Cloud, Grafana Enterprise, and grafana.com). We can accept only vulnerability reports at this address.
If you think you have found a security vulnerability, please send a report to [security@grafana.com](mailto:security@grafana.com). This address can be used for all of Grafana Labs's open source and commercial products (including but not limited to Grafana, Grafana Cloud, Grafana Enterprise, and grafana.com). We can accept only vulnerability reports at this address.
Please encrypt your message to us; please use our PGP key. The key fingerprint is:
F988 7BEA 027A 049F AE8E 5CAA D125 8932 BE24 C5CA
F988 7BEA 027A 049F AE8E 5CAA D125 8932 BE24 C5CA
The key is available from [keyserver.ubuntu.com](https://keyserver.ubuntu.com/pks/lookup?search=0xF9887BEA027A049FAE8E5CAAD1258932BE24C5CA&fingerprint=on&op=index).
@@ -14,7 +14,7 @@ Grafana Labs will send you a response indicating the next steps in handling your
## Security announcements
We maintain a category on the community site called [Security Announcements](https://community.grafana.com/c/security-announcements),
where we will post a summary, remediation, and mitigation details for any patch containing security fixes.
We maintain a category on the community site called [Security Announcements](https://community.grafana.com/c/support/security-announcements),
where we will post a summary, remediation, and mitigation details for any patch containing security fixes.
You can also subscribe to email updates to this category if you have a grafana.com account and sign on to the community site or track updates via an [RSS feed](https://community.grafana.com/c/security-announcements.rss).
You can also subscribe to email updates to this category if you have a grafana.com account and sign on to the community site or track updates via an [RSS feed](https://community.grafana.com/c/support/security-announcements.rss).

View File

@@ -1,10 +1,13 @@
# Get Grafana help
------------------
---
First, check the official [Grafana documentation](https://grafana.com/docs/).
If you require further help or support then ask a question in the [Grafana community site](https://community.grafana.com/) or [Grafana Slack](http://slack.raintank.io/). You can also search the community site for previously answered questions, in case someone already had your problem and got help.
**Please note:**
**Please note:**
- The Grafana project uses GitHub mainly for tracking bugs and feature requests.
- Do not open an issue just to ask a question. The issue will be closed immediately.
- Only submit issues for bug reports, feature requests, or enhancements.

View File

@@ -13,6 +13,7 @@ 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 main 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
@@ -24,6 +25,7 @@ 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 main using PRs. They MUST NOT be merged into main 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
@@ -33,6 +35,7 @@ Commits MUST be merged into main using PRs. They MUST NOT be merged into main di
- 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.
@@ -40,9 +43,9 @@ Once a PR is approved as per above, any team member MAY merge the PR.
## Backporting a PR
PRs intended for inclusion in the next PATCH release they must be backported to the release branch. The bot can do this automatically. [Read more on backport PRs](https://github.com/grafana/grafana/blob/main/.github/bot.md). Both the source PR and the backport PR should be assigned to the patch release milestone, unless you are backporting to many releases then it can differ.
PRs intended for inclusion in the next PATCH release they must be backported to the release branch. The bot can do this automatically. [Read more on backport PRs](https://github.com/grafana/grafana/blob/main/.github/bot.md). Both the source PR and the backport PR should be assigned to the patch release milestone, unless you are backporting to many releases then it can differ.
Backport PRs are also needed during the beta period to get fixes into the stable release.
Backport PRs are also needed during the beta period to get fixes into the stable release.
# Release workflow
@@ -51,6 +54,7 @@ Backport PRs are also needed during the beta period to get fixes into the stable
Grafana uses trunk-based development.
In particular, we found that the following principles match how we work:
- Main 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
@@ -61,6 +65,7 @@ In particular, we found that the following principles match how we work:
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 main.
- MINOR release branches MUST be based on main.
- PATCH release branches MUST be split from the relevant MINOR release branchs most current PATCH
@@ -68,6 +73,7 @@ Release branches MUST be split from the following branches.
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.
Releases follow the following cadence
- MAJOR: Yearly
- MINOR: Every 4-6 weeks
- PATCH: As needed

58
babel.config.json Normal file
View File

@@ -0,0 +1,58 @@
{
"babelrc": false,
// Note: order is bottom-to-top and/or right-to-left
"presets": [
[
"@babel/preset-env",
{
"bugfixes": true,
"browserslistEnv": "dev",
"useBuiltIns": "entry",
"corejs": "3.10"
}
],
[
"@babel/preset-typescript",
{
"allowNamespaces": true,
"allowDeclareFields": true
}
],
[
"@babel/preset-react",
{
"runtime": "automatic"
}
]
],
"plugins": [
[
"@babel/plugin-transform-typescript",
{
"allowNamespaces": true,
"allowDeclareFields": true
}
],
["@babel/plugin-proposal-object-rest-spread", { "loose": true }],
"@babel/plugin-transform-react-constant-elements",
"@babel/plugin-proposal-nullish-coalescing-operator",
"@babel/plugin-proposal-optional-chaining",
"@babel/plugin-syntax-dynamic-import", // needed for `() => import()` in routes.ts
"angularjs-annotate"
],
"env": {
"production": {
"presets": [
[
"@babel/preset-env",
{
"browserslistEnv": "production"
}
]
]
},
"hot": {
"plugins": ["react-refresh/babel"]
}
}
}

466
build.go
View File

@@ -3,476 +3,14 @@
package main
import (
"bytes"
"crypto/md5"
"crypto/sha256"
"encoding/json"
"flag"
"fmt"
"go/build"
"io"
"io/ioutil"
"log"
"os"
"os/exec"
"path"
"path/filepath"
"runtime"
"strconv"
"strings"
"time"
)
const (
windows = "windows"
linux = "linux"
)
var (
//versionRe = regexp.MustCompile(`-[0-9]{1,3}-g[0-9a-f]{5,10}`)
goarch string
goos string
gocc string
cgo bool
libc string
pkgArch string
version string = "v1"
buildTags []string
// deb & rpm does not support semver so have to handle their version a little differently
linuxPackageVersion string = "v1"
linuxPackageIteration string = ""
race bool
workingDir string
includeBuildId bool = true
buildId string = "0"
serverBinary string = "grafana-server"
cliBinary string = "grafana-cli"
binaries []string = []string{serverBinary, cliBinary}
isDev bool = false
enterprise bool = false
skipRpmGen bool = false
skipDebGen bool = false
printGenVersion bool = false
"github.com/grafana/grafana/pkg/build"
)
func main() {
log.SetOutput(os.Stdout)
log.SetFlags(0)
var buildIdRaw string
var buildTagsRaw string
flag.StringVar(&goarch, "goarch", runtime.GOARCH, "GOARCH")
flag.StringVar(&goos, "goos", runtime.GOOS, "GOOS")
flag.StringVar(&gocc, "cc", "", "CC")
flag.StringVar(&libc, "libc", "", "LIBC")
flag.StringVar(&buildTagsRaw, "build-tags", "", "Sets custom build tags")
flag.BoolVar(&cgo, "cgo-enabled", cgo, "Enable cgo")
flag.StringVar(&pkgArch, "pkg-arch", "", "PKG ARCH")
flag.BoolVar(&race, "race", race, "Use race detector")
flag.BoolVar(&includeBuildId, "includeBuildId", includeBuildId, "IncludeBuildId in package name")
flag.BoolVar(&enterprise, "enterprise", enterprise, "Build enterprise version of Grafana")
flag.StringVar(&buildIdRaw, "buildId", "0", "Build ID from CI system")
flag.BoolVar(&isDev, "dev", isDev, "optimal for development, skips certain steps")
flag.BoolVar(&skipRpmGen, "skipRpm", skipRpmGen, "skip rpm package generation (default: false)")
flag.BoolVar(&skipDebGen, "skipDeb", skipDebGen, "skip deb package generation (default: false)")
flag.BoolVar(&printGenVersion, "gen-version", printGenVersion, "generate Grafana version and output (default: false)")
flag.Parse()
buildId = shortenBuildId(buildIdRaw)
readVersionFromPackageJson()
if pkgArch == "" {
pkgArch = goarch
}
if printGenVersion {
printGeneratedVersion()
return
}
if len(buildTagsRaw) > 0 {
buildTags = strings.Split(buildTagsRaw, ",")
}
log.Printf("Version: %s, Linux Version: %s, Package Iteration: %s\n", version, linuxPackageVersion, linuxPackageIteration)
if flag.NArg() == 0 {
log.Println("Usage: go run build.go build")
return
}
workingDir, _ = os.Getwd()
for _, cmd := range flag.Args() {
switch cmd {
case "setup":
setup()
case "build-srv", "build-server":
clean()
doBuild("grafana-server", "./pkg/cmd/grafana-server", buildTags)
case "build-cli":
clean()
doBuild("grafana-cli", "./pkg/cmd/grafana-cli", buildTags)
case "build":
//clean()
for _, binary := range binaries {
doBuild(binary, "./pkg/cmd/"+binary, buildTags)
}
case "build-frontend":
yarn("build")
case "sha-dist":
shaFilesInDist()
case "latest":
makeLatestDistCopies()
case "clean":
clean()
default:
log.Fatalf("Unknown command %q", cmd)
}
}
}
func makeLatestDistCopies() {
files, err := ioutil.ReadDir("dist")
if err != nil {
log.Fatalf("failed to create latest copies. Cannot read from /dist")
}
latestMapping := map[string]string{
"_amd64.deb": "dist/grafana_latest_amd64.deb",
".x86_64.rpm": "dist/grafana-latest-1.x86_64.rpm",
".linux-amd64.tar.gz": "dist/grafana-latest.linux-x64.tar.gz",
".linux-amd64-musl.tar.gz": "dist/grafana-latest.linux-x64-musl.tar.gz",
".linux-armv7.tar.gz": "dist/grafana-latest.linux-armv7.tar.gz",
".linux-armv7-musl.tar.gz": "dist/grafana-latest.linux-armv7-musl.tar.gz",
".linux-armv6.tar.gz": "dist/grafana-latest.linux-armv6.tar.gz",
".linux-arm64.tar.gz": "dist/grafana-latest.linux-arm64.tar.gz",
".linux-arm64-musl.tar.gz": "dist/grafana-latest.linux-arm64-musl.tar.gz",
}
for _, file := range files {
for extension, fullName := range latestMapping {
if strings.HasSuffix(file.Name(), extension) {
runError("cp", path.Join("dist", file.Name()), fullName)
}
}
}
}
func readVersionFromPackageJson() {
reader, err := os.Open("package.json")
if err != nil {
log.Fatal("Failed to open package.json")
return
}
defer reader.Close()
jsonObj := map[string]interface{}{}
jsonParser := json.NewDecoder(reader)
if err := jsonParser.Decode(&jsonObj); err != nil {
log.Fatal("Failed to decode package.json")
}
version = jsonObj["version"].(string)
linuxPackageVersion = version
linuxPackageIteration = ""
// handle pre version stuff (deb / rpm does not support semver)
parts := strings.Split(version, "-")
if len(parts) > 1 {
linuxPackageVersion = parts[0]
linuxPackageIteration = parts[1]
}
// add timestamp to iteration
if includeBuildId {
if buildId != "0" {
linuxPackageIteration = fmt.Sprintf("%s%s", buildId, linuxPackageIteration)
} else {
linuxPackageIteration = fmt.Sprintf("%d%s", time.Now().Unix(), linuxPackageIteration)
}
}
}
func yarn(params ...string) {
runPrint(`yarn run`, params...)
}
func genPackageVersion() string {
if includeBuildId {
return fmt.Sprintf("%v-%v", linuxPackageVersion, linuxPackageIteration)
} else {
return version
}
}
func setup() {
args := []string{"install", "-v"}
if goos == windows {
args = append(args, "-buildmode=exe")
}
args = append(args, "./pkg/cmd/grafana-server")
runPrint("go", args...)
}
func printGeneratedVersion() {
fmt.Print(genPackageVersion())
}
func test(pkg string) {
setBuildEnv()
args := []string{"test", "-short", "-timeout", "60s"}
if goos == windows {
args = append(args, "-buildmode=exe")
}
args = append(args, pkg)
runPrint("go", args...)
}
func doBuild(binaryName, pkg string, tags []string) {
libcPart := ""
if libc != "" {
libcPart = fmt.Sprintf("-%s", libc)
}
binary := fmt.Sprintf("./bin/%s-%s%s/%s", goos, goarch, libcPart, binaryName)
if isDev {
//don't include os/arch/libc in output path in dev environment
binary = fmt.Sprintf("./bin/%s", binaryName)
}
if goos == windows {
binary += ".exe"
}
if !isDev {
rmr(binary, binary+".md5")
}
args := []string{"build", "-ldflags", ldflags()}
if goos == windows {
// Work around a linking error on Windows: "export ordinal too large"
args = append(args, "-buildmode=exe")
}
if len(tags) > 0 {
args = append(args, "-tags", strings.Join(tags, ","))
}
if race {
args = append(args, "-race")
}
args = append(args, "-o", binary)
args = append(args, pkg)
if !isDev {
setBuildEnv()
runPrint("go", "version")
libcPart := ""
if libc != "" {
libcPart = fmt.Sprintf("/%s", libc)
}
fmt.Printf("Targeting %s/%s%s\n", goos, goarch, libcPart)
}
runPrint("go", args...)
if !isDev {
// Create an md5 checksum of the binary, to be included in the archive for
// automatic upgrades.
err := md5File(binary)
if err != nil {
log.Fatal(err)
}
}
}
func ldflags() string {
var b bytes.Buffer
b.WriteString("-w")
b.WriteString(fmt.Sprintf(" -X main.version=%s", version))
b.WriteString(fmt.Sprintf(" -X main.commit=%s", getGitSha()))
b.WriteString(fmt.Sprintf(" -X main.buildstamp=%d", buildStamp()))
b.WriteString(fmt.Sprintf(" -X main.buildBranch=%s", getGitBranch()))
if v := os.Getenv("LDFLAGS"); v != "" {
b.WriteString(fmt.Sprintf(" -extldflags \"%s\"", v))
}
return b.String()
}
func rmr(paths ...string) {
for _, path := range paths {
log.Println("rm -r", path)
os.RemoveAll(path)
}
}
func clean() {
if isDev {
return
}
rmr("dist")
rmr("tmp")
rmr(filepath.Join(build.Default.GOPATH, fmt.Sprintf("pkg/%s_%s/github.com/grafana", goos, goarch)))
}
func setBuildEnv() {
os.Setenv("GOOS", goos)
if goos == windows {
// require windows >=7
os.Setenv("CGO_CFLAGS", "-D_WIN32_WINNT=0x0601")
}
if goarch != "amd64" || goos != linux {
// needed for all other archs
cgo = true
}
if strings.HasPrefix(goarch, "armv") {
os.Setenv("GOARCH", "arm")
os.Setenv("GOARM", goarch[4:])
} else {
os.Setenv("GOARCH", goarch)
}
if cgo {
os.Setenv("CGO_ENABLED", "1")
}
if gocc != "" {
os.Setenv("CC", gocc)
}
}
func getGitBranch() string {
v, err := runError("git", "rev-parse", "--abbrev-ref", "HEAD")
if err != nil {
return "main"
}
return string(v)
}
func getGitSha() string {
v, err := runError("git", "rev-parse", "--short", "HEAD")
if err != nil {
return "unknown-dev"
}
return string(v)
}
func buildStamp() int64 {
// use SOURCE_DATE_EPOCH if set.
if s, _ := strconv.ParseInt(os.Getenv("SOURCE_DATE_EPOCH"), 10, 64); s > 0 {
return s
}
bs, err := runError("git", "show", "-s", "--format=%ct")
if err != nil {
return time.Now().Unix()
}
s, _ := strconv.ParseInt(string(bs), 10, 64)
return s
}
func runError(cmd string, args ...string) ([]byte, error) {
ecmd := exec.Command(cmd, args...)
bs, err := ecmd.CombinedOutput()
if err != nil {
return nil, err
}
return bytes.TrimSpace(bs), nil
}
func runPrint(cmd string, args ...string) {
log.Println(cmd, strings.Join(args, " "))
ecmd := exec.Command(cmd, args...)
ecmd.Stdout = os.Stdout
ecmd.Stderr = os.Stderr
err := ecmd.Run()
if err != nil {
log.Fatal(err)
}
}
func md5File(file string) error {
fd, err := os.Open(file)
if err != nil {
return err
}
defer fd.Close()
h := md5.New()
_, err = io.Copy(h, fd)
if err != nil {
return err
}
out, err := os.Create(file + ".md5")
if err != nil {
return err
}
_, err = fmt.Fprintf(out, "%x\n", h.Sum(nil))
if err != nil {
return err
}
return out.Close()
}
func shaFilesInDist() {
filepath.Walk("./dist", func(path string, f os.FileInfo, err error) error {
if path == "./dist" {
return nil
}
if !strings.Contains(path, ".sha256") {
err := shaFile(path)
if err != nil {
log.Printf("Failed to create sha file. error: %v\n", err)
}
}
return nil
})
}
func shaFile(file string) error {
fd, err := os.Open(file)
if err != nil {
return err
}
defer fd.Close()
h := sha256.New()
_, err = io.Copy(h, fd)
if err != nil {
return err
}
out, err := os.Create(file + ".sha256")
if err != nil {
return err
}
_, err = fmt.Fprintf(out, "%x\n", h.Sum(nil))
if err != nil {
return err
}
return out.Close()
}
func shortenBuildId(buildId string) string {
buildId = strings.Replace(buildId, "-", "", -1)
if len(buildId) < 9 {
return buildId
}
return buildId[0:8]
os.Exit(build.RunCmd())
}

View File

@@ -172,6 +172,12 @@ idle_conn_timeout_seconds = 90
# If enabled and user is not anonymous, data proxy will add X-Grafana-User header with username into the request.
send_user_header = false
# Limit the amount of bytes that will be read/accepted from responses of outgoing HTTP requests.
response_limit = 0
# Limits the number of rows that Grafana will process from SQL data sources.
row_limit = 1000000
#################################### Analytics ###########################
[analytics]
# Server reporting, sends usage counters to stats.grafana.org every 24 hours.
@@ -202,6 +208,18 @@ rudderstack_write_key =
# Rudderstack data plane url, enabled only if rudderstack_write_key is also set
rudderstack_data_plane_url =
# Rudderstack SDK url, optional, only valid if rudderstack_write_key and rudderstack_data_plane_url is also set
rudderstack_sdk_url =
# Rudderstack Config url, optional, used by Rudderstack SDK to fetch source config
rudderstack_config_url =
# Application Insights connection string. Specify an URL string to enable this feature.
application_insights_connection_string =
# Optional. Specifies an Application Insights endpoint URL where the endpoint string is wrapped in backticks ``.
application_insights_endpoint_url =
#################################### Security ############################
[security]
# disable creation of admin user on first start of grafana
@@ -216,6 +234,12 @@ admin_password = admin
# used for signing
secret_key = SW2YcwTIb9zpOOhoPsMm
# current key provider used for envelope encryption, default to static value specified by secret_key
encryption_provider = secretKey
# list of configured key providers, space separated (Enterprise only): e.g., awskms.v1 azurekv.v1
available_encryption_providers =
# disable gravatar profile images
disable_gravatar = false
@@ -498,9 +522,11 @@ role_attribute_path =
role_attribute_strict = false
groups_attribute_path =
id_token_attribute_name =
team_ids_attribute_path =
auth_url =
token_url =
api_url =
teams_url =
allowed_domains =
team_ids =
allowed_organizations =
@@ -508,6 +534,7 @@ tls_skip_verify_insecure = false
tls_client_cert =
tls_client_key =
tls_client_ca =
use_pkce = false
#################################### Basic Auth ##########################
[auth.basic]
@@ -715,11 +742,67 @@ global_session = -1
# global limit of alerts
global_alert_rule = -1
#################################### Unified Alerting ####################
[unified_alerting]
# Enable the Unified Alerting sub-system and interface. When enabled we'll migrate all of your alert rules and notification channels to the new system. New alert rules will be created and your notification channels will be converted into an Alertmanager configuration. Previous data is preserved to enable backwards compatibility but new data is removed when switching. When this configuration section and flag are not defined, the state is defined at runtime. See the documentation for more details.
enabled =
# Comma-separated list of organization IDs for which to disable unified alerting. Only supported if unified alerting is enabled.
disabled_orgs =
# Specify the frequency of polling for admin config changes.
# The interval string is a possibly signed sequence of decimal numbers, followed by a unit suffix (ms, s, m, h, d), e.g. 30s or 1m.
admin_config_poll_interval = 60s
# Specify the frequency of polling for Alertmanager config changes.
# The interval string is a possibly signed sequence of decimal numbers, followed by a unit suffix (ms, s, m, h, d), e.g. 30s or 1m.
alertmanager_config_poll_interval = 60s
# Listen address/hostname and port to receive unified alerting messages for other Grafana instances. The port is used for both TCP and UDP. It is assumed other Grafana instances are also running on the same port.
ha_listen_address = "0.0.0.0:9094"
# Explicit address/hostname and port to advertise other Grafana instances. The port is used for both TCP and UDP.
ha_advertise_address = ""
# Comma-separated list of initial instances (in a format of host:port) that will form the HA cluster. Configuring this setting will enable High Availability mode for alerting.
ha_peers = ""
# Time to wait for an instance to send a notification via the Alertmanager. In HA, each Grafana instance will
# be assigned a position (e.g. 0, 1). We then multiply this position with the timeout to indicate how long should
# each instance wait before sending the notification to take into account replication lag.
# The interval string is a possibly signed sequence of decimal numbers, followed by a unit suffix (ms, s, m, h, d), e.g. 30s or 1m.
ha_peer_timeout = 15s
# The interval between sending gossip messages. By lowering this value (more frequent) gossip messages are propagated
# across cluster more quickly at the expense of increased bandwidth usage.
# The interval string is a possibly signed sequence of decimal numbers, followed by a unit suffix (ms, s, m, h, d), e.g. 30s or 1m.
ha_gossip_interval = 200ms
# The interval between gossip full state syncs. Setting this interval lower (more frequent) will increase convergence speeds
# across larger clusters at the expense of increased bandwidth usage.
# The interval string is a possibly signed sequence of decimal numbers, followed by a unit suffix (ms, s, m, h, d), e.g. 30s or 1m.
ha_push_pull_interval = 60s
# Enable or disable alerting rule execution. The alerting UI remains visible. This option has a legacy version in the `[alerting]` section that takes precedence.
execute_alerts = true
# Alert evaluation timeout when fetching data from the datasource. This option has a legacy version in the `[alerting]` section that takes precedence.
# The timeout string is a possibly signed sequence of decimal numbers, followed by a unit suffix (ms, s, m, h, d), e.g. 30s or 1m.
evaluation_timeout = 30s
# Number of times we'll attempt to evaluate an alert rule before giving up on that evaluation. This option has a legacy version in the `[alerting]` section that takes precedence.
max_attempts = 3
# Minimum interval to enforce between rule evaluations. Rules will be adjusted if they are less than this value or if they are not multiple of the scheduler interval (10s). Higher values can help with resource management as we'll schedule fewer evaluations over time. This option has a legacy version in the `[alerting]` section that takes precedence.
# The interval string is a possibly signed sequence of decimal numbers, followed by a unit suffix (ms, s, m, h, d), e.g. 30s or 1m.
min_interval = 10s
#################################### Alerting ############################
[alerting]
# Disable alerting engine & UI features
enabled = true
# Makes it possible to turn off alert rule execution but alerting UI is visible
# Enable the legacy alerting sub-system and interface. If Unified Alerting is already enabled and you try to go back to legacy alerting, all data that is part of Unified Alerting will be deleted. When this configuration section and flag are not defined, the state is defined at runtime. See the documentation for more details.
enabled =
# Makes it possible to turn off alert execution but alerting UI is visible
execute_alerts = true
# Default setting for new alert rules. Defaults to categorize error and timeouts as alerting. (alerting, keep_state)
@@ -837,6 +920,10 @@ zipkin_propagation = false
# Not disabling is the most common setting when using Zipkin elsewhere in your infrastructure.
disable_shared_zipkin_spans = false
[tracing.opentelemetry.jaeger]
# jaeger destination (ex http://localhost:14268/api/traces)
address =
#################################### External Image Storage ##############
[external_image_storage]
# Used for uploading images to public servers so they can be included in slack/email messages.
@@ -894,10 +981,12 @@ enable_alpha = false
app_tls_skip_verify_insecure = false
# Enter a comma-separated list of plugin identifiers to identify plugins to load even if they are unsigned. Plugins with modified signatures are never loaded.
allow_loading_unsigned_plugins =
# Enable or disable installing plugins directly from within Grafana.
plugin_admin_enabled = false
# Enable or disable installing / uninstalling / updating plugins directly from within Grafana.
plugin_admin_enabled = true
plugin_admin_external_manage_enabled = false
plugin_catalog_url = https://grafana.com/grafana/plugins/
# Enter a comma-separated list of plugin identifiers to hide in the plugin catalog.
plugin_catalog_hidden_plugins =
#################################### Grafana Live ##########################################
[live]
@@ -964,12 +1053,14 @@ rendering_chrome_bin =
# Mode 'reusable' will have one browser instance and will create a new incognito page on each request.
rendering_mode =
# When rendering_mode = clustered you can instruct how many browsers or incognito pages can execute concurrently. Default is 'browser'
# When rendering_mode = clustered, you can instruct how many browsers or incognito pages can execute concurrently. Default is 'browser'
# and will cluster using browser instances.
# Mode 'context' will cluster using incognito pages.
rendering_clustering_mode =
# 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. Default is '5'.
rendering_clustering_max_concurrency =
# When rendering_mode = clustered, you can specify the duration a rendering request can take before it will time out. Default is `30` seconds.
rendering_clustering_timeout =
# Limit the maximum viewport width, height and device scale factor that can be requested.
rendering_viewport_max_width =

View File

@@ -178,6 +178,12 @@
# If enabled and user is not anonymous, data proxy will add X-Grafana-User header with username into the request, default is false.
;send_user_header = false
# Limit the amount of bytes that will be read/accepted from responses of outgoing HTTP requests.
;response_limit = 0
# Limits the number of rows that Grafana will process from SQL data sources.
;row_limit = 1000000
#################################### Analytics ####################################
[analytics]
# Server reporting, sends usage counters to stats.grafana.org every 24 hours.
@@ -202,6 +208,18 @@
# Google Tag Manager ID, only enabled if you specify an id here
;google_tag_manager_id =
# Rudderstack write key, enabled only if rudderstack_data_plane_url is also set
;rudderstack_write_key =
# Rudderstack data plane url, enabled only if rudderstack_write_key is also set
;rudderstack_data_plane_url =
# Rudderstack SDK url, optional, only valid if rudderstack_write_key and rudderstack_data_plane_url is also set
;rudderstack_sdk_url =
# Rudderstack Config url, optional, used by Rudderstack SDK to fetch source config
;rudderstack_config_url =
#################################### Security ####################################
[security]
# disable creation of admin user on first start of grafana
@@ -216,6 +234,12 @@
# used for signing
;secret_key = SW2YcwTIb9zpOOhoPsMm
# current key provider used for envelope encryption, default to static value specified by secret_key
;encryption_provider = secretKey
# list of configured key providers, space separated (Enterprise only): e.g., awskms.v1 azurekv.v1
;available_encryption_providers =
# disable gravatar profile images
;disable_gravatar = false
@@ -483,16 +507,19 @@
;auth_url = https://foo.bar/login/oauth/authorize
;token_url = https://foo.bar/login/oauth/access_token
;api_url = https://foo.bar/user
;teams_url =
;allowed_domains =
;team_ids =
;allowed_organizations =
;role_attribute_path =
;role_attribute_strict = false
;groups_attribute_path =
;team_ids_attribute_path =
;tls_skip_verify_insecure = false
;tls_client_cert =
;tls_client_key =
;tls_client_ca =
;use_pkce = false
#################################### Basic Auth ##########################
[auth.basic]
@@ -698,11 +725,67 @@
# global limit of alerts
;global_alert_rule = -1
#################################### Unified Alerting ####################
[unified_alerting]
#Enable the Unified Alerting sub-system and interface. When enabled we'll migrate all of your alert rules and notification channels to the new system. New alert rules will be created and your notification channels will be converted into an Alertmanager configuration. Previous data is preserved to enable backwards compatibility but new data is removed.```
;enabled = true
# Comma-separated list of organization IDs for which to disable unified alerting. Only supported if unified alerting is enabled.
;disabled_orgs =
# Specify the frequency of polling for admin config changes.
# The interval string is a possibly signed sequence of decimal numbers, followed by a unit suffix (ms, s, m, h, d), e.g. 30s or 1m.
;admin_config_poll_interval = 60s
# Specify the frequency of polling for Alertmanager config changes.
# The interval string is a possibly signed sequence of decimal numbers, followed by a unit suffix (ms, s, m, h, d), e.g. 30s or 1m.
;alertmanager_config_poll_interval = 60s
# Listen address/hostname and port to receive unified alerting messages for other Grafana instances. The port is used for both TCP and UDP. It is assumed other Grafana instances are also running on the same port. The default value is `0.0.0.0:9094`.
;ha_listen_address = "0.0.0.0:9094"
# Listen address/hostname and port to receive unified alerting messages for other Grafana instances. The port is used for both TCP and UDP. It is assumed other Grafana instances are also running on the same port. The default value is `0.0.0.0:9094`.
;ha_advertise_address = ""
# Comma-separated list of initial instances (in a format of host:port) that will form the HA cluster. Configuring this setting will enable High Availability mode for alerting.
;ha_peers = ""
# Time to wait for an instance to send a notification via the Alertmanager. In HA, each Grafana instance will
# be assigned a position (e.g. 0, 1). We then multiply this position with the timeout to indicate how long should
# each instance wait before sending the notification to take into account replication lag.
# The interval string is a possibly signed sequence of decimal numbers, followed by a unit suffix (ms, s, m, h, d), e.g. 30s or 1m.
;ha_peer_timeout = "15s"
# The interval between sending gossip messages. By lowering this value (more frequent) gossip messages are propagated
# across cluster more quickly at the expense of increased bandwidth usage.
# The interval string is a possibly signed sequence of decimal numbers, followed by a unit suffix (ms, s, m, h, d), e.g. 30s or 1m.
;ha_gossip_interval = "200ms"
# The interval between gossip full state syncs. Setting this interval lower (more frequent) will increase convergence speeds
# across larger clusters at the expense of increased bandwidth usage.
# The interval string is a possibly signed sequence of decimal numbers, followed by a unit suffix (ms, s, m, h, d), e.g. 30s or 1m.
;ha_push_pull_interval = "60s"
# Enable or disable alerting rule execution. The alerting UI remains visible. This option has a legacy version in the `[alerting]` section that takes precedence.
;execute_alerts = true
# Alert evaluation timeout when fetching data from the datasource. This option has a legacy version in the `[alerting]` section that takes precedence.
# The timeout string is a possibly signed sequence of decimal numbers, followed by a unit suffix (ms, s, m, h, d), e.g. 30s or 1m.
;evaluation_timeout = 30s
# Number of times we'll attempt to evaluate an alert rule before giving up on that evaluation. This option has a legacy version in the `[alerting]` section that takes precedence.
;max_attempts = 3
# Minimum interval to enforce between rule evaluations. Rules will be adjusted if they are less than this value or if they are not multiple of the scheduler interval (10s). Higher values can help with resource management as we'll schedule fewer evaluations over time. This option has a legacy version in the `[alerting]` section that takes precedence.
# The interval string is a possibly signed sequence of decimal numbers, followed by a unit suffix (ms, s, m, h, d), e.g. 30s or 1m.
;min_interval = 10s
#################################### Alerting ############################
[alerting]
# Disable alerting engine & UI features
;enabled = true
# Makes it possible to turn off alert rule execution but alerting UI is visible
# Disable legacy alerting engine & UI features
;enabled = false
# Makes it possible to turn off alert execution but alerting UI is visible
;execute_alerts = true
# Default setting for new alert rules. Defaults to categorize error and timeouts as alerting. (alerting, keep_state)
@@ -715,7 +798,6 @@
# This limit will protect the server from render overloading and make sure notifications are sent out quickly
;concurrent_render_limit = 5
# Default setting for alert calculation timeout. Default value is 30
;evaluation_timeout_seconds = 30
@@ -821,6 +903,10 @@
# Not disabling is the most common setting when using Zipkin elsewhere in your infrastructure.
;disable_shared_zipkin_spans = false
[tracing.opentelemetry.jaeger]
# jaeger destination (ex http://localhost:14268/api/traces)
; address = http://localhost:14268/api/traces
#################################### External image storage ##########################
[external_image_storage]
# Used for uploading images to public servers so they can be included in slack/email messages.
@@ -874,10 +960,12 @@
;app_tls_skip_verify_insecure = false
# Enter a comma-separated list of plugin identifiers to identify plugins to load even if they are unsigned. Plugins with modified signatures are never loaded.
;allow_loading_unsigned_plugins =
# Enable or disable installing plugins directly from within Grafana.
# Enable or disable installing / uninstalling / updating plugins directly from within Grafana.
;plugin_admin_enabled = false
;plugin_admin_external_manage_enabled = false
;plugin_catalog_url = https://grafana.com/grafana/plugins/
# Enter a comma-separated list of plugin identifiers to hide in the plugin catalog.
;plugin_catalog_hidden_plugins =
#################################### Grafana Live ##########################################
[live]
@@ -943,12 +1031,14 @@
# Mode 'reusable' will have one browser instance and will create a new incognito page on each request.
;rendering_mode =
# When rendering_mode = clustered you can instruct how many browsers or incognito pages can execute concurrently. Default is 'browser'
# When rendering_mode = clustered, you can instruct how many browsers or incognito pages can execute concurrently. Default is 'browser'
# and will cluster using browser instances.
# Mode 'context' will cluster using incognito pages.
;rendering_clustering_mode =
# 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. Default is '5'.
;rendering_clustering_max_concurrency =
# When rendering_mode = clustered, you can specify the duration a rendering request can take before it will time out. Default is `30` seconds.
;rendering_clustering_timeout =
# Limit the maximum viewport width, height and device scale factor that can be requested.
;rendering_viewport_max_width =
@@ -995,12 +1085,12 @@
[geomap]
# Set the JSON configuration for the default basemap
;default_baselayer_config = `{
"type": "xyz",
"config": {
"attribution": "Open street map",
"url": "https://tile.openstreetmap.org/{z}/{x}/{y}.png"
}
}`
; "type": "xyz",
; "config": {
; "attribution": "Open street map",
; "url": "https://tile.openstreetmap.org/{z}/{x}/{y}.png"
; }
;}`
# Enable or disable loading other base map layers
;enable_custom_baselayers = true

View File

@@ -6,6 +6,7 @@ This directory contains guides for contributors to the Grafana project.
- [Contributing documentation](documentation.md)
- [Developer guide](developer-guide.md)
- [Triage issues](triage-issues.md)
- [Merge a pull request](merge-pull-request.md)
The `style-guides` directory contains style guides for the Grafana software project and documentation.

View File

@@ -4,10 +4,10 @@ Are you looking to take on contributions with bigger impact? These guides help y
Learn more about the backend architecture:
- Part 1: [Services](backend/services.md)
- Part 1: [Services](backend/services.md)
- Part 2: [Communication](backend/communication.md)
- Part 3: [Database](backend/database.md)
Learn more about the frontend architecture:
- Part 1: [Data requests](frontend-data-requests.md)
- Part 1: [Data requests](frontend-data-requests.md)

View File

@@ -1,12 +1,12 @@
# Package hierarchy
The Go package hierarchy in Grafana should be organized logically (Ben Johnson's
[article](https://medium.com/@benbjohnson/standard-package-layout-7cdbc8391fc1) served as inspiration), according to the
[article](https://medium.com/@benbjohnson/standard-package-layout-7cdbc8391fc1) served as inspiration), according to the
following principles:
* Domain types and interfaces should be in "root" packages (not necessarily at the very top, of the hierarchy, but
- Domain types and interfaces should be in "root" packages (not necessarily at the very top, of the hierarchy, but
logical roots)
* Sub-packages should depend on roots - sub-packages here typically contain implementations, for example of services
- Sub-packages should depend on roots - sub-packages here typically contain implementations, for example of services
## Practical example

View File

@@ -2,71 +2,136 @@
A Grafana _service_ encapsulates and exposes application logic to the rest of the application, through a set of related operations.
Before a service can start communicating with the rest of Grafana, it needs to be registered in the _service registry_.
The service registry keeps track of all available services during runtime. On start-up, Grafana uses the registry to build a dependency graph of services, a _service graph_.
Grafana uses [Wire](https://github.com/google/wire), which is a code generation tool that automates connecting components using [dependency injection](https://en.wikipedia.org/wiki/Dependency_injection). Dependencies between components are represented in Wire as function parameters, encouraging explicit initialization instead of global variables.
Even though the services in Grafana do different things, they share a number of patterns. To better understand how a service works, let's build one from scratch!
## Create a service
Before a service can start communicating with the rest of Grafana, it needs to be registered with Wire, see `ProvideService` factory function/method in the service example below and how it's being referenced in the wire.go example below.
To start building a service:
When Wire is run it will inspect the parameters of `ProvideService` and make sure that all it's dependencies has been wired up and initialized properly.
- Create a new Go package `mysvc` in the [pkg/services](/pkg/services) directory.
- Create a `service.go` file inside your new directory.
All services need to implement the [Service](https://godoc.org/github.com/grafana/grafana/pkg/registry#Service) interface:
**Service example:**
```go
type MyService struct {
package example
// Service service is the service responsible for X, Y and Z.
type Service struct {
logger log.Logger
cfg *setting.Cfg
sqlStore *sqlstore.SQLStore
}
func (s *MyService) Init() error {
// ProvideService provides Service as dependency for other services.
func ProvideService(cfg *setting.Cfg, sqlStore *sqlstore.SQLStore) (*Service, error) {
s := &Service{
logger: log.New("service"),
cfg: cfg,
sqlStore: sqlStore,
}
if s.IsDisabled() {
// skip certain initialization logic
return s, nil
}
if err := s.init(); err != nil {
return nil, err
}
return s, nil
}
func (s *Service) init() error {
// additional initialization logic...
return nil
}
```
The `Init` method is used to initialize and configure the service to make it ready to use. Services that return an error halt Grafana's startup process and cause the error to be logged as it exits.
// IsDisabled returns true if the service is disabled.
//
// Satisfies the registry.CanBeDisabled interface which will guarantee
// that Run() is not called if the service is disabled.
func (s *Service) IsDisabled() bool {
return !s.cfg.IsServiceEnabled()
}
## Register a service
Every service needs to be registered with the application for it to be included in the service graph.
To register a service, call the `registry.RegisterService` function in an `init` function within your package.
```go
func init() {
registry.RegisterService(&MyService{})
// Run runs the service in the background.
//
// Satisfies the registry.BackgroundService interface which will
// guarantee that the service can be registered as a background service.
func (s *Service) Run(ctx context.Context) error {
// background service logic...
<-ctx.Done()
return ctx.Err()
}
```
`init` functions are only run whenever a package is imported, so we also need to import the package in the application. In the `server.go` file under `pkg/server`, import the package we just created:
[wire.go](/pkg/server/wire.go)
```go
import _ "github.com/grafana/grafana/pkg/services/mysvc"
```
// +build wireinject
## Dependencies
package server
Grafana uses the [inject](https://github.com/facebookgo/inject) package to inject dependencies during runtime.
import (
"github.com/google/wire"
"github.com/grafana/grafana/pkg/example"
"github.com/grafana/grafana/pkg/services/sqlstore"
)
For example, to access the [bus](communication.md), add it to the `MyService` struct:
var wireBasicSet = wire.NewSet(
example.ProvideService,
```go
type MyService struct {
Bus bus.Bus `inject:""`
)
var wireSet = wire.NewSet(
wireBasicSet,
sqlstore.ProvideService,
)
var wireTestSet = wire.NewSet(
wireBasicSet,
)
func Initialize(cla setting.CommandLineArgs, opts Options, apiOpts api.ServerOptions) (*Server, error) {
wire.Build(wireExtsSet)
return &Server{}, nil
}
```
You can also inject other services in the same way:
```go
type MyService struct {
Service other.Service `inject:""`
func InitializeForTest(cla setting.CommandLineArgs, opts Options, apiOpts api.ServerOptions, sqlStore *sqlstore.SQLStore) (*Server, error) {
wire.Build(wireExtsTestSet)
return &Server{}, nil
}
```
> **Note:** Any injected dependency needs to be an exported field. Any unexported fields result in a runtime error.
## Background services
A background service is a service that runs in the background of the lifecycle between Grafana starts up and shutdown. If you want a service to be run in the background your Service should satisfy the `registry.BackgroundService` interface and add it as argument to the [ProvideBackgroundServiceRegistry](/pkg/server/backgroundsvcs/background_services.go) function and add it as argument to `NewBackgroundServiceRegistry` to register it as a background service.
You can see an example implementation above of the Run method.
## Disabled services
If you want to guarantee that a background service is not run by Grafana when certain criteria is met/service is disabled your service should satisfy the `registry.CanBeDisabled` interface. When the service.IsDisabled method return false Grafana would not call the service.Run method.
If you want to run certain initialization code if service is disabled or not, you need to handle this in the service factory method.
You can see an example implementation above of the IsDisabled method and custom initialization code when service is disabled.
## Run Wire / generate code
When running `make run` it will call `make gen-go` on the first run. `gen-go` in turn will call the wire binary and generate the code in [wire_gen.go](/pkg/server/wire_gen.go) and [wire_gen.go](/pkg/cmd/grafana-cli/runner/wire_gen.go). The wire binary is installed using [bingo](https://github.com/bwplotka/bingo) which will make sure to download and install all the tools needed, including the Wire binary at using a specific version.
## OSS vs Enterprise
Grafana OSS and Grafana Enterprise shares code and dependencies. Grafana Enterprise might need to override/extend certain OSS services.
There's a [wireexts_oss.go](/pkg/server/wireexts_oss.go) that has the `wireinject` and `oss` build tags as requirements. Here services that might have other implementations, e.g. Grafana Enterprise, can be registered.
Similarly, there's a wireexts_enterprise.go file in the Enterprise source code repository where other service implementations can be overridden/be registered.
To extend oss background service create a specific background interface for that type and inject that type to [ProvideBackgroundServiceRegistry](/pkg/server/backgroundsvcs/background_services.go) instead of the concrete type. Then add a wire binding for that interface in [wireexts_oss.go](/pkg/server/wireexts_oss.go) and in the enterprise wireexts file.
## Methods

View File

@@ -3,6 +3,7 @@
[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.
@@ -12,29 +13,35 @@ If we wait for canceled requests to complete, it might create unnecessary load o
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/main/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_.
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.
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.
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.

View File

@@ -55,6 +55,17 @@ Pull requests that create new UI components or modify existing ones must adhere
- Use the [Grafana theme palette](/contribute/style-guides/themes.md) for styling. It contains colors with good contrast which aids accessibility.
- Use [RTL](https://testing-library.com/docs/dom-testing-library/api-accessibility/) for writing unit tests. It helps to create accessible components.
Pull requests that introduce accessibility(a11y) errors:
We use [pa11y-ci](https://github.com/pa11y/pa11y-ci) to collect accessibility errors on [some URLs on the project](https://github.com/grafana/grafana/issues/36555), threshold errors are specified per URL.
If the contribution introduces new a11y errors, our continuous integration will fail, preventing you to merge on the main branch. In those cases there are two alternatives for moving forward:
- Check the error log on the pipeline step `test-a11y-frontend-pr`, identify what was the error, and fix it.
- Locally run the command `yarn test:accessibility-report` that generates an HTML accessibility report, then go to the URL that contains your change, identify the error, and fix it. Keep in mind, a local e2e Grafana instance is going to be running on `http://localhost:3001`.
You can also prevent introducing a11y errors by installing an a11y plugin in your browser, for example, axe DevTools, Accessibility Insights for Web among others.
### Backend-specific guidelines
Please refer to the [backend style guidelines](/contribute/style-guides/backend.md).
@@ -84,23 +95,25 @@ The area should use upper camel case, e.g. UpperCamelCase.
Prefer using one of the following areas:
- **Build:** Changes to the build system, or external dependencies.
- **Chore:** Changes that don't affect functionality.
- **Dashboard:** Changes to the Dashboard feature.
- **Docs:** Changes to documentation.
- **Explore:** Changes to the Explore feature.
- **Plugins:** Changes to any of the plugins.
- **Build:** Change the build system, or external dependencies
- **Chore:** Change that don't affect functionality
- **Dashboard:** Change the Dashboard feature
- **Docs:** Change documentation
- **Explore:** Change the Explore feature
- **Plugins:** Change the ... plugin
For changes to data sources, the area should be the name of the data source, e.g., AzureMonitor, Graphite, and Prometheus.
For changes to data sources, the area is the name of the data source. For example, AzureMonitor, Graphite, or Prometheus.
For changes to panels, the area should be the name of the panel, suffixed with Panel, e.g., GraphPanel, SinglestatPanel, and TablePanel.
For changes to panels, the area is the name of the panel, suffixed with Panel. For example, GraphPanel, SinglestatPanel, or TablePanel.
**Examples**
- `Build: Support publishing MSI to grafana.com`
- `Explore: Add Live option for supported data sources`
- `GraphPanel: Fix legend sorting issues`
- `Docs: Changed url to URL in all documentation files`
- `Docs: Change url to URL in all documentation files`
If you're unsure, see the existing [changelog](https://github.com/grafana/grafana/blob/main/CHANGELOG.md) for inspiration or guidance.
### Pull request titles

View File

@@ -10,14 +10,8 @@ Make sure you have the following dependencies installed before setting up your d
- [Git](https://git-scm.com/)
- [Go](https://golang.org/dl/) (see [go.mod](../go.mod#L3) for minimum required version)
Additionally you'll need:
- [Node.js](https://nodejs.org) (see `volta.node` property in [package.json](../package.json) for the correct version).
- [Yarn](https://yarnpkg.com) (see `volta.yarn` property in [package.json](../package.json) for the correct version).
We recommend using [Volta](https://github.com/volta-cli/volta) to manage your JS toolchain.
Refer to the [Volta Getting Started Guide](https://docs.volta.sh/guide/getting-started) for setup instructions for your operating system.
- [Node.js (Long Term Support)](https://nodejs.org)
- [Yarn](https://yarnpkg.com)
### macOS
@@ -26,6 +20,8 @@ We recommend using [Homebrew](https://brew.sh/) for installing any missing depen
```
brew install git
brew install go
brew install node@16
npm install -g yarn
```
### Windows
@@ -52,7 +48,7 @@ Grafana consists of two components; the _frontend_, and the _backend_.
Before we can build the frontend assets, we need to install the dependencies:
```
yarn install --pure-lockfile
yarn install --immutable
```
After the command has finished, we can start building our source code:
@@ -85,7 +81,23 @@ When you log in for the first time, Grafana asks you to change your password.
The Grafana backend includes SQLite which requires GCC to compile. So in order to compile Grafana on Windows you need to install GCC. We recommend [TDM-GCC](http://tdm-gcc.tdragon.net/download). Eventually, if you use [Scoop](https://scoop.sh), you can install GCC through that.
You can simply build the back-end as follows: `go run build.go build`. The Grafana binaries will be in bin\\windows-amd64.
You can build the back-end as follows:
1. Follow the [instructions](https://github.com/google/wire#installing) to install the Wire tool.
2. Generate code using Wire:
```
# Normally Wire tool installed at $GOPATH/bin/wire.exe
<Wire tool install path> gen -tags oss ./pkg/server ./pkg/cmd/grafana-cli/runner
```
3. Build the Grafana binaries:
```
go run build.go build
```
The Grafana binaries will be in bin\\windows-amd64.
Alternately, if you wish to use the `make` command, install [Make for Windows](http://gnuwin32.sourceforge.net/packages/make.htm) and use it in a Unix shell (f.ex. Git Bash).
## Test Grafana
@@ -192,11 +204,6 @@ 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:
1. Build the frontend: `go run build.go build-frontend`.
1. Build the Docker image: `make build-docker-dev`.
**Note:** If you are using Docker for macOS, be sure to set the memory limit to be larger than 2 GiB. Otherwise, `grunt build` may fail. The memory limit settings are available under **Docker Desktop** -> **Preferences** -> **Advanced**.
## Troubleshooting
@@ -216,7 +223,7 @@ ulimit -a
To change the number of open files allowed, run:
```
ulimit -S -n 2048
ulimit -S -n 4096
```
The number of files needed may be different on your environment. To determine the number of open files needed by `make run`, run:

View File

@@ -17,6 +17,6 @@ mage protobuf
After upgrading the protobuf dependency in Grafana and the plugin SDK, it might be wise to test that things still work,
before making corresponding PRs:
* Test a plugin built with upgraded SDK on upgraded Grafana
* Test a plugin built with non-upgraded SDK on upgraded Grafana
* Test a plugin built with upgraded SDK on non-upgraded Grafana
- Test a plugin built with upgraded SDK on upgraded Grafana
- Test a plugin built with non-upgraded SDK on upgraded Grafana
- Test a plugin built with upgraded SDK on non-upgraded Grafana

View File

@@ -6,12 +6,12 @@ This document defines technical terms used in Grafana.
## TLS/SSL
The acronyms [TLS](https://en.wikipedia.org/wiki/Transport_Layer_Security) (Transport Layer Security and
The acronyms [TLS](https://en.wikipedia.org/wiki/Transport_Layer_Security) (Transport Layer Security and
[SSL](https://en.wikipedia.org/wiki/SSL) (Secure Socket Layer) are both used to describe the HTTPS security layer,
and are in practice synonymous. However, TLS is considered the current name for the technology, and SSL is considered
[deprecated](https://tools.ietf.org/html/rfc7568).
[deprecated](https://tools.ietf.org/html/rfc7568).
As such, while both terms are in use (also in our codebase) and are indeed interchangeable, TLS is the preferred term.
That said however, we have at Grafana Labs decided to use both acronyms in combination when referring to this type of
As such, while both terms are in use (also in our codebase) and are indeed interchangeable, TLS is the preferred term.
That said however, we have at Grafana Labs decided to use both acronyms in combination when referring to this type of
technology, i.e. _TLS/SSL_. This is in order to not confuse those who may not be aware of them being synonymous,
and SSL still being so prevalent in common discourse.

View File

@@ -0,0 +1,118 @@
# Merge a pull request
When a pull request has been reviewed and approved by at least one person and all checks have passed it's time to merge the pull request.
## Who is expected to merge a pull request?
Maintainers are responsible for merging all pull requests. If a maintainer has opened a pull request the general rule is that the same maintainer merges the pull request. If a non-maintainer has opened a pull request it's suggested that one of the maintainers reviewing the pull request merges the pull request.
## Checklist/summary
The following checklist/summary should give you a quick overview of what to ask/consider before merging a pull request.
- Reviewed and approved?
- All checks passed?
- Proper pull request title?
- Milestone assigned?
- Add to changelog/release notes?
- Needs backporting?
## Before merge
Before actually merging a pull request there's a couple of things to take into consideration.
### Format the pull request title
Make sure that the pull request title is properly formatted according to `<Area>: <Summary>` and try to make the summary short and understandable for the community as a whole.
All commits in a pull request are squashed when merged and the pull request title will be the default subject line of the squashed commit message. It's also used for [changelog/release notes](#include-in-changelog-and-release-notes).
See [formatting guidelines](create-pull-request.md#formatting-guidelines) for more information.
### Assign a milestone
It's recommended to add a milestone to every pull request. This makes it easier to track what changes did go into a certain release. Without this you're basically left with going through git commits which could be a lot harder.
There's also various tooling built that in some cases requires a pull request to be assigned a milestone, for example [generating changelog/release notes](#include-in-changelog-and-release-notes).
### Include in changelog and release notes?
At Grafana we generate the [changelog](https://github.com/grafana/grafana/blob/main/CHANGELOG.md) and [release notes](https://grafana.com/docs/grafana/latest/release-notes/) based on merged pull requests. Including changes in the changelog/release notes is very important to provide a somewhat complete picture of what changes a Grafana release actually includes.
Exactly what changes should be added to the changelog is hard to answer but some general guidance would be any change that you think would be interesting for the community as a whole. Use your best judgement and/or ask other maintainers for advice.
There's a GitHub action available in the repository named [Update changelog](https://github.com/grafana/grafana/blob/main/.github/workflows/update-changelog.yml) that can manually be triggered to re-generate the changelog and release notes for any release.
To include a pull request in the changelog/release notes the general rule of thumb is that a milestone should be assigned and labeled with `add to changelog`.
The changelog/release notes are divided into sections and here's a description of how you make a pull request show up in a certain section.
**Features and enhancements:**
Milestone assigned and labeled with `add to changelog` and any of the other section rules don't apply.
**Bug fixes:**
Milestone assigned and labeled with `add to changelog` and either labeled with `type/bug` or the pull request title contains `fix` or `fixes`.
**Plugin development fixes & changes:**
Milestone assigned and labeled with `area/grafana/toolkit`, `area/grafana/ui` or `area/grafana/runtime`.
**Deprecations:**
In case the pull request introduces a deprecation you should document this. Label the pull request with `add to changelog` and use the following template at the end of the pull request description describing the deprecation change.
```md
# Deprecation notice
<Deprecation description>
```
**Breaking changes:**
In case the pull request introduces a breaking change you should document this. Label the pull request with `add to changelog` and `breaking change` and use the following template at the end of the pull request description describing the breaking change.
```md
# Release notice breaking change
<Breaking change description>
```
### Should the pull request be backported?
If your pull request has changes that need to go into one or several existing release branches you need to backport the changes. Please refer to [Backport PR](.github/bot.md#backport-pr) for detailed instructions.
Some examples when backport is required:
- The change needs to be released in the next upcoming patch release, e.g. v8.1.3, so you have to backport it, e.g. into the v8.1.x release branch.
- You have a change to be released in the next major/minor release, e.g. v8.0.0, and there's already a release branch, e.g. v8.0.x, you have to backport it, e.g. into the v8.0.x release branch.
- The change includes documentation changes that needs to be updated for one or multiple older versions, then you have to backport it to each release branch.
Some examples when backport is not required:
- The change is supposed to be released in the next major/minor release, e.g. v8.0.0, but the release branch, e.g. v8.0.x, has not yet been created.
> **Note:** You can still backport a pull request after it's been merged.
## Doing the actual merge
Time to actually merge the pull request changes. All commits in a pull request are squashed, hence the GitHub `Squash and merge` button is used to initialize the merge.
This will present you with options allowing you to optionally change the commit message before merging. Please remember that developers might use the commit information when reviewing changes of files, doing git blame and resolving merge conflicts etc., trying to quickly figure out what the actual change was. But there's not really any best practices around this, the following is an attempt to bring some guidance.
Do:
- Make sure the pull request title is formatted properly before merging, this will automatically give you a good and short summary of the commit/change.
- Leave `Co-authored-by:` lines as is so that co-authors will be accounted for the contribution.
- Remove any commit information that doesn't bring any context to the change.
Consider:
- Add any references to issues that the pull request fixes/closes/references to ease giving quick context to things. Doing this allows cross-reference between the commit and referenced issue(s).
Finalize the merge by clicking on the `Confirm squash and merge` button.
## After the merge
Make sure to close any referenced/related issues. It's recommended to assign the same milestone on the issues that the pull request fixes/closes, but not required.

View File

@@ -42,8 +42,8 @@ In the `sqlstore` package we do database operations in tests and while some migh
### Assertions
Use respectively [`assert.*`](https://github.com/stretchr/testify#assert-package) functions to make assertions that
should _not_ halt the test ("soft checks") and [`require.*`](https://github.com/stretchr/testify#require-package)
Use respectively [`assert.*`](https://github.com/stretchr/testify#assert-package) functions to make assertions that
should _not_ halt the test ("soft checks") and [`require.*`](https://github.com/stretchr/testify#require-package)
functions to make assertions that _should_ halt the test ("hard checks"). Typically you want to use the latter type of
check to assert that errors have or have not happened, since continuing the test after such an assertion fails is
chaotic (the system under test will be in an undefined state) and you'll often have segfaults in practice.
@@ -70,10 +70,10 @@ In general, use value types and only reach for pointers when there's a real need
increase the risk of bugs, since a pointer can be nil and dereferencing a nil pointer leads to a panic (AKA segfault).
Valid reasons to use a pointer include (but not necessarily limited to):
* You might need to pass a modifiable argument to a function
* Copying an object might incur a performance hit (benchmark to check your assumptions, copying is often faster than
- You might need to pass a modifiable argument to a function
- Copying an object might incur a performance hit (benchmark to check your assumptions, copying is often faster than
allocating heap memory)
* You might *need* `nil` to tell if a variable isn't set, although usually it's better to use the type's zero
- You might _need_ `nil` to tell if a variable isn't set, although usually it's better to use the type's zero
value to tell instead
## Database
@@ -83,7 +83,7 @@ In database related code, we follow certain patterns.
### Foreign keys
While they can be useful, we don't generally use foreign key constraints in Grafana, for historical and
technical reasons. See this [comment](https://github.com/grafana/grafana/issues/3269#issuecomment-383328548) by Torkel
technical reasons. See this [comment](https://github.com/grafana/grafana/issues/3269#issuecomment-383328548) by Torkel
for context.
### Unique columns
@@ -93,7 +93,7 @@ If a column, or column combination, should be unique, add a corresponding unique
## JSON
The simplejson package is used a lot throughout the backend codebase, but it's legacy, so if at all possible
avoid using it in new code. Use [json-iterator](https://github.com/json-iterator/go) instead, which is a more performant
avoid using it in new code. Use [json-iterator](https://github.com/json-iterator/go) instead, which is a more performant
drop-in alternative to the standard [encoding/json](https://golang.org/pkg/encoding/json/) package. While encoding/json
is a fine choice, profiling shows that json-iterator may be 3-4 times more efficient for encoding. We haven't profiled
its parsing performance yet, but according to json-iterator's own benchmarks, it appears even more superior in this

View File

@@ -1,4 +1,4 @@
# Guidelines for code comments in grafana-* packages
# Guidelines for code comments in grafana-\* packages
This document aims to give you some recommendation on how to add code comments to the exported code in the grafana packages.
@@ -9,11 +9,12 @@ This document aims to give you some recommendation on how to add code comments t
1. [Deprecate an API](#deprecate-an-api)
1. [Specify parameters](#specify-parameters)
1. [Set return values](#set-return-values)
____
## Add package description
---
Each package has an overview explaining the overall responsibility and usage of the package.
## Add package description
Each package has an overview explaining the overall responsibility and usage of the package.
You can document this description with [`@packageDocumentation`](https://api-extractor.com/pages/tsdoc/tag_packagedocumentation/) tag.
@@ -32,33 +33,34 @@ All `exported` apis from the package should have a release tag to indicate its s
Add a tag to mark the stability of the whole exported `class/interface/function/type` etc.
Please place the `release tag` at the bottom of the comment to make it consistent among files and easier to read.
Please place the `release tag` at the bottom of the comment to make it consistent among files and easier to read.
**Do:**
```typescript
````typescript
/**
* Will help to create DataFrame objects and handle
* Will help to create DataFrame objects and handle
* the heavy lifting of creating a complex object.
*
*
* @example
* ```typescript
* const dataFrame = factory.create();
* ```
*
*
* @public
**/
export class DataFrameFactory {
create(): DataFrame { }
create(): DataFrame {}
}
```
````
**Don't**
```typescript
````typescript
/**
* Will help to create DataFrame objects and handle
* Will help to create DataFrame objects and handle
* the heavy lifting of creating a complex object.
*
*
* @public
* @example
* ```typescript
@@ -66,9 +68,9 @@ export class DataFrameFactory {
* ```
**/
export class DataFrameFactory {
create(): DataFrame { }
create(): DataFrame {}
}
```
````
### Partial stability of APIs
@@ -78,59 +80,61 @@ Then override the non-stable parts of the API with the proper [release tag](#rel
**Do:**
```typescript
````typescript
/**
* Will help to create DataFrame objects and handle
* Will help to create DataFrame objects and handle
* the heavy lifting of creating a complex object.
*
*
* @example
* ```typescript
* const dataFrame = factory.create();
* ```
*
*
* @public
**/
export class DataFrameFactory {
create(): DataFrame { }
create(): DataFrame {}
/**
* @beta
**/
createMany(): DataFrames[] {}
/**
* @beta
**/
createMany(): DataFrames[] {}
}
```
````
**Don't**
```typescript
````typescript
/**
* Will help to create DataFrame objects and handle
* Will help to create DataFrame objects and handle
* the heavy lifting of creating a complex object.
*
*
* @example
* ```typescript
* const dataFrame = factory.create();
* ```
**/
export class DataFrameFactory {
/**
* @public
**/
create(): DataFrame { }
/**
* @public
**/
create(): DataFrame {}
/**
* @beta
**/
createMany(): DataFrame[] {}
/**
* @beta
**/
createMany(): DataFrame[] {}
}
```
````
## Deprecate an API
If you want to mark an API as deprecated to signal that this API will be removed in the future, then add the [`@deprecated`](https://api-extractor.com/pages/tsdoc/tag_deprecated/) tag.
If applicable add a reason why the API is deprecated directly after the `@deprecated tag`.
## Specify parameters
If you want to specify the possible parameters that can be passed to an API, then add the [`@param`](https://api-extractor.com/pages/tsdoc/tag_param/) tag.
This attribute can be skipped if the type provided by `typescript` and the function comment or the function name is enough to explain what the parameters are.
@@ -141,17 +145,17 @@ This attribute can be skipped if the type provided by `typescript` and the funct
/**
* Will help to create a resource resolver depending
* on the current execution context.
*
*
* @param context - The current execution context.
* @returns FileResolver if executed on the server otherwise a HttpResolver.
* @public
**/
export const factory = (context: Context): IResolver => {
if (context.isServer) {
return new FileResolver();
}
return new HttpResolver();
}
if (context.isServer) {
return new FileResolver();
}
return new HttpResolver();
};
```
**Don't**
@@ -159,18 +163,18 @@ export const factory = (context: Context): IResolver => {
```typescript
/**
* Will compare two numbers to see if they are equal to each others.
*
*
* @param x - The first number
* @param y - The second number
* @public
**/
export const isEqual = (x: number, y: number): boolean => {
return x === y;
}
return x === y;
};
```
## Set return values
If you want to specify the return value from a function you can use the [`@returns`](https://api-extractor.com/pages/tsdoc/tag_returns/) tag.
This attribute can be skipped if the type provided by `typescript` and the function comment or the function name is enough to explain what the function returns.
@@ -181,17 +185,17 @@ This attribute can be skipped if the type provided by `typescript` and the funct
/**
* Will help to create a resource resolver depending
* on the current execution context.
*
*
* @param context - The current execution context.
* @returns FileResolver if executed on the server otherwise a HttpResolver.
* @public
**/
export const factory = (context: Context): IResolver => {
if (context.isServer) {
return new FileResolver();
}
return new HttpResolver();
}
if (context.isServer) {
return new FileResolver();
}
return new HttpResolver();
};
```
**Don't**
@@ -199,11 +203,11 @@ export const factory = (context: Context): IResolver => {
```typescript
/**
* Will compare two numbers to see if they are equal to each others.
*
*
* @returns true if values are equal
* @public
**/
export const isEqual = (x: number, y: number): boolean => {
return x === y;
}
return x === y;
};
```

View File

@@ -12,19 +12,18 @@ In Markdown, the number of "#" symbols creates different heading levels, similar
- \#\# is \<h2>.
- \#\#\# is \<h3>.
Start your document with a single ``#`` for the title of the page. Add the sub-headings with two ``##``.
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.
**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_``. Do not use the single asterisk, it can be easily confused with bold.
- 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.
## Links and references
Create links to other website by wrapping the display text in square brackets, and the web URL in curved brackets.
@@ -62,12 +61,13 @@ Write the name of the language after the first set of back tics, no spaces, to s
```javascript
function testNum(a) {
if (a > 0) {
return "positive";
return 'positive';
} else {
return "NOT positive";
return 'NOT positive';
}
}
```
## 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 "|".
@@ -82,9 +82,9 @@ Cell one data| Cell two data
Will publish as:
Heading one | Heading two
------------|------------
Cell one data| Cell two data
| Heading one | Heading two |
| ------------- | ------------- |
| Cell one data | Cell two data |
## Lists
@@ -121,19 +121,20 @@ _Do not_ use image shortcodes at this time.
Include images in a document using the following syntax:
```
![Alt text](link to image, starting with /img/docs/ if it is to an internal image "Title of image in sentence case")
![Alt text](link to image, starting with /static/img/docs/ if it is to an internal image "Title of image in sentence case")
```
> **Note:** Alt text does not appear when the user hovers the mouse over the image, but title text does.
**Examples:**
**Examples:**
- \!\[Grafana logo](/link/to/grafanalogo/logo.png)
- \!\[Example](/img/docs/folder_name/alert_test_rule.png)
- \!\[Grafana logo](/link/to/grafanalogo/logo.png "Grafana logo")
- \!\[Example](/static/img/docs/folder_name/alert_test_rule.png "Example title")
This follows the format of "!", alt text wrapped in "[]" and the link URL wrapped in "()".
You can also use HTML such as the following:
```
<img src="example.png"
alt="Example image"

View File

@@ -4,13 +4,13 @@ This style guide applies to all documentation created for Grafana products.
For information about how to write technical documentation, refer to the following resources:
* [Google Technical Writing courses](https://developers.google.com/tech-writing)
* [Divio documentation system](https://documentation.divio.com/)
* [Vue writing principles](https://v3.vuejs.org/guide/contributing/writing-guide.html#principles)
- [Google Technical Writing courses](https://developers.google.com/tech-writing)
- [Divio documentation system](https://documentation.divio.com/)
- [Vue writing principles](https://v3.vuejs.org/guide/contributing/writing-guide.html#principles)
## Contributing
The *Documentation style guide* is a living document. Add to it whenever a style decision is made or a question is answered regarding style, grammar, or word choice.
The _Documentation style guide_ is a living document. Add to it whenever a style decision is made or a question is answered regarding style, grammar, or word choice.
## Published guides
@@ -46,10 +46,14 @@ Avoid _master_ or _slave_.
## Grafana-specific style
The following guidelines are specific to Grafana documentation. For the most part, these are *guidelines* are not rigid rules. If you have questions, then please ask in the #docs channel of Grafana Slack.
The following guidelines are specific to Grafana documentation. For the most part, these are _guidelines_ are not rigid rules. If you have questions, then please ask in the #docs channel of Grafana Slack.
### General
Per the [Voice and tone](https://developers.google.com/style/tone) section of the Google developer documentation style guide:
> In your documents, aim for a voice and tone that's conversational, friendly, and respectful without being overly colloquial or frivolous; a voice that's casual and natural and approachable, not pedantic or pushy. Try to sound like a knowledgeable friend who understands what the developer wants to do.
- Use active voice:
- Active: Grafana displays the heatmap visualization.
- Passive: The heatmap visualization is displayed.
@@ -104,6 +108,7 @@ However, sometimes we need to use headings as numbered steps. This is mostly in
If that is the case, then use the following format for headings:
##### Step 1. Install the software
##### Step 2. Run the software
### Images
@@ -149,6 +154,7 @@ In general, "integration" is not capitalized. Only capitalize it if it is capita
The first letter of the name of an integration is always capitalized, even if the original named source is lowercase.
**Examples:**
- MySQL Integration
- CockroachDB Integration
- Etcd Integration
@@ -212,16 +218,20 @@ Warnings tell the user not to do something. For example:
- Do not assume everyone is using Linux. Make sure instructions include enough information for Windows and Mac users to successfully complete procedures.
- Do not add `$` before commands. Make it easy for users to copy and paste commands.
- **Right:** `sudo yum install grafana`
- **Wrong:** `$ sudo yum install grafana`
- Include `sudo` before commands that require `sudo` to work.
For terminal examples and Grafana configuration, use a `bash` code block:
```bash
sudo yum install grafana
```
For HTTP request/response, use an `http` code block:
```http
GET /api/dashboards/id/1/permissions HTTP/1.1
Accept: application/json
@@ -259,6 +269,7 @@ Two words if used as a verb, one word if used as a noun.
Two words, not one.
**Exceptions:**
- "datasource" used as an identifier
- "datasource" in a URL
- Use "data source" instead of "datasource" unless used as an identifier, in code, or as part of a URL.
@@ -267,7 +278,8 @@ Two words, not one.
#### display (verb)
*Display* is a transitive verb, which means it always needs a direct object.
_Display_ is a transitive verb, which means it always needs a direct object.
- Correct, active voice: Grafana displays your list of active alarms.
- Correct, but passive voice: Your list of active alarms is displayed.
- Incorrect: The list of active alarms displays.
@@ -327,6 +339,7 @@ Two words, not one.
**Incorrect:** webserver
### MS SQL Server
Always use "MS SQL" when referring to MS SQL Server application.
Incorrect UI spellings will be corrected in a later version of Grafana.

View File

@@ -22,4 +22,4 @@ The above commands use some utils scripts under [_\<repo-root>/e2e_](../../e2e)
## 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.
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

@@ -23,20 +23,13 @@ Inspired by https://martinfowler.com/bliki/PageObject.html
Let's start with a simple [JSX](https://reactjs.org/docs/introducing-jsx.html) example containing a single input field that we want to populate during our E2E test:
```jsx
<input
className="gf-form-input login-form-input"
type="text"
/>
<input className="gf-form-input login-form-input" type="text" />
```
We _could_ target the field with a CSS selector like `.gf-form-input.login-form-input` but that would be brittle as style changes occur frequently. Furthermore there is nothing that signals to future developers that this input is part of an E2E test. At Grafana, we use `aria-label` attributes as our preferred way of defining selectors instead of [`data-*`](https://mdn.io/docs/Web/HTML/Global_attributes/data-*) as they also aid in [accessibility](https://mdn.io/docs/Learn/Accessibility/What_is_accessibility):
```jsx
<input
aria-label="Username input field"
className="gf-form-input login-form-input"
type="text"
/>
<input aria-label="Username input field" className="gf-form-input login-form-input" type="text" />
```
The next step is to create a `Page` representation in our E2E framework to glue the test with the real implementation using the `pageFactory` function. For that function we can supply a `url` and `selectors` like in the example below:
@@ -45,7 +38,6 @@ The next step is to create a `Page` representation in our E2E framework to glue
export const Login = {
// Called via `Login.visit()`
url: '/login',
// Called via `Login.username()`
username: 'Username input field',
};
@@ -67,11 +59,7 @@ Now that we have a `Page` called `Login` in our `Pages` const we can use that to
```jsx
import { selectors } from '@grafana/e2e-selectors';
<input
aria-label={selectors.pages.Login.username}
className="gf-form-input login-form-input"
type="text"
/>
<input aria-label={selectors.pages.Login.username} className="gf-form-input login-form-input" type="text" />;
```
The last step in our example is to use our `Login` page as part of a test.
@@ -86,9 +74,7 @@ describe('Login test', () => {
e2e.pages.Login.visit();
// To prevent flaky tests, always do a `.should` on any selector that you expect to be in the DOM.
// Read more here: https://docs.cypress.io/guides/core-concepts/retry-ability.html#Commands-vs-assertions
e2e.pages.Login.username()
.should('be.visible')
.type('admin');
e2e.pages.Login.username().should('be.visible').type('admin');
});
});
```
@@ -154,25 +140,28 @@ describe('List test', () => {
e2e.pages.DataSources.visit();
// To prevent flaky tests, always do a .should on any selector that you expect to be in the DOM.
// Read more here: https://docs.cypress.io/guides/core-concepts/retry-ability.html#Commands-vs-assertions
e2e.pages.DataSources.dataSources('B')
.should('be.visible')
.click();
e2e.pages.DataSources.dataSources('B').should('be.visible').click();
});
});
```
## Aria-Labels vs data-testid
Our selectors are set up to work with both aria-labels and data-testid attributes. Aria-labels help assistive technologies such as screenreaders identify interactive elements of a page for our users.
Our selectors are set up to work with both aria-labels and data-testid attributes. Aria-labels help assistive technologies such as screenreaders identify interactive elements of a page for our users.
A good example of a time to use an aria-label might be if you have a button with an X to close:
```
<button aria-label="close">X<button>
```
It might be clear visually that the X closes the modal, but audibly it would not be clear for example.
```
<button aria-label="close">Close<button>
```
The above example for example might read aloud to a user "Close, Close" or something similar.
The example might read aloud to a user as "Close, Close" or something similar.
However adding aria-labels to elements that are already clearly labeled or not interactive can be confusing and redundant for users with assistive technologies.
@@ -185,16 +174,18 @@ In such cases rather than adding unnecessary aria-labels to components so as to
We have added support for this in our selectors, to use:
Prefix your selector string with "data-testid":
```typescript
export const Components = {
Login: {
openButton: "data-testid-open", // this would look for a data-testid
closeButton: "close-button" // this would look for an aria-label
openButton: 'open-button', // this would look for an aria-label
closeButton: 'data-testid modal-close-button', // this would look for a data-testid
},
};
```
and in your component, import the selectors and add the data test id:
```
<button data-testid={Selectors.Components.Login.closeButton}>
```
<button data-testid={Selectors.Components.Login.openButton}>
```

View File

@@ -5,6 +5,7 @@ Generally we follow the Airbnb [React Style Guide](https://github.com/airbnb/jav
## Table of Contents
- [Frontend Style Guide](#frontend-style-guide)
- [Table of Contents](#table-of-contents)
- [Basic rules](#basic-rules)
- [Naming conventions](#naming-conventions)
@@ -28,12 +29,12 @@ Generally we follow the Airbnb [React Style Guide](https://github.com/airbnb/jav
- [Linting](#linting)
- [React](#react)
- [Props](#props)
- [Name callback props and handlers with an "on" prefix.](#name-callback-props-and-handlers-with-an-on-prefix)
- [React Component definitions](#react-component-definitions)
- [React Component constructor](#react-component-constructor)
- [React Component defaultProps](#react-component-defaultprops)
- [Name callback props and handlers with an "on" prefix.](#name-callback-props-and-handlers-with-an-on-prefix)
- [React Component definitions](#react-component-definitions)
- [React Component constructor](#react-component-constructor)
- [React Component defaultProps](#react-component-defaultprops)
- [State management](#state-management)
- [Proposal for removing or replacing Angular dependencies](https://github.com/grafana/grafana/pull/23048)
## Basic rules
@@ -194,12 +195,12 @@ _SASS styles are deprecated. Please migrate to Emotion whenever you need to modi
### Typing
In general, you should let Typescript infer the types so that there's no need to explicitly define type for each variable.
In general, you should let Typescript infer the types so that there's no need to explicitly define type for each variable.
There are some exceptions to this:
```typescript
// Typescript needs to know type of arrays or objects otherwise it would infer it as array of any
// Typescript needs to know type of arrays or objects otherwise it would infer it as array of any
// bad
const stringArray = [];
@@ -208,7 +209,7 @@ const stringArray = [];
const stringArray: string[] = [];
```
Specify function return types explicitly in new code. This improves readability by being able to tell what a function returns just by looking at the signature. It also prevents errors when a function's return type is broader than expected by the author.
Specify function return types explicitly in new code. This improves readability by being able to tell what a function returns just by looking at the signature. It also prevents errors when a function's return type is broader than expected by the author.
> **Note:** We don't have linting for this enabled because of lots of old code that needs to be fixed first.
@@ -216,18 +217,18 @@ Specify function return types explicitly in new code. This improves readability
// bad
function transform(value?: string) {
if (!value) {
return undefined
return undefined;
}
return applyTransform(value)
};
return applyTransform(value);
}
// good
function transform(value?: string): TransformedValue | undefined {
if (!value) {
return undefined
return undefined;
}
return applyTransform(value)
};
return applyTransform(value);
}
```
### File and directory naming conventions
@@ -244,6 +245,8 @@ For files exporting multiple utility functions, use the name that describes the
- Use `reducers.ts` Redux reducers.
- Use `*.test.ts(x)` for test files.
- Use kebab case for directory names: lowercase, words delimited by hyphen ( `-` ). For example, `features/new-important-feature/utils.ts`.
### Code organization
Organize your code in a directory that encloses feature code:
@@ -265,6 +268,7 @@ For code that needs to be used by external plugin:
- Use named exports for all code you want to export from a file.
- Use declaration exports (i.e. `export const foo = ...`).
- Avoid using default exports (for example, `export default foo`).
- Export only the code that is meant to be used outside the module.
### Comments
@@ -341,6 +345,14 @@ static defaultProps = { ... }
static defaultProps: Partial<Props> = { ... }
```
### How to declare functional components
We recommend using named regular functions when creating a new react functional component.
```typescript
export function Component(props: Props): ReactElement { ... }
```
## State management
- Don't mutate state in reducers or thunks.

View File

@@ -1,6 +1,7 @@
# Redux framework
Grafana uses [Redux Toolkit](https://redux-toolkit.js.org/) to handle Redux boilerplate code.
> Some of our Reducers are used by Angular and therefore state is to be considered as mutable for those reducers.
## Test functionality
@@ -19,6 +20,7 @@ reducerTester()
```
#### Complex usage
Sometimes you encounter a `resulting state` that contains properties that are hard to compare, such as `Dates`, but you still want to compare that other props in state are correct.
Then you can use `thenStatePredicateShouldEqual` function on `reducerTester` that will return the `resulting state` so that you can expect upon individual properties..
@@ -27,9 +29,9 @@ Then you can use `thenStatePredicateShouldEqual` function on `reducerTester` tha
reducerTester()
.givenReducer(someReducer, initialState)
.whenActionIsDispatched(someAction('reducer tests'))
.thenStatePredicateShouldEqual(resultingState => {
.thenStatePredicateShouldEqual((resultingState) => {
expect(resultingState.data).toEqual('reducer tests');
return true;
return true;
});
```
@@ -40,9 +42,7 @@ Fluent API that simplifies the testing of thunks.
#### Usage
```typescript
const dispatchedActions = await thunkTester(initialState)
.givenThunk(someThunk)
.whenThunkIsDispatched(arg1, arg2, arg3);
const dispatchedActions = await thunkTester(initialState).givenThunk(someThunk).whenThunkIsDispatched(arg1, arg2, arg3);
expect(dispatchedActions).toEqual([someAction('reducer tests')]);
```
@@ -52,7 +52,7 @@ expect(dispatchedActions).toEqual([someAction('reducer tests')]);
It is possible to infer connected props automatically from `mapStateToProps` and `mapDispatchToProps` using a helper type `ConnectedProps` from Redux. For this to work the `connect` call has to be split into two parts.
```typescript
import { connect, ConnectedProps } from 'react-redux'
import { connect, ConnectedProps } from 'react-redux';
const mapStateToProps = (state: StoreState) => {
return {
@@ -75,8 +75,9 @@ const connector = connect(mapStateToProps, mapDispatchToProps);
type Props = OwnProps & ConnectedProps<typeof connector>;
class PanelEditorUnconnected extends PureComponent<Props> {};
class PanelEditorUnconnected extends PureComponent<Props> {}
export const PanelEditor = connector(PanelEditorUnconnected);
```
For more examples, refer to the [Redux docs](https://react-redux.js.org/using-react-redux/static-typing#inferring-the-connected-props-automatically).

View File

@@ -120,7 +120,7 @@ Example use cases:
### Typography
For font family, font sizes and line heights use the variables under `theme.typography`.
For font family, font sizes and line heights use the variables under `theme.typography`.
#### Using `ThemeContext` directly

View File

@@ -15,34 +15,37 @@ Feel free to add templates to the `templates` folder. Try to make them as generi
## Documentation templates
In an ideal world, each topic will correspond to an information *type* ([task](doc-task-template.md), [reference](doc-reference-template.md), [concept](doc-concept-template.md)) and contain only that type of information.
In an ideal world, each topic will correspond to an information _type_ ([task](doc-task-template.md), [reference](doc-reference-template.md), [concept](doc-concept-template.md)) and contain only that type of information.
However, this is not always practical. For example, you have a series of short topics, you can group them into one topic.
Try to *chunk* your content. This means you should organize the document so that the same kinds of content are grouped together.
Try to _chunk_ your content. This means you should organize the document so that the same kinds of content are grouped together.
### Chunking example
If I was writing content for a site called *Doggie handbook*, I might organize it like this.
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
**Tasks**
- 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
### Audience
Write for an audience that is computer literate and has general technical knowledge, but is not necessarily familiar with Grafana or the finer points of observability.
Write for an audience that is computer literate and has general technical knowledge, but is not necessarily familiar with Grafana or the finer points of observability.
Pretend you are explaining your topic to a brand new Grafana user or developer.
@@ -50,7 +53,7 @@ Pretend you are explaining your topic to a brand new Grafana user or developer.
Thanks to search engines, every page in the documentation might be a reader's entry point. This means that each page needs to be self-contained and make sense on its own. The reader should not need to read other topics in order to perform the task or understand the concept.
However, try to be helpful and link to related information. Using the *Doggie handbook* example, the concept topic that explains what dogs can be trained to do might link to the Train the dog task.
However, try to be helpful and link to related information. Using the _Doggie handbook_ example, the concept topic that explains what dogs can be trained to do might link to the Train the dog task.
## Code templates

View File

@@ -23,20 +23,20 @@ Concepts are topic types for any information that doesn't involve task lists or
## Idea
Concept topics or sections explain *what* and *why*. They do not explain *how*. If you are a new user, you might look for concept information to learn about what Grafana is, why it might be useful to you, and what the general workflow is.
Concept topics or sections explain _what_ and _why_. They do not explain _how_. If you are a new user, you might look for concept information to learn about what Grafana is, why it might be useful to you, and what the general workflow is.
## Workflow
Continuing the example in the previous section, here is a sample Grafana workflow.
Continuing the example in the previous section, here is a sample Grafana workflow.
1. Install Grafana. <link to task for installing Grafana>
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. 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
Concept tasks often link to related information, including *tasks* related to the concept and *reference* topics related to the concept.
Concept tasks often link to related information, including _tasks_ related to the concept and _reference_ topics related to the concept.

View File

@@ -15,9 +15,9 @@ weight = 100
# Reference
The *reference* topic type is for storing reference information, such as extensive tables, lists, or other information that is used as support for a task. Reference topics are also designed for API information.
The _reference_ topic type is for storing reference information, such as extensive tables, lists, or other information that is used as support for a task. Reference topics are also designed for API information.
Often reference topics are linked from *task* topics, because they contain information the user needs in order to perform a task.
Often reference topics are linked from _task_ topics, because they contain information the user needs in order to perform a task.
[Grafana CLI](https://grafana.com/docs/grafana/latest/administration/cli/) is one example of a reference topic.
@@ -41,12 +41,12 @@ The [Glossary](https://grafana.com/docs/grafana/latest/guides/glossary/) provide
While you might not need a heading for each table, headings are a good way to chunk information if you have several tables. They also make the content easy to skim. Use headings or intro paragraphs like this one to explain to the reader what the information in the table is used for.
| | | | | | |
|:---|:---|:--:|:--:|---:|---:|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| :-- | :-- | :-: | :-: | --: | --: |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
### Empty HTML table

View File

@@ -14,7 +14,7 @@ weight = 100
# Task
A *task* topic is intended for a procedure that describes how to accomplish a task. It lists a series of steps that users follow to produce an intended outcome. It tells the reader *how* to do something. [Install Grafana plugins](https://grafana.com/docs/grafana/latest/plugins/installation/) and [Playlist](https://grafana.com/docs/grafana/latest/reference/playlist/) are examples of task topics. Playlist includes a small amount of concept information in the introduction, which is appropriate.
A _task_ topic is intended for a procedure that describes how to accomplish a task. It lists a series of steps that users follow to produce an intended outcome. It tells the reader _how_ to do something. [Install Grafana plugins](https://grafana.com/docs/grafana/latest/plugins/installation/) and [Playlist](https://grafana.com/docs/grafana/latest/reference/playlist/) are examples of task topics. Playlist includes a small amount of concept information in the introduction, which is appropriate.
Always include an introduction of a short paragraph or two to explain what the task is for, perhaps give the reader an idea of what the outcome will be.
@@ -52,6 +52,6 @@ Thanks to internet search engines, every page in the documentation could be page
## Testing
It is a good practice to have someone else test the task you have written. If they can successfully complete the task using *only* what the steps you have written, not guessing or using their inherent knowledge, then your task has passed the test. However, it is very common to find you have skipped steps, because *you* are very familiar with Grafana and the topic you are explaining.
It is a good practice to have someone else test the task you have written. If they can successfully complete the task using _only_ what the steps you have written, not guessing or using their inherent knowledge, then your task has passed the test. However, it is very common to find you have skipped steps, because _you_ are very familiar with Grafana and the topic you are explaining.
New users or people from other teams are very helpful for these tests.

View File

@@ -1,212 +0,0 @@
package grafanaschema
import "github.com/grafana/grafana/cue/scuemata"
Family: scuemata.#Family & {
lineages: [
[
{ // 0.0
// Unique numeric identifier for the dashboard.
// TODO must isolate or remove identifiers local to a Grafana instance...?
id?: number
// Unique dashboard identifier that can be generated by anyone. string (8-40)
uid?: string
// Title of dashboard.
title?: string
// Description of dashboard.
description?: string
gnetId?: string
// Tags associated with dashboard.
tags?: [...string]
// Theme of dashboard.
style: *"light" | "dark"
// Timezone of dashboard,
timezone?: *"browser" | "utc"
// Whether a dashboard is editable or not.
editable: bool | *true
// 0 for no shared crosshair or tooltip (default).
// 1 for shared crosshair.
// 2 for shared crosshair AND shared tooltip.
graphTooltip: >=0 & <=2 | *0
// Time range for dashboard, e.g. last 6 hours, last 7 days, etc
time?: {
from: string | *"now-6h"
to: string | *"now"
}
// Timepicker metadata.
timepicker?: {
// Whether timepicker is collapsed or not.
collapse: bool | *false
// Whether timepicker is enabled or not.
enable: bool | *true
// Whether timepicker is visible or not.
hidden: bool | *false
// Selectable intervals for auto-refresh.
refresh_intervals: [...string] | *["5s", "10s", "30s", "1m", "5m", "15m", "30m", "1h", "2h", "1d"]
}
// Templating.
templating?: list: [...{...}]
// Annotations.
annotations?: list: [...{
builtIn: number | *0
// Datasource to use for annotation.
datasource: string
// Whether annotation is enabled.
enable?: bool | *true
// Whether to hide annotation.
hide?: bool | *false
// Annotation icon color.
iconColor?: string
// Name of annotation.
name?: string
type: string | *"dashboard"
// Query for annotation data.
rawQuery?: string
showIn: number | *0
}]
// Auto-refresh interval.
refresh?: string
// Version of the JSON schema, incremented each time a Grafana update brings
// changes to said schema.
schemaVersion: number | *25
// Version of the dashboard, incremented each time the dashboard is updated.
version?: number
panels?: [...#Panel]
// Dashboard panels. Panels are canonically defined inline
// because they share a version timeline with the dashboard
// schema; they do not vary independently. We create a separate,
// synthetic Family to represent them in Go, for ease of generating
// e.g. JSON Schema.
#Panel: {
// The panel plugin type id.
type: !=""
// Internal - the exact major and minor versions of the panel plugin
// schema. Hidden and therefore not a part of the data model, but
// expected to be filled with panel plugin schema versions so that it's
// possible to figure out which schema version matched on a successful
// unification.
// _pv: { maj: int, min: int }
// The major and minor versions of the panel plugin for this schema.
// TODO 2-tuple list instead of struct?
panelSchema?: { maj: number, min: number }
// Panel title.
title?: string
// Description.
description?: string
// Whether to display the panel without a background.
transparent: bool | *false
// Name of default datasource.
datasource?: string
// Grid position.
gridPos?: {
// Panel
h: number & >0 | *9
// Panel
w: number & >0 & <=24 | *12
// Panel x
x: number & >=0 & <24 | *0
// Panel y
y: number & >=0 | *0
// true if fixed
static?: bool
}
// Panel links.
// links?: [..._panelLink]
// Name of template variable to repeat for.
repeat?: string
// Direction to repeat in if 'repeat' is set.
// "h" for horizontal, "v" for vertical.
repeatDirection: *"h" | "v"
// Schema for panel targets is specified by datasource
// plugins. We use a placeholder definition, which the Go
// schema loader either left open/as-is with the Base
// variant of the Dashboard and Panel families, or filled
// with types derived from plugins in the Instance variant.
// When working directly from CUE, importers can extend this
// type directly to achieve the same effect.
targets?: [...{...}]
// The values depend on panel type
options: {...}
fieldConfig: {
defaults: {
// The display value for this field. This supports template variables blank is auto
displayName?: string
// This can be used by data sources that return and explicit naming structure for values and labels
// When this property is configured, this value is used rather than the default naming strategy.
displayNameFromDS?: string
// Human readable field metadata
description?: string
// An explict path to the field in the datasource. When the frame meta includes a path,
// This will default to `${frame.meta.path}/${field.name}
//
// When defined, this value can be used as an identifier within the datasource scope, and
// may be used to update the results
path?: string
// True if data source can write a value to the path. Auth/authz are supported separately
writeable?: bool
// True if data source field supports ad-hoc filters
filterable?: bool
// Numeric Options
unit?: string
// Significant digits (for display)
decimals?: number
min?: number
max?: number
// // Convert input values into a display string
// mappings?: ValueMapping[];
// // Map numeric values to states
// thresholds?: ThresholdsConfig;
// // Map values to a display color
// color?: FieldColor;
// // Used when reducing field values
// nullValueMode?: NullValueMode;
// // The behavior when clicking on a result
links?: [...]
// Alternative to empty string
noValue?: string
// Can always exist. Valid fields within this are
// defined by the panel plugin - that's the
// PanelFieldConfig that comes from the plugin.
custom?: {}
}
overrides: [...{
matcher: {
id: string | *""
options?: _
}
properties: [...{
id: string | *""
value?: _
}]
}]
}
}
}
]
]
}
#Latest: {
#Dashboard: Family.latest
#Panel: Family.latest._Panel
}

View File

@@ -8,10 +8,10 @@ package scuemata
// the larger Dashboard schema.
#PanelSchema: {
// Defines plugin specific options for a panel
PanelOptions: {...}
PanelOptions: {...} @cuetsy(kind="interface")
// Define the custom properties that exist within standard field config
PanelFieldConfig?: {...}
PanelFieldConfig?: {...} @cuetsy(kind="interface")
// Panels may define their own types
...

View File

@@ -14,6 +14,7 @@ package scuemata
// its position in the list of lineages - e.g., 0.0 corresponds to the first
// schema in the first lineage.
#Family: {
compose?: {...}
lineages: [#Lineage, ...#Lineage]
migrations: [...#Migration]
let lseq = lineages[len(lineages)-1]

View File

@@ -1,93 +0,0 @@
package grafanaschema
TableCellDisplayMode: {
Auto: "auto",
ColorText: "color-text",
ColorBackground: "color-background",
GradientGauge: "gradient-gauge",
LcdGauge: "lcd-gauge",
JSONView: "json-view",
BasicGauge: "basic",
Image: "image",
} @cuetsy(targetType="enum")
TableFieldOptions: {
width?: number
align: FieldTextAlignment | *"auto"
displayMode: TableCellDisplayMode | *"auto"
hidden?: bool // ?? default is missing or false ??
} @cuetsy(targetType="interface")
TableSortByFieldState: {
displayName: string
desc?: bool
} @cuetsy(targetType="interface")
TooltipDisplayMode: "single" | "multi" | "none" @cuetsy(targetType="enum")
FieldTextAlignment: "auto" | "left" | "right" | "center" @cuetsy(targetType="type")
AxisPlacement: "auto" | "top" | "right" | "bottom" | "left" | "hidden" @cuetsy(targetType="enum")
PointVisibility: "auto" | "never" | "always" @cuetsy(targetType="enum")
DrawStyle: "line" | "bars" | "points" @cuetsy(targetType="enum")
LineInterpolation: "linear" | "smooth" | "stepBefore" | "stepAfter" @cuetsy(targetType="enum")
ScaleDistribution: "linear" | "log" @cuetsy(targetType="enum")
GraphGradientMode: "none" | "opacity" | "hue" | "scheme" @cuetsy(targetType="enum")
LineStyle: {
fill?: "solid" | "dash" | "dot" | "square"
dash?: [number]
} @cuetsy(targetType="interface")
LineConfig: {
lineColor?: string
lineWidth?: number
lineInterpolation?: LineInterpolation
lineStyle?: LineStyle
spanNulls?: bool
} @cuetsy(targetType="interface")
FillConfig: {
fillColor?: string
fillOpacity?: number
fillBelowTo?: string
} @cuetsy(targetType="interface")
PointsConfig: {
showPoints?: PointVisibility
pointSize?: number
pointColor?: string
pointSymbol?: string
} @cuetsy(targetType="interface")
ScaleDistributionConfig: {
type: ScaleDistribution
log?: number
} @cuetsy(targetType="interface")
AxisConfig: {
axisPlacement?: AxisPlacement
axisLabel?: string
axisWidth?: number
axisSoftMin?: number
axisSoftMax?: number
scaleDistribution?: ScaleDistributionConfig
} @cuetsy(targetType="interface")
HideSeriesConfig: {
tooltip: bool
legend: bool
graph: bool
} @cuetsy(targetType="interface")
LegendPlacement: "bottom" | "right" @cuetsy(targetType="type")
LegendDisplayMode: "list" | "table" | "hidden" @cuetsy(targetType="enum")
TableFieldOptions: {
width?: number
align: FieldTextAlignment | *"auto"
displayMode: TableCellDisplayMode | *"auto"
hidden?: bool
} @cuetsy(targetType="interface")
GraphFieldConfig: LineConfig & FillConfig & PointsConfig & AxisConfig & {
drawStyle?: DrawStyle
gradientMode?: GraphGradientMode
hideFrom?: HideSeriesConfig
} @cuetsy(targetType="interface")
VizLegendOptions: {
displayMode: LegendDisplayMode
placement: LegendPlacement
calcs: [string]
} @cuetsy(targetType="interface")
VizTooltipOptions: {
mode: TooltipDisplayMode
} @cuetsy(targetType="interface")

View File

@@ -55,6 +55,9 @@ Jaeger block runs both Jaeger and Loki container. Loki container sends traces to
| 1.0 | graphite1 | 8280 | 2203 | 2203 |
| 0.9 | graphite09 | 8380 | 2303 | 2303 |
## Debugging setup in VS Code
An example of launch.json is provided in `devenv/vscode/launch.json`. It basically does what Makefile and .bra.toml do. The 'program' field is set to the folder name so VS Code loads all *.go files in it instead of just main.go.
## Troubleshooting
### Containers that read from log files fail to start (Mac OS)

View File

@@ -34,11 +34,15 @@ datasources:
type: prometheus
access: proxy
url: http://localhost:9090
jsonData:
manageAlerts: false
- name: gdev-slow-prometheus
type: prometheus
access: proxy
url: http://localhost:3011
jsonData:
manageAlerts: false
- name: gdev-testdata
isDefault: true
@@ -293,6 +297,7 @@ datasources:
url: http://localhost:3100
editable: false
jsonData:
manageAlerts: false
derivedFields:
- name: "traceID"
matcherRegex: "traceID=(\\w+)"

View File

@@ -0,0 +1,990 @@
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": "-- Grafana --",
"enable": true,
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"name": "Annotations & Alerts",
"target": {
"limit": 100,
"matchAny": false,
"tags": [],
"type": "dashboard"
},
"type": "dashboard"
}
]
},
"editable": true,
"graphTooltip": 0,
"iteration": 1629464729438,
"links": [
{
"asDropdown": true,
"icon": "external link",
"includeVars": false,
"keepTime": false,
"tags": [
"gdev",
"panel-tests"
],
"targetBlank": false,
"title": "Dropdown link",
"tooltip": "",
"type": "dashboards",
"url": ""
},
{
"asDropdown": false,
"icon": "external link",
"includeVars": false,
"keepTime": false,
"tags": [],
"targetBlank": false,
"title": "External link",
"tooltip": "localhost",
"type": "link",
"url": "localhost:3000"
}
],
"panels": [
{
"gridPos": {
"h": 3,
"w": 12,
"x": 0,
"y": 0
},
"id": 34,
"options": {
"content": "# All panels\n\nThis dashboard was created to quickly check accessiblity issues on a lot of panels at the same time ",
"mode": "markdown"
},
"pluginVersion": "8.1.0-pre",
"transparent": true,
"type": "text"
},
{
"gridPos": {
"h": 3,
"w": 12,
"x": 12,
"y": 0
},
"id": 35,
"options": {
"content": "# Another text panel\n\nBecause why not",
"mode": "markdown"
},
"pluginVersion": "8.1.0-pre",
"transparent": true,
"type": "text"
},
{
"collapsed": false,
"gridPos": {
"h": 1,
"w": 24,
"x": 0,
"y": 3
},
"id": 32,
"panels": [],
"title": "Row title",
"type": "row"
},
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"fillOpacity": 70,
"lineWidth": 1
},
"mappings": [
{
"options": {
"CRITICAL": {
"color": "red",
"index": 3
},
"HIGH": {
"color": "orange",
"index": 2
},
"LOW": {
"color": "blue",
"index": 0
},
"NORMAL": {
"color": "green",
"index": 1
}
},
"type": "value"
}
],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 9,
"w": 24,
"x": 0,
"y": 4
},
"id": 41,
"options": {
"alignValue": "left",
"legend": {
"displayMode": "list",
"placement": "bottom"
},
"mergeValues": true,
"rowHeight": 0.99,
"showValue": "auto",
"tooltip": {
"mode": "single"
}
},
"targets": [
{
"refId": "A",
"scenarioId": "csv_metric_values",
"stringInput": "LOW,HIGH,NORMAL,NORMAL,NORMAL,LOW,LOW,NORMAL,HIGH,CRITICAL"
},
{
"refId": "B",
"scenarioId": "csv_metric_values",
"stringInput": "NORMAL,LOW,LOW,CRITICAL,CRITICAL,LOW,LOW,NORMAL,HIGH,CRITICAL"
},
{
"refId": "C",
"scenarioId": "csv_metric_values",
"stringInput": "NORMAL,NORMAL,NORMAL,NORMAL,CRITICAL,LOW,NORMAL,NORMAL,NORMAL,LOW"
}
],
"title": "State timeline",
"type": "state-timeline"
},
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "continuous-GrYlRd"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 11,
"w": 9,
"x": 0,
"y": 0
},
"id": 62,
"options": {
"basemap": {
"config": {},
"type": "default"
},
"controls": {
"mouseWheelZoom": true,
"showAttribution": true,
"showDebug": false,
"showScale": false,
"showZoom": true
},
"layers": [
{
"config": {
"color": {
"field": "Price",
"fixed": "dark-green"
},
"fillOpacity": 0.4,
"shape": "circle",
"showLegend": true,
"size": {
"field": "Count",
"fixed": 5,
"max": 15,
"min": 2
}
},
"location": {
"gazetteer": "public/gazetteer/usa-states.json",
"lookup": "State",
"mode": "auto"
},
"type": "markers"
}
],
"view": {
"id": "coords",
"lat": 38.297683,
"lon": -99.228359,
"shared": true,
"zoom": 3.98
}
},
"targets": [
{
"csvFileName": "flight_info_by_state.csv",
"refId": "A",
"scenarioId": "csv_file"
}
],
"title": "Size, color mapped to different fields + share view",
"type": "geomap"
},
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"fillOpacity": 80,
"gradientMode": "hue",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineWidth": 1
},
"links": [
{
"title": "Data link",
"url": "/"
}
],
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 8,
"w": 12,
"x": 12,
"y": 13
},
"id": 4,
"options": {
"bucketOffset": 0,
"combine": false,
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
}
},
"title": "Histogram",
"type": "histogram"
},
{
"gridPos": {
"h": 8,
"w": 12,
"x": 0,
"y": 21
},
"id": 28,
"options": {
"dedupStrategy": "none",
"enableLogDetails": true,
"prettifyLogMessage": false,
"showCommonLabels": false,
"showLabels": false,
"showTime": false,
"sortOrder": "Descending",
"wrapLogMessage": false
},
"targets": [
{
"refId": "A",
"scenarioId": "logs"
}
],
"title": "Logs",
"type": "logs"
},
{
"gridPos": {
"h": 8,
"w": 12,
"x": 12,
"y": 21
},
"id": 8,
"options": {
"maxItems": 10,
"query": "",
"showHeadings": true,
"showRecentlyViewed": true,
"showSearch": true,
"showStarred": true,
"tags": []
},
"pluginVersion": "8.1.0-pre",
"title": "Dashboard list",
"type": "dashlist"
},
{
"gridPos": {
"h": 8,
"w": 12,
"x": 0,
"y": 29
},
"id": 30,
"title": "Panel list",
"type": "pluginlist"
},
{
"gridPos": {
"h": 8,
"w": 12,
"x": 12,
"y": 29
},
"id": 6,
"options": {
"alertName": "",
"dashboardAlerts": false,
"maxItems": 20,
"showInstances": false,
"sortOrder": 1,
"stateFilter": {
"firing": true,
"inactive": false,
"pending": true
}
},
"title": "Alert list",
"type": "alertlist"
},
{
"cards": {
},
"color": {
"cardColor": "#b4ff00",
"colorScale": "sqrt",
"colorScheme": "interpolateOranges",
"exponent": 0.5,
"mode": "spectrum"
},
"dataFormat": "timeseries",
"gridPos": {
"h": 8,
"w": 12,
"x": 0,
"y": 37
},
"heatmap": {},
"hideZeroBuckets": false,
"highlightCards": true,
"id": 26,
"legend": {
"show": false
},
"reverseYBuckets": false,
"targets": [
{
"refId": "A",
"scenarioId": "exponential_heatmap_bucket_data"
}
],
"title": "Heatmap",
"tooltip": {
"show": true,
"showHistogram": false
},
"type": "heatmap",
"xAxis": {
"show": true
},
"yAxis": {
"format": "short",
"logBase": 1,
"show": true
},
"yBucketBound": "auto"
},
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 8,
"w": 12,
"x": 12,
"y": 37
},
"id": 20,
"options": {
"displayMode": "gradient",
"orientation": "auto",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"showUnfilled": true,
"text": {}
},
"pluginVersion": "8.1.0-pre",
"targets": [
{
"refId": "A",
"scenarioId": "random_walk",
"seriesCount": 10
}
],
"title": "Bar gauge",
"type": "bargauge"
},
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
}
},
"mappings": []
},
"overrides": []
},
"gridPos": {
"h": 8,
"w": 12,
"x": 0,
"y": 45
},
"id": 24,
"options": {
"legend": {
"displayMode": "list",
"placement": "bottom"
},
"pieType": "pie",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"tooltip": {
"mode": "single"
}
},
"targets": [
{
"refId": "A",
"scenarioId": "random_walk",
"seriesCount": 6
}
],
"title": "Pie chart",
"type": "piechart"
},
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 8,
"w": 12,
"x": 12,
"y": 45
},
"id": 18,
"options": {
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"orientation": "auto",
"showValue": "auto",
"showThresholdLabels": false,
"showThresholdMarkers": true,
"text": {}
},
"pluginVersion": "8.1.0-pre",
"targets": [
{
"refId": "A",
"scenarioId": "random_walk",
"seriesCount": 3
}
],
"title": "Gauge",
"type": "gauge"
},
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"align": "auto",
"displayMode": "auto"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 8,
"w": 12,
"x": 0,
"y": 53
},
"id": 22,
"options": {
"showHeader": true
},
"pluginVersion": "8.1.0-pre",
"targets": [
{
"refId": "A",
"scenarioId": "table_static"
}
],
"title": "Tabel",
"type": "table"
},
{
"gridPos": {
"h": 8,
"w": 12,
"x": 12,
"y": 53
},
"id": 10,
"options": {
"limit": 10,
"navigateAfter": "10m",
"navigateBefore": "10m",
"onlyFromThisDashboard": false,
"onlyInTimeRange": false,
"showTags": true,
"showTime": true,
"showUser": true
},
"title": "Annotation list",
"type": "annolist"
},
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 8,
"w": 12,
"x": 0,
"y": 61
},
"id": 16,
"options": {
"colorMode": "value",
"graphMode": "area",
"justifyMode": "auto",
"orientation": "auto",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"text": {},
"textMode": "auto"
},
"pluginVersion": "8.1.0-pre",
"title": "Stat",
"type": "stat"
},
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 0,
"gradientMode": "none",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineWidth": 1,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "auto",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 9,
"w": 12,
"x": 12,
"y": 61
},
"id": 2,
"links": [],
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"tooltip": {
"mode": "single"
}
},
"targets": [
{
"refId": "A",
"scenarioId": "random_walk",
"seriesCount": 4,
"spread": 120
}
],
"title": "Graph NG",
"type": "timeseries"
},
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"axisSoftMin": 0,
"fillOpacity": 80,
"gradientMode": "none",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineWidth": 1
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 8,
"w": 12,
"x": 0,
"y": 69
},
"id": 14,
"options": {
"barWidth": 0.97,
"groupWidth": 0.7,
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"orientation": "auto",
"showValue": "auto",
"stacking": "none",
"text": {},
"tooltip": {
"mode": "single"
}
},
"targets": [
{
"csvContent": "Series, Value\nBar 2, 20\nBar 3, 25\nBar 3, 55.4",
"refId": "A",
"scenarioId": "csv_content"
}
],
"title": "Bar chart",
"type": "barchart"
},
{
"gridPos": {
"h": 8,
"w": 12,
"x": 0,
"y": 77
},
"id": 12,
"options": {
"showImage": true
},
"title": "News panel",
"type": "news"
}
],
"refresh": "",
"schemaVersion": 30,
"style": "dark",
"tags": [
"gdev",
"panel-tests",
"all-panels"
],
"templating": {
"list": [
{
"current": {},
"datasource": "gdev-testdata",
"definition": "*",
"hide": 0,
"includeAll": true,
"multi": true,
"name": "query0",
"options": [],
"query": {
"query": "*",
"refId": "StandardVariableQuery"
},
"refresh": 1,
"regex": "",
"skipUrlSync": false,
"sort": 0,
"type": "query"
},
{
"current": {
"selected": true,
"text": "7",
"value": "7"
},
"hide": 0,
"includeAll": false,
"multi": false,
"name": "query1",
"options": [
{
"selected": false,
"text": "1",
"value": "1"
},
{
"selected": false,
"text": "5",
"value": "5"
},
{
"selected": false,
"text": "6",
"value": "6"
},
{
"selected": true,
"text": "7",
"value": "7"
}
],
"query": "1,5,6,7",
"queryValue": "",
"skipUrlSync": false,
"type": "custom"
},
{
"current": {
"selected": false,
"text": "",
"value": ""
},
"description": "This is some descriptive text",
"hide": 0,
"label": "Plain text",
"name": "text",
"options": [
{
"selected": true,
"text": "",
"value": ""
}
],
"query": "",
"skipUrlSync": false,
"type": "textbox"
}
]
},
"time": {
"from": "now-6h",
"to": "now"
},
"timepicker": {},
"timezone": "",
"title": "Panel tests - All panels",
"uid": "n1jR8vnnz",
"version": 24
}

Some files were not shown because too many files have changed in this diff Show More