Compare commits

...

2117 Commits

Author SHA1 Message Date
Isabella Siu
796e2e020c Cloudwatch: Fix deeplink with default region (#60260) (#60273)
Cloudwatch: fix deeplink with default region
(cherry picked from commit d6bb2a7493)
2022-12-13 16:54:08 -05:00
Alexa V
d7dcea71ea [v9.2.x] Snapshots: Build snapshot originalUrl on the backend (#60232) (#60256)
Co-authored-by: kay delaney <kay@grafana.com>
2022-12-13 17:43:53 +01:00
Jack Baldry
3c68684dd2 [v9.2.x] Use relative aliases for all non-current Grafana aliases (#60113)
* Use relative aliases for all non-current Grafana aliases

Prevents non-latest documentation "stealing" the page away from latest
and through permanent redirects for latest pages that no longer exist.

The redirected pages are indexed by search engines but our robots.txt
forbids them crawling the non-latest page.

Signed-off-by: Jack Baldry <jack.baldry@grafana.com>

* Remove all current page aliases

find docs/sources -type f -name '*.md' -exec sed -z -i 's#\n *- /docs/grafana/next/[^\n]*\n#\n#' {} \;
find docs/sources -type f -name '*.md' -exec sed -z -i 's#\n *- /docs/grafana/latest/[^\n]*\n#\n#' {} \;
find docs/sources -type f -name '*.md' -exec sed -Ez -i 's#\n((aliases:\n *-)|aliases:\n)#\n\2#' {} \;

Signed-off-by: Jack Baldry <jack.baldry@grafana.com>

Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
2022-12-12 08:23:37 -04:00
Grot (@grafanabot)
daad3c97b7 [v9.2.x] Fix branch filter for release workflows (#60123)
Fix branch filter for release workflows (#59963)

Ensures the workflow is run on every push to all version branches.

This was thought to be working because it was tested with a manual
dispatch, however, that trigger does not consider filters and was not
an accurate test.

Signed-off-by: Jack Baldry <jack.baldry@grafana.com>

Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
(cherry picked from commit 6f9ee7acf9)

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2022-12-09 15:18:44 -04:00
Grot (@grafanabot)
27cb7982c3 [v9.2.x] Fix index out of range in regenerateLinksSupplier (#60069)
Fix index out of range in regenerateLinksSupplier (#60011)

(cherry picked from commit 896cb9ddce)

Co-authored-by: Victor Marin <36818606+mdvictor@users.noreply.github.com>
2022-12-09 02:21:37 -05:00
Daniel Lee
c0feee3801 [v9.2.x] UsageInsights: Record events for Explore queries (#59992)
* UsageInsights: Record events for Explore queries (#59931)

* usageinsights: record events for Explore queries

* usageinsights: make the source field optional

It is not logical to have it for an event like the dashboard-view

* usageinsights: add comment to Explore test

Explain why we are reversing a previous decision

(cherry picked from commit 74167b4d44)

* usageinsights: fix merge conflict

* Empty-Commit to trigger build

* usageinsights: fix broken tests after merge
2022-12-08 00:13:59 +01:00
Ieva
1b29543b64 Auth: Logger for user remote cache (#59961)
add logger
2022-12-07 09:58:57 -05:00
Carl Bergquist
95d2adf251 [9.2.x] Backport Contexthandler: Add uname as response header #59930 (#59950)
* Contexthandler: Add uname as response header (#59930)

Signed-off-by: bergquist <carl.bergquist@gmail.com>
(cherry picked from commit 1b676d0d49)

* fixes tests broken due to moved featuremgt package

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

Signed-off-by: bergquist <carl.bergquist@gmail.com>
2022-12-07 15:27:34 +01:00
Grot (@grafanabot)
6c73fd2635 [v9.2.x] Plugins: Add username to datasource plugin logging (#59947)
Plugins: Add username to datasource plugin logging (#59893)

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Signed-off-by: bergquist <carl.bergquist@gmail.com>
(cherry picked from commit a5ace56be8)

Co-authored-by: Carl Bergquist <carl.bergquist@gmail.com>
2022-12-07 13:43:35 +01:00
Jo
2919588a82 Auth: Session cache [v9.2.x] (#59907)
* add cache wrapper

only cache token if not to rotate

Co-authored-by: Kalle Persson <kalle.persson@grafana.com>

anticipate next rotation

Co-authored-by: ievaVasiljeva <ieva.vasiljeva@grafana.com>
Co-authored-by: Kalle Persson <kalle.persson@grafana.com>
Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
(cherry picked from commit 07a4b2343d59cb593ad128355e1d9217ba493700)

* FeatureToggle: for storing sessions in a Remote Cache

Co-authored-by: ievaVasiljeva <ieva.vasiljeva@grafana.com>
(cherry picked from commit b8a8c15148)

* use feature flag for session cache

* ensure ttl is minimum 1 second

Co-authored-by: ievaVasiljeva <ieva.vasiljeva@grafana.com>
Co-authored-by: Kalle Persson <kalle.persson@grafana.com>
Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>

* ensure 2 ttl window to prevent caching of tokens near rotation

Co-authored-by: Kalle Persson <kalle.persson@grafana.com>

* fix description of toggle

Co-authored-by: gamab <gabi.mabs@gmail.com>
Co-authored-by: ievaVasiljeva <ieva.vasiljeva@grafana.com>
Co-authored-by: Kalle Persson <kalle.persson@grafana.com>
Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
2022-12-07 10:04:05 +01:00
Gabriel MABILLE
91b15eed1a FeatureToggle: for storing signed in user object in a Remote Cache (#59883)
* FeatureToggle: for storing sessions in a Remote Cache

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

* Fix conflicting modifications :D

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

* rename the flag to userRemoteCache

* undo unintended change

* Users: Add option to use remote cache for SignedInUsers (#59892)

* Add remote cache to GetSignedInUserWithCacheCtx

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

* Populate SignedInUser remote cache

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

* Line

* minor fixes to make this work

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

* Fix tests

* change flag to updated name

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

Co-authored-by: ievaVasiljeva <ieva.vasiljeva@grafana.com>
2022-12-07 08:58:15 +01:00
Serge Zaitsev
3c86bf550e [v9.2.x] Chore: Add encryption codec to the remote cache (#59871) (#59896)
* add encryption codec to the remote cache

* change config files too

* fix test constructor

* pass codec into the test cache

(cherry picked from commit f1fb202284)
2022-12-06 17:09:24 +01:00
Carl Bergquist
8c15be99f5 [9.2.x] Instrumentation: Log plugin and datasource info for each plugin request. (#59882)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
2022-12-06 16:11:09 +01:00
Serge Zaitsev
b221e8cac9 [v9.2.x] Chore: Remote cache key prefix (#59838) (#59877)
Chore: Remote cache key prefix (#59838)

* attempt to implement a remote cache key prefix

* add a test for the prefix store

* oh, linter

(cherry picked from commit 3978502d83)
2022-12-06 15:16:36 +01:00
Gabriel MABILLE
efc69a08fa FIX: Remove service accounts from quota count (#59878) 2022-12-06 14:09:25 +01:00
Grot (@grafanabot)
e7e20a300d [v9.2.x] AzureMonitor: Automate location retrieval (#59810)
* AzureMonitor: Automate location retrieval (#59602)

* Automate location retrieval

- Add function to retrieve provider information
- Add function to retrieve subscription locations
- Add parsers for each function
- Add types
- Update resourcePickerData with new functions
- Remove old location metadata file

* Improve types

- Add types for responses
- Use correct name parameter
- Update response parser (parseProvider unnecessary)

* Fix tests

- Add necessary mocks

* Fix logic and ensure maps are consistent

* Add tests

* Review

* Lint issue

(cherry picked from commit c52d4e2a64)

* Lint issues

Co-authored-by: Andreas Christou <andreas.christou@grafana.com>
2022-12-05 08:01:31 -05:00
Grot (@grafanabot)
74ec072a96 [v9.2.x] Restrict workflow to grafana/grafana repository (#59755)
Restrict workflow to grafana/grafana repository (#59740)

Signed-off-by: Jack Baldry <jack.baldry@grafana.com>

Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
(cherry picked from commit e7bdcb4ba8)

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2022-12-02 17:30:35 -04:00
matt abrams
b6e12f2723 DataLinks: Backport 58934 to v9.2.x (#59457)
* manual backport

* manual backport
2022-12-02 07:00:23 -10:00
Karl Persson
3148a918ce [v9.2.x] DataSourcePermissions: Handle licensing properly for ds permissions (#59711)
DataSourcePermissions: Handle licensing properly for ds permissions (#59694)

* RBAC: add viewer grand if dspermissions enforcement is not enabled

* RBAC: Change permissions based on role prefix

* RBAC: Add option to for permission service to add a license middleware

* RBAC: Remove actions from query struct

(cherry picked from commit 6d1bcd9f40)
2022-12-02 14:07:20 +01:00
Grot (@grafanabot)
c0e7cb2bc1 [v9.2.x] AzureMonitor: Fix panic from empty response in ARG (#59706)
AzureMonitor: Fix panic from empty response in ARG (#59691)

AzureMonitor: Avoid panic from empty response in ARG
(cherry picked from commit 231b5b587c)

Co-authored-by: Andres Martinez Gotor <andres.martinez@grafana.com>
2022-12-02 13:55:51 +01:00
Grot (@grafanabot)
3a1b15c602 [v9.2.x] Automate docs publishing steps (#59565)
* Automate docs publishing steps (#59550)

Signed-off-by: Jack Baldry <jack.baldry@grafana.com>

Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
(cherry picked from commit 10a83714c8)

* Remove dependency on test job (#59575)

Signed-off-by: Jack Baldry <jack.baldry@grafana.com>

Signed-off-by: Jack Baldry <jack.baldry@grafana.com>

* Fix release_branch_regexp (#59590)

Apparently the non-capturing group was incorrect.

I verified the logic in a branch in grafana-github-actions:
https://github.com/grafana/grafana-github-actions/compare/jdb/2022-11-prove-grafana-regexp-behaves-correctly?expand=1

Signed-off-by: Jack Baldry <jack.baldry@grafana.com>

Signed-off-by: Jack Baldry <jack.baldry@grafana.com>

Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2022-11-30 13:13:22 -04:00
Jo
516407dad2 [v9.2.x] Sessions: Remove invalid session cookie if it's invalid/expired/missing (#59588)
only remove invalid session cookie if it's invalid/expired/missing

(cherry picked from commit 270a893e12)
2022-11-30 16:50:49 +01:00
Grot (@grafanabot)
903ff4ef5e [v9.2.x] Datasources: Use context logger in cache service (#59557)
Datasources: Use context logger in cache service (#59547)

(cherry picked from commit 0fca3cf9dd)

Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
2022-11-30 08:42:21 -05:00
Grot (@grafanabot)
6e5880c432 [v9.2.x] Fix: Unlocking the UI for AuthProxy users (#59529)
Fix: Unlocking the UI for AuthProxy users (#59507)

Unlocking the UI for AuthProxy users

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

Co-authored-by: Eric Leijonmarck <eric.leijonmarck@gmail.com>
(cherry picked from commit 5bb99775bb)

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
2022-11-30 12:49:21 +01:00
Dimitris Sotirakis
7c4bcef971 [v9.2.x] Docs: Remove publish.yml (#59536)
Remove publish.yml
2022-11-30 04:50:46 -05:00
George Robinson
c4e4bfe257 Backport Fix XSS in runbook URL (#681) to v9.2.x (#683)
(cherry picked from commit db1548c1491c2f5b522e3c0ceb1832b914a4b2f0)
(cherry picked from commit 3135a81edf0ebeb575c95560dd548f9589c14d02)
(cherry picked from commit fe17b64445)
2022-11-30 11:06:39 +02:00
Dimitris Sotirakis
34f0068875 [v9.2.x] Changelog: Updated changelog for 9.2.7 (#59525) (#59528)
Changelog: Updated changelog for 9.2.7 (#59525)

(cherry picked from commit 312dbc979e)

Co-authored-by: Grot (@grafanabot) <43478413+grafanabot@users.noreply.github.com>
2022-11-30 10:50:57 +02:00
Grot (@grafanabot)
048e200a68 Release: Bump version to 9.2.8 (#59526)
"Release: Updated versions in package to 9.2.8"
2022-11-30 10:35:33 +02:00
Grot (@grafanabot)
c98714f77f [v9.2.x] Docs: Add docs for labels with dots (#59486)
Docs: Add docs for labels with dots (#59352)

(cherry picked from commit c8c1499cd0)

Co-authored-by: George Robinson <george.robinson@grafana.com>
2022-11-29 13:38:16 +00:00
Grot (@grafanabot)
ac9819bfa5 [v9.2.x] Fix: Allow creating snapshot with no dashboard id (#59465)
Fix: Allow creating snapshot with no dashboard id (#58669)

(cherry picked from commit d279b6d7b0)

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
2022-11-29 10:09:08 +01:00
Grot (@grafanabot)
6b4394d8e6 [v9.2.x] SQL Datasources: Fix annotation migration (#59454)
SQL Datasources: Fix annotation migration (#59438)

(cherry picked from commit 71e4a8261d)

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2022-11-29 01:25:25 -06:00
Marcus Efraimsson
9b7ad3d663 [v9.2.x] SSE: Make sure to forward headers, user and cookies/OAuth token (#58897) (#59430)
SSE: Make sure to forward headers, user and cookies/OAuth token (#58897)

Fixes #58793 and Fixes https://github.com/grafana/azure-data-explorer-datasource/issues/513

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
(cherry picked from commit 5623b5afaf)

Co-authored-by: Kyle Brandt <kyle@grafana.com>
2022-11-28 19:06:59 +01:00
George Robinson
8bb5b17692 Docs: Improve docs for images in notifications (#59033) (#59404)
(cherry picked from commit 0af3515e95)
2022-11-28 19:06:41 +01:00
Grot (@grafanabot)
12fc64b389 [v9.2.x] BarChart: fix hover overlay for hz stacked (#59397)
BarChart: fix hover overlay for hz stacked (#59359)

(cherry picked from commit 13d5ad2ce2)

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2022-11-28 09:00:33 -05:00
Grot (@grafanabot)
052fd5713d [v9.2.x] Navigation: Fix crash when Help is disabled (#59375)
Navigation: Set navtree to  an empty array instead of null (#58919)

set navtree to  an empty array instead of null

(cherry picked from commit 4aa5dea96b)

Co-authored-by: Leo <108552997+lpskdl@users.noreply.github.com>
2022-11-28 06:54:07 -05:00
Ieva
6b64e4d192 Access Control: Clear user's permission cache after resource creation (#59318)
resolve merge conflicts
2022-11-24 18:10:56 +01:00
Grot (@grafanabot)
c89876323c [v9.2.x] TimeseriesPanel: Preserve string fields for data link interpolation (#59296)
TimeseriesPanel: Preserve string fields for data link interpolation (#58424)

* TimeseriesPanel: Preserve string fields for data link interpolation

* clean code

* Modify tests so that string fields are allowed only when a valid time/number dataframe exists

* performance mods

* fix wrong length

* remove console.log

* Check if aligned dataframe has links

(cherry picked from commit 0da77201bf)

Co-authored-by: Victor Marin <36818606+mdvictor@users.noreply.github.com>
2022-11-24 08:15:06 -05:00
Grot (@grafanabot)
24659cc117 [v9.2.x] PostgreSQL: Fix missing CA field from configuration (#59285)
PostgreSQL: Fix missing CA field from configuration (#59280)

* PostgreSQL: Fix missing CA field from configuration

(cherry picked from commit be73418d00)

Co-authored-by: Oscar Kilhed <oscar.kilhed@grafana.com>
2022-11-24 13:33:20 +01:00
Grot (@grafanabot)
9fef15403c [v9.2.x] Azure Monitor: Fix empty/errored responses for Logs variables (#59277)
Azure Monitor: Fix empty/errored responses for Logs variables (#59240)

(cherry picked from commit 276b54fe9d)

Co-authored-by: Andres Martinez Gotor <andres.martinez@grafana.com>
2022-11-24 05:42:12 -05:00
Grot (@grafanabot)
6fbdc2ed89 [v9.2.x] Heatmap: Fix blurry text & rendering (#59261)
Heatmap: Fix blurry text & rendering (#59260)

(cherry picked from commit 6f00bc5674)

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2022-11-23 23:12:12 -05:00
Grot (@grafanabot)
09308c77d8 Release: Bump version to 9.2.7 (#59245)
"Release: Updated versions in package to 9.2.7"
2022-11-23 11:07:57 -06:00
owensmallwood
29f26b5a02 Changelog: Updated changelog for 9.2.6 (#59232) (#59244)
(cherry picked from commit ae508c12f3)

# Conflicts:
#	CHANGELOG.md

Co-authored-by: Grot (@grafanabot) <43478413+grafanabot@users.noreply.github.com>
2022-11-23 10:53:48 -06:00
Sven Grossmann
e6a7b53703 [9.2.x] Fix #58598 X-ID-Token header missing on Loki Datasource (#58784) (#59196)
* Fix #58598 X-ID-Token header missing on Loki Datasource (#58784)

* Fix #58598 X-ID-Token header missing on Loki Datasource

* Remove unecessary continue statements

* Add getAuthHeadersForCallResource unit tests

* Fix test and switch statement issues introduced during merge

(cherry picked from commit f1ef63791a)

* update test

* missed linting

Co-authored-by: Yann Vigara <yvigara@users.noreply.github.com>
2022-11-23 12:52:35 +01:00
Zoltán Bedi
37236d6ab6 [v9.2.x] SQL: Fix code editor for SQL datasources (#59189)
SQL: Fix code editor for SQL datasources (#58116)

* SQL: Fix code editor for sql datasources

* Fix: mysql completion with defaultdb

(cherry picked from commit 75097b99fb)
2022-11-23 05:28:32 -05:00
Grot (@grafanabot)
a47cfa9b28 [v9.2.x] Azure Monitor: Fix resource picker selection for subresources (#59136)
Azure Monitor: Fix resource picker selection for subresources (#56392)

(cherry picked from commit 5b1ff83ee9)

Co-authored-by: Andres Martinez Gotor <andres.martinez@grafana.com>
2022-11-22 10:55:30 -05:00
Zoltán Bedi
8ba6f0f1a8 [v9.2.x] MS/My/PostgresSQL: Migrate annotation query (#58847) (#59072)
MS/My/PostgresSQL: Migrate annotation query (#58847)

(cherry picked from commit 38f25a0bf5)
2022-11-22 10:10:38 +01:00
Grot (@grafanabot)
5d1bed9b64 [v9.2.x] Alerting: Support Prometheus durations in Provisioning API (#59066)
Alerting: Support Prometheus durations in Provisioning API (#58293)

Provisioning API should support Prometheus durations

(cherry picked from commit 57d6adbc7c)

Co-authored-by: Bart Peeters <birtpeeters@hotmail.com>
2022-11-21 19:17:54 +00:00
Grot (@grafanabot)
a688a916dc [v9.2.x] Prometheus: fix Heatmap y buckets when legendFormat: auto (#59064)
Prometheus: fix Heatmap y buckets when legendFormat: auto (#59053)

(cherry picked from commit 1f4834a144)

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2022-11-21 12:45:01 -05:00
Grot (@grafanabot)
1136d8c3a9 [v9.2.x] Alerting: Add Troubleshooting to Images in notifications docs (#59025)
Alerting: Add Troubleshooting to Images in notifications docs (#58955)

(cherry picked from commit 2f878acd9d)

Co-authored-by: George Robinson <george.robinson@grafana.com>
2022-11-21 11:36:29 +00:00
Christopher Moyer
15c0ba7af0 resolves merge conflict (#58997) 2022-11-18 16:10:30 -06:00
Grot (@grafanabot)
4adfebb4c7 [v9.2.x] Docs: adds permission validation setting (#58987)
Docs: adds permission validation setting (#58970)

* adds permission validation setting

* Update docs/sources/administration/roles-and-permissions/access-control/configure-rbac/index.md

Co-authored-by: Misi <mgyongyosi@users.noreply.github.com>

* makes prettier

Co-authored-by: Misi <mgyongyosi@users.noreply.github.com>
(cherry picked from commit 780efa5791)

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
2022-11-18 12:42:45 -06:00
Grot (@grafanabot)
b2d04ac317 [v9.2.x] Docs: adjusts link to kms integration (#58982)
Docs: adjusts link to kms integration (#58981)

adjusts link to kms integration

(cherry picked from commit e7b5bd34bd)

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
2022-11-18 10:58:18 -06:00
Grot (@grafanabot)
7428dbd10e [v9.2.x] Alerting: Fix metric in Images in Notifications docs (#58978)
Alerting: Fix metric in Images in Notifications docs (#58954)

(cherry picked from commit 4da97aef7d)

Co-authored-by: George Robinson <george.robinson@grafana.com>
2022-11-18 16:46:29 +00:00
Grot (@grafanabot)
17efc62c04 [v9.2.x] Chore: Extract server lock error so it can be used with errors.As (#58905)
Chore: Extract server lock error so it can be used with errors.As (#58899)

chore: extract server lock Error so it can be used with error.As
(cherry picked from commit 7e9d94cfda)

Co-authored-by: Jo <joao.guerreiro@grafana.com>
2022-11-17 15:30:05 +01:00
lean.dev
f4b75c8db1 [v9.2.x] Changelog: Updated changelog for 9.2.5 (#58856) (#58862)
* Changelog: Updated changelog for 9.2.5 (#58856)
(cherry picked from commit df27164b8e)
2022-11-17 12:47:59 +01:00
Grot (@grafanabot)
c05db1f2f8 [v9.2.x] Transformations: Make Card Descriptions Clickable (#58733)
Transformations: Make Card Descriptions Clickable (#58717)

replace Card Meta w Card Description

(cherry picked from commit 16aa4376ac)

Co-authored-by: matt abrams <37156449+zuchka@users.noreply.github.com>
2022-11-17 10:00:27 +01:00
Grot (@grafanabot)
2f3c46b4dd Release: Bump version to 9.2.6 (#58857)
"Release: Updated versions in package to 9.2.6"
2022-11-16 15:23:46 -03:00
Grot (@grafanabot)
ae1fccc1df [v9.2.x] SSE: Keep value name from numeric table (#58850)
SSE: Keep value name from numeric table (#58831)

fixes #48868

(cherry picked from commit 1953d473c0)

Co-authored-by: Kyle Brandt <kyle@grafana.com>
2022-11-16 10:52:49 -05:00
Dimitris Sotirakis
042e4d216b [v9.2.x] CI: Remove base and arch args (#58209) (#58713)
Remove base and arch args (#58209)

(cherry picked from commit 9c1c10ab9a)

# Conflicts:
#	.drone.yml

# Conflicts:
#	.drone.yml
2022-11-16 08:13:14 +00:00
Grot (@grafanabot)
72900d81d8 [v9.2.x] Search: Fixes issue with Recent/Starred section always displaying "General" folder (#58749) 2022-11-15 14:26:01 +01:00
Grot (@grafanabot)
bc708d3543 [v9.2.x] Use relref resolved from nearest section (#58721)
Use relref resolved from nearest section (#58718)

As image-rendering is a branch bundle, it is considered a section by
Hugo and relrefs should be resolved from there even for child pages.

The behavior that worked in `next` but not `latest` could be explained
by the lenient but potentially ambiguous relref resolution algorithm
Hugo uses. However, I have not determined the exact difference between
the two sets of content that causes `next` to work but `latest` not to.

Signed-off-by: Jack Baldry <jack.baldry@grafana.com>

Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
(cherry picked from commit b9d8bcb59b)

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2022-11-14 17:13:05 -04:00
Grot (@grafanabot)
a8ceec0ed9 [v9.2.x] Snapshots: Allow user with viewer permissions to delete own snapshots (#58715)
Snapshots: Allow user with viewer permissions to delete own snapshots (#58572)

(cherry picked from commit 59d2cf2ff7)

Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
2022-11-14 14:25:41 -05:00
Grot (@grafanabot)
62f4012590 [v9.2.x] Docs: corrects relrefs (#58709)
Docs: corrects relrefs (#58706)

corrects relrefs

(cherry picked from commit a9458c8c00)

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
2022-11-14 09:49:20 -06:00
Grot (@grafanabot)
0c9e3abc52 [v9.2.x] SQL: Fix issue where testing the datasource would always be successful if the datasourceQueryMultiStatus feature was enabled (#58685)
SQL: Fix issue where testing the datasource would always be successful if the `datasourceQueryMultiStatus` feature was enabled (#58671)

SQL Datasources: fix issue where testing the datasource connection would show success even when there was an error.

Co-authored-by: Victor Marin <victor.marin@grafana.com>
(cherry picked from commit 75e435fb00)

Co-authored-by: Oscar Kilhed <oscar.kilhed@grafana.com>
2022-11-14 15:53:14 +01:00
malcolmholmes
1cf016c9b2 CI: Make build and store storybook trigger in the release process (#58686) (#58704)
Make storybook trigger conditional

(cherry picked from commit 09c3ead945)

Co-authored-by: Dimitris Sotirakis <dimitrios.sotirakis@grafana.com>
2022-11-14 16:15:23 +02:00
Jo
15179a6abb Fix: Email and username trimming and invitation validation (#58446)
* Trim leading and trailing whitespaces from email and username on signup

* Check whether the provided email address is the same as where the invitation sent

Co-authored-by: Mihaly Gyongyosi <mgyongyosi@users.noreply.github.com>
2022-11-14 13:10:15 +01:00
Garrett Guillotte
d26b6aae07 [v9.2.x] Docs: Add document for jsondata field alertmanagerUid (#57121)
* Add document for jsondata field `alertmanagerUid` (#52895)

alertmanagerUid can be used to specify Alert Manager for a particular Prometheus/Loki data source.

Co-authored-by: Garrett Guillotte <garrett.guillotte@grafana.com>

* Docs: Fix provisioning table formatting (#57042)

Co-authored-by: Vũ Quốc Phong <phong.vq.198@gmail.com>
Co-authored-by: Daniel Lee <dan.limerick@gmail.com>
2022-11-14 11:04:38 +01:00
Grot (@grafanabot)
d074471557 [v9.2.x] Toolkit: Fix compilation loop when watching plugins for changes (#58695)
Toolkit: Fix compilation loop when watching plugins for changes (#58167)

* fix(toolkit): ignore node_modules and dist directories when watching for changes to plugin

* fix(toolkit): move watchOptions.ignored config to pluginDev watch call

(cherry picked from commit ce50400740)

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
2022-11-14 09:54:58 +01:00
Karl Persson
0f0211f400 [v9.2.x] Omit error from http response (#58445) 2022-11-14 09:42:45 +01:00
Grot (@grafanabot)
47f8928be1 [v9.2.x] StateTimelinePanel: Fix duration on merged values (#58679)
StateTimelinePanel: Fix duration on merged values (#58561)

Fix stateTimeline duration

(cherry picked from commit 79142340e0)

Co-authored-by: Victor Marin <36818606+mdvictor@users.noreply.github.com>
2022-11-11 13:33:48 -05:00
ismail simsek
1e97806819 Prometheus: Handle errors and warnings in buffered client (#58657)
Prometheus: Handle errors in buffered client (#58504)

* Handle prometheus errors in buffered client

* Handle prometheus warnings

* Fix tests

* Add unit test for warnings

(cherry picked from commit 8edeb1aa22)
2022-11-11 16:30:55 +01:00
Timur Olzhabayev
d6d6db54f9 Bumping msw and xmldom to mitigate xmldom vulnerability (#58632) 2022-11-11 16:12:55 +01:00
Grot (@grafanabot)
a01d5a10f5 [v9.2.x] Tempo: Fix search removing service name from query (#58633)
Tempo: Fix search removing service name from query (#58630)

* Fix handleOnChange deps

* Remove eslint disable

(cherry picked from commit c76183a961)

Co-authored-by: Joey Tawadrous <90795735+joey-grafana@users.noreply.github.com>
2022-11-11 10:59:05 +00:00
Grot (@grafanabot)
a151924ed3 [v9.2.x] Chore: Upgrade go-sqlite3 to v1.14.16 (#58588)
(cherry picked from commit 990d8cd22e)

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
2022-11-11 11:31:33 +01:00
Grot (@grafanabot)
65bd73f5cc [v9.2.x] Docs: Add feature flag example to override configuration with environment variables (#58615)
Co-authored-by: Alexa V <239999+axelavargas@users.noreply.github.com>
2022-11-10 16:42:06 -05:00
Grot (@grafanabot)
2c28ae5e70 [v9.2.x] Canvas: Improve disabled inline editing UX (#58614)
Canvas: Improve disabled inline editing UX (#58610)

(cherry picked from commit fd6edbf8c5)

Co-authored-by: Nathan Marrs <nathanielmarrs@gmail.com>
2022-11-10 16:17:41 -05:00
Grot (@grafanabot)
707800cd6c Canvas: Fix setting icon from field data #58499 (#58604)
(cherry picked from commit 47055561ec)

Co-authored-by: Nathan Marrs <nathanielmarrs@gmail.com>
2022-11-10 14:10:24 -05:00
George Robinson
cc2560b96f Alerting: Fix logging pointer address of DashboardUID and PanelID variables (#58539) (#58565)
(cherry picked from commit c5ae1bcfe0)
2022-11-10 13:45:20 +00:00
Grot (@grafanabot)
4e687bf869 Plugins: CallResource: Use canonical MIME headers when writing response (#58506) (#58567)
* Plugins: CallResource: use canonical MIME headers when writing response

* Plugins: add tests for canonical mime headers and Set-Cookie filter

* Removed extra new line

(cherry picked from commit 33f02839f0)

Co-authored-by: Giuseppe Guerra <giuseppe.guerra@grafana.com>
2022-11-10 13:38:46 +01:00
George Robinson
b372406a61 Alerting: Log when alert rule cannot be screenshot to help debugging (#58537) (#58563)
(cherry picked from commit 68600c224b)
2022-11-10 11:06:50 +00:00
Ashley Harrison
b689ec5d43 Navigation: Expose new props to extend Page/PluginPage (#58465) (#58562)
* add extensions and customisation to `Page`

* adjust alignment

(cherry picked from commit b3c761aaa7)
2022-11-10 10:05:45 +00:00
Grot (@grafanabot)
bcb1e94784 Linux repositories: Document apt|rpm.grafana.com (#57527) (#58475)
* Linux repositories: Document `apt|rpm.grafana.com`
We'll be moving off packages.grafana.com (it will be linked to the new repositories)
The new package repositories are easier to use, so let's document them instead

Question: Are the scripts in `scripts/build/update_repo` and `scripts/verify-repo-update` still used? They seem very old, and seem like the generation of scripts before grabpl was created

* Shorter RPM docs. No need to copy the same snippet twice

* Add warning about repository migration

* oops

(cherry picked from commit f1f401147f)

Co-authored-by: Julien Duchesne <julien.duchesne@grafana.com>
2022-11-10 11:01:25 +01:00
Grot (@grafanabot)
b2b673ab16 Prometheus: Query builder label filters dropdown UI overload fix (#58266) (#58546)
* WIP: try to support removing series endpoint for supported clients

* add other filter variables to match param for label values query against filter values, in order to resolve bug in which filter value options would display that aren't relevant in the current query editor context, i.e. options would display that upon select would display no data

* clean up console logs

* refactor and comment

* expanding current unit test coverage to cover calls to new API

* fix unit test

* whitespace

* prettier

* WIP: need to merge in other PR

* WIP giving up and trying again

* WIP: most functionality is working, split out shared loki/prom code

* fix bug in which search results wouldn't take other label context into the query

* Fix bug in which the previously selected value would conflict with the async search

* interpolate the label name string instead of the match promql expression

* remove type assertions

* remove type assertion

* clean up generic confusing types, and add back in a type assertion

* remove generic type

* make sure to interpolate label names

* fix bugs with variables not interpolating before query

* remove debug

* assert partial properties on QueryBuilderLabelFilter

* Force update betterer results :(

* update regex so dropdown UX more closely matches current behavior

* add eslint ignore

* add eslint ignore and update betterer

(cherry picked from commit ee7348afee)

Co-authored-by: Galen Kistler <109082771+gtk-grafana@users.noreply.github.com>
2022-11-09 15:15:17 -05:00
Grot (@grafanabot)
b333b2bc97 adjusts the stem sentence (#58538) (#58541)
(cherry picked from commit ad374efcbd)

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
2022-11-09 11:33:06 -06:00
George Robinson
a2f412e21f Alerting: Small improvements to staleResultsHandler (#58007) (#58513)
(cherry picked from commit 1290951b65)
2022-11-09 17:15:09 +00:00
Grot (@grafanabot)
40ad7fe358 Alerting: Fix images cached on rule instead of dashboard panel signature (#58510) (#58536)
(cherry picked from commit 7e852720e3)

Co-authored-by: George Robinson <george.robinson@grafana.com>
2022-11-09 17:14:16 +00:00
Grot (@grafanabot)
c48d42177f Add new PageInfo component (#58421) (#58534)
(cherry picked from commit 831ecb467c)

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-11-09 11:59:50 -05:00
Grot (@grafanabot)
18e8f6dc65 Alerting: Improve debug logs in image service (#58507) (#58533)
(cherry picked from commit b92a0223e3)

Co-authored-by: George Robinson <george.robinson@grafana.com>
2022-11-09 16:48:59 +00:00
Grot (@grafanabot)
b123e396ec Docs: adjusts topics to align with task templates (#58478) (#58531)
* updates topic to align with multiple task template

* updates goal intro

* aligns formatting with single task topic template

* Update docs/sources/administration/team-management/index.md

Co-authored-by: Kim Nylander <104772500+knylander-grafana@users.noreply.github.com>

* adds permissions requirements to two tasks

Co-authored-by: Kim Nylander <104772500+knylander-grafana@users.noreply.github.com>
(cherry picked from commit 2dfe0a4060)

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
2022-11-09 10:20:01 -06:00
Grot (@grafanabot)
725618e1d1 Elasticsearch: fix typo (#58519) (#58523)
(cherry picked from commit fa5a304de8)

Co-authored-by: Gareth Dawson <gareth.dawson@grafana.com>
2022-11-09 15:39:31 +00:00
Grot (@grafanabot)
8f06aa45ac Tempo: Fix dropdown issue on tag field focus (#57616) (#57883)
(cherry picked from commit 77be89eb1c)

Co-authored-by: xiyu95 <112968312+xiyu95@users.noreply.github.com>
Co-authored-by: Will Browne <will.browne@grafana.com>
2022-11-09 11:10:33 +01:00
Grot (@grafanabot)
bc7d29b3d6 Dashboards: Provide better error messages in SaveDashboardAsForm (#57866) (#58432)
The existing code uses `instanceof Error` to check for a `message` field on the thrown object. The objects that are thrown are never instances of the error interface. This change introduces a new type that extends Error so that the check works properly and displays a meaningful error message in the UI.

(cherry picked from commit f07da85d8b)

Co-authored-by: Joe Blubaugh <joe.blubaugh@grafana.com>
2022-11-09 13:04:51 +08:00
George Robinson
749d9c2cba Alerting: Fix screenshots were not cached (#58493) (#58494)
(cherry picked from commit c646ff0ce3)
2022-11-09 10:43:00 +08:00
Grot (@grafanabot)
a54d45fa90 Alerting: Use hash of opts in singleflight (#58474) (#58488)
(cherry picked from commit ad9ac85ee0)

Co-authored-by: George Robinson <george.robinson@grafana.com>
2022-11-08 22:52:49 +00:00
Grot (@grafanabot)
91d4141cf9 Use fnv64 for InmemCacheService (#58468) (#58487)
(cherry picked from commit 72275e97d2)

Co-authored-by: George Robinson <george.robinson@grafana.com>
2022-11-08 22:18:39 +00:00
Grot (@grafanabot)
00bede823f Tooltips: Make tooltips in FormField and FormLabel interactive and keyboard friendly (#57706) (#58471)
* Tooltips: add tabindex and interactive

A couple tooltips used in configuration of datasources like ADX were not
clickable or didn't show on keyboard focus.

- fixes #56561
- Same solution as #47137

* test: add test around tabbing to tooltips

(cherry picked from commit 3e92a2dc77)

Co-authored-by: Adam Simpson <adam@adamsimpson.net>
2022-11-08 12:11:34 -05:00
Grot (@grafanabot)
4d00a510d1 pkg/web: avoid shared middleware slice (#58458) (#58463)
(cherry picked from commit 75701695d8)

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
2022-11-08 11:13:05 -05:00
Grot (@grafanabot)
68882a861a properly format new .drone.yml in verify-drone (#58436) (#58452)
(cherry picked from commit d593aede3d)

Co-authored-by: Dan Cech <dcech@grafana.com>
2022-11-08 10:41:52 -05:00
Grot (@grafanabot)
a6faa45073 Prometheus: remove /series endpoint calls in query builder label names and values for supported clients (#58087) (#58438)
* add other filter variables to match param for label values query against filter values, in order to resolve bug in which filter value options would display that aren't relevant in the current query editor context, i.e. options would display that upon select would display no data

* expanding current unit test coverage to cover calls to new API

* interpolate the label name string instead of the match promql expression

(cherry picked from commit 9281746914)

Co-authored-by: Galen Kistler <109082771+gtk-grafana@users.noreply.github.com>
2022-11-08 08:56:35 -06:00
Grot (@grafanabot)
d9a6bf92d7 "Release: Updated versions in package to 9.2.5" (#58430) 2022-11-08 14:11:37 +00:00
Grot (@grafanabot)
c845bfd9ac Changelog: Updated changelog for 9.2.4 (#58429) (#58431)
(cherry picked from commit 94573d3e61)
2022-11-08 09:03:10 -05:00
Grot (@grafanabot)
1049636ef6 Grafana Enterprise Packaging: Set to conflict with grafana, not replace (#58189) (#58418)
* Grafana Enterprise Packaging: Set to conflict with `grafana`, not replace
When `grafana` and `grafana-enterprise` are in the same RPM repository, grafana-enterprise takes precedence over Grafana
This is not what we want. Users should be able to install either OSS or Enterprise

* Set it only one way. It's how it's currently tested

(cherry picked from commit 786c7faff2)

Co-authored-by: Julien Duchesne <julien.duchesne@grafana.com>
2022-11-08 08:11:54 -05:00
Marcus Efraimsson
0e5a094447 Prometheus: Upgrades http client to v1.13.1 (#58363) (#58395)
(cherry picked from commit faa0fda6eb)
2022-11-08 12:37:59 +01:00
Grot (@grafanabot)
b82d26e130 CallResource: don't set Content-Type header if status is 204 (#50780) (#58362)
Grafana's HTTPServer ensures that the Content-Type header is always set
in the response to a CallResource call, but when the status code is
204 No Content this shouldn't be done; the body should be empty and no
Content-Type header should be set.

We ran into this in the Grafana ML plugin where we were sending an empty
response with status 204, but the frontend client saw that the content
type was JSON and tried to parse it, resulting in an error that made it
to the JS console.

(cherry picked from commit 480277f612)

Co-authored-by: Ben Sully <ben.sully@grafana.com>
2022-11-08 12:31:45 +01:00
Grot (@grafanabot)
945c3fafe7 Alerting: Remove duplicate Slack notification title (#58107) (#58256)
Move mentions to a markdown-formatted pretext field
to prevent issues mixing blocks and legacy-attachment content.

(cherry picked from commit d581b368bd)

Co-authored-by: Will Jordan <wjordan@users.noreply.github.com>
2022-11-08 11:41:35 +01:00
Grot (@grafanabot)
164fb230cb Docs: corrects outer join example (#58348) (#58366)
* corrects outer join example

* Update docs/sources/panels-visualizations/query-transform-data/transform-data/index.md

* adds query tables back in

(cherry picked from commit 0315f6317e)

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
2022-11-07 13:53:18 -06:00
Dimitris Sotirakis
7382b1be90 [v9.2.x] CI: Use full dockerhub repository name (#57979) (#57983)
* CI: Use full `dockerhub` repository name (#57979)

* Add full dockerhub repo name

* Update grabpl version

(cherry picked from commit 57ee0e4a4b)

* sign drone.yml

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2022-11-07 18:23:44 +01:00
George Robinson
d38ac63f22 Alerting: Append org ID to alert notification URLs (#57123) (#58349)
(cherry picked from commit db1fd10ff1)

Co-authored-by: Neel <47709856+neel1996@users.noreply.github.com>
2022-11-07 17:07:07 +00:00
Grot (@grafanabot)
67f503b820 Alerting: Fix test fails in some environments (#58251) (#58356)
(cherry picked from commit 8353f307aa)

Co-authored-by: George Robinson <george.robinson@grafana.com>
2022-11-07 16:54:39 +00:00
Zoltán Bedi
4ec37fb058 MSSql/Postgres: Fix visual query editor filter disappearing (#58248) (#58354)
(cherry picked from commit b472306239)
2022-11-07 17:35:49 +01:00
Grot (@grafanabot)
4fee0645a1 Datasource Loki: preserve header X-ID-Token (#57878) (#58346)
(cherry picked from commit bc280d0749)

Co-authored-by: Si Mon <85333972+siiimooon@users.noreply.github.com>
2022-11-07 11:11:10 -05:00
Emil Tullstedt
b03e28fc60 Chore: Upgrade Go to 1.19.3 (v9.2) (#58339) 2022-11-07 16:52:15 +01:00
Grot (@grafanabot)
db55065687 fix thanos semver string (#58335) (#58344)
(cherry picked from commit 6bc8ec0f9b)

Co-authored-by: Galen Kistler <109082771+gtk-grafana@users.noreply.github.com>
2022-11-07 09:46:37 -06:00
Grot (@grafanabot)
7ca5c227dd Toolkit: Fix Webpack less-loader config (#57950) (#58175)
(cherry picked from commit b799be3052)

Co-authored-by: dessen-xu <1805680163@qq.com>
2022-11-07 16:16:58 +01:00
Grot (@grafanabot)
3dc8434cf4 @grafana/e2e: Fix addPanel for small screen size (#57398) (#58314)
(cherry picked from commit d001a1b035)

Co-authored-by: Andres Martinez Gotor <andres.martinez@grafana.com>
2022-11-07 07:06:23 -05:00
Grot (@grafanabot)
8cb58c1560 Chore: Disable dashboard-time-zone e2e tests (#58320) (#58323)
(cherry picked from commit d4e3d47f56)

Co-authored-by: Josh Hunt <joshhunt@users.noreply.github.com>
2022-11-07 06:47:43 -05:00
Grot (@grafanabot)
63f6207a1f Auth: Check for OrgUsersAdd on frontend to display pending invites (#58217) (#58225)
(cherry picked from commit 9ff2765bb9)

Co-authored-by: Josh Hunt <joshhunt@users.noreply.github.com>
2022-11-07 06:28:57 -05:00
Grot (@grafanabot)
97ee2cf918 MySQL: make it possible to add CA cert without using tlsAuth (#58226) (#58308)
(cherry picked from commit b1bfae0350)

Co-authored-by: Oscar Kilhed <oscar.kilhed@grafana.com>
2022-11-07 03:54:50 -05:00
Grot (@grafanabot)
b642a797fd Timeseries: Fix null pointer when matching fill below to field (#58030) (#58298)
* Fix timeseries fill below to error

* wip

* modifications

* add tests for fillBelowTo option

(cherry picked from commit d673c8809b)

Co-authored-by: Victor Marin <36818606+mdvictor@users.noreply.github.com>
2022-11-06 09:35:06 -05:00
Eric Leijonmarck
9b07bc7e98 merge complete (#58274)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2022-11-04 15:03:07 -07:00
Eric Leijonmarck
94594d61e6 followup fix for backport (#58273) 2022-11-04 21:20:20 +00:00
Eric Leijonmarck
0026764f04 merge complete (#58272) 2022-11-04 20:45:38 +00:00
Grot (@grafanabot)
a09a23c8bf Search: Fixes searching by current folder when opened by clicking dashboard folder name (#57716) (#57949)
* Search: Read from url on mount no on app boot

* Fixed tests

* Remove unused type

(cherry picked from commit 3991be4c1d)

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2022-11-04 12:57:39 -04:00
Grot (@grafanabot)
e4af9fba96 Build: add explicit build step for go codeql (#58195) (#58243)
* add explicit build step for go codeql

* support workflow_dispatch for codeql checks

* syntax fix

* enable on push to codeql-go branch

* test

* use go version from go.mod

* explicitly set go version

* tidy up, add workflow_dispatch support to all codeql actions

(cherry picked from commit da9c646f24)

Co-authored-by: Dan Cech <dcech@grafana.com>
2022-11-04 11:40:40 -04:00
Grot (@grafanabot)
f70d51c2c6 [v9.2.x] Alerting: Encode path separators to side-step proxies (#58222)
Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2022-11-04 07:13:53 -04:00
Grot (@grafanabot)
b8835eba17 fixes typo (#58159) (#58194)
(cherry picked from commit 1722000309)

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
2022-11-03 13:55:51 -05:00
Grot (@grafanabot)
4e2d4c42f0 fixed explain handlers for label- and lineformat (#58135) (#58151)
(cherry picked from commit 4b1ddba0a8)

Co-authored-by: Sven Grossmann <sven.grossmann@grafana.com>
2022-11-03 10:09:47 -04:00
Grot (@grafanabot)
ac66ba77da TimeSeries: more thorough detection of negative values for stacking dir (#57863) (#58147)
(cherry picked from commit 4d88e2b542)

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2022-11-03 09:38:19 -04:00
Grot (@grafanabot)
afab41a9c4 reduce the number of requests in folder section (#55876) (#58145)
(cherry picked from commit 372ba83534)

Co-authored-by: Marcos Vinicius <marcos.vinicius.wz@gmail.com>
2022-11-03 09:35:39 -04:00
Piotr Jamróz
72cf8605c0 [v9.2.x] Explore: Track data links usage (#56868) (#58037)
* Explore: Track data links usage (#56868)

* Add tracking for data links in explore

* Add tracking for data links in explore

* Fix tests

* Retrigger build

(cherry picked from commit dd5e3a0818)

# Conflicts:
#	public/app/features/explore/Explore.tsx
#	public/app/features/explore/LogsContainer.tsx

* Post-merge fixes

Remove unused import
2022-11-03 14:22:40 +01:00
Grot (@grafanabot)
7ba1e9e258 Tempo: Make usage of time range for TraceID query optional (#58057) (#58128)
* Added switch to toggle the TraceID query time shift

* Fix and improve tests

(cherry picked from commit 90ac300d10)

Co-authored-by: Andre Pereira <adrapereira@gmail.com>
2022-11-03 07:18:12 -04:00
Grot (@grafanabot)
f07841db8a increase select placeholder contrast to be WCAG AA compliant (#58034) (#58125)
(cherry picked from commit c3206167a6)

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-11-03 07:00:45 -04:00
Eric Leijonmarck
797dd2dd58 fix: migration of alert_rules fix (#58123) 2022-11-03 10:37:22 +00:00
George Robinson
ab3718afba Alerting: Fix screenshot is not taken for stale series (#57982) (#58102)
(cherry picked from commit 215ffee437)
2022-11-03 10:17:01 +00:00
Grot (@grafanabot)
d1df696c31 Alerting: Fix feedback (#57922) (#58104)
(cherry picked from commit f2e4cb7c4e)

Co-authored-by: George Robinson <george.robinson@grafana.com>
2022-11-02 18:49:29 -04:00
Grot (@grafanabot)
dfeb978e3b remove unneeded package updates (#58005) (#58068)
(cherry picked from commit 6a4a10fa92)

Co-authored-by: Dan Cech <dcech@grafana.com>
2022-11-02 18:31:43 +00:00
Torkel Ödegaard
8b7664294c LibrayPanels: Fix unlinking libray panel (#57825) (#58042) 2022-11-02 16:19:53 +01:00
Grot (@grafanabot)
5895100beb Alerting: Fix response is not returned for invalid Duration in Provisioning API (#58046) (#58049)
(cherry picked from commit 4c581b5f85)

Co-authored-by: George Robinson <george.robinson@grafana.com>
2022-11-02 13:06:58 +00:00
Grot (@grafanabot)
844b08962d chore: bump code coverage action version (#56710) (#58040)
(cherry picked from commit e3e32c7d04)

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2022-11-02 12:18:01 +00:00
Dimitris Sotirakis
551c4aa562 Linux Packages: Handle publish to beta (#57528) (#58044)
Uses the feature added here: https://github.com/grafana/deployment_tools/pull/46301
When a version is named "beta", it will be distributed in the beta distribution, rather than in stable

Co-authored-by: dsotirakis <dimitrios.sotirakis@grafana.com>
(cherry picked from commit c46a4a0b26)

Co-authored-by: Julien Duchesne <julien.duchesne@grafana.com>
2022-11-02 14:17:44 +02:00
Andres Martinez Gotor
1ac0c03a1d [v9.2.x] Google Cloud Monitoring: Set frame interval to draw null values (#57914) 2022-11-02 12:14:30 +01:00
Grot (@grafanabot)
484b098a20 Alerting: Fix flaky test in notifiers (#57927) (#57993)
* Alerting: Fix flaky test in notifiers

* remove TODO comment

(cherry picked from commit a3f828de8a)

Co-authored-by: Santiago <santiagohernandez.1997@gmail.com>
2022-11-01 12:29:24 -03:00
Grot (@grafanabot)
ca73c43b56 metrics: expose when the binary was built as an gauge (#57951) (#57969)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
(cherry picked from commit 3188af9be3)
2022-11-01 08:14:17 -04:00
Grot (@grafanabot)
6c027ccf6a "Release: Updated versions in package to 9.2.4" (#57958) 2022-11-01 06:50:30 -04:00
Grot (@grafanabot)
0275f11785 Changelog: Updated changelog for 9.2.3 (#57955) (#57957)
(cherry picked from commit 02add89b53)
2022-11-01 06:39:10 -04:00
Dimitris Sotirakis
3274e8727e Add GCP_KEY to publish-grafanacom step (#57910) (#57948)
(cherry picked from commit 1eaf7cbfc0)
2022-11-01 09:07:44 +00:00
Grot (@grafanabot)
522a819e9e CloudWatch: Fix all-log-groups endpoint when called without logGroupNamePrefix (#57483) (#57945)
(cherry picked from commit 1f7c84f125)

Co-authored-by: Lion Ralfs <lion.ralfs@gmail.com>
2022-11-01 09:14:36 +01:00
Grot (@grafanabot)
f6abf640eb TimeSeries: Render null-bounded points at data edges (#57798) (#57938)
(cherry picked from commit 45234e76eb)

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2022-10-31 19:06:43 -04:00
Grot (@grafanabot)
47b635270e BarChart: Fix stacked hover (#57711) (#57937)
(cherry picked from commit fbfd0fd51b)

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2022-10-31 17:58:45 -04:00
Grot (@grafanabot)
36bfb144b7 removes CTAs (#57931) (#57935)
(cherry picked from commit 6aa3003a54)

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
2022-10-31 16:39:58 -05:00
Grot (@grafanabot)
fade9fb6ae [v9.2.x] Alerting: fix filtering in notification policies (#57925)
Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2022-10-31 13:53:33 -04:00
Grot (@grafanabot)
ad2ea44977 Attempt to preserve UID from migrated channel (#57639) (#57919)
(cherry picked from commit 0dfd78c88c)

Co-authored-by: Alexander Weaver <weaver.alex.d@gmail.com>
2022-10-31 12:17:48 -05:00
Grot (@grafanabot)
924180a25b Alerting: Add debug logs in validateAndGetPrefix (#57002) (#57923)
(cherry picked from commit b0a927b138)

Co-authored-by: George Robinson <george.robinson@grafana.com>
2022-10-31 17:12:19 +00:00
Grot (@grafanabot)
76ed60064d change json command parameter names from userID to userId and teamID to teamId (#57902) (#57913)
(cherry picked from commit 5c1a1c8318)

Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
2022-10-31 15:33:39 +00:00
Grot (@grafanabot)
e09307c078 add an endpoint for updating several managed permissions with one call (#57893) (#57898)
(cherry picked from commit 2546437e20)

Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
2022-10-31 14:31:34 +00:00
Grot (@grafanabot)
ec9c2ed029 Google Cloud Monitoring: Ensure selectors fit in the screen (#57817) (#57899)
(cherry picked from commit ce38840f29)

Co-authored-by: Andres Martinez Gotor <andres.martinez@grafana.com>
2022-10-31 13:36:07 +01:00
Grot (@grafanabot)
92b10cc965 Chore: Update footer changelog link to github (#57871) (#57895)
(cherry picked from commit fd5c147574)

Co-authored-by: Josh Hunt <joshhunt@users.noreply.github.com>
2022-10-31 08:33:25 -04:00
Grot (@grafanabot)
3be1ddc56a CloudWatch: Fix broken test (#57879) (#57900)
* mock date.now

* fix broken test

(cherry picked from commit 92ed9a4f2f)

Co-authored-by: Erik Sundell <erik.sundell87@gmail.com>
2022-10-31 08:16:12 -04:00
Grot (@grafanabot)
dac165a7fc RBAC: Allow to list users for dashboard / folder admins (#57080) (#57252)
* RBAC: Use query struct in tests

* RBAC: If access control enforcement is disabled don't filter out users
when fetching permissions

(cherry picked from commit 9adaf1565c)

Co-authored-by: Karl Persson <kalle.persson@grafana.com>
2022-10-31 07:31:43 -04:00
Grot (@grafanabot)
44655b96cb docs(config): Include admin_email documentation (#55789) (#57725)
(cherry picked from commit 1340c2c358)

Co-authored-by: Pepe Fagoaga <pepe@verica.io>
2022-10-31 11:39:48 +01:00
Grot (@grafanabot)
79104ef556 Access Control: documentation for RBAC provisioning with Terraform (#57747) (#57882)
* add docs for RBAC provisioning with Terraform

* remove unnecessary bit

* shuffle the structure around, as docs can't go more than four levels deep

* Update index.md

* Update index.md

(cherry picked from commit 7e62352aea)

Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
2022-10-31 10:36:13 +00:00
Grot (@grafanabot)
95189820fe Docs: Add information about DB version support to upgrade guide. (#57643) (#57868)
In v9.2 Grafana added an official DB version support policy. That change
is now noted in the upgrade guide.

(cherry picked from commit 89d917b196)

Co-authored-by: Joe Blubaugh <joe.blubaugh@grafana.com>
2022-10-31 09:27:30 +01:00
Grot (@grafanabot)
68d7dadaec Dashboards: Add workaround for react-grid-layout rearrange bug (#57832) (#57836)
(cherry picked from commit e4d1d8d70c)

Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
2022-10-29 23:46:57 +01:00
Grot (@grafanabot)
2bfc106473 Dashboards: Add workaround for react-grid-layout rearrange bug (#57832) (#57836)
(cherry picked from commit e4d1d8d70c)

Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
2022-10-29 23:46:46 +01:00
Christopher Moyer
82430165ee resolves merge conflicts (#57840) 2022-10-28 13:57:12 -05:00
Grot (@grafanabot)
85f1aab363 Prometheus: Chore - Remove incorrect FrameType from exemplar frame (#57695) (#57828)
(cherry picked from commit 2cd9cbd359)

Co-authored-by: Kyle Brandt <kyle@grafana.com>
2022-10-28 10:53:36 -04:00
Grot (@grafanabot)
3df51bf025 Prometheus: Do not drop errors in streaming parser (#57698) (#57835)
- Fixes #57692
- and also takes care of #42776 when using the streaming parser, not an ideal fix for #42776 but makes explore work better I think. https://github.com/grafana/grafana/issues/57365 might be a better longer term solution

(cherry picked from commit 6126f56ef0)

Co-authored-by: Kyle Brandt <kyle@grafana.com>
2022-10-28 10:52:36 -04:00
Grot (@grafanabot)
b1d914bceb Remove Sensu from docs (#57812) (#57823)
We do not support Sensu in Grafana Alerting, only Sensu Go.

(cherry picked from commit ee7adc081b)

Co-authored-by: Armand Grillet <2117580+armandgrillet@users.noreply.github.com>
2022-10-28 13:59:15 +02:00
Marcus Andersson
e0e74ea6d2 [v9.2.x] Chore: Fix vulnerabilities in webpack loader-utils (#57753)
* chore: remove unused webpack loaders from core and toolkit

* chore: refresh yarn.lock file

* getting there...I hope..

* making sure we are not using naughty loader-utils.

* fixed storybook.
2022-10-28 13:00:04 +02:00
Grot (@grafanabot)
b94c64ef48 CI: Add CreateTempDir func and use it in publish packages logic (#57171) (#57261)
* Add CreateTempDir func and use it in publish packages logic

* Fill err return in defer func

(cherry picked from commit e829b50149)

Co-authored-by: Dimitris Sotirakis <dimitrios.sotirakis@grafana.com>
2022-10-28 05:43:05 -04:00
Grot (@grafanabot)
43d3f21ff0 Only provide version ot build-frontend-packages if it's a valid semver (has 2 digits) (#57808) (#57810)
(cherry picked from commit fd16cad7da)

Co-authored-by: Kevin Minehart <kmineh0151@gmail.com>
2022-10-28 11:26:22 +02:00
emerson_gong
a62cb4e6c1 Security: Upgrade x/text to version unaffected by CVE-2022-32149 (#57797) 2022-10-28 09:07:27 +02:00
Grot (@grafanabot)
23b791c234 TimeseriesPanel: Fill below to override works with name override (#57728) (#57800)
(cherry picked from commit 953fdfe76f)

Co-authored-by: Victor Marin <36818606+mdvictor@users.noreply.github.com>
2022-10-28 02:46:35 -04:00
Grot (@grafanabot)
0b27b6a8c2 Candlestick: Maintain candle width at different display resolutions (#57709) (#57794)
(cherry picked from commit 7d020d3f6e)

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2022-10-27 19:45:58 -05:00
ismail simsek
e71e6ae07e Prometheus: fix Raw query is not updated when label op change. (#57492) (#57493) (#57780)
(cherry picked from commit 9aac0d32f9)

Co-authored-by: yinjialu <37073056+yinjialu@users.noreply.github.com>
2022-10-27 14:24:07 -04:00
Grot (@grafanabot)
2576f05029 Alerting: Fix "Not Implemented" responses (#57710) (#57712) 2022-10-27 14:48:54 -03:00
Grot (@grafanabot)
e8cff14164 [v9.2.x] Alerting: Fall back to "range" query type for unified alerting when "both" is specified (#57765)
Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2022-10-27 11:36:36 -04:00
Jo
a162fdf32f fix GF_AUTH_JWT_URL_LOGIN not working (#57689) (#57761)
(cherry picked from commit cae900c6f9)
2022-10-27 10:44:50 -04:00
Grot (@grafanabot)
99f6606285 Fix: Unlock new button based on user permissions (#57733) (#57760)
(cherry picked from commit 4d380978d3)

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
2022-10-27 16:03:20 +02:00
Grot (@grafanabot)
d2f721c18e Docs: (Whats new 9.2) Prom Stream Parser (#57603) (#57693)
* Docs: (Whats new 9.2) Prom Stream Parser

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

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>
(cherry picked from commit dfdc9bcbc1)

Co-authored-by: Kyle Brandt <kyle@grafana.com>
2022-10-26 13:26:48 -04:00
Grot (@grafanabot)
efd139ecf3 Prometheus query builder: Replace select with AsyncSelect to support high cardinality prometheus instances (#57300) (#57630)
* Replace current select with AsyncSelect component to facilitate autocomplete via prometheus server instead of client application
Co-authored-by: Kyle Brandt <kyle@grafana.com>

(cherry picked from commit c27aac0d38)

Co-authored-by: Galen Kistler <109082771+gtk-grafana@users.noreply.github.com>
2022-10-26 08:10:30 -05:00
Galen Kistler
5647a981ed Prometheus: Flavor/version configuration (#57554) (#57563)
* Backport PR for: Prometheus: Flavor/version configuration (#57554), and /label match parameter support #56510

* Revert "Revert "Prometheus: Type and flavor configuration (#56496)" (#57552)"
This reverts commit 2432ce619a.
* Adds new fields and documentation for Prometheus datasource configuration: prometheus type, and version

(cherry picked from commit f93c3acc51)

* Revert "Revert "Prometheus: Provide label values match parameter API when supported prometheus instance is configured (#56510)" (#57551)" (#57553) (#57564)

This reverts commit e7671bf909.
(cherry picked from commit e59ddd6bc5)
Co-authored-by: Galen Kistler <109082771+gtk-grafana@users.noreply.github.com>

Co-authored-by: Grot (@grafanabot) <43478413+grafanabot@users.noreply.github.com>
2022-10-26 08:10:05 -05:00
Grot (@grafanabot)
d6f248c14e move data source permission model to enterprise repo (#57615) (#57659)
(cherry picked from commit 92531c5596)

Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
2022-10-26 13:30:20 +01:00
Grot (@grafanabot)
f58d6107e1 [v9.2.x] Alerting: Always allow configuring AM configuration (#57614)
Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2022-10-25 11:11:05 -04:00
Grot (@grafanabot)
b3a46212df "Release: Updated versions in package to 9.2.3" (#57605) 2022-10-25 15:08:27 +02:00
Grot (@grafanabot)
3289770198 Changelog: Updated changelog for 9.2.2 (#57601) (#57604)
(cherry picked from commit f64b0e1fae)
2022-10-25 14:45:07 +02:00
Grot (@grafanabot)
8d7c3f19ee live: explicitely reply with http 200 (#57428) (#57592)
`pkg/web` triggers a panic when a http handler chain does not return any
response to the client.
This has been put in place, because it usually means a middleware along
the way did not call the next one.

In this specific case however, the handlers meant to return 200, but did
not do so explicitely, instead relying on the default behavior of `net/http`

(cherry picked from commit beaaabd770)

Co-authored-by: sh0rez <me@shorez.de>
2022-10-25 06:02:15 -04:00
Grot (@grafanabot)
68c8987152 TablePanel: Fix updating footer values on data change (#57518) (#57581)
* TablePanel: Fix updating footer values on data change

* tests

(cherry picked from commit c30716a073)

Co-authored-by: Victor Marin <36818606+mdvictor@users.noreply.github.com>
2022-10-25 02:56:58 -04:00
Grot (@grafanabot)
7832a7579f Storage: Fix initialization on windows (#57504) (#57577)
(cherry picked from commit 749b3b6263)

Co-authored-by: Artur Wierzbicki <artur.wierzbicki@grafana.com>
2022-10-24 21:45:55 -04:00
Grot (@grafanabot)
92fa1aba00 Canvas: Improve resource picker initialization (#57319) (#57566)
(cherry picked from commit 9d857f4d61)

Co-authored-by: Nathan Marrs <nathanielmarrs@gmail.com>
2022-10-24 16:52:40 -04:00
Grot (@grafanabot)
8ea7a8cff3 Docs: Database encryption corrections (#57503) (#57559)
* Docs: Database encryption corrections

* Fix relref links

* Additional corrections

(cherry picked from commit 5d18b41857)

Co-authored-by: Joan López de la Franca Beltran <5459617+joanlopez@users.noreply.github.com>
2022-10-24 13:07:20 -07:00
Adela Almasan
13e306bbfb Canvas: Button element (alpha) (#57491) (#57557)
(cherry picked from commit 73c215ae41)
2022-10-24 14:00:38 -04:00
Erik Sundell
e69568fec8 fix merge conflict (#57546)
Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2022-10-24 19:53:13 +02:00
Grot (@grafanabot)
509cb77bca RBAC: Allow access to /dashboards when user has dashboards create (#56712) (#57153)
* RBAC: Allow access to dashboards when user has dashboards create

* Remove eval any that I didn't add on purpose

(cherry picked from commit 3963ed3754)

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
2022-10-24 15:57:55 +02:00
Grot (@grafanabot)
1573285f21 NodeGraph: Fix rendering issues when values of arc are over 1 (#57460) (#57513)
(cherry picked from commit 67aa99af78)

Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com>
2022-10-24 14:59:20 +02:00
Grot (@grafanabot)
06780e2c41 Clarify notification policies. (#57465) (#57507) 2022-10-24 11:47:24 +02:00
Grot (@grafanabot)
201c7e123d Fix broken image links (#57480) (#57487)
(cherry picked from commit 4053cbea38)

Co-authored-by: ismail simsek <ismailsimsek09@gmail.com>
2022-10-22 11:49:28 -07:00
Grot (@grafanabot)
c4233171f2 TimeSeries: fix negative stacked percent y-axis range (#57470) (#57478)
(cherry picked from commit 45707ccf99)

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2022-10-21 16:41:45 -06:00
Grot (@grafanabot)
a318b15cab TimeSeries: Fix stacking when first value is negative zero (#57257) (#57472)
* TimeSeries: Fix stacking when first value is negative zero

* More test + refactor

(cherry picked from commit 7f3b567657)

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2022-10-21 15:12:16 -04:00
Andre Pereira
559ef42767 Tempo: Add start time and end time parameters while querying traces (#48068) (#57459)
* Add start time and end time parameters while querying tempo traces

* Added configurable time shift to query by trace id

* Test that the URL is formatted correctly

* Added test to check for time shift

* Improved label and tooltip of new time shift settings

Co-authored-by: André Pereira <adrapereira@gmail.com>
(cherry picked from commit 98053cfde8)

Co-authored-by: bikashmishra100 <bikashprakash@gmail.com>
2022-10-21 16:51:48 +01:00
Grot (@grafanabot)
aff8e62b8c use inherited colors on svg (#57427) (#57447)
(cherry picked from commit 842b629cd1)

Co-authored-by: Sven Grossmann <sven.grossmann@grafana.com>
2022-10-21 17:05:31 +02:00
Grot (@grafanabot)
263e3142a1 Use resource call query_result query (#57232) (#57453)
(cherry picked from commit 47eb7f785d)

Co-authored-by: Sergey Kostrukov <sekost@microsoft.com>
2022-10-21 09:21:23 -05:00
Grot (@grafanabot)
e67669b250 Dashboard: Alerts user to incorrect tag format for JSON import (#54657) (#57277)
* Dashboard: Alerts user to incorrect tag format for JSON import

Fixes #54285: Malformed tags cause hidden title and settings page crash

* Update public/app/features/manage-dashboards/utils/validation.ts

Co-authored-by: Polina Boneva <13227501+polibb@users.noreply.github.com>

* Included Suggestions

- Removed Comments
- Updated Code Block accordingly
- Updated Tests to camelCase over snake_case

* Updates per comments

- Re-wrapped function in try{}, catch{} as I appear to have overlooked including it in the initial refactor
- Re-worded errors to align with initial error
- Added a test case for invalid json

* Update validation.ts

Updated errors to read correctly to the root cause.
Updated dashboard variable as const.

* Update actions.test.ts

Fix tests according to error output rewording

* Update validation.ts

- Included test for an empty string of non-array

* Update actions.test.ts

-- Commented incorrect commit for validation.ts, update:
- Refactored code to better align and separate from generic JSON package tests followed by our manual checks of (1) Is array, and (2) if array, is of strings

- Test cases now include a check for non-array empty string in the tag property

Co-authored-by: Polina Boneva <13227501+polibb@users.noreply.github.com>
(cherry picked from commit 5285d34cc0)

Co-authored-by: AJ Tomko <andrew.j.tomko@gmail.com>
2022-10-21 09:54:00 -04:00
Grot (@grafanabot)
9b2d3e3cac fix: add alerting enabled condition FOR adding alerting tab in folder view (#57434) (#57448)
(cherry picked from commit cd0e0fcc53)

Co-authored-by: Sonia Aguilar <33540275+soniaAguilarPeiron@users.noreply.github.com>
2022-10-21 15:50:42 +02:00
Grot (@grafanabot)
72d97eb375 E2E: Remove time zone scenario flackyness (#55458) (#57442)
Co-authored-by: polinaboneva <polina.boneva@grafana.com>
(cherry picked from commit 7fd613ec0d)

Co-authored-by: Ivan Ortega Alba <ivanortegaalba@gmail.com>
2022-10-21 16:31:21 +03:00
Grot (@grafanabot)
868e560006 OutsideRangePlugin: Exclude leading and trailing null values when checking limits (#57335) (#57433)
* OutsideRangePlugin: Exclude null limit values from calculation

* refactor

* Update OutsideRangePlugin.tsx

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

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
(cherry picked from commit f161c5407a)

Co-authored-by: Victor Marin <36818606+mdvictor@users.noreply.github.com>
2022-10-21 08:46:36 -04:00
Jo
b6a91429c9 Swap order of login fields (#57426)
Co-authored-by: linoman <2051016+linoman@users.noreply.github.com>
2022-10-21 14:15:59 +02:00
Marcus Efraimsson
d2fe4b4813 [v9.2.x] Plugin fixes (#57401)
* Plugins: Remove support for V1 manifests

* Plugins: Make proxy endpoints not leak sensitive HTTP headers

* Security: Fix do not forward login cookie in outgoing requests

(cherry picked from commit 4539c33fce)

Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
2022-10-21 13:55:35 +02:00
Grot (@grafanabot)
46f2243f02 Docs: fixes silences typo (#57418) (#57423)
(cherry picked from commit af17123b5f)

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2022-10-21 07:52:41 -04:00
Grot (@grafanabot)
fcfbb2415f Canvas: Improve text element readability (#57371) (#57375)
(cherry picked from commit 5128659d19)

Co-authored-by: Adela Almasan <88068998+adela-almasan@users.noreply.github.com>
2022-10-20 16:19:08 -04:00
Grot (@grafanabot)
a3bccbbdeb User: Fix externalUserId not being populated (#57341) (#57370)
(cherry picked from commit 8cebaf345d)

Co-authored-by: Josh Hunt <joshhunt@users.noreply.github.com>
2022-10-20 14:53:17 -04:00
Grot (@grafanabot)
188792428d GoogleOAuth: Unlock UI (#57350) (#57355)
(cherry picked from commit f184f9211c)

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
2022-10-20 09:05:52 -04:00
Grot (@grafanabot)
15557bf4af StateTimeline: fix hover overlays when browser-zoomed (#57224) (#57351)
(cherry picked from commit 79afad3888)

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2022-10-20 08:14:13 -04:00
Grot (@grafanabot)
7582c92f0d Docs: fixes endpoint for mimir (#57330) (#57333)
(cherry picked from commit ee6ff18122)

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2022-10-20 04:42:12 -04:00
Grot (@grafanabot)
d8c11cdd7a StatuHistoryPanel: Fix zoom not working (#57240) (#57324)
(cherry picked from commit 0dd721d4ce)

Co-authored-by: Victor Marin <36818606+mdvictor@users.noreply.github.com>
2022-10-20 02:42:21 -04:00
Grot (@grafanabot)
3752197643 MSSQL: Support tables from all schemas (#53099) (#57287)
(cherry picked from commit 09ab156480)

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2022-10-20 08:30:10 +02:00
Grot (@grafanabot)
0d93b268f2 add correct overscroll-behavior to context modals (#56070) (#57322)
(cherry picked from commit 0c1e4979af)

Co-authored-by: Sven Grossmann <Svennergr@gmail.com>
2022-10-20 01:41:41 -04:00
Grot (@grafanabot)
09eb30b9a3 Docs: Fix reference to Enterprise licensing restrictions (#57230) (#57301)
(cherry picked from commit c70bb592fe)

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>
2022-10-19 13:29:01 -07:00
Grot (@grafanabot)
1547e41ce0 Routing: an unexpected spelling error happened (#57295) (#57305)
(cherry picked from commit bdb97496ec)

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2022-10-19 14:24:27 -06:00
Grot (@grafanabot)
1559344944 Alerting: Change severity level of fetcher log messages (#57299) (#57304)
(cherry picked from commit 3e6bc28de5)

Co-authored-by: Yuriy Tseretyan <yuriy.tseretyan@grafana.com>
2022-10-19 16:19:13 -04:00
Grot (@grafanabot)
0cc1c86015 Docs: Add missing alias for field options (#57234) (#57297)
(cherry picked from commit a0d83e7db7)

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>
2022-10-19 14:16:09 -04:00
Grot (@grafanabot)
fc99833cfb Docs: Fix links in old What's New docs (#57231) (#57283)
* Docs: Fix placeholder URL in release notes link

* Docs: Fix link to refactored docs and add missing alias

* Docs: Fix malformed links

* Docs: Fix alias with correct path

(cherry picked from commit 9680249066)

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>
2022-10-19 11:14:58 -07:00
Grot (@grafanabot)
963a71ba34 Tempo: Fix Node Graph visualization type in dashboard (#56931) (#57269)
Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com>
(cherry picked from commit f50ab457bd)

Co-authored-by: Hamas Shafiq <hamas.shafiq@grafana.com>
2022-10-19 18:04:19 +01:00
Grot (@grafanabot)
613d3b5e17 Loki: Fix adding of adhoc filters to stream selector when query with empty stream selector (#57280) (#57286)
* disable double stringify

* Refactor test for addLabelToQuery

* Add tests (TDD for expected behaviour)

* Fix adding ad hoc filters to correct place when no stream selector

* Update

* Update comment

* Fix getAllPositionsInNodeByType

Co-authored-by: Sven Grossmann <svennergr@gmail.com>
(cherry picked from commit 7928f170ce)

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2022-10-19 17:50:15 +02:00
Grot (@grafanabot)
a991be81da [v9.2.x] Docs: Fix broken InfluxDB starting guide links (#57282)
* Docs: Fix broken InfluxDB starting guide links (#57235)

* Docs: Fix broken InfluxDB starting guide links

* Docs: Fix another link to panel adding docs

(cherry picked from commit e14ef50d02)

* Update docs/sources/getting-started/get-started-grafana-influxdb.md

* Update docs/sources/getting-started/get-started-grafana-influxdb.md

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>
2022-10-19 10:58:00 -04:00
Grot (@grafanabot)
85e2b028de Docs: Fix links in panels and vis docs (#57233) (#57275)
(cherry picked from commit e52c98ba99)

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>
2022-10-19 07:30:55 -07:00
Grot (@grafanabot)
a8a1bcc58c Fix typo (#57223) (#57229)
(cherry picked from commit cc6245df8e)

Co-authored-by: Sobuno <jesper@sobuno.dk>
2022-10-19 07:29:30 -07:00
Grot (@grafanabot)
7cda7094c5 Cloudwatch: Fix issue where selected log groups clear from dashboards if there are more than 50 results (#57196) (#57210)
(cherry picked from commit b2e2879b07)

Co-authored-by: Sarah Zinger <sarah.zinger@grafana.com>
2022-10-19 09:11:58 -04:00
Grot (@grafanabot)
880452931b CloudWatch: Make sure adoption tracking is done on valid, migrated queries (#56872) (#57241)
* make sure adoption tracking is done on valid, migrated queries

* ignore hidden queries

* fix test

* remove obsolete test

(cherry picked from commit a30885c523)

Co-authored-by: Erik Sundell <erik.sundell87@gmail.com>
2022-10-19 12:38:16 +02:00
Grot (@grafanabot)
29a03139dd disable double stringify (#57243) (#57254)
(cherry picked from commit 598da14d88)

Co-authored-by: Sven Grossmann <sven.grossmann@grafana.com>
2022-10-19 06:13:42 -04:00
Grot (@grafanabot)
f03d0facc5 Loki: Fix explain section about $__interval variable (#57188) (#57255)
* Loki: Update  explain section

* Update

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

Co-authored-by: Matias Chomicki <matyax@gmail.com>

Co-authored-by: Matias Chomicki <matyax@gmail.com>
(cherry picked from commit b4a03d0cff)

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2022-10-19 06:12:51 -04:00
Grot (@grafanabot)
00b1a285ad elastic: backend-mode: fix trimEdges functionality (#56985) (#57253)
(cherry picked from commit 0491c19712)

Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
2022-10-19 06:08:40 -04:00
Grot (@grafanabot)
c4fdc3d7c6 Replace json decoder with io.ReadAll (#57178) (#57251)
(cherry picked from commit 0b72c36527)

Co-authored-by: Dimitris Sotirakis <dimitrios.sotirakis@grafana.com>
2022-10-19 06:03:47 -04:00
Grot (@grafanabot)
9f8bee7187 Loki: Remove already selected options from next label filter options in builder (#57187) (#57250)
* Loki: Filter out duplicated options in loki query builder label name options

* Update test

(cherry picked from commit b997bc4200)

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2022-10-19 05:57:44 -04:00
Grot (@grafanabot)
ba1942febb Elasticsearch: Fix calculation of trimEdges (#56148) (#57249)
* Elasticsearch: Fix calculation of trimEdges

When a value of trimEdges is set greater than 1 we need to drop both the
first and last sample of the data from the response.

* Elasticsearch: Fix reading trimEdges from the query settings

Currently the trimEdges property in the JSON panel is stored as a string
and not directly as a number.

This caused that the reading of the value failed in the go backend
because the simplejson.Int() method doesn't properly handle this case.
This failure when decoding the value goes unnoticed because of the early
return causing the trimEdges configuration to be ignored.

* Refactor castToInt to also return an error

Add a new test case that sets the `trimEdges` property as a quoted
number.

(cherry picked from commit e4f2006cce)

Co-authored-by: Jorge Luis Betancourt <jorge-luis.betancourt@trivago.com>
2022-10-19 05:18:59 -04:00
Dimitris Sotirakis
7593d5880f Add token to init-enterprise (#57246) (#57248)
(cherry picked from commit f0b882ebad)
2022-10-19 04:37:36 -04:00
Grot (@grafanabot)
cce767fee4 Alerting: Add support for wecom apiapp (#55991) (#57238)
This change adds new functionality to the wecom alerting contact point. In addition to a webhook address, you can now send alerts to the wecom apiapp endpoint.

Based on https://github.com/grafana/grafana/discussions/55883

Signed-off-by: aimuz <mr.imuz@gmail.com>
(cherry picked from commit c0cc85b5f1)

Co-authored-by: aimuz <mr.imuz@gmail.com>
2022-10-19 13:14:32 +08:00
Grot (@grafanabot)
29baf812cf fix swagger spec for receivers API response (#57124) (#57128)
(cherry picked from commit 6ad405e256)

Co-authored-by: Santiago <santiagohernandez.1997@gmail.com>
2022-10-18 12:50:54 -03:00
Grot (@grafanabot)
484df7d682 [v9.2.x] Alerting: Use correct response body for silence post API (#57126)
Co-authored-by: Yuriy Tseretyan <yuriy.tseretyan@grafana.com>
2022-10-18 11:35:13 -04:00
juanicabanas
b9cce07b10 PublicDashboards: Fix hidden queries execution (#57004) (#57194)
PublicDashboards: Fix hidden queries execution
2022-10-18 10:57:58 -04:00
Grot (@grafanabot)
9c6d358d7f Fix NumberInput empty values (#57142) (#57190)
* Fix NumberInput empty values

* tests

* tests

(cherry picked from commit e91135cf19)

Co-authored-by: Victor Marin <36818606+mdvictor@users.noreply.github.com>
2022-10-18 10:13:19 -04:00
Grot (@grafanabot)
0905058657 Revert data links code for sorted vector case (#57175) (#57183)
(cherry picked from commit 9c514748f7)

Co-authored-by: Victor Marin <36818606+mdvictor@users.noreply.github.com>
2022-10-18 09:13:31 -04:00
Grot (@grafanabot)
02b1030662 "Release: Updated versions in package to 9.2.2" (#57181) 2022-10-18 15:07:12 +02:00
Grot (@grafanabot)
a395671237 Changelog: Updated changelog for 9.2.1 (#57176) (#57180)
(cherry picked from commit 4cee910971)
2022-10-18 08:48:17 -04:00
Dimitris Sotirakis
9617d2a14f Publish Linux Packages: Fix bad secret name (#56708) (#57174)
🤦

Co-authored-by: dsotirakis <dimitrios.sotirakis@grafana.com>
(cherry picked from commit 72b9555487)

Co-authored-by: Julien Duchesne <julien.duchesne@grafana.com>
2022-10-18 08:28:48 -04:00
Grot (@grafanabot)
f2fa4eb197 TimeseriesPanel: Fix variables in data links (#56729) (#57163)
* TimeseriesPanel: Fix variables in data links

* Refactor variable fix for all Timeseries panels

* cr mods

(cherry picked from commit 76d6e3c075)

Co-authored-by: Victor Marin <36818606+mdvictor@users.noreply.github.com>
2022-10-18 08:00:29 -04:00
Grot (@grafanabot)
38458c40d2 Quota(fix): remove service accounts from quota count (#56700) (#57167)
(cherry picked from commit fa45742abc)

Co-authored-by: Eric Leijonmarck <eric.leijonmarck@gmail.com>
2022-10-18 13:00:06 +01:00
Dimitris Sotirakis
04678bc1aa Add RPM package publishing (#56797) (#57162)
Just tested deb publishing, and confirmed it works. Noticed that RPM packages aren't published though
It's the exact same step, targetting the RPM files instead
Both steps will run in parallel

Co-authored-by: dsotirakis <dimitrios.sotirakis@grafana.com>
(cherry picked from commit 44ad4ec9d4)

Co-authored-by: Julien Duchesne <julien.duchesne@grafana.com>
2022-10-18 14:19:22 +03:00
Grot (@grafanabot)
ef74b7a486 Browse: Fix General folder not showing in FolderPicker (#57156) (#57158)
(cherry picked from commit 4d0dd0647e)

Co-authored-by: Laura Fernández <laura.fernandez@grafana.com>
2022-10-18 06:52:33 -04:00
Sonia Aguilar
cbdc5e59cf Fix sending RelativeTimeRange when requesting eval with resample expressions (#57076) 2022-10-18 09:11:42 +02:00
Dimitris Sotirakis
7b12482512 Update grabpl to 3.0.14 (#57144) (#57145)
(cherry picked from commit 7a71482371)
2022-10-18 10:06:33 +03:00
Artur Wierzbicki
7a91afc504 Search: Sort alphabetically in the folder view, increase the limit of the folder search from 50 to 1000 (#57078) (#57141)
* search: sort folders

* search: increase the limit for folder search to 1000

* add folder view sort test

* search: getFolderViewSort

* search: revert test

Co-authored-by: Todd Treece <todd.treece@grafana.com>
(cherry picked from commit c26cf6a517)
2022-10-18 09:50:59 +03:00
Grot (@grafanabot)
56fa39ede0 Alerting: Improve notification policies created during migration (#52071) (#57139)
* Alerting: Improve notification policies created during migration

Previously, migrated legacy alerts were connected to notification policies through
a `rule_uid` label in a 1:1 fashion. While this correctly mimicked pre-migration routing,
it didn't create a notification policy structure that is easy to view/modify. In addition,
having one policy per migrated alert is, in some ways, counter to the recommended approach of
Unified Alerting.

This change replaces `rule_uid`-based migrated notification policies with a private
label called `__contacts__`. This label stores a list of double quoted strings containing the names of
all contact points an AlertRule should route to (based on legacy notification channels). Finally,
one notification policy is created per contact point with each matching AlertRules via regex on this
`__contacts__` label.

The result is a simpler, clearer, and easier to modify notification policy structure, with the
added benefit that you can see which contact points an AlertRule is being routed to from the
AlertRule creation page.

(cherry picked from commit 0db339d82f)

Co-authored-by: Matthew Jacobson <matthew.jacobson@grafana.com>
2022-10-18 01:05:47 -04:00
Grot (@grafanabot)
1980c169b9 Canvas: Text input cursor jumping (#57133) (#57135)
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
(cherry picked from commit 7f5914ff05)

Co-authored-by: Adela Almasan <88068998+adela-almasan@users.noreply.github.com>
2022-10-17 18:55:30 -04:00
Grot (@grafanabot)
9c9480dd0c Grafana UI: Export prop types for queryfield, modal and field components (#57097) (#57108)
* chore(grafana-ui): export prop types for queryfield, modal and field components

* docs(migration-guide): add notes for react peerdependencies and additional type exposure

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

Co-authored-by: Timur Olzhabayev <timur.olzhabayev@grafana.com>

Co-authored-by: Timur Olzhabayev <timur.olzhabayev@grafana.com>
(cherry picked from commit 24c04740e3)

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
2022-10-17 15:22:14 -04:00
Grot (@grafanabot)
c639251ace CI: Move CreateTempFile - use it for rpm/deb packages (#56990) (#57102)
* Move CreateTempFile - use it for rpm/deb packages

* Fix typo

* Fix tests:

(cherry picked from commit c96b6a6ab0)

Co-authored-by: Dimitris Sotirakis <dimitrios.sotirakis@grafana.com>
2022-10-17 20:45:50 +03:00
Grot (@grafanabot)
0965e3ac12 Docs: Fix broken link (#57083) (#57109)
* Docs: Fix broken link

* Update docs/sources/setup-grafana/configure-security/configure-authentication/auth-proxy.md

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
(cherry picked from commit 5c2b722287)

Co-authored-by: Ahmed <hello@clivern.com>
2022-10-17 12:12:25 -04:00
Grot (@grafanabot)
1755c72670 Docs: Contextualize base64 encoding in Basic Authorization (#57046) (#57106)
(cherry picked from commit 2bed451990)

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>
2022-10-17 09:09:59 -07:00
Grot (@grafanabot)
98dfb42cbf Toolkit: Fix Cannot use "import statement outside" error in tests (#57071) (#57094)
(cherry picked from commit fd0fcffc24)

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
2022-10-17 17:36:47 +02:00
Sonia Aguilar
3a93203a57 Show No attempts instead of OK when there is no attempt for notifier (#56494) (#57090)
(cherry picked from commit a18a3d7628)
2022-10-17 12:03:00 -03:00
Grot (@grafanabot)
b33b3ea0b6 Docs: Clarify and document dashboard URL query parameters for variables (#56055) (#57045)
(cherry picked from commit 0889c3ad07)

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>
2022-10-17 07:41:10 -07:00
brendamuir
9795dbb401 Docs: adds terraform provisioning docs (#55660) (#57091)
* Docs: adds set up section and alertmanager

* deletes info that got copied to new file

(cherry picked from commit b7f356df31)
2022-10-17 10:23:58 -04:00
Dimitris Sotirakis
11bfb4a387 Make publish packages depend on compile-build-cmd and run from bin/build (#56713) (#57059)
(cherry picked from commit e25475b9c8)
2022-10-17 17:13:10 +03:00
Grot (@grafanabot)
bca3356661 Docs: adds modify dashboard settings docs (#56826) (#57086)
* adds modify dashboard settings docs

* Quick updates

* minor corrections

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

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
2022-10-17 09:11:56 -05:00
Grot (@grafanabot)
95f23777f0 BarChart: use dashboard timezone for x axis (#57047) (#57056)
(cherry picked from commit da39c7297b)

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2022-10-17 07:32:23 -06:00
Grot (@grafanabot)
8ba2187115 Fix duplicated receivers in API response (#56829) (#57027)
(cherry picked from commit 3c56fd8da0)

Co-authored-by: Santiago <santiagohernandez.1997@gmail.com>
2022-10-17 15:19:28 +02:00
Grot (@grafanabot)
c2ce0e82ff Inspect: Handle JSON tab crash when the provided object is too big to stringify. (#55939) (#56770)
* fix(inspector): handle json tab crash when too much data

* message update when JSON stringify fails due to obj size

(cherry picked from commit 6edce00b1a)

Co-authored-by: Alex <TsotosA@users.noreply.github.com>
2022-10-17 06:10:54 -07:00
Dimitris Sotirakis
a3f69498f6 Update grabpl to v3.0.12 (#56823) (#56866)
(cherry picked from commit b9d449529a)
2022-10-17 12:27:29 +01:00
Grot (@grafanabot)
27f57b144d RBAC: Make uid for managed role names deterministic during migrations (#56620) (#57073)
* RBAC: Change the generate uid function to be deterministic so we can avoid collision

* RBAC: Use fmt.Errorf

* RBAC: Add comment

* RBAC: Export GenerateManagedRoleUID

(cherry picked from commit 21792fdf37)

Co-authored-by: Karl Persson <kalle.persson@grafana.com>
2022-10-17 06:27:33 -04:00
Grot (@grafanabot)
bcc5a441bf Alerting: Missing config option in the sample (#54179) (#57064)
(cherry picked from commit 03248e9cd8)

Co-authored-by: Jan Garaj <jan.garaj@gmail.com>
2022-10-17 11:57:43 +02:00
Konrad Lalik
4604062f80 [v9.2.x] Alerting: Fix source and rule name decoding on Find route (#56805) (#56922) 2022-10-17 11:29:25 +02:00
Grot (@grafanabot)
88194154cd GoogleCloudMonitoring: fix typo tooltip pre-processing (#57049) (#57058)
(cherry picked from commit c8402b4b50)

Co-authored-by: Labesse Kévin <kevin@labesse.me>
2022-10-17 04:39:25 -04:00
Grot (@grafanabot)
c0f54f8f58 <Documentation> Document usage of environment variables/files in GitHub Auth login (#52891) (#57035)
* Document usage of environment variables/files

* Updating Github Auth Login Documentation

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>
(cherry picked from commit a46fa16b4e)

Co-authored-by: Ben Golding <60831565+bgolding355@users.noreply.github.com>
2022-10-15 09:26:10 -07:00
Santiago
5b7920fe32 Backport 56822 to v9.2.x (#57023)
* use Prometheus' format for notification attempts durations (#56822)

(cherry picked from commit 9996dbd577)

* fix merge errors
2022-10-14 18:35:17 -03:00
Grot (@grafanabot)
51d5a6031e Alerting: Add Notification error feedback on contact points view (#56225) (#57017)
* Alerting: Receivers integrations error feedback: WIP - Add notifications error at the top right on contact points view (#52390)

* Add interfaces for contact point errors

* [WIP] Create fake response for the new service to get contact point errors

* [WIP] Create action an reducer for the new service to get contact point errors

* Fetch fetchContactPointStates in Contact Points tab every 20s and when AM changes

* [WIP] Use store to get error count

* Show number of integrations errors at the contact points main view

* Add warning icon and refactor styles using getStyles

* Change lastNotify type to string instead of DateTime

* Use Stack component from experimental library when it is possible

* Alerting: Add receivers error feedback in contact point list (#52524)

* Refactor types for contact points state

* Add health column in ReceiversTable in case error state is available for this AM

* Create method for converting contact points state DTO to the FE type used in Redux store

* Update types

* Fix indexOf criteria getting integration type

* Change type name to integrationType name

* Change new components to be named functions to follow the FE style-guide

* Fix typos

Co-authored-by: Konrad Lalik <konrad.lalik@grafana.com>

* Decouple ReceiversTable from Redux state

* Create private useContactPointsState hook to simplify code in ReceiversTable component

* Add tests for getIntegrationType and refactor the method to validate the name

* Add tests for contactPointsStateDtoToModel method

* Remove unnecessary check

* Use Badge compoment for health status in contact point list

* Create new method parseIntegrationName to simplify getting types and index from integration name

Co-authored-by: Konrad Lalik <konrad.lalik@grafana.com>

* Alerting: Show integrations error feedback when expanding contact point in list (#52920)

* Use DynamicTable for rendering list of contact points and make them expandable if error status is available

* Render expanded content for contact points integrations

* Style and format last notify column

* Add send resolve column to the integration details

* Fix receiver id for DynamicTable row

* Update clock icon in integration state

* Fix tests

* Add PR review sugestions

* Alerting/integrations error feedback handle null dates in response 3 (#55659)

* Update fake response with lastNotify ISO8601 formatted, to be aligned with latest BE changes

* Update LastNotify in ReceiversTable component to handle null date

* Alerting/integrations error feedback handle 404 state not available (#55803)

* Create fetchContactPointsState using the future contact point url and handle 404 error

* Add contact points state tests

* Alerting/update receivers dto naming 2 (#56201)

* Update NotifierStatus naming and fix sendResolved not being updated in UI

* Return always empty ContactPointsState array when catching an error in the request response

* Fix test

* Show notification status only in notifications main view

* Calculate total error count from the final contactPointsState object, to avoid errors when duplicated entries are returned wronly in the response

* Add PR review suggestions

Co-authored-by: Konrad Lalik <konrad.lalik@grafana.com>
(cherry picked from commit d8d8ef1aff)

Co-authored-by: Sonia Aguilar <33540275+soniaAguilarPeiron@users.noreply.github.com>
2022-10-14 16:20:33 -03:00
Grot (@grafanabot)
6f1af5c007 Docs: Note end of release notes publication (#57013) (#57015)
* Docs: Note cessation of release notes

* Docs: Update What's New index mention of release notes

* Docs: Update links and references to the release notes

* Docs: Fix relrefs

* Docs: Spellcheck

(cherry picked from commit 2b4d57fe60)

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>
2022-10-14 19:28:26 +02:00
Santiago
ba9293b09d Alerting: Expose info about notification delivery errors in a new /receivers endpoint (#55429) (#56899)
* (WIP) switch to fork AM, first implementation of the API, generate spec

* get receivers avoiding race conditions

* use latest version of our forked AM, tests

* make linter happy, delete TODO comment

* update number of expected paths to += 2

* delete unused endpoint code, code review comments, tests

* Update pkg/services/ngalert/notifier/alertmanager.go

Co-authored-by: Matthew Jacobson <matthew.jacobson@grafana.com>

* remove call to fmt.Println

* clear naming for fields

* shorter variable names in GetReceivers

Co-authored-by: Matthew Jacobson <matthew.jacobson@grafana.com>
(cherry picked from commit 09f8e026a1)
2022-10-14 12:22:33 -03:00
Grot (@grafanabot)
96ae3b7e45 Alerting: Remove blank comment (#56889) (#56984)
(cherry picked from commit 2f85172718)

Co-authored-by: George Robinson <george.robinson@grafana.com>
2022-10-14 08:41:57 -04:00
Gabriel MABILLE
5a17ef9d6c AzureAD: Add option to force fetch the groups from the Graph API (#56916) (#56947)
* AzureAD: Add option to force fetch the groups from the Graph API (#56916)

* Add a new option to systematically fetch AzureAD groups from the Graph API

(cherry picked from commit 0f4d126109)

* Update docs/sources/setup-grafana/configure-security/configure-authentication/azuread.md

Co-authored-by: Ursula Kallio <ursula.kallio@grafana.com>

Co-authored-by: Ursula Kallio <ursula.kallio@grafana.com>
2022-10-14 14:06:44 +02:00
Grot (@grafanabot)
d78f259ee8 Last Table Column Not Centered (#56047) (#56938)
Co-authored-by: gitstart <gitstart@gitstart.com>
Co-authored-by: gitstart <gitstart@users.noreply.github.com>
Co-authored-by: Nitesh Singh <nitesh.singh@gitstart.dev>
Co-authored-by: Thiago Nascimbeni <tnascimbeni@gmail.com>
Co-authored-by: Rubens Rafael <70234898+RubensRafael@users.noreply.github.com>
Co-authored-by: RubensRafael <rubensrafael2@live.com>
Co-authored-by: Rafael Toledo <87545086+Toledodev@users.noreply.github.com>
Co-authored-by: Matheus Muniz <87545749+matheusmuniz03@users.noreply.github.com>
Co-authored-by: Matheus Muniz <matheusmuniz100@hotmail.com>
Co-authored-by: Matheus Benini Ferreira <88898100+MatheusBeniniF@users.noreply.github.com>
Co-authored-by: Murilo Amaral <87545137+MuriloAmarals@users.noreply.github.com>

Co-authored-by: gitstart <gitstart@users.noreply.github.com>
Co-authored-by: gitstart <gitstart@gitstart.com>
Co-authored-by: Nitesh Singh <nitesh.singh@gitstart.dev>
Co-authored-by: Thiago Nascimbeni <tnascimbeni@gmail.com>
Co-authored-by: Rubens Rafael <70234898+RubensRafael@users.noreply.github.com>
Co-authored-by: RubensRafael <rubensrafael2@live.com>
Co-authored-by: Rafael Toledo <87545086+Toledodev@users.noreply.github.com>
Co-authored-by: Matheus Muniz <87545749+matheusmuniz03@users.noreply.github.com>
Co-authored-by: Matheus Muniz <matheusmuniz100@hotmail.com>
Co-authored-by: Matheus Benini Ferreira <88898100+MatheusBeniniF@users.noreply.github.com>
Co-authored-by: Murilo Amaral <87545137+MuriloAmarals@users.noreply.github.com>
(cherry picked from commit 4ecc9f42ac)

Co-authored-by: GitStart <1501599+gitstart@users.noreply.github.com>
2022-10-14 06:53:41 -04:00
Grot (@grafanabot)
c9341d5314 MSSQL/MySQL: Add correct refId when fetching variable query results (#56919) (#56925)
(cherry picked from commit b374b01260)

Co-authored-by: Victor Marin <36818606+mdvictor@users.noreply.github.com>
2022-10-14 06:19:15 -04:00
Grot (@grafanabot)
0bdc74ba39 Candlestick: re-init config when series length changes (#56913) (#56930)
(cherry picked from commit 4eea326ee8)

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2022-10-14 05:31:10 -04:00
Grot (@grafanabot)
7d21e021ea Heatmap: honor dashboard timezone in x axis and fix tooltip time range (#56909) (#56928)
(cherry picked from commit 53ac77d4a5)

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2022-10-14 05:30:15 -04:00
Grot (@grafanabot)
b3b72165f1 MSSQL/MySQL: Fix variable interpolation (#56879) (#56924)
* MSSQL/MySQL: Fix variable interpolation

* Escape string vars

(cherry picked from commit 902a230867)

Co-authored-by: Victor Marin <36818606+mdvictor@users.noreply.github.com>
2022-10-14 12:07:03 +03:00
Grot (@grafanabot)
53c71b486a [v9.2.x] Alerting: Fix folder picker clear action (#56915)
Co-authored-by: Konrad Lalik <konrad.lalik@grafana.com>
2022-10-14 09:16:28 +02:00
Grot (@grafanabot)
61f0183275 Docs: Fix Canvas doc link and add call to action for feedback (#56908) (#56911)
* Fix canvas documentation link on what's new page; add feedback CTA in canvas doc

* PORK: replace allows with enables for better language

* Fix a few more instances of allow to enable

* Move feedback above video in intro canvas section

* Revert changing link change

(cherry picked from commit 527690d19a)

Co-authored-by: Nathan Marrs <nathanielmarrs@gmail.com>
2022-10-13 22:05:35 -04:00
Grot (@grafanabot)
928a9ebc57 Docs: Basics docs refactor (#56905) (#56906)
* renames directory

* fixes relrefs

(cherry picked from commit 385079bea7)

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
2022-10-13 16:06:41 -05:00
Grot (@grafanabot)
c74db84073 moves canvas to proper directory, corrects relref (#56902) (#56903)
(cherry picked from commit c137cf60f0)

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
2022-10-13 14:47:54 -05:00
Grot (@grafanabot)
b00bb90926 Propagate all headers on main QueryData (#56896) (#56901)
(cherry picked from commit 145b970557)

Co-authored-by: Alexander Weaver <weaver.alex.d@gmail.com>
2022-10-13 15:33:40 -04:00
Grot (@grafanabot)
22ae442f56 Explore: Remove camel case from tracking labels (#56809) (#56856)
* refactor: remove camel case from tracking labels

* refactor: remove camel case from tracking labels

(cherry picked from commit b71e08ad59)

Co-authored-by: Laura Benz <48948963+L-M-K-B@users.noreply.github.com>
2022-10-13 13:01:34 +02:00
Grot (@grafanabot)
17e197634e Alerting: Fix email image embedding on Windows. (#56766) (#56839)
The email notifier was incorrectly handling Windows filepaths. This is
fixed by using the `path/filepath` package.

(cherry picked from commit c7c640d903)

Co-authored-by: Joe Blubaugh <joe.blubaugh@grafana.com>
2022-10-13 11:21:20 +08:00
Grot (@grafanabot)
da5186b07a Canvas: Clear current selection in dashboard mode (#56830) (#56831)
(cherry picked from commit 254bb0c99e)

Co-authored-by: Adela Almasan <88068998+adela-almasan@users.noreply.github.com>
2022-10-12 17:37:23 -04:00
Grot (@grafanabot)
e238b9f9c1 Alerting: Fix mathexp.NoData for ConditionsCmd (#56816) (#56820)
(cherry picked from commit 004bb7689d)

Co-authored-by: George Robinson <george.robinson@grafana.com>
2022-10-12 12:48:18 -04:00
Grot (@grafanabot)
1d2037a766 fix typo (#56802) (#56804)
(cherry picked from commit 26e7228cd9)

Co-authored-by: Michael Mandrus <41969079+mmandrus@users.noreply.github.com>
2022-10-12 09:47:36 -04:00
Grot (@grafanabot)
e20953e4f8 LDAP: log that organization mapping is skipped (#56796) (#56798)
(cherry picked from commit 5fcec05695)

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
2022-10-12 15:03:10 +02:00
Grot (@grafanabot)
f01526e35b LDAP: Add skip_org_role_sync configuration option (#56679) (#56792)
* LDAP: Add skip_org_role_sync option

* Document the new config option

* Nit on docs

* Update docs/sources/setup-grafana/configure-security/configure-authentication/ldap.md

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>

* Docs suggestions

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
Co-authored-by: Jguer <joao.guerreiro@grafana.com>

* Add test, Fix disabled user when no role

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
Co-authored-by: Jguer <joao.guerreiro@grafana.com>
(cherry picked from commit 10c080dad1)

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
2022-10-12 13:57:20 +02:00
Grot (@grafanabot)
7033623093 Alerting: Add doc comments to classic.go (#56724) (#56785)
(cherry picked from commit 67d93ceea0)

Co-authored-by: George Robinson <george.robinson@grafana.com>
2022-10-12 06:14:06 -04:00
Grot (@grafanabot)
ffa67c888b Fixes 48972 - Exposes channels.WebhookMessage (#56140) (#56778)
(cherry picked from commit 26bb139470)

Co-authored-by: Matt <cadnce@users.noreply.github.com>
2022-10-12 05:02:57 -04:00
Victor Marin
794f9dbb05 TablePanel: Footer now updates values on column filtering (#56354) (#56768)
* Table footer now updates values on column filtering

* Backwards compatibility

(cherry picked from commit 48c27872af)
2022-10-12 10:46:32 +03:00
Konrad Lalik
91c78ce784 Alerting: Alert list performance improvements (#56247) (#56742)
Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
(cherry picked from commit 5ddf7b85df)
2022-10-12 09:08:34 +02:00
Dimitris Sotirakis
0cf8f9fab6 [v9.2.x] CI: Split release test pipelines (#56670)
* CI: Split release test pipelines (#56655)

* Split test release pipelines

* Add missing dependencies

* Add release branch case when naming pipeline

(cherry picked from commit 75c5845749)

* Add clone-enterprise and init-enterprise steps (#56662)

(cherry picked from commit eb077db2b0)

* Add dependencies (#56666)

(cherry picked from commit 811f6054c8)

* Fix release test pipelines dependencies (#56671)

(cherry picked from commit 668cb25b82)

* Remove build-frontend-packages step from docs pipelines (#56686)

(cherry picked from commit efc8f985cb)

* Remove grabpl dependency from yarn-install (#56692)

* Sign drone
2022-10-12 09:44:12 +03:00
Grot (@grafanabot)
d02b7fc0ba Alerting: Fix duration calculation when testing a rule (#56616) (#56705)
When testing a rule within the legacy alerting the `timeMs` field could
sometimes show negative (and/or wrongly calculated) durations. This happens if the alert evaluation crosses a second boundary. This change uses the full timestamp to compute the eval duration.

(cherry picked from commit 95b9fa3346)

Co-authored-by: Jorge Luis Betancourt <jorge-luis.betancourt@trivago.com>
2022-10-12 11:38:33 +08:00
Grot (@grafanabot)
bd81793292 Docs: Fix what's new canvas doc video file reference #56754 (#56761)
(cherry picked from commit 17433f2166)

Co-authored-by: Nathan Marrs <nathanielmarrs@gmail.com>
2022-10-11 19:00:57 -04:00
Grot (@grafanabot)
0383c57a2f Docs: Add missing documentation for enterprise features (#56753) (#56760)
* add documentation about protected roles

* add section about sync debug

* add link to recorded queries to main enterprise pages

* Update docs/sources/setup-grafana/configure-security/configure-authentication/ldap.md

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

* fixes from pr review

* add missing char

* Apply suggestions from code review

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

* fix other incorrect lines to match review

Co-authored-by: Eve Meelan <81647476+Eve832@users.noreply.github.com>
(cherry picked from commit 6827ca01a0)

Co-authored-by: Michael Mandrus <41969079+mmandrus@users.noreply.github.com>
2022-10-11 19:00:46 -04:00
Christopher Moyer
e926018407 removes add-organize-panels (#56756) 2022-10-11 17:13:31 -05:00
Grot (@grafanabot)
18e3d9d209 Docs: Update Canvas videos to mp4 URLs (#56748) (#56749)
(cherry picked from commit f4a3400a9c)

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>
2022-10-11 12:10:00 -07:00
Grot (@grafanabot)
85f83c44b8 Docs: Remove Beta tag from 9.2 What's New post-release (#56746) (#56747)
(cherry picked from commit abd7b7dccc)

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>
2022-10-11 14:19:57 -04:00
Grot (@grafanabot)
abe3dbc53b Docs: Clarify JOIN feature change (#56740) (#56744)
(cherry picked from commit c98db1615f)

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>
2022-10-11 09:28:58 -07:00
Grot (@grafanabot)
34a054642f docs/provisioning: fix typo in notification policies (#54917) (#56619)
(cherry picked from commit f90e72991d)

Co-authored-by: Timost <Timost@users.noreply.github.com>
2022-10-11 18:25:18 +02:00
Dimitris Sotirakis
bf184205dc Update publish.yml for 9.2.x (#56730) 2022-10-11 17:28:52 +03:00
George Robinson
4585d70f22 Alerting: Add doc comments to state struct and normalize fields (#56647) (#56676)
(cherry picked from commit 52965de369)
2022-10-11 15:20:18 +01:00
Grot (@grafanabot)
d06eb2fa8b Changelog: Updated changelog for 9.2.0 (#56725) (#56728)
(cherry picked from commit 8627b2131f)
2022-10-11 17:20:07 +03:00
Grot (@grafanabot)
e0d8bb2719 Canvas: Docs for 9.2 (#56219) (#56718)
Co-authored-by: Adela Almasan <adela.almasan@grafana.com>
(cherry picked from commit a9c0afcc1f)

Co-authored-by: Nathan Marrs <nathanielmarrs@gmail.com>
2022-10-11 13:43:34 +00:00
Grot (@grafanabot)
32111ee203 Google Cloud Monitoring: Adapt default crossSeriesReducer (#56693) (#56706)
(cherry picked from commit cf2ba7e41c)

Co-authored-by: Andres Martinez Gotor <andres.martinez@grafana.com>
2022-10-11 09:04:25 -04:00
Grot (@grafanabot)
4468aac4ee [v9.2.x] Alerting: Mark all tests that interact with the database as integration tests (#56603)
Previously, two tests were not explicitly marked as integration tests
and so were not run against all 3 supported databases in the CI
environment.

(cherry picked from commit 7312a2dab0)


Co-authored-by: Joe Blubaugh <joe.blubaugh@grafana.com>
2022-10-11 20:43:51 +08:00
Grot (@grafanabot)
7d182b4890 Docs: updates numbering (#56695) (#56697)
* Docs: updates numbering

* removes full stop

(cherry picked from commit d6fa12c5bc)

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2022-10-11 13:35:51 +01:00
Grot (@grafanabot)
2483c64d26 Docs: adds external Alertmanager config (#56636) (#56685)
* Docs: adds external Alertmanager config

* Adds link to add external alertmanager

* updating with george feedbacj

(cherry picked from commit 8a3294dcdf)

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2022-10-11 06:32:24 -04:00
Grot (@grafanabot)
412f05e16f Drone: publish-linux-packages should be privileged (#55816) (#55818)
It's currently failing with a failure to mount s3fs

(cherry picked from commit 169df2fe90)

Co-authored-by: dsotirakis <dimitrios.sotirakis@grafana.com>
2022-10-11 12:23:01 +03:00
Grot (@grafanabot)
a57455e5cd FIX: Remove RBAC datasource permissions upon datasource deletion (#56530) (#56550)
* FIX: Remove RBAC datasource permissions upon datasource deletion

* Use scope provider instead

* Fix test

(cherry picked from commit 7595ed0668)

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
2022-10-11 12:16:43 +03:00
Grot (@grafanabot)
f4b37ab8a9 Docs: Fix caching.memcached setting name (#56606) (#56675)
(cherry picked from commit ef17f12c23)

Co-authored-by: Joan López de la Franca Beltran <5459617+joanlopez@users.noreply.github.com>
2022-10-11 05:02:31 -04:00
Grot (@grafanabot)
b23fd7aad0 Chore: Regen swagger spec (#55750) (#55762)
* Chore: Regen swagger spec

* Regenerate swagger after enteprise fix

Co-authored-by: Sofia Papagiannaki <1632407+papagian@users.noreply.github.com>
(cherry picked from commit 00a90d3255)

Co-authored-by: Josh Hunt <joshhunt@users.noreply.github.com>
2022-10-11 10:43:44 +02:00
Grot (@grafanabot)
7593ab4a4e ErrorPage: Fix position of chunk loading error (#56473) (#56628)
(cherry picked from commit 03e887723a)

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2022-10-11 10:42:59 +02:00
Artur Wierzbicki
1bbbe41a6c Search: wrap data.Frame in a backend.DataResponse and return it directly when the index is not ready (#56611) 2022-10-10 14:05:16 -04:00
Grot (@grafanabot)
25e89ba295 Google Cloud Monitoring: Fix bucket bound for distributions (#56565) (#56649)
(cherry picked from commit 65e56c9fb8)

Co-authored-by: Andres Martinez Gotor <andres.martinez@grafana.com>
2022-10-10 10:25:37 -04:00
Grot (@grafanabot)
b8aa31433b Loki: Escape label-values in context queries (#56614) (#56639)
(cherry picked from commit 62674604b4)

Co-authored-by: Sven Grossmann <Svennergr@gmail.com>
2022-10-10 14:49:00 +02:00
Grot (@grafanabot)
c258cfb553 Docs: removes duplicate sentence in silences (#56629) (#56634)
(cherry picked from commit db68fa358f)

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2022-10-10 07:03:03 -04:00
Grot (@grafanabot)
752f886637 Docs: adds note on aurora incompatibility (#56621) (#56631)
* Docs: adds note on aurora incompatibility

* updates with feedback

* adds issue link

(cherry picked from commit 2aff817ea8)

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2022-10-10 06:57:45 -04:00
Grot (@grafanabot)
27a4dd8765 Docs: changes alert groupings to groups (#56617) (#56627)
* Docs: changes alert groupings to groups

* One more alert grouping

(cherry picked from commit a84edb274b)

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2022-10-10 06:44:41 -04:00
Adela Almasan
fd7358a6ef [v9.2.x] Canvas: Add demo dashboards (#56588)
Co-authored-by: Nathan Marrs <nathanielmarrs@gmail.com>
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2022-10-07 21:20:22 -07:00
Grot (@grafanabot)
1024334d7b Alerting: Fix migration to create rules with group index 1 (#56511) (#56584)
(cherry picked from commit 3487e68d15)

Co-authored-by: Yuriy Tseretyan <yuriy.tseretyan@grafana.com>
2022-10-07 17:33:21 -04:00
Yuriy Tseretyan
77046b3fba [9.2.x] Alerting: Fix migration to not add label "alertname" (#56509) (#56579) 2022-10-07 16:38:00 -04:00
Grot (@grafanabot)
1964ddce83 Geomap: Docs for 9.2 (#56493) (#56501)
(cherry picked from commit 15d2653b89)

Co-authored-by: Drew Slobodnjak <60050885+drew08t@users.noreply.github.com>
2022-10-07 15:18:23 -05:00
Grot (@grafanabot)
d5bb8aba85 Prometheus: Add Exemplar sampling for streaming parser (#56049) (#56571)
(cherry picked from commit 152c7f149a)

Co-authored-by: Todd Treece <360020+toddtreece@users.noreply.github.com>
2022-10-07 13:15:49 -04:00
Grot (@grafanabot)
94341ed95c [v9.2.x] Prometheus: Various buffered and streaming parsing fixes (#56468)
* Prometheus: Various buffered and streaming parsing fixes (#55941)

(cherry picked from commit 1c61c81dde)

* switch back to 0 instead of NaN for 9.2 buffered responses

Co-authored-by: Todd Treece <360020+toddtreece@users.noreply.github.com>
2022-10-07 13:02:12 -04:00
Grot (@grafanabot)
77c1546511 Loki: Fix redundant escaping in adhoc filter with regex match (#56447) (#56562)
* Loki: Fix redundant escaping in adhoc filter with regex match

* Update data.js

* Simplify test

* Simplify test

* Update

* Add more tests

(cherry picked from commit a4c5801440)

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2022-10-07 16:37:23 +02:00
Grot (@grafanabot)
9854ac88e9 [v9.2.x] Alerting: Fix evaluation interval validation (#56556)
Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
Co-authored-by: Konrad Lalik <konrad.lalik@grafana.com>
2022-10-07 09:20:02 -04:00
Emil Tullstedt
90c8e52a17 Chore: Upgrade Go to 1.19.2 (#56355) (#56553)
(cherry picked from commit c2d3a31772)
2022-10-07 09:05:02 -04:00
Grot (@grafanabot)
34e7d48ca6 Form validation problem in table panel option (column width & minimum column width) (#56452) (#56547)
Co-authored-by: gitstart <gitstart@users.noreply.github.com>
Co-authored-by: gitstart <gitstart@gitstart.com>
Co-authored-by: Rubens Rafael <70234898+RubensRafael@users.noreply.github.com>
Co-authored-by: Rafael Toledo <87545086+Toledodev@users.noreply.github.com>
Co-authored-by: Matheus Muniz <87545749+matheusmuniz03@users.noreply.github.com>
Co-authored-by: Thiago Nascimbeni <tnascimbeni@gmail.com>
Co-authored-by: Matheus Muniz <matheusmuniz100@hotmail.com>
Co-authored-by: Nitesh Singh <nitesh.singh@gitstart.dev>
Co-authored-by: Matheus Benini Ferreira <88898100+MatheusBeniniF@users.noreply.github.com>
Co-authored-by: Murilo Amaral <87545137+MuriloAmarals@users.noreply.github.com>
(cherry picked from commit 0eb3afbd14)

Co-authored-by: GitStart <1501599+gitstart@users.noreply.github.com>
2022-10-07 08:19:52 -04:00
George Robinson
1d02c2cd08 Docs: adds alertmanager overview (#56527) (#56539)
* Docs: adds alertmanager overview

* updating with georges feedback

* adds deprecation note to API docs

* update to provisioning instuctions

(cherry picked from commit 939caa67a2)

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2022-10-07 11:22:12 +01:00
Grot (@grafanabot)
77ec6609df Alerting: Fix pq: missing FROM-clause for table "a" (#56453) (#56534)
This commit fixes a bug where changing the Folder or Rule Group of an existing rule returns the following error in PostgreSQL "pq: missing FROM-clause for table a"

(cherry picked from commit 762688d67f)

Co-authored-by: George Robinson <george.robinson@grafana.com>
2022-10-07 10:35:47 +01:00
Grot (@grafanabot)
cacc00aeb8 Use io.ReadAll instead of json.Decode (#56528) (#56529)
(cherry picked from commit df2abf09c2)

Co-authored-by: Dimitris Sotirakis <dimitrios.sotirakis@grafana.com>
2022-10-07 04:45:42 -04:00
Grot (@grafanabot)
4ac54040a9 Chore: Make NewCookieOptions exported in cookies.go (#56476) (#56499)
(cherry picked from commit 1de0f4453e)

Co-authored-by: Misi <mgyongyosi@users.noreply.github.com>
2022-10-07 10:40:03 +02:00
Grot (@grafanabot)
17655071b7 RBAC: Redirect to /login when forceLogin is set (#56469) (#56523)
(cherry picked from commit bb479e030a)

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
2022-10-07 02:31:19 -04:00
Grot (@grafanabot)
ba5ee60944 StateTimeline: Fix tooltip showing erroneously in shared crosshair dashboards (#55809) (#56521)
* StateTimeline: Fix shared crosshair

* Fix for StatusHistory also

(cherry picked from commit b622a87aee)

Co-authored-by: Victor Marin <36818606+mdvictor@users.noreply.github.com>
2022-10-07 02:14:45 -04:00
Joe Blubaugh
84a6820fd8 Alerting: Update imported prometheus alertmanager version. Backport (#56228) (#56430)
Version 0.24.0 has a few bugs that cause panics. We update here to the
latest commit on github.com/prometheus/alertmanager's main branch.

Panic Bugs:
https://github.com/prometheus/alertmanager/issues/2936
https://github.com/prometheus/alertmanager/issues/3064

(cherry picked from commit ce89624ca2)
2022-10-07 14:00:45 +08:00
Grot (@grafanabot)
dc04e2589c Thresholds: fix line rendering with multiple y axes (#56516) (#56518)
(cherry picked from commit 21d9cf0db4)

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2022-10-06 17:36:07 -06:00
Grot (@grafanabot)
5e0b29ed4b [v9.2.x] Docs: Updating Public Dashboard documentation (#56504) (#56508)
Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
(cherry picked from commit 356318e387)
2022-10-06 17:58:20 -03:00
lean.dev
debd9927c6 [v9.2.x] Docs: Updating Public Dashboard documentation
* Docs: Updating Public Dashboard documentation, not supporting library panels
2022-10-06 16:10:22 -03:00
Grot (@grafanabot)
f6d7f7dec6 Fix issue 55626 (#55636) (#56483)
Reset the mapping table for Dynamic Geojson

(cherry picked from commit c1d6df4eb7)

Co-authored-by: Nicolas Janicaud Gondoin <112407974+janicaud@users.noreply.github.com>
2022-10-06 08:44:39 -07:00
Grot (@grafanabot)
ece17f30ab Packaging: Change from 0750 to 0755 folder permissions when packaging (#56436) (#56474)
* Change from 0750 to 0755

* Change to 0o755

* Skip lint when creating dir

(cherry picked from commit 66e8f39ce8)

Co-authored-by: Dimitris Sotirakis <dimitrios.sotirakis@grafana.com>
2022-10-06 10:25:43 -04:00
Grot (@grafanabot)
e6736c4308 Azure Monitor: Fix subscription selector when changing data sources (#56284) (#56409)
(cherry picked from commit 2cdbd05634)

Co-authored-by: Andres Martinez Gotor <andres.martinez@grafana.com>
2022-10-06 09:58:10 +00:00
Dimitris Sotirakis
c00946994a CI: Stop publishing OSS images for security mode (#56088) (#56374)
* No-op: Refactor publish images pipeline struct

* Stop publishing images for OSS

(cherry picked from commit 5cdc932f8c)
2022-10-06 10:52:08 +01:00
Dimitris Sotirakis
2c781d472a Change from grabpl to build for grafana-com (#56434) (#56443)
(cherry picked from commit ec7d9e196e)
2022-10-06 11:16:35 +03:00
Dimitris Sotirakis
8f7deb3741 Move files under pkg/build/packaging (#56435) (#56440)
(cherry picked from commit 3aacda5579)
2022-10-06 11:16:22 +03:00
Yuriy Tseretyan
9b87e7de11 [9.2.x] Alerting: Start ticker only when scheduler starts (#56339) (#56418) 2022-10-05 15:52:06 -04:00
Grot (@grafanabot)
23788d0f70 QueryEditorRow: Only pass error to query editor if panel is not loading (#56350) (#56423)
(cherry picked from commit b3087cfcd1)

Co-authored-by: Kevin Yu <kevinwcyu@users.noreply.github.com>
2022-10-05 15:34:59 -04:00
Sven Grossmann
0362260b30 LogContext: Fix scroll position in upper context group (#56370) (#56401)
* fix log row being falsely added to context

* do not add to many lines

* fix scroll position in context

* more flexible id comparison

* add original refid to context query

* added missing row comparison

* updated comment

Co-authored-by: Matias Chomicki <matyax@gmail.com>

Co-authored-by: Matias Chomicki <matyax@gmail.com>
(cherry picked from commit 0d8ea2bb34)
2022-10-05 12:00:06 -04:00
Grot (@grafanabot)
0f136e2b26 Azure Monitor: Adapt empty Logs response (#56378) (#56395)
(cherry picked from commit 8594e648e8)

Co-authored-by: Andres Martinez Gotor <andres.martinez@grafana.com>
2022-10-05 10:24:13 -04:00
Grot (@grafanabot)
55186418b9 Loki: Add support for range aggregations with by grouping (#56184) (#56369)
* Loki: Fix unwrapped range operations with grouping

* Update, fix tests

* Fix modeller

(cherry picked from commit 4469572b27)

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2022-10-05 08:54:03 -04:00
Tania
4d3408f4f0 Remove branding feature toggle (#56389) 2022-10-05 14:28:12 +02:00
Grot (@grafanabot)
90168e6c80 ReleaseNotes: Updated changelog and release notes for 9.1.7 (#56323) (#56325)
(cherry picked from commit 169f1ab974)
2022-10-05 11:28:22 +03:00
Grot (@grafanabot)
83fb311b3c Fixes alertmanagers whats new entry (#56356) (#56357)
(cherry picked from commit b1b3f9e24c)

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2022-10-05 08:47:18 +01:00
Grot (@grafanabot)
2b7ec364ad Canvas: Increase Add Item picker width (#56204) (#56341)
(cherry picked from commit 8833e35b43)

Co-authored-by: Adela Almasan <88068998+adela-almasan@users.noreply.github.com>
2022-10-04 15:52:48 -04:00
Grot (@grafanabot)
b70f14d971 Canvas: Promote to beta (#56217) (#56342)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
(cherry picked from commit 2c1c98f3b6)

Co-authored-by: Nathan Marrs <nathanielmarrs@gmail.com>
2022-10-04 15:44:31 -04:00
Grot (@grafanabot)
7cb8143633 Search: Fix tags query (#55851) (#55861)
* Search: fix tags query

* Search: fix type

(cherry picked from commit 814211282a)

Co-authored-by: Artur Wierzbicki <wierzbicki.artur.94@gmail.com>
2022-10-04 13:53:00 -04:00
Grot (@grafanabot)
536eeaf9ca ReleaseNotes: Updated changelog and release notes for 9.1.7 (#56313) (#56320)
(cherry picked from commit a50017da1d)
2022-10-04 19:17:22 +03:00
Giordano Ricci
a425170bff Backport 56310 to v9.2.x (#56311)
* Revert "Explore: Prevent panes from disappearing when resizing window in split view (#55696)"

This reverts commit 0a5aa19ca2.

* Revert "Explore: Add resize to split view, with Min/Max button (#54420)"

This reverts commit c3e4f1f876.
2022-10-04 16:08:49 +01:00
Grot (@grafanabot)
8741f7dedb Replace filename with path without the local dir (#56296) (#56309)
(cherry picked from commit d94af21cac)

Co-authored-by: Dimitris Sotirakis <dimitrios.sotirakis@grafana.com>
2022-10-04 10:34:51 -04:00
Grot (@grafanabot)
19427f9797 adds 4 links to blogs (#56193) (#56302)
(cherry picked from commit d0b437741e)

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
2022-10-04 09:08:40 -05:00
Grot (@grafanabot)
a851432bfb adds alertmanager to whats new (#56304) (#56306)
(cherry picked from commit 8176810b2b)

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2022-10-04 10:06:46 -04:00
Grot (@grafanabot)
536d0d4277 Remove Custom Branding previews from What's new (#56273) (#56294)
We need to remove the custom branding announcement from the 9.2 release, since we will not release the feature in Grafana Enterprise.

(cherry picked from commit 3d58f39b25)

Co-authored-by: Mitch Seaman <mjseaman@users.noreply.github.com>
2022-10-04 14:43:56 +01:00
Grot (@grafanabot)
64867b09cf elasticsearch: improved types in the typescript files (#56293) (#56299)
(cherry picked from commit 291276e767)

Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
2022-10-04 09:20:54 -04:00
Grot (@grafanabot)
d0e42cdbc8 Update github.com/labstack/echo/v4 (#56226) (#56289)
(cherry picked from commit 91b4ce08a9)

Co-authored-by: Sofia Papagiannaki <1632407+papagian@users.noreply.github.com>
2022-10-04 14:06:44 +02:00
Grot (@grafanabot)
88d4cc9334 Add cronjob option at switch case (#56272) (#56274)
(cherry picked from commit 26d64a778e)

Co-authored-by: Dimitris Sotirakis <dimitrios.sotirakis@grafana.com>
2022-10-04 06:29:38 -04:00
Grot (@grafanabot)
a8facce55e AzureMonitor: Ensure resourceURI template variable is migrated (#56095) (#56250)
* Ensure resourceURI template vars are migrated

- Do not filter queries containing a resource URI template
- Update migration
- Add test

* Update condition

* Review

(cherry picked from commit 462ca50512)

Co-authored-by: Andreas Christou <andreas.christou@grafana.com>
2022-10-04 04:59:47 -04:00
Grot (@grafanabot)
50c6c5e550 XYChart: Beta release (#55973) (#56237)
* Bump state from alpha to beta

* Sync manual pointsize max with auto one

* Add xyChart to list

(cherry picked from commit 7b93d85a85)

Co-authored-by: Victor Marin <36818606+mdvictor@users.noreply.github.com>
2022-10-04 03:59:18 -04:00
Dimitris Sotirakis
04c5b2b9cc Add edition as environment var (#56069) (#56238)
(cherry picked from commit 8eea6f7f4f)
2022-10-04 03:58:16 -04:00
Grot (@grafanabot)
f7d85ba844 Fix update-changelog.yml version input (#56224) (#56229)
(cherry picked from commit f7c6fe0c97)

Co-authored-by: Dimitris Sotirakis <dimitrios.sotirakis@grafana.com>
2022-10-04 10:35:08 +03:00
Grot (@grafanabot)
6e680cac8f Heatmap: fix color scheme reversal (#56227) (#56234)
(cherry picked from commit eeb31c2901)

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2022-10-04 03:31:46 -04:00
Grot (@grafanabot)
6c38c502a9 Take standard options min/max into account (#55972) (#56222)
(cherry picked from commit 6913623461)

Co-authored-by: Victor Marin <36818606+mdvictor@users.noreply.github.com>
2022-10-04 02:31:25 -04:00
Grot (@grafanabot)
a16104d123 init sbom action (#56177) (#56198)
(cherry picked from commit ad48cee2bb)

Co-authored-by: Ethan <smithe2413@gmail.com>
2022-10-03 12:05:22 -04:00
Grot (@grafanabot)
483d30730f adds note about org_role being case sensitive (#56043) (#56180)
(cherry picked from commit c5b68ed497)

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
2022-10-03 09:13:12 -05:00
Grot (@grafanabot)
14d98f02da Alerting: Allow created by to be manually set when there's no creator for silences (#55952) (#56161)
* Alerting: Allow created by to be manually set when there's no creator

Grafana has a mode that allows unauthenticated interaction, typically the created by field of a silence is inferred from the current logged user. When this is not present, the field is left black and thus the silence creation fails.

This allows us to set the created by when we is not possible to infer it from the current user.

* Show created by input field only if user is not logged

* Add test for new logic with createdBy input field

Co-authored-by: Sonia Aguilar <soniaaguilarpeiron@gmail.com>
(cherry picked from commit 501e921b2b)

Co-authored-by: gotjosh <josue.abreu@gmail.com>
2022-10-03 16:04:16 +02:00
Grot (@grafanabot)
7a76da4e15 CI: Add packages-bucket flag to publish packages command (#56170) (#56176)
* Add public bucket string

* Fix lint

(cherry picked from commit d32c67b52a)

Co-authored-by: Dimitris Sotirakis <dimitrios.sotirakis@grafana.com>
2022-10-03 08:47:39 -04:00
Grot (@grafanabot)
5c5590ec5f Docs: Update postgresql and mssql docs (#56011) (#56174)
* Update mssql docs first draft

* Update postgresql docs first draft

* update image tag

* add missing >

* Update docs/sources/datasources/mssql.md

* Update docs/sources/datasources/mssql.md

* Update docs/sources/datasources/postgres.md

* Update docs/sources/datasources/postgres.md

* Update docs/sources/datasources/postgres.md

* Reflect updated image names

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>
(cherry picked from commit 3342e529b4)

Co-authored-by: Oscar Kilhed <oscar.kilhed@grafana.com>
2022-10-03 14:17:08 +02:00
Grot (@grafanabot)
8560b492c5 Docs: update mysql docs to reflect editor changes (#54568) (#56173)
* Docs: update mysql docs to reflect visual query builder/code editor changes

* Apply suggestions from code review

Co-authored-by: Kim Nylander <104772500+knylander-grafana@users.noreply.github.com>
Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Add missing >

* Reflect updated image name

Co-authored-by: Kim Nylander <104772500+knylander-grafana@users.noreply.github.com>
Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
(cherry picked from commit 885e8efec6)

Co-authored-by: Oscar Kilhed <oscar.kilhed@grafana.com>
2022-10-03 14:16:32 +02:00
Grot (@grafanabot)
29bb039c94 CI: Move grafanacom command to OSS (#55853) (#56168)
* Move publish-packages command over from

* Fix lint

* Move grafanacom command to OSS

* Add GetLatestMainBuild to gsutil

* Fix lint

* More lint fixes

* Add tests for grafanacom

* Fix lint

(cherry picked from commit 947838cca0)

Co-authored-by: Dimitris Sotirakis <dimitrios.sotirakis@grafana.com>
2022-10-03 14:30:11 +03:00
Grot (@grafanabot)
fcf605e07f Grafana UI: Prevent built storybook being bundled with package (#56158) (#56164)
(cherry picked from commit d1b21a5981)

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
2022-10-03 12:32:41 +02:00
Grot (@grafanabot)
f2f49abe03 Canvas: Add text element (#56137) (#56139)
Co-authored-by: Drew Slobodnjak <drew08t@users.noreply.github.com>
(cherry picked from commit fc62f7ae23)

Co-authored-by: Nathan Marrs <nathanielmarrs@gmail.com>
2022-09-30 20:35:16 -04:00
Grot (@grafanabot)
c0943153be Docs: Add link to TimescaleDB docs (#56134) (#56136)
* Added a link for more information

Added a link to TimescaleDB so that users can get additional information if need be.

* fixed formatting

* fixed the table

* made it prettier

* make it pretty for CI

Co-authored-by: Rajakavitha Kodhandapani <krajakavitha@gmail.com>
(cherry picked from commit ef1aa8ceb8)

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>
2022-09-30 15:48:52 -07:00
Grot (@grafanabot)
403a834bfa Canvas: Rename textbox to rectangle (#55633) (#56127)
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
(cherry picked from commit 82d7f80a15)

Co-authored-by: Drew Slobodnjak <60050885+drew08t@users.noreply.github.com>
2022-09-30 14:05:38 -04:00
Grot (@grafanabot)
33e5cde266 Canvas: Add canvas editor options to inline editor (#55970) (#56124)
Co-authored-by: Drew Slobodnjak <60050885+drew08t@users.noreply.github.com>
(cherry picked from commit 2eb24bbc4e)

Co-authored-by: Nathan Marrs <nathanielmarrs@gmail.com>
2022-09-30 13:34:38 -04:00
Grot (@grafanabot)
211e9896bc @grafana/ui: Render PageToolbar Go Back icon for smaller window size (#55671) (#56120)
(cherry picked from commit 9958f938e0)

Co-authored-by: Andres Martinez Gotor <andres.martinez@grafana.com>
2022-09-30 11:47:55 -04:00
Grot (@grafanabot)
fa99d31acf Core: Implement aria attributes for query rows, improve a11y (#55563) (#56081)
* feat: add aria-expanded prop

* refactor: remove console.log()

* feat: add aria-controls

* refactor: add id to expendable section

* refactor: create unique id

(cherry picked from commit fc6afc6b84)

Co-authored-by: Laura Benz <48948963+L-M-K-B@users.noreply.github.com>
2022-09-30 16:43:39 +02:00
Grot (@grafanabot)
4decec3c8e [v9.2.x] Docs: Added icon type improvements to plugin migration guide (#56083)
Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2022-09-30 13:28:30 +02:00
Grot (@grafanabot)
aae3a73381 fix wrong context height (#56024) (#56046)
(cherry picked from commit 3afa3f5e21)

Co-authored-by: Sven Grossmann <Svennergr@gmail.com>
2022-09-29 12:23:00 -04:00
Grot (@grafanabot)
27e76f5c7a docs: fix typo in is_null expression explainer (#55988) (#56037)
(cherry picked from commit 46da77d1a0)

Co-authored-by: Mike McFarland <roketworks@users.noreply.github.com>
2022-09-29 10:23:41 -05:00
Grot (@grafanabot)
d10d842024 CI: Move publish-packages command over from grabpl (#55850) (#56007)
* Move publish-packages command over from

* Lint fixes

* Update test

(cherry picked from commit 9a68f8704f)

Co-authored-by: Dimitris Sotirakis <dimitrios.sotirakis@grafana.com>
2022-09-29 17:57:55 +03:00
Christopher Moyer
8c306dfe53 Docs: manual backport (#55945)
* resolves merge conflict

* resolves conflicts
2022-09-29 07:38:14 -05:00
Grot (@grafanabot)
08d12df9f3 Loki/Prometheus: Fix adding of ad hoc filters when jumping from dashboard to explore (#55915) (#55992)
* Loki, Prometheus: Fix adding of ad hoc filters when jumping from dashbaord to explore

* Update

(cherry picked from commit 21a99fba7e)

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2022-09-29 13:47:37 +02:00
Grot (@grafanabot)
29826e0eb8 Security: Fix CVE-2022-27664 (#55361) (#55937)
* Fix CVE-2022-27664

* update golang.org/x/sys in go.sum

(cherry picked from commit 4ffa0532f0)

Co-authored-by: emerson_gong <emerson_gong@hotmail.com>
2022-09-29 06:14:29 -04:00
Sven Grossmann
bde8a1b2e1 Logs: Show copy button independently from context (#55934) (#55993)
(cherry picked from commit 998a368c69)
2022-09-29 11:50:22 +02:00
Grot (@grafanabot)
020494f87a Toolkit: Put back publishConfig access public (#55983) (#55986)
(cherry picked from commit 5c5228da61)

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
2022-09-29 04:44:40 -04:00
Jack Westbrook
50a59305b5 Toolkit: Fix script failures due to missing import paths (#55857) (#55981)
* fix(toolkit): package without dist folder so config file paths are correct

* chore(packages): make sure to bundle readme, changelog and apache2 license

* refactor(packages): recursively copy src when prepacking toolkit

* chore(toolkit): lock down babel dependencies. use grafana-eslint-config@5 for TS4.8 support

(cherry picked from commit b81f90cd0c)
2022-09-29 10:25:44 +02:00
Grot (@grafanabot)
32da26ec52 Alerting: fix alert supported warning when editing data source name (#55886) (#55943)
(cherry picked from commit ef641ea9c9)

Co-authored-by: Sonia Aguilar <33540275+soniaAguilarPeiron@users.noreply.github.com>
2022-09-29 10:24:50 +02:00
Grot (@grafanabot)
db9b11c650 Geomap: Fix tooltip display option (#55956) (#55965)
(cherry picked from commit b0cd511ecc)

Co-authored-by: Drew Slobodnjak <60050885+drew08t@users.noreply.github.com>
2022-09-28 17:55:23 -07:00
Grot (@grafanabot)
9b0d2034dc Canvas: Fix inline edit toggle crash (#55961) (#55967)
(cherry picked from commit 5a9dfd7173)

Co-authored-by: Nathan Marrs <nathanielmarrs@gmail.com>
2022-09-28 18:44:40 -04:00
Grot (@grafanabot)
4eb27f194e BarChart: add negY transform to fieldConfig overrides (#55930) (#55958)
(cherry picked from commit 16c9c858b8)

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2022-09-28 16:52:59 -04:00
Grot (@grafanabot)
7429b3f894 Canvas: Fix resource picker folder UX (#55877) (#55879)
(cherry picked from commit d9d7bff793)

Co-authored-by: Nathan Marrs <nathanielmarrs@gmail.com>
2022-09-28 15:44:33 -04:00
Grot (@grafanabot)
6dce936b65 PublicDashboards: Allow disabling an existent public dashboard if it has template variables (#55778) (#55953)
(cherry picked from commit b370a8e366)

Co-authored-by: Ezequiel Victorero <ezequiel.victorero@grafana.com>
2022-09-28 14:50:42 -04:00
Grot (@grafanabot)
9fd622e549 Tempo: Fix unexpected trimming of leading zeroes in traceID (#55167) (#55929)
* tempo: fix unexpected trim traceID leading zero (#55166)

* fix lint

(cherry picked from commit c6dffb11a4)

Co-authored-by: Jimmie Han <hanjinming@outlook.com>
2022-09-28 17:34:12 +02:00
Grot (@grafanabot)
e4e421a8e6 Docs: Document Reporting API (#55434) (#55942)
* Docs: Document reporting api

* Update docs/sources/developers/http_api/reporting.md

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

* Update docs/sources/developers/http_api/reporting.md

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

* Update docs/sources/developers/http_api/reporting.md

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

* Document the rest of endpoints

* Document more endpoints

* Fix scopes and links

* Remove rendering endpoints

* Fix status codes

* Apply review feedback

* Typo

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

Co-authored-by: Tania <yalyna.ts@gmail.com>
2022-09-28 17:09:55 +02:00
Grot (@grafanabot)
6f32c12628 Tracing: Fix bug where errors are not reported to OTel (#55925) (#55931)
(cherry picked from commit 6aef353b59)

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
2022-09-28 10:07:16 -04:00
Grot (@grafanabot)
1c19fa164a Make LocalStorageProvider react to storage events (#55810) (#55817)
(cherry picked from commit 53a39e5037)

Co-authored-by: Oscar Kilhed <oscar.kilhed@grafana.com>
2022-09-28 09:02:00 -04:00
Grot (@grafanabot)
c4f955de84 TimeSeries: clamp log-y-axis min to 1 when decimals=0 (#55882) (#55918)
(cherry picked from commit 4ff7917039)

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2022-09-28 07:53:24 -04:00
Grot (@grafanabot)
48a49eaa9a fix index file for website (#55907) (#55913)
(cherry picked from commit 43dc92d12c)

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2022-09-28 12:18:24 +01:00
Grot (@grafanabot)
ce6aaa1a37 AzureMonitor: Correctly update subscriptions value in ARG editor (#55860) (#55911)
* Correctly update subscriptions prop in query

* Simplify setting of subscriptions value

(cherry picked from commit 37aa45001f)

Co-authored-by: Andreas Christou <andreas.christou@grafana.com>
2022-09-28 07:12:16 -04:00
Grot (@grafanabot)
d5d2654dc5 Remove prepare-release.yml (#55893) (#55895)
(cherry picked from commit 46037cff56)

Co-authored-by: Dimitris Sotirakis <dimitrios.sotirakis@grafana.com>
2022-09-28 05:05:49 -04:00
Grot (@grafanabot)
3a864b7b27 Documentation: clarify label matching (#55650) (#55890)
* Documentation: clarify label matching

Behaviour in case of multiple matchers is not documented, but my experiments show they are reduced using logical AND. Please validate the updated description.

* Accept wording suggestion

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Accept suggestion for docs/sources/alerting/fundamentals/annotation-label/labels-and-label-matchers.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Improve wording according to review suggestions

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
(cherry picked from commit efef672d19)

Co-authored-by: Vladimir <greatvovan@gmail.com>
2022-09-28 09:19:08 +01:00
Grot (@grafanabot)
fed02859fd Thresholds: Add option for dashed line style (#55875) (#55885)
(cherry picked from commit bd50fd1606)

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2022-09-28 03:03:57 -04:00
Grot (@grafanabot)
731d506c72 TimeSeries: fix log-y-axis tick label skipping when decimals=0 (#55868) (#55874)
(cherry picked from commit b8da1ffdc3)

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2022-09-27 16:49:40 -05:00
Grot (@grafanabot)
d86fc082fb Links: Fix opening links from different orgs on the same tab (#55837) (#55869)
* Skip intercepting links of different orgs

* Check if orgId is present on query params

* Use locationSearchToObject instead of parseKeyValue

* Revert locationSearchToObject to parseKeyValue

(cherry picked from commit 2a12644778)

Co-authored-by: Guilherme Caulada <guilherme.caulada@grafana.com>
2022-09-27 17:46:49 -03:00
Garrett Guillotte
39c4ba5e67 Docs: Add screenshots to What's New in v9.2 (#55862) (#55865)
* Docs: Add What's New in Grafana v9.2 Beta

* Docs: Add links to What's New in Grafana v9.2

* Docs: Apply updates to What's New

(cherry picked from commit 1485209287)
2022-09-27 11:29:32 -07:00
Grot (@grafanabot)
77991d976f Docs: Add What's New in Grafana v9.2 Beta (#55855) (#55859)
(cherry picked from commit 3409979288)

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>
2022-09-27 11:12:38 -07:00
Grot (@grafanabot)
d132d8a555 Canvas: Fix icon element resizing (#55854)
(cherry picked from commit e160f19247)

Co-authored-by: Nathan Marrs <nathanielmarrs@gmail.com>
2022-09-27 12:08:23 -04:00
Grot (@grafanabot)
47f8bf1b11 Revert public dashboard granularity fix (#55844) (#55852)
(cherry picked from commit 6674407d3f)

Co-authored-by: Guilherme Caulada <guilherme.caulada@grafana.com>
2022-09-27 12:57:37 -03:00
Grot (@grafanabot)
4a653c7d31 XYChart further improvements (#55152) (#55846)
* Tooltip shows all data facets. Renamed options

* Add per series line style

* Remove line style option from manual panel options

* Refactored tooltip view

* sets selected after switch to manual

* remove facet prefixes

* in manual mode pull series names from config options, not y facet

* unused import

* Point size

* x & y axes labels

* Fix manual series prep

* betterer

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
(cherry picked from commit 3361f2c62d)

Co-authored-by: Victor Marin <36818606+mdvictor@users.noreply.github.com>
2022-09-27 11:33:04 -04:00
Grot (@grafanabot)
5242194721 Replace armhf with armhfp for RPMs (#55814) (#55828)
(cherry picked from commit 2a3f423e10)

Co-authored-by: Dimitris Sotirakis <dimitrios.sotirakis@grafana.com>
2022-09-27 10:07:41 -04:00
Grot (@grafanabot)
db52b3b03b Explore: Prevent panes from disappearing when resizing window in split view (#55696) (#55827)
(cherry picked from commit 0a5aa19ca2)

Co-authored-by: Kristina <kristina.durivage@grafana.com>
2022-09-27 10:01:00 -04:00
Grot (@grafanabot)
6af96f9cd1 ReleaseNotes: Updated changelog for 9.2.0-beta1 (#55788) (#55808)
* ReleaseNotes: Updated changelog and release notes for 9.2.0-beta1

* Remove release notes

Co-authored-by: dsotirakis <dimitrios.sotirakis@grafana.com>
(cherry picked from commit da7797014a)
2022-09-27 13:25:23 +02:00
Grot (@grafanabot)
3931787027 "Release: Updated versions in package to 9.2.0-beta.1" (#55787) 2022-09-27 13:14:06 +02:00
Grot (@grafanabot)
5f50e98d12 Alerting: Fix a typo in alerting rule annotation docs (#55730) (#55799)
(cherry picked from commit 85c26ea908)

Co-authored-by: Martin Lehmann <martin@lehmann.tech>
2022-09-27 06:02:12 -04:00
Grot (@grafanabot)
9ab3fa611f Fix: use type=button in editor (#55731) (#55792)
(cherry picked from commit 4cd4bc84b5)

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2022-09-27 09:51:09 +01:00
Grot (@grafanabot)
cddf4eea49 Docs: first draft of share panel with support docs (#55170) (#55777)
(cherry picked from commit 2bbc7c40e9)

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
2022-09-26 15:59:02 -05:00
Grot (@grafanabot)
d097fb2e28 AzureMonitor: Add region params (#55763) (#55766)
* Ensure region params are included

* Fix betterer results change

(cherry picked from commit 53c61b49bf)

Co-authored-by: Andreas Christou <andreas.christou@grafana.com>
2022-09-26 18:12:13 +01:00
Grot (@grafanabot)
ff550df32f Correlations: Only return correlation for which both source and target datasources exist (#55454) (#55744)
* Correlation: only return correlation for which both source and targe ds exist

* add test

(cherry picked from commit d07abdd23c)

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2022-09-26 14:53:25 +01:00
Tania
40e6ac8fc0 Update whats new (#55726) 2022-09-26 12:24:57 +03:00
renovate[bot]
fc7727430e Update dependency html-loader to v4.2.0 (#55655)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-26 10:24:03 +01:00
renovate[bot]
8bc8778287 Update dependency css-minimizer-webpack-plugin to v4.1.0 (#55619)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-26 10:22:59 +01:00
Maksim Nabokikh
d1e50580a5 Add the file label to dashboard provisioning errors (#53282)
Signed-off-by: m.nabokikh <maksim.nabokikh@flant.com>

Signed-off-by: m.nabokikh <maksim.nabokikh@flant.com>
2022-09-26 10:57:37 +02:00
idafurjes
178cd0a232 Use OrgUser method from org service (#55674)
* Use OrgUser method from org service

* Use GetOrgUser from org service
2022-09-26 10:27:38 +02:00
Nathan Marrs
15de96286a Canvas: Add edit option to context menu for elements with an edit mode (#55697) 2022-09-23 15:43:34 -04:00
Michael Mandrus
f8bde4df09 Public Dashboards: Add Grafana logo to public dashboards (#55641)
* add floating footer logo to pubdash pages

* make it a link

* fix typo

* use rem instead of pixels

* Update public/app/features/dashboard/components/PubdashFooter/PubdashFooter.tsx

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

* Update public/app/features/dashboard/components/PubdashFooter/PubdashFooter.tsx

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

* Update public/app/features/dashboard/components/PubdashFooter/PubdashFooter.tsx

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

* Update public/app/features/dashboard/components/PubdashFooter/PubdashFooter.tsx

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

* PR feedback

* add todo

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2022-09-23 14:32:34 -04:00
Artur Wierzbicki
af9e58eeeb Search: fix cache in the frontend search engine (#55681) 2022-09-23 10:13:14 -07:00
Kevin Minehart
2fadeeff4c CI: move grabpl package command to pkg/build (#55651)
* add grabpl package

* update .drone.yml

* resolve lint errors
2022-09-23 11:49:07 -05:00
Jean-Philippe Quéméner
f3a307778a Alerting: cache general folder in migration based on org id (#55620) 2022-09-23 18:22:45 +02:00
Ashley Harrison
366731d8d9 Navigation: Add descriptions to NavModelItems (#55669)
* add some descriptions!

* Update some descriptions

* Tweak playlist description

* fix unit tests + betterer
2022-09-23 16:08:08 +01:00
Ashley Harrison
c65a8d3cab reenable active state for home (#55566) 2022-09-23 16:03:01 +01:00
Michael Mandrus
fedc1cdb11 Revert "Plugins: Display "renderer" and "secretsmanager" plugin types under plugin catalog "Application" filter (#55597)" (#55686)
This reverts commit e981848026.
2022-09-23 10:58:57 -04:00
Josh Hunt
4e65f131d9 Chore: Update betterer results for elasticsearch (#55682) 2022-09-23 09:46:24 -04:00
Ashley Harrison
480a3b92d2 dispatch clearFilters when an item is selected (#55512) 2022-09-23 14:46:21 +01:00
Kristina
c3e4f1f876 Explore: Add resize to split view, with Min/Max button (#54420)
* Add split resize to Explore without keeping width in state

* debug commit

* ugly hack around split lib only supporting one child

* Use SplitView to accomodate one or two elements, remove debug code, fix test

* More cleanup, fix state action

* Fix even split from manual size scenario

* cleanup

* Add new state elements to test

* Handle scrollable on internal element for virtualized lists

* Left align overflow button for explore

* Change min/max buttons

* Apply suggestions from code review

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

* Add more suggestions from the code review

* Fix problems tests found

* commit broken test with debug info

* Add test, remove debug code

* Remove second get of panes

* Remove second get of panes

Co-authored-by: Elfo404 <me@giordanoricci.com>
2022-09-23 08:20:33 -05:00
Ashley Harrison
80c49688a1 turn on all the rules that are working anyway (#55679) 2022-09-23 09:18:23 -04:00
Jack Westbrook
ba10548547 CI: Update grabpl to 3.0.10 (#55678) 2022-09-23 15:15:04 +02:00
Jean-Philippe Quéméner
0f2afb6417 Alerting: support env variables in contact point settings when provsioning (#55666) 2022-09-23 08:06:51 -05:00
Ashley Harrison
717e9b0a34 add eslint-plugin-jsx-a11y (#55677) 2022-09-23 14:02:16 +01:00
Sonia Aguilar
e714d750f2 Alerting: Character / allowed in dashboard folder names, but not in alert folder names (#54395)
* Refactor FolderPicker to functional componment and add dissalowSlashes as an optional prop

* Update DetailsStep component to use FolderPicker dissalowing slashes in folders

* Adds icon that links to the Github issue when showing slashes not allowed  warning

* Add test for slashed folders warning

* Fix merge conflicts with folder creation fix PR

* Move slashes filter to useRuleFolderFilter hook, and make folder warning an optional generic prop

* Apply PR review suggestions
2022-09-23 14:44:24 +02:00
Will Browne
d0d8544ded Plugins: Create single point of entry for adding / removing plugins (#55463)
* split out plugin manager

* remove whitespace

* fix tests

* split up tests

* updating naming conventions

* simplify manager

* tidy

* explorations

* fix build

* tidy

* fix tests

* add logger helper

* pass the tests

* tidying

* fix tests

* tidy and re-add test

* store depends on loader

* enrich tests

* fix test

* undo gomod changes
2022-09-23 14:27:01 +02:00
Virginia Cepeda
003a1cdaa0 Alerting: log some basic user interactions (#55401)
* Log leaving rule group edit without saving

* Log filtering alert instances by label

Also debouncing the search to prevent sending too many log requests

* Log loading the Alert Rules list

* Move log messages to centralized location

* Add tests on log trackings

* Fix linting
2022-09-23 08:51:16 -03:00
idafurjes
fb66439c3e Chore: Add orguser methods to org service interface (#55668)
* Move role types to a separate package

* Make role type singular and remove _ from directory name

* Add orguser methods to org service

* Fix fake method
2022-09-23 07:19:34 -04:00
idafurjes
7f98f4b411 Move role types to a separate package (#55665)
* Move role types to a separate package

* Make role type singular and remove _ from directory name
2022-09-23 12:40:02 +02:00
Gareth Dawson
3eaeffda07 Elasticsearch: Remove any type from elastic_response.test.ts 2022-09-23 11:25:42 +01:00
Sofia Papagiannaki
d0e7765c6a Annotation: Optionally allow storing longer annotation tags (#54754)
* Annotation: Optionally allow longer annotation tags

* Do not accept configuration lower than today's default (500)

* Apply suggestion from code review
2022-09-23 06:04:41 -04:00
idafurjes
883c7a802b Chore: Use AddUserOrg from org service (#55657)
* Chore: Copy methods from sqlstore to org store

* Rename method, add test

* Add comments of tests

* Chore: Add methods from sqlstore to org service interface

* Avoiding import cycle

* Add and remove some methods

* User AddOrgUSer from org service in api

* Fix test function calls
2022-09-23 11:59:07 +02:00
Tania
96cb415497 Docs: Describe applying a license (#55078)
* Docs: Describe adding a license via API

* Add missing word
2022-09-23 11:57:51 +02:00
Konrad Lalik
7114c51f9f Alerting: Add alert preview to cloud rules editor (#54950) 2022-09-23 10:05:08 +02:00
idafurjes
e8a60c1988 Chore: Add methods from sqlstore to org service interface (#55635)
* Chore: Copy methods from sqlstore to org store

* Rename method, add test

* Add comments of tests

* Chore: Add methods from sqlstore to org service interface

* Avoiding import cycle

* Add and remove some methods
2022-09-23 09:58:17 +02:00
Torkel Ödegaard
c9b5acfefc Frontend: Update frontend styleguide emotion example (#55608)
* Frontend: Update frontend styleguide emotion example

* Update styling guide

* Fixes

* Add back link to cx

* prettier

* Update contribute/style-guides/frontend.md

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>

* prettier

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-09-23 08:22:16 +02:00
Dimitris Sotirakis
61c50ca1aa Update grabpl version to v3.0.9 (#55621) 2022-09-23 09:19:55 +03:00
renovate[bot]
07733a2ec1 Update dependency @kusto/monaco-kusto to v5.2.0 (#54134)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-23 05:53:34 +00:00
Jan Garaj
b1b4110ab1 CloudWatch: Add missing AWS/Prometheus metrics (#54990) 2022-09-22 22:25:33 -04:00
Artur Wierzbicki
f8d69415ca Search: create a separate HTTP endpoint (#55634)
* search: create a separate http endpoint

* search: extract api uri

* search: rename uri

* search: replicate the readiness check

* search: replicate the readiness check metric

* search: update mock
2022-09-22 19:02:09 -04:00
Torkel Ödegaard
09f4068849 NavTree: Refactor out the navtree building from api/index.go and into it's own service (#55552) 2022-09-22 22:04:48 +02:00
Garrett Guillotte
8863c4c140 Update CODEOWNERS with specific docs responsibilities (#55522)
* Update CODEOWNERS with specific docs responsibilities

* Docs: Per Ursula, hand off enterprise docs
2022-09-22 15:26:03 -04:00
Garrett Guillotte
f0e3b9b16b Docs: Clarify "supported data sources" (#54337)
* Docs: Clarify "supported data sources"

The term "supported" is context-dependent. Clarify the data sources
index page to link to the plugins catalog with additional detail,
and specify that the links to data sources are for those with
additional documentation content as part of Grafana.

Add a link to the tutorial to build a data source plugin.

* Update docs/sources/datasources/_index.md

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

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>
2022-09-22 15:23:15 -04:00
Garrett Guillotte
a98a33774b Docs: Fix relrefs in access control API docs (#51940)
* Fix relrefs in access control API docs

* Apply Prettier changes to fix CI
2022-09-22 15:13:23 -04:00
Garrett Guillotte
72ec1eba1a Docs: Note issue #13399 in database install docs (#55596)
* Docs: Note issue #13399 in database install docs

* Docs: Be more specific about serverless Aurora MySQL
2022-09-22 12:00:48 -07:00
Hamas Shafiq
4be78095c9 Tempo: Wrap the autocomplete value for a tag in double quotes (#55610) 2022-09-22 18:37:46 +01:00
Nathan Marrs
ff7225745a Canvas: Add metric value element type (#55205) 2022-09-22 10:21:45 -07:00
lean.dev
3ab4d543d4 GrafanaUI: Add icon to links on Plugin configuration page (#55581) 2022-09-22 14:16:45 -03:00
Serge Zaitsev
4c19e83ff0 Chore: Move team store implementation to a separate package (#55514)
* Chore: move team store implementation to a separate package

* trying to fix more tests

* fix tests in service accounts and access control

* fix common tests

* restore commented out test

* add todos
2022-09-22 19:16:21 +02:00
idafurjes
591df92265 Chore: Copy methods from sqlstore to org store (#55615)
* Chore: Copy methods from sqlstore to org store

* Rename method, add test

* Add comments of tests
2022-09-22 19:02:55 +02:00
Michael Mandrus
e981848026 Plugins: Display "renderer" and "secretsmanager" plugin types under plugin catalog "Application" filter (#55597)
* convert plugin filter options to use a type instead of string

* add secrets manager and renderer to app plugin filter

* update frontend tests

* more test updates

* fix function to handle all cases
2022-09-22 12:28:44 -04:00
sam boyer
8314baf9bc ci: Update CODEOWNERS for as-code team (#55334) 2022-09-22 17:59:29 +02:00
Laura Fernández
4da04ff16d Navigation: use pageNav and subTitle in Dashboards > Settings > Links (#55510) 2022-09-22 17:44:47 +02:00
Gabriel MABILLE
3ce76e1e78 SAML: Allow wildcard mapping to add user to all existing orgs (#55628) 2022-09-22 17:34:00 +02:00
Kyle Brandt
27288276a2 Prometheus: Restore FromAlert header (#55255)
This restores the FromAlert header to prometheus for Grafana managed alert Queries. 

It does this by reverting "Prometheus: Remove middleware for custom headers (#51518)" , but also changing it so it is only the FromAlert header.

This reverts commit 2372501368.
2022-09-22 11:03:13 -04:00
Marcos Vinicius
69f1ba3e6e Elasticsearch: Rename public/app/plugins/datasource/elasticsearch/index_pattern.ts to follow convention (#55532)
* Elasticsearch: Rename public/app/plugins/datasource/elasticsearch/index_pattern.ts to follow convention

* undo change in this file
2022-09-22 14:04:16 +00:00
Ieva
6f93630e97 RBAC: add check for whether a role is managed (#55617)
* add check for whether a role is managed

* fix typo
2022-09-22 15:00:42 +01:00
Andreas Christou
cf588bd083 AzureMonitor: Automate retrieval of supported Metrics namespaces (#53203)
* Automate retrieval of supported Metrics namespaces

- Pass AzMonitor datasource to resource picker
- Add function to fetch unique namespaces for all subscriptions
- Update tests

* Remove unused file and reference

* Remove final namespace reference

* Add missing arguments

* Remove spaces added to generated file
2022-09-22 14:05:29 +01:00
juanicabanas
c7419de2e5 PublicDashboard: Add RTK Query with loading and error state. Add MSW dependency for testing. (#55518)
PublicDashboard: Add RTK Query with loading and error state. Add MSW dependency for testing.
2022-09-22 09:35:04 -03:00
Sofia Papagiannaki
2f14575dd3 Chore: Move annotations cleanup to the annotations service (#55618) 2022-09-22 15:27:48 +03:00
renovate[bot]
4739ff06a5 Update dependency @rushstack/node-core-library to v3.52.0 (#55614)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-22 12:59:32 +01:00
Sofia Papagiannaki
55ef34bee4 Instrumentation: Add api/health to the unnamed handlers (#55478) 2022-09-22 13:03:20 +03:00
Jan Garaj
e5619c0fe6 CloudWatch: update AWS/States metrics (#55427) 2022-09-22 12:00:07 +02:00
Marcus Efraimsson
919a26f389 Instrumentation: Guidance/conventions for logs, metrics and traces (#55562)
A first rough draft of adding some guidance/conventions for instrumenting 
Grafana with logs, metrics and traces together with how to run things 
locally to query/visualize logs, metrics and traces.

Closes #55470

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
Co-authored-by: Kristin Laemmert <mildwonkey@users.noreply.github.com>
Co-authored-by: Carl Bergquist <carl.bergquist@gmail.com>
2022-09-22 11:39:14 +02:00
renovate[bot]
ab13b951ed Update dependency @opentelemetry/semantic-conventions to v1.7.0 (#55577)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-22 10:37:58 +01:00
Artur Wierzbicki
e341aa4dab Search: fix front end query search condition (#55611)
* fix frontend query condition

* refactor to `inludes`
2022-09-22 05:34:09 -04:00
Grafana I18n Bot
c56b3f39cf Update source file messages.po (#55575) 2022-09-22 09:08:21 +00:00
Erik Sundell
5eeba155f7 Cloudwatch: Refactor - move describe all log groups to call resource handler (#55582)
* refactor backend

* move describe log groups to api file

* fix lint issue
2022-09-22 10:32:05 +02:00
Leo
383602a850 Dashboard: Fix plugin dashboard save as button (#55197)
* render SaveDashboardErrorProxy only when error is not yet handled

* improve dashbaoard drawer test
2022-09-22 09:14:13 +02:00
Victor Marin
da78f33939 TablePanel: Fix FooterRow styling for Safari and Firefox (#55543)
* Fix FooterRow styling for Safari and Firefox

* Change column header th to div
2022-09-22 09:33:15 +03:00
tab0r
06b38133a9 Update usage insights docs (#55155)
* adding links for cloud usage insights

* adding todo stub

* adding more stubs

* basic description

* remove two changes

* tweaks and todos from pairing

* addressing more feedback and adding links

* fix grafana enterprise links

* fix grafana enterprise links (one more)

* updating dashboard links to match style

* add note about cloud in export logs page

* missing word

* change the Grafana Enterprise notes links to point to the Grafana Enterprise intro
2022-09-21 16:47:45 -07:00
Drew Slobodnjak
6e85dfa25a Geomap: Add dynamic initial view options (#54419)
* Geomap: Add dynamic initial view options

* Add control options for dynamic initial view

* Add handling for last only scope

* Remove stale todos

* Only reinitialize map view during data if fit

* Add options for data fit

In map init, remove dependency on layers input.

Add a boolean to map view config to handle all layers, with default
set to true. Also, add layer string to handle currently selected layer.

Change some verbage.

In map view editor, add controls for data extent options. Only display
layer selection when all layers is not selected.

Update layer extent function to handle all options permutations. When
all layers is selected, return all data for extent calculation. When
last only is selected, only return last data point in matching layer for
extent calculation. Otherwise, return all data points in matching layer
for extent calculation.

* Change padding tooltip and hide for last only

* Simplify getLayersExtent call

* Add enums for data scope options

* Update GeomapPanel for refactor merge

* Move view init functions back into geomap class

Re-apply data change handling and extent calculation handling.

* Update padding tooltip verbage

* Ensure geomap panel options layers are initialized

* Clean up GeomapPanel file (betterer)

* refactors / clean up

* more cleanup

Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2022-09-21 13:11:44 -07:00
Kristina
5be04f5336 Set ExploreDrawer Z index to one below dashboard search (#55323) 2022-09-21 14:49:29 -05:00
Dimitris Sotirakis
a9a86cbe54 Introduce lint-frontend pipeline (#55559) 2022-09-21 14:39:28 -05:00
Marcus Efraimsson
08d352a0ad Instrumentation: Improve instrumentation of server lock service (#55516)
Improve log and trace instrumentation of the server lock service.

Closes #55455
2022-09-21 15:17:26 -04:00
Yuriy Tseretyan
2d38664fe6 Alerting: Improve validation of query and expressions on rule submit (#53258)
* Improve error messages of server-side expression 
* move validation of alert queries and a condition to eval package
2022-09-21 15:14:11 -04:00
Yuriy Tseretyan
879241a48f Alerting: Fix state manager tests (#55593) 2022-09-21 13:57:18 -05:00
Garrett Guillotte
29018d522c Docs: Fix link to config docs (#55396) 2022-09-21 11:42:39 -07:00
Galen Kistler
89a20526e5 Prometheus: Update onblur ref with value of last changed monaco editor (#55513)
* add new monaco callback to update onBlurRef with current value on monaco editor change.

* don't overload onBlur, create new onChange tracker that doesn't initiate queries, just updates values

* Update public/app/plugins/datasource/prometheus/components/monaco-query-field/MonacoQueryField.tsx

Co-authored-by: ismail simsek <ismailsimsek09@gmail.com>
2022-09-21 12:51:14 -05:00
Sven Grossmann
e55003174a slate-suggenstions: adding moveBackward (#55576) 2022-09-21 19:39:54 +02:00
kay delaney
9e0d349bf9 LibraryPanelSearch: Refactor and fix hyphen issue (#55314) 2022-09-21 18:37:17 +01:00
Yuriy Tseretyan
199996cbf9 Alerting: Resolve stale state + add state reason to notifications (#49352)
* adds a new reserved annotation `grafana_state_reason`
* explicitly resolve stale states
2022-09-21 13:24:47 -04:00
Guilherme Caulada
9c2f3045b4 PublicDashboards: Resolve interval for public dashboard data source (#55489)
* Resolve interval for public dashboard data source

* Remove type assertions in favor of 'in'

* Add org id to public dashboard requests
2022-09-21 13:29:27 -03:00
idafurjes
48a8b35ece Chore: Add org methods to org service and store (#55579)
* Add org methods to org service and store

* Fix name of fake

* Remove unused fake

* Add xorm tags and half of a test

* Add cmment for clarifying missing part of test

* Add some comments about future refactors

* Rename test

* Add test for update org address
2022-09-21 18:00:18 +02:00
Galen Kistler
23afb0c04e delete graphite angular partial (#55570) 2022-09-21 10:30:24 -05:00
Ashley Harrison
cf19baf80f improve responsiveness of breadcrumbs (#55572) 2022-09-21 15:52:06 +01:00
Jean-Philippe Quéméner
74c66b29d0 Alerting: Skip unsupported file types on provisioning (#55573) 2022-09-21 16:48:39 +02:00
Ashley Harrison
1978b935ba remove underlay fade out animation (#55578) 2022-09-21 10:42:08 -04:00
renovate[bot]
bc6a006fc0 Update dependency @lezer/lr to v1.2.3 (#54144)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-21 16:18:09 +02:00
Artur Wierzbicki
1f2cab9036 SearchV2: add more tracing spans (#55488)
* add additional spans to searchv2

* add initial setup span

* add dashboardCount attribute to readDashboard span

* add dashboard count to init org index span

* fix merge

Co-authored-by: Todd Treece <todd.treece@grafana.com>
2022-09-21 16:14:52 +02:00
Yuriy Tseretyan
0629d3922a stop flushing state when Grafana stops (#55504) 2022-09-21 10:10:17 -04:00
Andreas Christou
17fc5d82d3 Bump code coverage versions (#55554) 2022-09-21 13:38:02 +01:00
Emil Tullstedt
647997cc4c Alerting: Fix flaky test (#55551)
The length of the identifier from the underlying library is 9 or more characters depending on the rate at which the identifiers are generated. See https://pkg.go.dev/github.com/teris-io/shortid

The test previously made the assumption that the length will always be 10, which would intermittently fail.
2022-09-21 14:17:25 +02:00
ying-jeanne
7b4cea8151 Chore: StoreSplit tag service (#55453)
* move tag service outside

* fix dashboard

* fix test

* lint

* fix linter

* remove spew
2022-09-21 08:04:01 -04:00
Josh Hunt
e3e954cbba Docs: Fix decimals: auto docs for panel edit (#55477)
* Docs: Fix decimals: auto docs for panel edit

* Update docs/sources/panels/configure-standard-options/index.md

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
2022-09-21 12:56:04 +01:00
Artur Wierzbicki
5a1f004fb1 Live: Fix live streaming with live-service-web-worker feature flag enabled (#55528) 2022-09-21 13:09:16 +02:00
Dimitris Sotirakis
c18432971b CI: Introduce lint-backend pipeline (#55476)
* Introduce lint-backend pipeline

* Use go image and install make

* Don't run lint pipeline on .drone.yml changes
2022-09-21 07:05:19 -04:00
Will Browne
b25ea75bac Plugins: Add secure JSON fields to plugin setting DTO (#55313)
* add secure JSON fields to plugin setting DTO

* add nil pointer fix

* adding secureJsonFields to the plugin meta.

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2022-09-21 12:20:11 +02:00
Emil Tullstedt
c10a69c007 Cleanup: Add traces to cleanup jobs (#55465) 2022-09-21 12:01:21 +02:00
Torkel Ödegaard
8440baab91 NavBarMenu: Section as links and design tweak (#55538)
* scaffold new component + remove storing of expanded state

* some padding fixes

* simplify!

* move browse back to being a child of dashboards

* behaviour working

* improve child matcher to look recursively

* increase NavBarMenu zIndex to ensure it overlays explore drawer

* some renaming

* fix unit test

* make dashboards a top level item again and make chevrons their own buttons

* remove active background state

* Finished tweaks

* remove theme change

* Remove exit animation

* align button centrally + fix empty message alignment

* only show the empty message if there are no children

* ensure overflowing menu items truncate correctly

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-09-21 11:57:30 +02:00
Gábor Farkas
3a545007ca elastic: devenv: add nested objects to data generator (#55482) 2022-09-21 11:34:49 +02:00
George Robinson
bad4f7fec5 Alerting: Change screenshots to use components (#55156)
* Alerting: Change screenshots to use components

This commit changes screenshots to use a number of components instead of a set of functional wrappers.

It moves the uploading of screenshots from the screenshot package to the image package so we can re-use the same code for both uploading screenshots and server-side images; SingleFlight from the screenshot package to the image package so we can use it for both taking and uploading the screenshot, where as before it was used just for taking the screenshot; and it also removes the use of a cache because we know that screenshots can be taken at most once per tick of the scheduler.
2022-09-21 10:25:07 +01:00
George Robinson
7d20766ae9 Alerting: Fix mathexp.NoData cannot be reduced (#55347)
This commit fixes a bug where queries from datasources such as InfluxDB that returned no data would not create a DatasourceNoData alert, but instead an error "can only reduce type series, got type noData".
2022-09-21 10:01:51 +01:00
Erik Sundell
28ebdf1641 move describe log groups to resource api (#55485) 2022-09-21 10:55:54 +02:00
GitStart
79a5e3e802 Elasticsearch: rename public/app/plugins/source/elasticsearch/query_def.ts to follow convention (#55415) 2022-09-21 10:25:04 +02:00
GitStart
ff043aebef Elasticsearch: Rename public/app/plugins/datasource/elasticsearch/query_builder.ts to follow convention (#55413) 2022-09-21 09:38:25 +02:00
Julien Duchesne
a44c0040a9 Drone: Always have image_pull_secrets (#55530)
Having it doesn't prevent pulling any images, so it's easier if it's everywhere
2022-09-21 06:27:43 +00:00
GitStart
667993eae7 Dashboard: Single right-aligned y axis loses gridlines (#54206)
Co-authored-by: gitstart <gitstart@gitstart.com>
Co-authored-by: gitstart <gitstart@users.noreply.github.com>
Co-authored-by: Nitesh Singh <nitesh.singh@gitstart.dev>
Co-authored-by: Murilo Amaral <87545137+MuriloAmarals@users.noreply.github.com>
Co-authored-by: Matheus Benini Ferreira <88898100+MatheusBeniniF@users.noreply.github.com>
Co-authored-by: Rafael Toledo <87545086+Toledodev@users.noreply.github.com>
Co-authored-by: Rubens Rafael <70234898+RubensRafael@users.noreply.github.com>
Co-authored-by: Júlio Piubello da Silva Cabral <julio.piubello@gitstart.dev>
Co-authored-by: Thiago Nascimbeni <tnascimbeni@gmail.com>

Co-authored-by: gitstart <gitstart@users.noreply.github.com>
Co-authored-by: gitstart <gitstart@gitstart.com>
Co-authored-by: Nitesh Singh <nitesh.singh@gitstart.dev>
Co-authored-by: Murilo Amaral <87545137+MuriloAmarals@users.noreply.github.com>
Co-authored-by: Matheus Benini Ferreira <88898100+MatheusBeniniF@users.noreply.github.com>
Co-authored-by: Rafael Toledo <87545086+Toledodev@users.noreply.github.com>
Co-authored-by: Rubens Rafael <70234898+RubensRafael@users.noreply.github.com>
Co-authored-by: Júlio Piubello da Silva Cabral <julio.piubello@gitstart.dev>
Co-authored-by: Thiago Nascimbeni <tnascimbeni@gmail.com>
2022-09-20 23:58:12 -05:00
Torkel Ödegaard
96dfc4bac5 GrafanaRoute: Use React.Lazy instead of react-loadable and improve error handling (#55339)
* Things are working

* Add new GrafanaRoute tests

* removed old file

* Remove from package.json
2022-09-21 05:41:05 +02:00
GitStart
e0c630e915 Status History Panel: Show X-Axis Value in Tooltip (#54563)
Co-authored-by: gitstart <gitstart@users.noreply.github.com>
Co-authored-by: gitstart <gitstart@gitstart.com>
Co-authored-by: Nitesh Singh <nitesh.singh@gitstart.dev>
Co-authored-by: Rubens Rafael <70234898+RubensRafael@users.noreply.github.com>
Co-authored-by: Rafael Toledo <87545086+Toledodev@users.noreply.github.com>
Co-authored-by: Matheus Benini Ferreira <88898100+MatheusBeniniF@users.noreply.github.com>
Co-authored-by: Matheus Benini <matheus_benini@hotmail.com>
Co-authored-by: Júlio Piubello da Silva Cabral <julio.piubello@gitstart.dev>
Co-authored-by: juliopiubello <juliopiubellow@gmail.com>
2022-09-20 21:57:47 -05:00
Ryan McKinley
0c38a3ba97 Search: Investigate frontend search options (again) (#55526) 2022-09-20 20:24:29 -04:00
Artur Wierzbicki
c3ca5405ce Search: Add search index configuration options (#55525)
* Search: externalize config

* Search: update config descriptions

* Search: fix value

* Search: fix

* update

* Search: revert config values

* Search: rename copy/paste

* Search: fix tests
2022-09-20 19:09:55 -04:00
Artur Wierzbicki
9db2720016 Search: improve logging in case of failed dashboard loading phase (#55523) 2022-09-20 23:50:29 +02:00
Yuriy Tseretyan
57a0b6db2c Alerting: Refactor WeCom notifier to use encoding/json to parse settings instead of simplejson (#55423) 2022-09-20 14:37:24 -04:00
Ieva
6d5bdf12e8 resolve merge conflicts (#55503) 2022-09-20 13:31:08 -04:00
kay delaney
064a9ccd6e PanelHeader: Add deadzone to panel header click/drag detection (#55490) 2022-09-20 18:15:03 +01:00
Serge Zaitsev
305d494902 Chore: Switch over to team.Service instead of sqlstore (#55497)
* switch to using team service

* trying to fix tests

* more tests to fix

* add missing teamtest package
2022-09-20 18:58:04 +02:00
Torkel Ödegaard
40bc140a9a Refactoring and simplifying TopSearchBar (#55341) 2022-09-20 18:57:38 +02:00
Grot (@grafanabot)
80c0dc890a ReleaseNotes: Updated changelog and release notes for 9.0.9 (#55511) 2022-09-20 16:45:53 +00:00
owensmallwood
aae2c3c4f4 PublicDashboards: Tag is rerendered when dashboard meta changes in state (#55414)
Can update dashboard meta state using dashboard events.
2022-09-20 10:42:57 -06:00
Marcus Efraimsson
862a6a2fa6 Logging: Introduce API for contextual logging (#55198)
Introduces a FromContext method on the log.Logger interface that 
allows contextual key/value pairs to be attached, e.g. per request, 
so that any logger using this API will automatically get the per request 
context attached. The proposal makes the traceID available for 
contextual logger , if available, and would allow logs originating from 
a certain HTTP request to be correlated with traceID.
In addition, when tracing not enabled, skip adding
traceID=00000000000000000000000000000000
to logs.
2022-09-20 18:32:06 +02:00
Grot (@grafanabot)
c6ed7d6741 ReleaseNotes: Updated changelog and release notes for 9.0.9 (#55506) 2022-09-20 16:21:25 +00:00
Grot (@grafanabot)
ce10706f03 ReleaseNotes: Updated changelog and release notes for 8.5.13 (#55502) 2022-09-20 11:55:14 -04:00
Jo
006944a360 Auth: Add development manual override (#55496)
* Auth: Add development manual override

* rename to disable_sync_lock
2022-09-20 11:48:40 -04:00
Alexander Emelin
0e6a8cc6ac Live: Migrate to centrifuge-js v3 (new API and client protocol) (#51977) 2022-09-20 11:39:46 -04:00
renovate[bot]
42cf92a3f2 Update dependency @daybrush/utils to v1.10.0 (#55492)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-20 16:35:37 +01:00
Alexander Weaver
3a580dc3cd Alerting: Extract default message embed into named constant (#55424)
* Resolve conflicts

* Combine multiple const definitions
2022-09-20 10:20:06 -05:00
renovate[bot]
3195866596 Update dependency @babel/plugin-transform-runtime to v7.19.1 (#55289)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-20 16:00:06 +01:00
Artur Wierzbicki
03af63d52e SearchV2: add tracing to background jobs (#55250)
* searchv2: add tracing to background jobs

* searchv2: lint

* searchv2: lint

* searchv2: fix context passing

* searchv2: add init org index span

* searchv2: add traceid to logs

* searchv2: add db count to logs
2022-09-20 16:49:44 +02:00
Leonard Gram
a14bd4055f Chore: update latest.json to 9.1.6 (#55486) 2022-09-20 16:47:25 +02:00
Grot (@grafanabot)
bbb8bf08db ReleaseNotes: Updated changelog and release notes for 9.1.6 (#55481) 2022-09-20 16:31:35 +02:00
Jo
0be644031d Auth: Add SAML common resolutions to cookie issues (#55395)
* Auth: Add SAML cookie specifics

* Auth: remove legacy message

* HTTPS

Co-authored-by: Misi <mgyongyosi@users.noreply.github.com>

Co-authored-by: Misi <mgyongyosi@users.noreply.github.com>
2022-09-20 16:21:50 +02:00
Josh Hunt
070d44802f Chore: Type Rudderstack and AppInsights window APIs (#55162)
* Chore: Type Rudderstack and AppInsights window APIs

* remove rudder sdk to dev deps
2022-09-20 10:06:31 -04:00
Emil Tullstedt
4711454b81 Org: Fix service initialization (#55460) 2022-09-20 08:28:47 -04:00
Hamas Shafiq
d06ed3226c Jaeger: Add cheat sheet (#54521) 2022-09-20 12:48:17 +01:00
Konrad Lalik
4c4b758646 Alerting: Add templates autocomplete (#53655)
Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2022-09-20 13:07:17 +02:00
idafurjes
43a1d1484d Add some org methods to org service interface (#55449)
* Add some org methods to org service interface

* Fix fake method name
2022-09-20 12:57:51 +02:00
Laura Benz
dbbab6e95c Explore: Add feature tracking events (#54514)
* feat: add tracking in query row button group

* feat: add tracking for split view

* feat: add tracking for query inspector tab open

* feat: add tracking for shortened link button

* feat: add tracking for change of datasource

* feat: add tracking for time range options

* refactor: clean up

* refactor: repair tests

* refactor: clean up

* feat: add details to change of data source

* refactor: remove duplicate tracking

* refactor: make tracking reusable in an easier way

* refactor: add property

* refactor: change data for time picker

* refactor: change tracking label for time picker

Co-authored-by: Ivan Ortega Alba <ivanortegaalba@gmail.com>

* refactor: store tracking in explore component

* refactor: add index signature

* refactor: remove ?

* refactor: split into 3 callbacks

* refactor: apply suggestions from code review

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

Co-authored-by: Ivan Ortega Alba <ivanortegaalba@gmail.com>
Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
2022-09-20 06:50:23 -04:00
idafurjes
eff4daacaf Bug: Rollback change in search (#55443) 2022-09-20 12:18:39 +02:00
Dimitris Sotirakis
cb93ed04a7 Add storybook bucket for main builds (#55448) 2022-09-20 13:15:06 +03:00
Serge Zaitsev
2ee3fd3994 Chore: Create structure for team service (#55444) 2022-09-20 10:14:00 +00:00
Giordano Ricci
d815e2cb56 Correlations: Return 200 instead of 404 for empt correlation lists (#55242)
* return 200 instead of 404 for empty correlations list

* handle empty list response & improve consistency
2022-09-20 11:13:33 +01:00
Josh Hunt
d014a3a09b Echo: Add support for Google Analytics 4 (#55446)
* user essentials mob! 🔱

lastFile:public/app/core/services/echo/backends/analytics/GA4Backend.ts

* user essentials mob! 🔱

* user essentials mob! 🔱

lastFile:public/app/core/services/echo/backends/analytics/GA4Backend.ts

* user essentials mob! 🔱

lastFile:public/app/core/services/echo/backends/analytics/GA4Backend.ts

* user essentials mob! 🔱

lastFile:public/app/app.ts

* user essentials mob! 🔱

Co-authored-by: eledobleefe <laura.fernandez@grafana.com>
Co-authored-by: Leodegario Pasakdal <leodegario.pasakdal@grafana.com>
2022-09-20 03:13:14 -07:00
Jo
13146cc812 Auth: reduce allocs (#55410) 2022-09-20 12:03:08 +02:00
Torkel Ödegaard
10b3c0787a CSSTransition fixes warnings (#55340) 2022-09-20 11:47:31 +02:00
Marcos Vinicius
c088f2be50 Elasticsearch: Rename public/app/plugins/datasource/elasticsearch/language_provider.ts to follow convention (#55430) 2022-09-20 11:34:07 +02:00
Serge Zaitsev
8f1e2ed658 Chore: Split temporary user (invite) service (#55397)
* Chore: Split temporary users

* change references to tempuser service

* fix api tests

* restore tests
2022-09-20 11:29:17 +02:00
matt abrams
9bf778d5d7 add triage/needs-confirmation to collector (#55189) 2022-09-20 11:11:12 +02:00
Sonia Aguilar
4270e5606c Alerting: Fix enter key 'clicking' first button on form (#55222)
* Add type='button' in button used in Heading component to prevent having the default value ='submit'

* Add type='button' for buttons used in form when grafana-managed alert type is selected

* Add type='button' for buttons used in form when mimir-or-loki alert type is selected
2022-09-20 11:02:41 +02:00
Konrad Lalik
20e6e0d593 Alerting: Fix default query's data source when no default datasource specified (#55435) 2022-09-20 10:43:39 +02:00
Gábor Farkas
323ca6825a devenv: removed obsolete elastic docker configs (#55402) 2022-09-20 10:16:28 +02:00
idafurjes
7ce7c9b64c Chore: Move SearchOrgs to org service (#55416)
* Chore: Move SearchOrgs to org service

* Fix lint

* Fix lint 2
2022-09-20 09:55:40 +02:00
Andrea Spadaccini
e25612092b Mention the need for Subscription Reader role (#51844)
Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
Co-authored-by: Andres Martinez Gotor <andres.mgotor@gmail.com>
Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>
2022-09-20 09:24:33 +02:00
Sven Grossmann
95ddfe8ee1 GrafanaUI: mark all Log components deprecated (#55404) 2022-09-20 08:48:32 +02:00
Erik Sundell
caba98590d Cloudwatch: Break out resource requests from datasource file (#55358)
* break out resource requests from datasource file

* fix lint issues
2022-09-20 07:50:54 +02:00
Alexander Weaver
4df41972f1 Alerting: Refactor one notifier to use encoding/json to parse settings instead of simplejson (#55271)
* Create struct for Slack's receiver settings

* Remove one layer of indirection when building slack notifier

* Delete un-used struct

* Validate against settings struct instead of simplejson object

* Genericize settings marshalling

* Remove repetition between fields on notifier and fields on settings struct

* Rename unmarshal settings wrapper

* Handle comma separated strings at marshalling time rather than validation time

* Address misc review feedback
2022-09-19 17:30:16 -05:00
Serge Zaitsev
7108b4331d Fix: return proper values in dashboard thumbs service (#55421) 2022-09-20 00:29:55 +02:00
owensmallwood
c946e44741 Ignore docker-compose override. (#55407)
adds docker-compose override to gitignore
2022-09-19 12:17:54 -06:00
Guilherme Caulada
3b1fc18692 PublicDashboards: Ignore time range input and changes on public dashboard (#55412)
* Ignore time range input and changes on public dashboard

* Use config instead of getConfig to access boot config
2022-09-19 15:16:27 -03:00
Timur Olzhabayev
80ff9fc0ef Chore: Handing over sigv4 middleware ownership (#55355) 2022-09-19 18:39:24 +02:00
Misi
8405a99fef Chore: Add changed enterprise devenv path to .gitignore (#55408) 2022-09-19 12:15:28 -04:00
sam boyer
4d0988b6b2 misc: Update to Go 1.18 (#53440) 2022-09-19 16:04:14 +00:00
Guilherme Caulada
ee899e8c3a PublicDashboards: Sanitize metadata from public dashboard queries (#55269)
* Add function to remove metadata from queries

* Add test for RemoveMetadataFromQueryData function

* Remove only custom data and executed query string

* Add sanity check to SanitizeMetadataFromQueryData
2022-09-19 12:44:29 -03:00
Torkel Ödegaard
d5e4b08a3a DashNav: Fixes missing key warning caused by public dashboard tag (#55336) 2022-09-19 17:01:14 +02:00
Jack Westbrook
db17a88193 Plugins: Expose emotion/react to plugins to prevent load failures (#55297) 2022-09-19 16:54:13 +02:00
Kristina
273ff02dde Explore: Add error handling function when retrieving datasource (#55055)
* Use datasource function with error handling

* Check datasource exists when validating query, add test

* Add mock to test that now requires it

* Add comment explaining verbose validity logic
2022-09-19 09:43:16 -05:00
Dimitris Sotirakis
b26e443173 Fix fetch-images command (#55365) 2022-09-19 17:17:56 +03:00
Dimitris Sotirakis
2c872b0d94 Run enterprise downstream after OSS CI is done (#55366) 2022-09-19 17:17:36 +03:00
Dimitris Sotirakis
f058e1eae3 Add storybook bucket for main builds (#55379) 2022-09-19 17:17:25 +03:00
Torkel Ödegaard
cc4392d514 Devenv: Add compose block for elastic 8 (#55214)
* Devenv: Add compose block for elastic 8

* added filebeat and metricbeat configurations

* disable mount to `/var/log`

* renamed to elasticstack

Co-authored-by: Sven Grossmann <svennergr@gmail.com>
Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
2022-09-19 16:05:42 +02:00
Jo
e1af4e72bc Auth: Add documentation on group overage claims in AzureAD (#55389)
* Auth: Add documentation on group overage claims in AzureAD

* add info on versioning
2022-09-19 15:45:05 +02:00
Sonia Aguilar
e677afabdf Use GrafanaAlertStateDecision.Error instead of Error string in RuleEditor test (#55385) 2022-09-19 15:04:24 +02:00
Giordano Ricci
93e4205caa chore: fix OX coverage report (#55386) 2022-09-19 13:55:09 +01:00
GitStart
6fb8abbbb6 Convert packages/jaeger-ui-components/src/TracePageHeader/SpanGraph/TickLabels.test.js to RTL (#55284)
Co-authored-by: gitstart <gitstart@users.noreply.github.com>
Co-authored-by: Nitesh Singh <nitesh.singh@gitstart.dev>
Co-authored-by: Rafael Toledo <87545086+Toledodev@users.noreply.github.com>
Co-authored-by: Murilo Amaral <87545137+MuriloAmarals@users.noreply.github.com>
Co-authored-by: Matheus Benini Ferreira <88898100+MatheusBeniniF@users.noreply.github.com>
Co-authored-by: Rubens Rafael <70234898+RubensRafael@users.noreply.github.com>
Co-authored-by: Toledodev <rafael.toledo@engenharia.ufjf.br>
Co-authored-by: Júlio Piubello da Silva Cabral <julio.piubello@gitstart.dev>
2022-09-19 15:02:33 +03:00
Giordano Ricci
d2adb1a3cd chore: add coverage repoort for OX-related PRs (#55316) 2022-09-19 13:01:15 +01:00
Torkel Ödegaard
2916b483eb Update a few more pages to use navId instead of navModel from store (#55342) 2022-09-19 13:21:41 +02:00
Gábor Farkas
5efeff4890 GrafanaUI: Deprecate logs components (#55364)
* grafana-ui: mark logs-components deprecated

* improved deprecation-message
2022-09-19 13:21:14 +02:00
Tima Gixe
e73a85dfb5 Chore: omit allowCustomValue and allowEmptyValue (#55352) 2022-09-19 13:40:58 +03:00
Will Browne
cd7a464f7e Plugins: Ensure plugin uninstall success for "pre-installed" community plugins (#55322)
* track pre-installed external plugins in store

* fix tests
2022-09-19 12:14:30 +02:00
kay delaney
64bbb7a7ce Chore: Update and enforce usage of typed react-redux hooks (#55349)
* Chore: Update and enforce usage of typed react-redux hooks
2022-09-19 10:49:35 +01:00
Sven Grossmann
a3ff758874 ElasticSearch: Fix dispatching queries at a wrong time (#55225)
* Loki: Fix running queries without an `expr`

* rever previous change

* only dispatch `initQuery` if the DS is uninitialized

* moved `isUninitialized` to static var
2022-09-19 11:45:21 +02:00
George Robinson
4a1ca7e32f Alerting: Change default alert state to Error on execution error or timeout (#55345) 2022-09-19 10:42:04 +01:00
Serge Zaitsev
96b032e103 Chore: Split dashboard thumbnail service (#55344)
* Chore: split dashboard thumbnail service

* fix typo

* move tests

* make linter happy
2022-09-19 11:29:22 +02:00
Gábor Farkas
1ee6a1f7c2 Logs: move logs-components from grafana-ui to grafana-main (#55041)
* logs: added a copy of the grafana-ui logs-files

* fix: added the ansicolor package to the main grafana package

* logs-components: import things from grafana-ui

* import from local files

* logs-components: other fixes

* add betterer-exceptions

* apply updates from grafana-ui package
2022-09-19 10:51:46 +02:00
Victor Marin
32c4245efd TablePanel/StatPanel: Fix values not being visible when background transparent (#55092)
* TablePanel/StatPanel: Fix values not being visible when background transparent

* Maintain backwards compatibility
2022-09-19 11:47:37 +03:00
Yaelle Chaudy
1e9f5a5080 Azure Monitor: Fix migration issue with MetricDefinitionsQuery template variable query types (#55262)
* updated imported dashboards

* Adds check for MetricDefinitionsQuery in migration

* Removed delete from migratio

* switched back to const for migratedQ

* Added depreacted to MetricDefinitionQuery
2022-09-19 10:32:27 +02:00
Dimitris Sotirakis
93e78e2146 CI: Move fetch-images sub-command from build-pipeline repo (#55298)
* Move fetch images from build-pipeline

* Modify drone

* Replace zerolog with builtin log

* Fix lint
2022-09-19 11:19:31 +03:00
Sofia Papagiannaki
754eea20b3 Chore: SQL store split for annotations (#55089)
* Chore: SQL store split for annotations

* Apply suggestion from code review
2022-09-19 10:54:37 +03:00
Erik Sundell
469f915b8c CloudWatch: Enable feature adoption tracking in the plugin (#54299)
* improve typing for DashboardLoadedEvent

* cleanup

* add cloudwatch tracking event

* add test

* revert test change

* fix typo

* remove optional

* pr feedback

* reactor test

* revert changes to api and azure

* cleanup

* refactoring test

* pr feedback
2022-09-19 08:53:42 +02:00
Erik Sundell
7bca193ecd CloudWatch: Refactoring - decouple logs and metrics in datasource file (#55079)
* break out query execution related logic

* betterer fixes

* remove unused

* cleanup

* remove unused variables

* remove not used file

* fix broken test

* pr feedback

* add comments
2022-09-19 08:50:41 +02:00
Leo
1a0cbdeabe Navigation: Add help menu to top search bar (#55062)
* add help menu to top search bar

* fixes

* handle preventDefault in node graph specifically

* use icon prop of MenuItem

* undo changes to ContextMenuPlugin/DataLinksContextMenu

* remove unused component

* revert storybook changes

* Tweaks

* remove unused style

* stop propagation on the header so version can be highlighted

* make sure useContextMenu has the exact same logic as before

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2022-09-17 18:17:00 +02:00
Ryan McKinley
17b2fb04e8 DashboardQuery: Expand query options (#53998) 2022-09-16 13:28:47 -04:00
Jean-Philippe Quéméner
4dc0d49025 Alerting: make sure that rules in rule group are nil if not provided (#55301) 2022-09-16 18:54:00 +02:00
Joao Silva
bf5b21563c StatPanel: Add padding between horizontal name and value (#55299) 2022-09-16 17:53:09 +01:00
brendamuir
c0c4409abc Docs: adds set up section with alertmanager, provisioning sections (#55291)
* Docs: adding setup, provisioning docs

* add set up, alertmanager

* Adds link to provisioning from set up page

* renames topics in set up section

* fixes alertmanager link

* removing article for alertmanager

* first connection to oncall

* updating armands intro text

* getting rid of blank line
2022-09-16 17:22:20 +01:00
Gareth Dawson
98a8908910 Loki: Remove any type from logs.test.ts (#55303)
* Remove any type from logs.test.ts

* Replace unknown types and move type casting to variables
2022-09-16 16:57:42 +01:00
Ryan McKinley
0c4d181d1e SupportSnapshots: Rename to "Get help" (#55206) 2022-09-16 08:51:14 -07:00
Yuriy Tseretyan
6539ae512c use filepath.Dir to get the parent (#55266) 2022-09-16 10:29:39 -04:00
Gregory Quinio
fb59702c74 Storybook: use div #root styles on storybook preview instead of additional div wrapper (#55023)
* feat: use styles on #root div instead of additionnal div wrapper

* Update packages/grafana-ui/src/utils/storybook/withTheme.tsx

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

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2022-09-16 17:04:56 +03:00
Dave Henderson
801b61c963 Tracing: Add new [tracing.opentelemetry] custom_attributes config setting (#54110)
* tracing: Add new [tracing.opentelemetry] custom_attributes config setting

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

* Fix typos in config

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

* Return error when custom_attributes contains malformed entries

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

Signed-off-by: Dave Henderson <dave.henderson@grafana.com>
2022-09-16 09:54:25 -04:00
Kristina
18f4d02262 Docs: Update enter/shift+enter details for prometheus query field (#52607)
* Update for accuracy

* Update docs/sources/explore/query-management.md

Co-authored-by: Kim Nylander <104772500+knylander-grafana@users.noreply.github.com>

Co-authored-by: Kim Nylander <104772500+knylander-grafana@users.noreply.github.com>
2022-09-16 09:50:18 -04:00
GitStart
46f0672215 Loki: Remove hardcoded values for parsed query parts (#54755)
Co-authored-by: Nitesh Singh <nitesh.singh@gitstart.dev>
Co-authored-by: gitstart <gitstart@users.noreply.github.com>
Co-authored-by: Rafael Toledo <87545086+Toledodev@users.noreply.github.com>
Co-authored-by: Murilo Amaral <87545137+MuriloAmarals@users.noreply.github.com>
Co-authored-by: gitstart <gitstart@gitstart.com>
Co-authored-by: Matheus Benini Ferreira <88898100+MatheusBeniniF@users.noreply.github.com>
Co-authored-by: Matheus Benini <matheus_benini@hotmail.com>
Co-authored-by: Rubens Rafael <70234898+RubensRafael@users.noreply.github.com>
Co-authored-by: Júlio Piubello da Silva Cabral <julio.piubello@gitstart.dev>

Co-authored-by: gitstart <gitstart@users.noreply.github.com>
Co-authored-by: Nitesh Singh <nitesh.singh@gitstart.dev>
Co-authored-by: Rafael Toledo <87545086+Toledodev@users.noreply.github.com>
Co-authored-by: Murilo Amaral <87545137+MuriloAmarals@users.noreply.github.com>
Co-authored-by: gitstart <gitstart@gitstart.com>
Co-authored-by: Matheus Benini Ferreira <88898100+MatheusBeniniF@users.noreply.github.com>
Co-authored-by: Matheus Benini <matheus_benini@hotmail.com>
Co-authored-by: Rubens Rafael <70234898+RubensRafael@users.noreply.github.com>
Co-authored-by: Júlio Piubello da Silva Cabral <julio.piubello@gitstart.dev>
2022-09-16 15:35:20 +02:00
Piotr Jamróz
9b4cdfe652 Correlations: Hide Correlations Page behind a feature toggle (#55224)
* Hide Correlations Page behind a toggle

* Remove redundant defaults

* Ensure top nav is rendered when correlations are disabled

This is for the case when:

[feature_toggles]
topnav = true
2022-09-16 15:14:27 +02:00
Gareth Dawson
5c66c41220 Loki: Remove any type from logsModel.test.ts (#55287)
* Remove any type from logsModel.test.ts

* Remove duplicate type checks
2022-09-16 12:56:35 +01:00
Ivana Huckova
82a6872f0f Loki, Prometheus: Remove beta tag from query builder (#55150) 2022-09-16 12:31:33 +02:00
Dimitris Sotirakis
95512c19e0 CI: Refactor versions.go (#55238)
* Refactor versions.go

* s/ReleaseModeConfig/BuildConfig
2022-09-16 06:26:33 -04:00
ying-jeanne
e4741ce8d6 remove datasource from sqlstore (#55288) 2022-09-16 06:20:26 -04:00
Victor Marin
18f33871d1 Fix header/footer not sticky (#55285) 2022-09-16 13:14:34 +03:00
Eric Leijonmarck
9cdd1cde7f fix: order of database (#55232)
* fix: order of database

* fix: sort of results

* Update pkg/api/dtos/models_test.go

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

* Update pkg/api/dtos/models_test.go

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

* only one assert

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2022-09-16 05:24:24 -04:00
renovate[bot]
7565752644 Update dependency @swc/core to v1.3.1 (#55040)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-16 10:19:44 +01:00
GitStart
f26babf484 Loki: Rename public/app/plugins/datasource/loki/query_utils.ts file to follow convention (#55180) 2022-09-16 10:16:54 +02:00
Agnès Toulet
359685b051 Docs: RBAC update for insights and query caching (#52544)
* Doc: RBAC update for insights and query caching

* Fix RBAC actions table order

* Fix RBAC role definitions & assignments tables

Co-authored-by: Joan López de la Franca Beltran <joanjan14@gmail.com>
2022-09-16 09:59:59 +02:00
Leo
e7ae71a5cc Navigation: use pagenav and subtitle to the new team page (#55200)
* added pageNav to new team page

* improve copies

* improve copies

* improve test
2022-09-16 09:32:08 +02:00
Leo
896d684065 Browse: Hide dashboard actions if user does not have enough permission (#55218)
* hide dashboard actions if user does not have enough permission

* improve test description
2022-09-16 09:19:19 +02:00
Leo
3f413f6f94 Navigation: Use navId and pageNav for Create User page (#55201)
* added pageNav subttitle and used navid for usercreatepage

* improve subtitle copy and redirected to user page after creation

* improve title copy

* improve copies

* breadcrumbs redirect to users page instead of org
2022-09-16 09:16:26 +02:00
Leo
26e444c194 Navigation: Use navid and pagenav for new org page (#55203)
* use navid and pagenav for new org page

* Minor tweak

* improve copies

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2022-09-16 08:56:50 +02:00
GitStart
eb7fe07401 Loki: Rename public/app/plugins/datasource/loki/language_utils.ts file to follow convention (#55181) 2022-09-16 08:48:37 +02:00
Ryan McKinley
6947e276d6 Inspect: Hide Actions tab when it is empty (#55272) 2022-09-15 22:17:12 -07:00
Christopher Moyer
dd0be3012c adjusts structure of tasks (#55268) 2022-09-15 17:17:12 -05:00
Saverio Proto
a09e4b0e4f Update grafana version tag to 9.1.0 (#54049)
* Update grafana version tag to 9.0.5

The user doing cut and paste will not notice and will install a old version of Grafana

* Update version to 9.1.0

Current latest tag is 9.1.0: https://hub.docker.com/r/grafana/grafana/tags
2022-09-15 19:46:13 +00:00
Garrett Guillotte
97ca109d84 Docs: Fix Cloud availability of JWT URL Embedding (#55260)
* Docs: Fix Cloud availability of JWT URL Embedding

* Docs: Clarify JWT URL embedding availability in docs
2022-09-15 10:57:38 -07:00
Ezequiel Victorero
9770edb118 Docs: Grafana Live not supported by public dashboards (#55246) 2022-09-15 14:53:27 -03:00
Brendan O'Handley
331f3e2a58 small fix for new variable editor types (#55195) 2022-09-15 11:39:40 -05:00
George Robinson
5561f935e6 Alerting: Fix send resolved notifications (#54793)
This commit fixes a bug where we did not send resolved alerts to Alertmanager for resolved alert instances. This meant that resolved notifications did not have the annotations from the resolved state, and a result did not also have the resolved screenshot.
2022-09-15 17:25:05 +01:00
Michael Musenbrock
099d3cdf72 Provisioning Contact points: Support disableResolveMessage via YAML too (#54122)
Signed-off-by: Michael Musenbrock <michael.musenbrock@gmail.com>
2022-09-15 12:19:34 -04:00
Jo
3e2e9f93b9 Auth: Allow admins to manually change oauth user role if oauth_skip_org_role_update_sync is enabled (#55182)
* Auth: Allow admins to change oauth user info it it's not synced.

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

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

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

* Add missing import

* Simplify init

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

* SAML: Add option to skip org role sync (#55230)

* SAML: Add option to skip org role sync

* Modify frontend accordingly

* Remove update from config option name

Co-authored-by: Jguer <joao.guerreiro@grafana.com>

* Remove update from config option name

Co-authored-by: Jguer <joao.guerreiro@grafana.com>

* Fix typo

Co-authored-by: Jguer <joao.guerreiro@grafana.com>

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
Co-authored-by: gamab <gabi.mabs@gmail.com>
Co-authored-by: Josh Hunt <joshhunt@users.noreply.github.com>
2022-09-15 12:06:09 -04:00
Kim Nylander
ebcbb66548 Fix broken image rendering troubleshooting links (#55210) 2022-09-15 10:50:08 -05:00
owensmallwood
5121e32722 When generating the pubdash url, use the base url from the Grafana config. This allows the url generation to work in the case that Grafana is hosted on a subpath. (#55204)
Support subpaths when generating public dashboard url
2022-09-15 09:46:11 -06:00
Jo
00e7324bf6 Auth: Restore legacy behavior and add deprecation notice for empty org role in oauth (#55118)
* Auth: Add deprecation notice for empty org role

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

* fix recasts

* fix azure tests missing logger

* Adding test to gitlab oauth

* Covering more cases

* Cover more options

* Add role attributestrict check fail

* Adding one more edge case test

* Using legacy for gitlab

* Yet another edge case YAEC

* Reverting github oauth to legacy

Co-authored-by: Jguer <joao.guerreiro@grafana.com>

* Not using token

Co-authored-by: Jguer <joao.guerreiro@grafana.com>

* Nit.

* Adding warning in docs

Co-authored-by: Jguer <joao.guerreiro@grafana.com>

* add warning to generic oauth

Co-authored-by: Jguer <joao.guerreiro@grafana.com>

* Be more precise

Co-authored-by: Jguer <joao.guerreiro@grafana.com>

* Adding warning to github oauth

Co-authored-by: Jguer <joao.guerreiro@grafana.com>

* Adding warning to gitlab oauth

Co-authored-by: Jguer <joao.guerreiro@grafana.com>

* Adding warning to okta oauth

Co-authored-by: Jguer <joao.guerreiro@grafana.com>

* Add docs about mapping to AzureAD

Co-authored-by: Jguer <joao.guerreiro@grafana.com>

* Clarify oauth_skip_org_role_update_sync

Co-authored-by: Jguer <joao.guerreiro@grafana.com>

* Nit.

* Nit on Azure AD

Co-authored-by: Jguer <joao.guerreiro@grafana.com>

* Reorder docs index

Co-authored-by: Jguer <joao.guerreiro@grafana.com>

* Fix typo

Co-authored-by: Jguer <joao.guerreiro@grafana.com>

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
Co-authored-by: gamab <gabi.mabs@gmail.com>
2022-09-15 17:35:59 +02:00
Sven Grossmann
f1e8a528d1 ElasticSearch: Fix lucene formatted variables being wrongly escaped (#54981)
* fixed negative numbers are encoded

* Chore: move variableModel to TypedVariableModel

* add tests
2022-09-15 17:18:57 +02:00
Seyaji
7ec1d137b4 Logs: Relocate "show context" button, add copy line log button (#50977)
* add context button to right side of log row

* add context button to right side of log row

* add context button to right side of log row

* add context button to right side of log row

* add show-context icon

Co-authored-by: Sven Grossmann <svennergr@gmail.com>
2022-09-15 17:13:58 +02:00
Brendan O'Handley
cd6b7ba688 InfluxDB: add scopedVars to tags to fix repeated panels querying all selected variables (#54934)
* add scoped vars for tags in influx to fix repeated panels

* test for adding scopedVars to tags
2022-09-15 09:29:19 -05:00
Adam Simpson
92857ef331 CloudMonitor: Remove cloudMonitoringExperimentalUI feature flag (#55054)
* CloudMonitor: remove cloudMonitoringExperimentalUI

* fix: address typecheck errors

* fix: fix SLO import and width cleanup

* fix wrong metricType when switching datasources

* fix: remove legacy SLO and fix queryType check
2022-09-15 14:12:26 +00:00
Joao Silva
13014dc0df Search: Fixes folder section not displaying dashboards (#55231) 2022-09-15 14:00:05 +01:00
Eric Leijonmarck
1d298b3e53 fix: min metric to hourly metric (#55228)
* fix: min metric to hourly metric

* Update pkg/services/login/model.go

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

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2022-09-15 14:17:34 +02:00
Marcus Efraimsson
cc583c5d87 Chore: Change default log level for errutil.CoreStatus (#55199) 2022-09-15 14:08:59 +02:00
Torkel Ödegaard
b8e72d6173 TopNav: KioskMode rewrite move to AppChrome responsibility and make it a global feature (#55149)
* Initial progress

* Moving keybindingSrv to context

* Simplfy KioskMode

* Removed unused logic

* Make kiosk=tv behave as before but when topnav is enabled

* Minor fix

* Fixing tests

* Fixing bug with notice when entering kiosk mode

* Fixed test
2022-09-15 14:04:58 +02:00
Piotr Jamróz
7352c181c2 Migrate user_id to BIGINT (#55084) 2022-09-15 13:29:46 +02:00
Karl Persson
b827df626d RBAC: Initiate store in service (#55081)
* RBAC: Dont inject store with wire

* RBAC: Use Store interface

* RBAC: Move store interface and initiate it from service
2022-09-15 11:34:15 +02:00
Sven Grossmann
aabd626403 Devenv: Fix filebeat level labels (#55217) 2022-09-15 10:33:39 +02:00
Dimitris Sotirakis
4e73766067 CI: Move store-storybook to OSS (#55212)
* Move store-storybook to OSS

* grabpl -> build for store-storybook command

* Replace zerolog with builtin log

* Remove flags from store-storybook

* Fix lint
2022-09-15 11:06:43 +03:00
Ryan McKinley
7700b529f9 SupportSnapshots: improved iframe support (#55059)
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2022-09-14 12:54:09 -07:00
owensmallwood
e37420f0a8 PublicDashboards: Log api layer errors and which datasources fail/succeed (#55056)
Adds pubdash api error logging and logs array of datasource names with success status when running pubdash queries.
2022-09-14 13:19:21 -06:00
Torkel Ödegaard
d639b5a7f8 Datasources: New data source page should work with new nav (#55094) 2022-09-14 21:12:09 +02:00
Torkel Ödegaard
7a10a0cb16 Gauge: Fixes empty/broken Gauge panels with datalinks (#55129) 2022-09-14 21:11:36 +02:00
matt abrams
6f0c4c7f82 Geomap: Add Africa, Australia, Oceania, South Asia, and East Asia as initial view options (#55142)
* add remaining continents + Asian regions

* capitalize South-East Asia

* Limit max zoom to 4 for view regions

Co-authored-by: drew08t <drew08@gmail.com>
2022-09-14 11:38:35 -07:00
Guilherme Caulada
82708df287 PublicDashboards: Add link to public dashboards docs to sharing modal (#55186) 2022-09-14 15:05:15 -03:00
Yuriy Tseretyan
8a62020211 Alerting: New API endpoint GET /api/v1/ngalert (#55134)
* declare new endpoint /api/v1/ngalert
* add authorization for new path
* add request handler for the new path
2022-09-14 14:03:10 -04:00
Joao Silva
ca2139e9ce Search: Avoid requesting all dashboards when in Folder View 2022-09-14 18:51:55 +01:00
juanicabanas
1e06b0170b PublicDashboards: UI improvements (#55130)
* Public dashboard modal UI modifications
2022-09-14 14:35:46 -03:00
Will Browne
29327cbba2 Plugins: Use error plane for api/ds/query (#54750)
* plugin client returns error base

* fix api test

* add plugin client test

* add fallback err

* fix linting

* wip

* replace bad query

* template is an error

* failing test of templated error

* add one test passing

* fix failing test

* move test

* rename ErrBadQuery to ErrQueryValidationFailure

* tidy diff

* Change to one error per specific error kind

* last err + fix test

* fix imports

* more tests

* keep req vars together

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2022-09-14 18:19:57 +02:00
owensmallwood
deb86e3250 PublicDashboards: Dont support exemplars (#54933)
Don't support exemplars in public dashboards
2022-09-14 09:49:10 -06:00
Ivana Huckova
926a3396ab Query patterns: Feature tracking (#55164)
* Query patterns: Feature tracking before redesign

* Update
2022-09-14 16:52:39 +02:00
Emil Tullstedt
104388dcc1 Chore: Update swagger to v0.30.2 (#55159) 2022-09-14 14:47:19 +00:00
Dimitris Sotirakis
244ccead9d Make lint-drone depend on compile-build-cmd (#55174) 2022-09-14 10:45:00 -04:00
Adam Simpson
65bdee3a90 AzureMonitor: Explain custom and metric namespace properties (#55048) 2022-09-14 14:28:25 +00:00
Dimitris Sotirakis
5c40b053d0 Update grabpl (#55061) 2022-09-14 10:20:58 -04:00
sam boyer
ced53a8dc2 plugins: Introduce generated, static core plugin registry (#54118)
* Refactor towards template/codegen framework

* Add templates for plugin gen

* Add Go codegen for plugins; overhaul framework, too

* Add new codegen output; assorted framework fixes

* Regenerate after merge

* Remove accidental commit file, update templates

* Export the pfs.Tree loader from plugin types

* Print details from cuetsy errors

* Generate loaders for all plugins and list in registry

* Use pfs_gen.go over lineage_gen.go

* Un-un-ignore main file

* Introduce simple List static registry for plugins

* Last tweaks to codegen

* remove unused tvars

* Ensure loop-local instances for both vars

* Generate pfs parsing in-place in registry

* Stop generating pfs_gen.go

* Move Tree into pfs, rename subdir

* Change package name to match dir

* Ignore gocyclo on HTTPServer.getNavTree
2022-09-14 10:15:09 -04:00
Kevin Minehart
c69a37f8c2 CI: grabpl verify-drone -> ./bin/build verify-drone (#55171)
* move grabpl verify-drone
2022-09-14 09:07:09 -05:00
Dimitris Sotirakis
5a1ba20856 CI: Split oss and enterprise steps for release pipelines (#55157)
* s/include_enterprise2/include_enterprise

* Get rid of get_steps def - include steps in separate defs
2022-09-14 09:47:02 -04:00
Will Browne
0571d98bba [WIP] Plugins: Introduce Plugins specific config (#54854) 2022-09-14 14:35:35 +01:00
Dimitris Sotirakis
8b38f9408d Run codespell only on docs changes (#55064) 2022-09-14 16:32:08 +03:00
Yuriy Tseretyan
896eeb65a9 Alerting: Fix alerting evaluation to use proper permissions (#55127)
* access control to log user name if it does not have permissions
* update ngalert Evaluator to accept user instead of creating a pseudo one
* update alerting eval (rule\query testing) API to provide the real user to the Evaluator
* update scheduler to create a pseudo user with proper permissions
2022-09-14 09:30:58 -04:00
Karl Persson
d896db6d30 RBAC: Batch permission creation (#55075) 2022-09-14 15:14:09 +02:00
Gábor Farkas
6dcc8534f7 elastic: simplify unit test (#55168) 2022-09-14 08:59:35 -04:00
GitStart
57bc472755 Loki: Rename public/app/plugins/datasource/loki/live_streams.ts file to follow convention (#55148)
Co-authored-by: gitstart <gitstart@users.noreply.github.com>
Co-authored-by: gitstart <gitstart@gitstart.com>
Co-authored-by: Nitesh Singh <nitesh.singh@gitstart.dev>
Co-authored-by: Rafael Toledo <87545086+Toledodev@users.noreply.github.com>
Co-authored-by: Murilo Amaral <87545137+MuriloAmarals@users.noreply.github.com>
Co-authored-by: Matheus Benini Ferreira <88898100+MatheusBeniniF@users.noreply.github.com>
Co-authored-by: MuriloAmarals <muralha2000@gmail.com>
Co-authored-by: Rubens Rafael <70234898+RubensRafael@users.noreply.github.com>
Co-authored-by: Júlio Piubello da Silva Cabral <julio.piubello@gitstart.dev>
2022-09-14 14:55:15 +02:00
GitStart
017b7c7a7f Convert packages/jaeger-ui-components/src/TracePageHeader/SpanGraph/Scrubber.test.js to RTL (#54822)
Co-authored-by: Nitesh Singh <nitesh.singh@gitstart.dev>
Co-authored-by: gitstart <gitstart@users.noreply.github.com>
Co-authored-by: Rafael Toledo <87545086+Toledodev@users.noreply.github.com>
Co-authored-by: Murilo Amaral <87545137+MuriloAmarals@users.noreply.github.com>
Co-authored-by: Matheus Benini Ferreira <88898100+MatheusBeniniF@users.noreply.github.com>
Co-authored-by: Toledodev <rafael.toledo@engenharia.ufjf.br>
Co-authored-by: Rubens Rafael <70234898+RubensRafael@users.noreply.github.com>
Co-authored-by: Júlio Piubello da Silva Cabral <julio.piubello@gitstart.dev>

Co-authored-by: gitstart <gitstart@users.noreply.github.com>
Co-authored-by: Nitesh Singh <nitesh.singh@gitstart.dev>
Co-authored-by: Rafael Toledo <87545086+Toledodev@users.noreply.github.com>
Co-authored-by: Murilo Amaral <87545137+MuriloAmarals@users.noreply.github.com>
Co-authored-by: Matheus Benini Ferreira <88898100+MatheusBeniniF@users.noreply.github.com>
Co-authored-by: Toledodev <rafael.toledo@engenharia.ufjf.br>
Co-authored-by: Rubens Rafael <70234898+RubensRafael@users.noreply.github.com>
Co-authored-by: Júlio Piubello da Silva Cabral <julio.piubello@gitstart.dev>
2022-09-14 14:40:39 +02:00
Ivan Ortega Alba
bed531f5fb Panel: Disable legends when showLegend is false prior to schema v37 (#55126) 2022-09-14 14:33:03 +02:00
Ivana Huckova
4503e0f417 Loki: Hide sample loki queries from inspector (#55158) 2022-09-14 14:25:25 +02:00
Sonia Aguilar
7a6f452f13 Alerting/fix folder creation dropdown (#54687)
*Refactor FolderPicker to be functional component.

* Add customAdd optional property to FolderPicker so we can add new values in the alert view but keeping the same behaviour in the rest of the ui.

* Add test for being able to add folder when no folders found.
2022-09-14 14:04:36 +02:00
brendamuir
ab774b47fb Docs: create new explore page for concepts (#55161)
* Docs: create new explore page for concepts

* Updates weighting of explore section to appear at top

* Weight for fundamentals page
2022-09-14 12:16:59 +01:00
Karl Persson
d1b9849946 RBAC: Fix background users to include permissions (#55147)
* RBAC: add function to construct background users

* PluginDashboards: Set rbac permissions for user

* Dashboards: use background user constructor
2022-09-14 11:26:05 +02:00
Karl Persson
870929b463 RBAC: Add cache for oss rbac permissions (#55098)
* RBAC: Add cache for oss permissions

* RBAC: include service account actions

* RBAC: revert changes to fetch service account permissions

* Update comment for setting

* RBAC: Disable permission chache for tests
2022-09-14 09:13:10 +02:00
Dimitris Sotirakis
716bdde3f6 CI: Make shellcheck a standalone pipeline (#55082)
* Make shellcheck standalone pipeline

* Run shellcheck on every .sh change

* Change base image

* Trigger on script changes

* Run shellcheck on PRs only
2022-09-14 09:00:06 +03:00
Kevin Minehart
ed5d617cb9 CI: move grabpl verify-drone (#55057)
* move grabpl verify-drone
2022-09-14 08:59:18 +03:00
Adrian Serrano
1366b87b34 Fix download link in macOS install instructions (#55133)
The link was pointing to non-existing `7.3.0-381ff45epre` version.

Updated to point to main download page, as with other platforms.
2022-09-13 15:06:01 -07:00
Ryan McKinley
927d97f1ab SupportSnapshots: Show type icons in table (#55119) 2022-09-13 13:42:19 -07:00
Adela Almasan
446b17f308 Canvas: Reload scene in panel view mode (#55122) 2022-09-13 16:22:29 -04:00
Alexander Weaver
9f45e2e706 Alerting: Fix legacy migration crash when rule name is too long (#55053)
* Extract standardized UID field length to constant

* Extract default length to constant

* Truncate rule names that are too long

* Add tests for name normalization

* Fix whitespace lint error

* Another linter fix

* Empty commit to kick build
2022-09-13 13:53:09 -05:00
Guilherme Caulada
b06eaf66b6 Public Dashboards: Replace simplejson with TimeSettings on dashboard struct (#55047)
* Replace simplejson for TimeSettings on PublicDashboard struct

* Implement xorm conversion interface to TimeSettings

* Fix minor test assertion issue
2022-09-13 13:33:41 -03:00
Ezequiel Victorero
6e99d8bba5 PublicDashboards: Add wait when fetching public dashboard data in e2e… (#55096) 2022-09-13 13:24:50 -03:00
Armand Grillet
b7825ea418 Make brendamuir owner of the Alerting docs (#55117) 2022-09-13 17:49:21 +02:00
Ashley Harrison
bd19a06fa9 Update create/edit playlist pages to work with topnav (#55104) 2022-09-13 16:18:50 +01:00
Oscar Kilhed
e2f5058a7d Chore: update latest.json to 9.1.5 (#55095) 2022-09-13 09:40:38 -04:00
Grot (@grafanabot)
4ff5fe718b ReleaseNotes: Updated changelog and release notes for 9.1.5 (#55091) 2022-09-13 15:14:46 +02:00
Dimitris Sotirakis
9b42cf009a CI: Update build-container image to v1.6.2 (#55083)
* Update build container to v1.6.2

* Update Dockerfile
2022-09-13 15:43:02 +03:00
Ashley Harrison
14d4e0eeca set font-weight correctly (#55074) 2022-09-13 13:34:02 +02:00
Marcus Andersson
c95b530502 DataSource: Adding possibility to hide queries from the inspector (#54892)
* adding the possibility to hide queries when they are executed via the DataSourceWithBackend.query
2022-09-13 13:27:16 +02:00
Laura Fernández
6bc0d97c49 Bar Gauge: fix flip direction when adding data links 2022-09-13 13:13:51 +02:00
Ivana Huckova
e70395f07a Query editor: Allow query editors to create new query (#55028)
* Query editor: Allow query editors to create new query

* Update

* Revert "Update"

This reverts commit d5b79d60dd.
2022-09-13 13:09:31 +02:00
Andreas Gerstmayr
2c622b912a Prometheus: Fix integer overflow in rate interval calculation (#52051)
Affecting only 32-bit architectures.
2022-09-13 12:51:26 +02:00
Dimitris Sotirakis
ac0f5c5556 CI: Add export-version command (#55072)
* Add export-version command

* Fix lint

* 1-line cleanup
2022-09-13 13:26:24 +03:00
Torkel Ödegaard
da001b01f1 TopNav: Section navigation UX (#55012)
* Design tweaks

* Updated

* Fixing unit tests

* Review fixes

* Text primary on active sections, and change home icon to text

* spacing fix

* More fix

* Fixes

* Updates
2022-09-13 12:24:23 +02:00
Ashley Harrison
031c186617 convert AlertRuleList test to RTL (#55045) 2022-09-13 09:29:29 +01:00
Torkel Ödegaard
ab045184e4 PanelMenu: Remove hide legend action as it was showing on all panel types (#54876)
* PanelMenu: Remove hide legend action

* Fix test

* Updated
2022-09-13 10:19:59 +02:00
GitStart
dc1f7cc226 Loki: Rename public/app/plugins/datasource/loki/live_streams_result_transformer.ts file to follow convention (#54919)
Co-authored-by: Nitesh Singh <nitesh.singh@gitstart.dev>
Co-authored-by: gitstart <gitstart@users.noreply.github.com>
Co-authored-by: Murilo Amaral <87545137+MuriloAmarals@users.noreply.github.com>
Co-authored-by: Rafael Toledo <87545086+Toledodev@users.noreply.github.com>
Co-authored-by: Matheus Benini Ferreira <88898100+MatheusBeniniF@users.noreply.github.com>
Co-authored-by: Toledodev <rafael.toledo@engenharia.ufjf.br>
Co-authored-by: Rubens Rafael <70234898+RubensRafael@users.noreply.github.com>
Co-authored-by: Júlio Piubello da Silva Cabral <julio.piubello@gitstart.dev>

Co-authored-by: gitstart <gitstart@users.noreply.github.com>
Co-authored-by: Nitesh Singh <nitesh.singh@gitstart.dev>
Co-authored-by: Murilo Amaral <87545137+MuriloAmarals@users.noreply.github.com>
Co-authored-by: Rafael Toledo <87545086+Toledodev@users.noreply.github.com>
Co-authored-by: Matheus Benini Ferreira <88898100+MatheusBeniniF@users.noreply.github.com>
Co-authored-by: Toledodev <rafael.toledo@engenharia.ufjf.br>
Co-authored-by: Rubens Rafael <70234898+RubensRafael@users.noreply.github.com>
Co-authored-by: Júlio Piubello da Silva Cabral <julio.piubello@gitstart.dev>
2022-09-13 10:16:04 +02:00
Matias Chomicki
c5223f7bf1 Loki: Update Query Variable docs (#54909)
* feat(loki-query-variable-editor): update docs

* Chore: fix typo in updated docs

* Chore: improve redaction

Co-authored-by: Kim Nylander <104772500+knylander-grafana@users.noreply.github.com>

Co-authored-by: Kim Nylander <104772500+knylander-grafana@users.noreply.github.com>
2022-09-13 08:04:33 +00:00
Artur Wierzbicki
e19f36649f Storage: Content root storage (#54929)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2022-09-12 18:34:46 -04:00
Adela Almasan
89d94eeab2 Canvas: Refine element duplication (#55050) 2022-09-12 14:33:08 -05:00
Kevin Minehart
d3af3e0431 CI: Move grabpl publish-metrics (#55042)
* move grabpl publish-metrics

* grabpl -> ./bin/build

* fix lint error
2022-09-12 13:28:08 -05:00
Torkel Ödegaard
d59bb1e4c2 IconName: Move to grafana/data and use type on NavModelItem (#55013)
* IconName: Allow strings

* Moving to grafana/data and adding type to NavModelItem

* Removed any type

* ts fix
2022-09-12 20:09:33 +02:00
Victor Marin
64869e3d90 Fix StateTimeline zoom function (#55033) 2022-09-12 18:45:31 +02:00
Matias Chomicki
445e1b3eae Loki: add missing interpolation to metric find query requests (#54979)
* feat(loki-variable-query-support): refactor datasource to support legacy and new variable query format

* Chore: fix comment

* Chore: use internal method to interpolate strings

* Chore: revert removed changes

* Chore: update test
2022-09-12 17:48:04 +02:00
Alexa V
18310785a1 Chore: Fix ShellCheck issue in the local a11y report (#55036) 2022-09-12 16:54:06 +02:00
Ashley Harrison
b90260b3ae Chore: convert LogRowContextProvider tests to RTL (#55031)
* convert LogRowContextProvider tests to RTL

* remove act
2022-09-12 15:00:09 +01:00
Torkel Ödegaard
49bc70c812 TopNav: Panel edit changes (#54746)
* Progress

* Progress

* Things are working

* More tweaks

* Fixing unit test

* Tweaks and fixing e2e tests

* Remove ... in Save as

* Fixing unit test

* Fixing e2e test

* Fixes

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-09-12 15:45:14 +02:00
Ashley Harrison
4c3e08db91 Chore: Convert ShareLink tests to RTL (#55026)
* Convert ShareLink tests to RTL

* use findByRole instead of findByLabelText to be more robust
2022-09-12 14:34:06 +01:00
kay delaney
f578adfede PluginLoader: Alias slate-react as @grafana/slate-react (#55027) 2022-09-12 09:22:01 -04:00
Alexa V
493a2c8e15 A11y: Add Dashboard Settings to Pa11y CI and Refactor local a11y report (#54476) 2022-09-12 15:14:45 +02:00
Torkel Ödegaard
7198fbaf47 AppChrome: Fix unmount on full page reload (#54897)
* AppChrome: Fix unmount on full page reload

* fix flickering on login page

* Changed logic a bit
2022-09-12 15:11:57 +02:00
Joey Tawadrous
be5369d6fa Traces: More visible span colors (#54513)
* Use colors array from position 0 for span colors

* Update/add tests

* Use service name hex to get color

* getTheme

* Only add colors that have a contrast ratio >= 3 for the current theme

* Add new tests
2022-09-12 13:20:10 +01:00
Erik Sundell
ab72d47850 Cloudwatch: Fix annotation query serialization issue (#54884)
* pass period as string and let backend handle conversion

* adding unit test

* adding unit test
2022-09-12 13:29:55 +02:00
Gustavo Santos
698a4fab26 GrafanaUI: Add required behavior to Inline Field (#54867) 2022-09-12 12:29:23 +01:00
Orlando Ortega Jr
28619d7a55 Chore: Added controls to IconButton & renamed Simple story to Examples (#54371) 2022-09-12 12:03:25 +01:00
Ashley Harrison
58e17f8144 CustomScrollbar: Add optional scroll indicators to CustomScrollbar (#54705)
* Add general scroll indicator behaviour to CustomScrollbar

* Extract ScrollIndicators logic into it's own file

* add scroll indicators to MegaMenu
2022-09-12 11:18:45 +01:00
Adam Simpson
879ee82b83 AzureMonitor: Fix custom namespaces (#54937) 2022-09-12 12:10:51 +02:00
Domas
b5c67fe0dd Frontend logging: handle logging endpoints without expensive middleware (#54960) 2022-09-12 13:04:43 +03:00
Emil Tullstedt
b287047052 Chore: Upgrade Go to 1.19.1 (#54902)
* WIP

* Set public_suffix to a pre Ruby 2.6 version

* we don't need to install python

* Stretch->Buster

* Bump versions in lib.star

* Manually update linter

Sort of messy, but the .mod-file need to contain all dependencies that
use 1.16+ features, otherwise they're assumed to be compiled with
-lang=go1.16 and cannot access generics et al.

Bingo doesn't seem to understand that, but it's possible to manually
update things to get Bingo happy.

* undo reformatting

* Various lint improvements

* More from the linter

* goimports -w ./pkg/

* Disable gocritic

* Add/modify linter exceptions

* lint + flatten nested list

Go 1.19 doesn't support nested lists, and there wasn't an obvious workaround.
https://go.dev/doc/comment#lists
2022-09-12 12:03:49 +02:00
Gábor Farkas
5388dc6a2f devenv: elastic: new version (#54841) 2022-09-12 11:48:39 +02:00
Alex Khomenko
8aa80078cd LoginLayout: allow providing custom branding (#54787)
* Branding: Customise values

* Branding: Customise loginLogo

* Branding: Add settings type

* Branding: Allow empty subtitle

* Branding: Allow custom footer links

* Branding: Allow empty subtitle
2022-09-12 12:24:45 +03:00
Ashley Harrison
cc5f8b9180 bump eslint sdk (#54968) 2022-09-12 10:00:09 +01:00
Carl Bergquist
72ae4a5aa3 toggles: add feature toggle to increase in mem caching (#55014)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
2022-09-12 03:50:54 -04:00
Gábor Farkas
7c4c2fb341 codeowners: assign logs-devenvs to logs-squad (#54842) 2022-09-12 09:41:08 +02:00
Sofia Papagiannaki
b157fcdd87 Chore: fix formating for swagger definitions (#54993) 2022-09-12 10:40:35 +03:00
Leon Sorokin
7979463bbf PanelOptions: fix timezones editor save key (#55009) 2022-09-10 09:25:27 -07:00
Ryan McKinley
4125dd57ee Panels: Add panel debug support helper (#54678) 2022-09-09 14:35:52 -07:00
Ryan McKinley
c49c238974 Snapshots: Use the grafana datasource to render snapshot (#54870) 2022-09-09 13:16:24 -07:00
Leon Sorokin
dbb33eaba9 DataFrameJSON: add string enums inflation of field values (#54938)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2022-09-09 13:59:29 -06:00
Adela Almasan
b08f839c4d Geomap: Map control options e2e (#54809) 2022-09-09 15:56:35 -04:00
Christopher Moyer
b6237a43e6 adds section shortcode, adjust topic titles (#55000) 2022-09-09 14:44:19 -05:00
Andre Pereira
c776131929 [Tempo] - Random API response and other improvements (#54905)
* Moved the SearchResponse type to types.ts.
Created a mockSearchResponse function to generate search responses.

* Generate spans in mocked response. Extend results table to accomodate spans

* Show the first spanset attributes in the table

* Added a shortcut to run the query in TraceQL editor. Added a label and link to docs above the editor

* Improved autocomplete list sorting. Improved value regex.

* Rename column to "Span"

* Tests are great!
2022-09-09 19:00:35 +01:00
Jean-Philippe Quéméner
bc4d929c67 Alerting: remove interpolation of annotations from alert rule file provisioning (#54975) 2022-09-09 18:47:54 +02:00
Misi
c5be9605a2 Chore: Use TimeNow instead of time.Now in user sql store to make it testable (#54983) 2022-09-09 18:43:14 +02:00
Leo
d5e28426ee hide overflow content for single left pane (#54882) 2022-09-09 18:01:30 +02:00
Joe Blubaugh
22c937340e Revert "Alerting: Write and Delete multiple alert instances. (#54072)" (#54885)
This reverts commit 5e4fd94413.
2022-09-09 17:44:06 +02:00
Leo
380fd45b04 Chore: update latest.json to 9.1.4 (#54992) 2022-09-09 15:22:48 +00:00
kay delaney
4c7732ad17 Chore: Upgrade Typescript to 4.8.2 (#54901)
* Chore: Upgrade typescript to 4.8.2
2022-09-09 16:17:58 +01:00
Ashley Harrison
4866898529 make sure AppRoot is lazily loaded (#54954) 2022-09-09 16:09:34 +01:00
Grot (@grafanabot)
1a285d2d0e ReleaseNotes: Updated changelog and release notes for 9.1.4 (#54987) 2022-09-09 16:41:49 +02:00
renovate[bot]
62ef9fb04c Update dependency prismjs to v1.29.0 (#54976)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-09 15:18:20 +01:00
Giordano Ricci
f0ec5961a4 fix: restore data source edit page access (#54973) 2022-09-09 09:50:56 -04:00
Tima Gixe
0598ff3743 Storybook: Add controls to CollapsableSection story (#54943) 2022-09-09 14:40:27 +01:00
Christopher Moyer
7147d17567 Docs/refactors variables topics (#54470)
* refactor and partial relref fix

* finishes variables refactor

* Update docs/sources/variables/add-template-variables/index.md

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

* removes duplicate general options, adds links to general options within tasks

* adds configure variable selection options topic

* starts phase II of refactoring

* incorporates feedback, updates relrefs

* corrects final relrefs

* updates alias

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2022-09-09 08:38:17 -05:00
renovate[bot]
b382c7ac1d Update dependency marked to v4.1.0 (#54972)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-09 09:09:32 -04:00
Matias Chomicki
4bed59efb3 Loki Query Variables: Add support to select from existing labels (#54625)
* feat(loki-variable-editor): replace input with select with datasource labels

* feat(loki-variable-editor): update test

* feat(loki-variable-editor): allow the editor to receive an existing query instance and edit it

* feat(loki-variable-editor): allow custom values in the label select

* feat(loki-variable-editor): mark stream field as optional

* feat(loki-variable-editor): add placeholder to stream selector and extend tooltip info
2022-09-09 08:59:07 -04:00
Tima Gixe
7104d90b39 Storybook: Add controls to FieldSet story (#54964) 2022-09-09 15:23:50 +03:00
Erik Sundell
a37fa758a2 CloudWatch: Fix display name of metric and namespace (#54860)
* convert value to option

* add unit test

* fix lint issue
2022-09-09 14:15:32 +02:00
renovate[bot]
34e06dbe18 Update dependency lru-cache to v7.14.0 (#54967)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-09 12:14:28 +00:00
renovate[bot]
1054ec2795 Update dependency eslint to v8.23.0 (#54951)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-09 12:57:07 +01:00
Hamas Shafiq
5169e79577 Chore: Add a README for Traces in the Plugins section (#54903) 2022-09-09 12:56:05 +01:00
Virginia Cepeda
d3a70de962 Alerting: Use original query time range when duplicating a query (#54805)
* Use original query time range when duplicating it

If there's no time range, then assign a default one

* Add tests

* Import default relative time range from common lib
2022-09-09 08:34:38 -03:00
Seyaji
096fc76e23 Chore: Convert TimelineHeaderRow to RTL (#51390)
* update data-testids

* update data-testids

* Convert TimelineHeaderRow test to RTL

* update data-testids

* Convert TimelineHeaderRow test to RTL

* Convert TimelineHeaderRow test to RTL

* modify TraceView test

* revert test

* Update packages/jaeger-ui-components/src/TraceTimelineViewer/TimelineRow.tsx

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

* Ran yarn betterer

* update selector

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
Co-authored-by: Hamas Shafiq <hamas.shafiq@grafana.com>
2022-09-09 06:44:05 -04:00
Tima Gixe
6b2ff6f25b Storybook: Add controls to LoadingPlaceholder story (#54939) 2022-09-09 13:35:41 +03:00
Tima Gixe
76f0037654 Storybook: Add controls to PanelChrome story (#54741) 2022-09-09 11:08:46 +01:00
Sven Grossmann
20b07fae6f fix bug in loki's adhoc filters (#54920) 2022-09-09 12:04:51 +02:00
Ashley Harrison
a861c10f1b Navigation: Integrate search into topnav (#54925)
* behaviour mostly there

* slight performance improvement

* slightly nicer...

* refactor search and add it to the store

* add comments about removing old component

* remove unneeded logic

* small design tweak

* More small tweaks

* Restore top margin

* add onCloseSearch/onSelectSearchItem to useSearchQuery

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2022-09-09 11:01:31 +01:00
renovate[bot]
ad19f018a9 Update dependency esbuild to v0.15.7 (#54928)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-09 10:56:49 +01:00
renovate[bot]
75c46885ca Update dependency @visx/shape to v2.12.2 (#54851)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-09 10:20:44 +01:00
Nicholas Wiersma
faf8eb3afb JWT: Allow conventional bearer token in Authorization header (#54821)
* fix: allow JWT to accept standard bearer token

* fix: linter issues

* fix: linter gosec false positive

* fix: refactor logic into JWT handler

* fix: move bearer trimming earlier
2022-09-09 11:05:58 +02:00
Andres Martinez Gotor
366129c14e AzureMonitor: Fix metric namespace list (#54826) 2022-09-09 10:17:10 +02:00
Jean-Philippe Quéméner
d88f1c8e35 Alerting: validate am config changes before persisting (#54908) 2022-09-09 10:05:52 +02:00
Gabriel MABILLE
101349fe49 RBAC: Add permissions to install and configure plugins (#51829)
* RBAC: Allow app plugins restriction

Co-authored-by: Kalle Persson <kalle.persson@grafana.com>

* Moving declaration to HttpServer

Co-Authored-By: marefr <marcus.efraimsson@gmail.com>

* Picking changes from the other branch

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

* Rename plugins.settings to plugins

Co-authored-by: Kalle Persson <kalle.persson@grafana.com>

* Account for PluginAdminExternalManageEnabled

Co-authored-by: Will Browne <will.browne@grafana.com>

* Set metadata on instantiation

Co-authored-by: Jguer <joao.guerreiro@grafana.com>

Co-authored-by: Kalle Persson <kalle.persson@grafana.com>
Co-authored-by: marefr <marcus.efraimsson@gmail.com>
Co-authored-by: Alexander Zobnin <alexanderzobnin@gmail.com>
Co-authored-by: Will Browne <will.browne@grafana.com>
Co-authored-by: Jguer <joao.guerreiro@grafana.com>
2022-09-09 09:44:50 +02:00
Dimitris Sotirakis
8c081d4523 Remove gen-version from windows pipelines (#54941) 2022-09-09 03:22:38 -04:00
Karl Persson
bcd7afd1f5 RBAC: Remove service dependency in Evaluator component (#54910)
* RBAC: Remove service dependency for Evaluator component

* RBAC: Add service and load permissions in target org if they are not
there

* RBAC: Use service if we need to load permissions for org

* API: remove service injection into evaluator

* API: set new user for each request in tests

* PublicDashboards: Use fake service to provide permissions

* RBAC: Set org id for dashboard provisioning user
2022-09-09 09:07:45 +02:00
Dimitris Sotirakis
e277ab0017 CI: Call for Grafana version on demand - remove need for version.json (#54638)
* Remove need for version.json

* Fix lint

* log.Info -> fmt.Print

* Add back tests

* Remove non-used file

* Fix lint

* Update grabpl version to v3.0.6
2022-09-09 02:35:10 -04:00
Guilherme Caulada
942be4215a Secrets: Improve error handling for secrets manager plugin (#54811)
* Improve error handling for secrets manager plugin

* Update sever lock log for secret migration to Error

* Move plugin started check to a separate function

* Fix nil pointer exception on HasPluginStarted
2022-09-08 17:26:47 -03:00
Torkel Ödegaard
f5fd9029ea DebugSnapshot: Change to use exisiting localstorage prop and open in new tab (#54877)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2022-09-08 11:20:56 -07:00
Leon Sorokin
085db83cd9 DisplayProcessor: Handle reverse-ordered data when auto-showing millis (#54923) 2022-09-08 12:49:03 -05:00
Leon Sorokin
eb90d0c4b5 TimeSeries: Support for log scale and negative numbers (#54812) 2022-09-08 11:52:57 -05:00
renovate[bot]
6a7e1caced Update dependency core-js to v3.25.1 (#54915)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-08 17:46:16 +01:00
Polina Boneva
2f16c27e35 Docs: Mention queryparam function (#54526)
* Update data-link-variables.md

Add queryparam function and tables of output to match the other listed variables

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

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>

* Add r4j4h's suggestions to the new documentation space with some partial changes to the wording

* Add r4j4h's suggestions to the new documentation space with some partial changes to the wording

* mockery generated code as it is on main

* simplify changes in docs and go straight to the point

Co-authored-by: Jasmine Hegman <jasmine@jhegman.com>
Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
2022-09-08 17:14:37 +03:00
renovate[bot]
8f0473aa3e Update dependency @rushstack/node-core-library to v3.51.1 (#54835)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-08 15:14:18 +01:00
Christopher Moyer
e15c8cf535 Docs: moves reporting docs per customer request (#54591)
* moves reporting docs per customer request

* corrects relrefs

* adjusts link and menutitle

* corrects typo

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2022-09-08 08:55:57 -05:00
Christopher Moyer
f516b8c5d8 restructures user management docs (#54871) 2022-09-08 08:51:34 -05:00
Jean-Philippe Quéméner
e41f78a56d Alerting: make sure to update contact point references when updating (#54896) 2022-09-08 15:20:52 +02:00
Domas
9dd4eab553 ignore non-actionable errors in grafana agent (#54824) 2022-09-08 16:19:38 +03:00
Laura Fernández
c684babecc A11y: Make tooltip dismissible in Toolbar and Icon buttons (#54586) 2022-09-08 14:32:50 +02:00
GitStart
e9243f8a38 Loki: Rename public/app/plugins/datasource/loki/language_provider.ts file to follow convention (#54819) 2022-09-08 14:32:32 +02:00
Ezequiel Victorero
76edf1a727 PublicDashboards: Fix flaky e2e test (#54864) 2022-09-08 09:18:40 -03:00
Tima Gixe
8fb0d3421b Storybook: Add controls to UnitPicker (#54694) 2022-09-08 13:16:27 +01:00
Shirley
bdd0af0645 Build: Refactor cron_job_pipeline to take the cron name as a parameter (#54899) 2022-09-08 13:36:36 +02:00
Konrad Lalik
933ec4817f Alerting: Change the rule yaml data to reflect Prom-based rule format (#54520) 2022-09-08 12:52:36 +02:00
Jo
ef245874da OAuth: Allow assigning Server Admin (#54780)
* extract errors to errors file

* implement oauth server admin assignment

* add server admin tests

* deduplicate autoAssignOrgRole

* deduplicate strict setting

* deduplicate strict setting

* add support for generic oauth

* add role attribute strict support for generic oauth

* add support for github/gitlab

* assignGrafanaAdmin option is here to stay

* unify similar errors

* add config option

* add okta server admin mapping

* remove never used Company attribute

* unify generic oauth role extract with other methods

* case insensitive role match as in azure

* add ini settings

* add server admin to devenv

* remove duplicate fields

* add documentation to oauth

* fix titlecase test

* implement doc feedback
2022-09-08 06:11:00 -04:00
Artur Wierzbicki
1353177e15 Search: Add substring matcher (#54813)
* search: bring back substring search

* lint fix

* search: bring back ngram

* search: bring back ngram

* search: more tests
2022-09-08 12:10:30 +02:00
Carl Bergquist
b4e3c89f60 instrumentation: dont instrument ErrSkip at all (#54880)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
2022-09-08 11:14:55 +02:00
Sven Grossmann
78a3f1fcea Chore: Upgrade @grafana/lezer-logql to 0.1.0 (#54878) 2022-09-08 10:29:58 +02:00
Joe Blubaugh
a101d127cb CI: Update Drone MySQL version to 5.7.39 to match database policy. (#54612)
The supported database policy is listed at: https://grafana.com/docs/grafana/latest/setup-grafana/installation/#supported-databases
2022-09-08 15:03:02 +08:00
Ezequiel Victorero
bcab0194f1 PublicDashboards: disable form if user does not has permissions (#54853) 2022-09-07 18:29:01 -03:00
matt abrams
9c88360ec5 change no-new-info label action (#54501) 2022-09-07 14:37:42 -05:00
Adela Almasan
5a3ae293cf Geomap: Layer types e2e (#54666) 2022-09-07 13:29:03 -05:00
Christopher Moyer
5b830e131e adjusts access control directory structure (#54865) 2022-09-07 13:27:32 -05:00
owensmallwood
108678a8cc Public Dashboards: Only use queries from dashboard for caching (#54596)
Don't accept frontend queries for query caching when its from a public dashboard. Use queries on the dashboard instead.
2022-09-07 12:08:52 -06:00
Leon Sorokin
4223d3a6a7 Heatmap: Add option to reverse color scheme (#54365) 2022-09-07 11:09:44 -05:00
Matthew Jacobson
940d18ad57 Alerting: Sanitize invalid label/annotation names for external alertmanagers (#54537)
* Alerting: Sanitize invalid label/annotation names for external alertmanagers

Grafana's built-in Alertmanager supports both Unicode label keys and values; however, if using an external
Prometheus Alertmanager label keys must be compatible with their data model.
This means label keys must only contain ASCII letters, numbers, as well as underscores and match the regex
`[a-zA-Z_][a-zA-Z0-9_]*`.

Any invalid characters will now be removed or replaced by the Grafana alerting engine before being sent to
the external Alertmanager according to the following rules:

- `Whitespace` will be removed.
- `ASCII characters` will be replaced with `_`.
- `All other characters` will be replaced with their lower-case hex representation.

* Prefix hex replacements with `0x`

* Refactor for clarity

* Apply suggestions from code review

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2022-09-07 11:39:39 -04:00
Leon Sorokin
75de42fba7 BarChart: fix stale colorByField being used in value mappings (#54820) 2022-09-07 08:31:31 -06:00
Alexander Weaver
b193eaed6e Alerting: Resetting the notification policy tree to the default policy will also restore default contact points (#54608)
* Add test that resetting the route restores the default receiver

* Return error instead of panic

* Adjust error string to match styleguide
2022-09-07 09:28:10 -05:00
Ashley Harrison
8e8d0a08f9 reobserve elements when children change (#54827) 2022-09-07 15:07:35 +01:00
Hamas Shafiq
762432a921 Chore: Add a README for the Node Graph plugin (#54801) 2022-09-07 14:52:55 +01:00
renovate[bot]
04d15b5810 Update dependency @types/webpack-env to v1.18.0 (#54839)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-07 14:51:36 +01:00
Gustavo Santos
968e2218ac Chore: Add controls to InlineField (#54674) 2022-09-07 14:24:38 +01:00
majordookie
35751b2ab4 Fix typo (#54681) 2022-09-07 15:40:52 +03:00
mhuangwm
39102c6656 Admin: Add support to configure default admin email (#54363) 2022-09-07 14:38:40 +02:00
Gábor Farkas
687b0b1726 elastic: explain why moving_avg is 7.x only (#54840) 2022-09-07 14:31:11 +02:00
Gustavo Santos
c56907b879 Add controls for Date Picker story (#54806)
Signed-off-by: gefgu <gefgu@hotmail.com>

Signed-off-by: gefgu <gefgu@hotmail.com>
2022-09-07 15:30:46 +03:00
Dimitris Sotirakis
8e577ce9fa CI: Trigger *-storybook steps on UI changes (#54833)
* No-op, small starlark refactoring

* Make build and store storybook steps execute on ui changes
2022-09-07 15:08:13 +03:00
Nicholas Wiersma
9e704fec3c JWT: Add support for assigning org roles (#54277)
* feat: allow jwt role to be set

* chore: update documentation

* fix: cr suggestions

* fix: lint issues

* respect org auto assign and default org ID

* add server admin to devenv

Co-authored-by: jguer <joao.guerreiro@grafana.com>
2022-09-07 14:00:33 +02:00
Ashley Harrison
4825707853 Add basic unit tests for landing pages (#54696) 2022-09-07 12:40:53 +01:00
renovate[bot]
e22ed6b720 Update dependency @types/ol-ext to v2.3.0 (#54836)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-07 11:42:29 +01:00
renovate[bot]
84212d8746 Update babel monorepo to v7.19.0 (#54756)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-07 09:57:22 +01:00
renovate[bot]
bccf8e139e Update dependency @react-types/shared to v3.14.1 (#54830)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-07 09:55:08 +01:00
Matias Chomicki
c0b3cd3da0 refactor(loki-derived-fields): migrate test to testing library (#54729) 2022-09-07 08:54:28 +00:00
linoman
0324e9c60e Fix paths for auth/ build and volume paths (#54828) 2022-09-07 10:53:58 +02:00
renovate[bot]
86e432f25b Update dependency @react-types/menu to v3.7.1 (#54825)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-07 09:39:20 +01:00
Ashley Harrison
66ce33bc5b make Browse the root item of Dashboards when topnav is enabled (#54782) 2022-09-07 09:24:10 +01:00
renovate[bot]
ebf24da028 Update dependency @react-types/button to v3.6.1 (#54797)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-07 09:06:46 +01:00
Adela Almasan
3864de9425 Geomap: Cleanup GeomapPanel component (#54538) 2022-09-06 21:22:34 -04:00
Christopher Moyer
cdc2200273 restructures aws marketplace docs (#54810) 2022-09-06 16:47:47 -05:00
Leon Sorokin
bf052cb35e TimeSeries: omit non-integer y ticks when decimals: 0 (#54679) 2022-09-06 16:12:09 -04:00
Alexander Weaver
b8d1474609 Fix incorrect propagation of org ID in rule endpionts (#54603) 2022-09-06 14:51:54 -05:00
Guilherme Caulada
20589f76f4 Secrets: Convert secret migration to a background service (#54676)
* Convert secret migration to a background service

* Fix merge conflicts

* Return concrete type for secret migration provider
2022-09-06 16:21:25 -03:00
Christopher Moyer
0f549a44b0 changes _index files to index, adds aliases (#54804) 2022-09-06 12:58:07 -05:00
Kevin Minehart
1169f14d47 CI: move grabpl build-frontend-packages from grabpl to grafana (#53072)
* move grabpl build-frontend-packages

* add frontend and lerna packages

* grabpl build-frontend-packages -> ./bin/build build-frontend-packages

* move getgrafanaversion

* add noinstalldeps flag

* fix compiler error

* fix lint error

* add missing flags
2022-09-06 20:09:08 +03:00
Torkel Ödegaard
e5c32c8cc9 Dashboard: Unsaved changes warning fixes (#54706)
* Quick test of alternative method

* change order of if condition again for better readability

* Think I have something that is working

* Update
2022-09-06 13:00:32 -04:00
Joao Silva
ab79976a8d Navigation: Adds profile menu to top nav bar (#54720) 2022-09-06 17:32:05 +01:00
renovate[bot]
9cc828a00e Update dependency @react-stately/menu to v3.4.1 (#54784)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-06 17:23:16 +01:00
Ilya Galimyanov
b593d371ef Alerting: Telegram: truncate long messages (#54339)
Truncate messages longer than 4096 characters
2022-09-06 16:47:04 +01:00
Ashley Harrison
a4566eaf32 add unit tests for buildBreadcrumbs (#54785) 2022-09-06 16:43:59 +01:00
Laura Fernández
066710a7bc Navigation: use navId and pageNav on Alerting - Contact Points page (#54451) 2022-09-06 16:25:07 +02:00
kay delaney
a70aba1384 Chore: Update slate and related packages (#54566)
* Chore: Update slate and related packages
2022-09-06 15:23:48 +01:00
ismail simsek
9c6a6ca487 graphite and opentsdb integration tests (#54733) 2022-09-06 17:19:04 +03:00
Tima Gixe
ce1221cd59 Storybook: Add controls to InlineLabel story (#54604) 2022-09-06 15:18:38 +01:00
Tima Gixe
05c16d1da3 Storybook: Add controls to QueryField story (#54606) 2022-09-06 15:18:08 +01:00
linoman
c915cb2d5c Update auth/jwt_proxy and auth/oauth reference (#54781) 2022-09-06 15:46:01 +02:00
Matias Chomicki
baffc3d948 fix(elasticsearch): remove deprecated elastic versions (#54632)
* fix(elasticsearch): remove deprecated elastic versions

* fix(elasticsearch): make 8 the default and fallback version
2022-09-06 09:42:39 -04:00
renovate[bot]
7a01186324 Update dependency @react-aria/overlays to v3.10.1 (#54763)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-06 14:37:32 +01:00
Sofia Papagiannaki
e57fd88644 Swagger: restore missing enterprise endpoints (#54765) 2022-09-06 16:26:55 +03:00
Will Browne
15756ecf86 remove unused cfg (#54770) 2022-09-06 08:59:28 -04:00
Matias Chomicki
5767c01a79 Elasticsearch: fix types in test and add mock factory (#54582)
* refactor(elastic-test): add datasource mock factory

* refactor(elastic-test): use new factory and attempt to fix some type issues

* refactor(elastic-test): type fixes

* refactor(elastic-test): update test with mock changes

* refactor(elastic-test): remove commented code

Git history should be more than enough to go back to previous revisions instead of keeping commented code.

* refactor(elastic-test): use mock factory and fix type issues in language provider test

* Chore: rename mock parameter

* Chore: remove unnecessary conditional

* Chore: remove ts-expect-error
2022-09-06 14:35:54 +02:00
linoman
638fb5dc6d Fix docker compose for openldap and oauth (#54745)
* Fix reference for `openldap` block

* Fix volume reference for `oauth` block
2022-09-06 14:22:03 +02:00
Oscar Kilhed
661ac46e6c Chore: update latest.json to 9.1.3 (#54764) 2022-09-06 07:22:04 -04:00
renovate[bot]
3847e09750 Update dependency @react-aria/interactions to v3.11.0 (#54761)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-06 12:05:43 +01:00
Grot (@grafanabot)
fe848e93b3 ReleaseNotes: Updated changelog and release notes for 9.1.3 (#54759) 2022-09-06 12:54:58 +02:00
renovate[bot]
a36ef9cdfd Update dependency @react-aria/focus to v3.8.0 (#54718)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-06 11:50:44 +01:00
Laura Fernández
8ae6cf6b99 Navigation: add breadcrumbs in Explore page (#54547) 2022-09-06 12:11:00 +02:00
renovate[bot]
0e16456602 Update dependency @react-aria/dialog to v3.3.1 (#54717)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-06 11:07:26 +01:00
Hamas Shafiq
7779ae315b Chore: Use the DEFAULT_LIMIT variable for the default value of the TraceQL Limit field (#54723) 2022-09-06 10:02:37 +01:00
Josh Hunt
139705611a Chore: Remove remaining IconName type assertions (#54658)
* Chore: Remove remaining IconName type assertions

* fix lints
2022-09-06 09:15:36 +01:00
George Robinson
77e53f9986 Alerting: Fix boolean comparison on PostgreSQL (#54730) 2022-09-06 08:28:42 +01:00
Ryan McKinley
ac93cf1db2 Playlists: Migrate to UIDs and load dashboards in the frontend (#54125) 2022-09-05 20:40:01 -07:00
ismail simsek
3ea9ece16e Update graphite datasource testing query (#54635)
* Provide from and to parameters when testing the datasource

* Strongly typed test datasource query
2022-09-05 20:59:44 +02:00
George Robinson
c4d32dd687 Fix nil logger in SqlStore (#54726) 2022-09-05 18:24:19 +01:00
GitStart
d5d7e920a0 Loki: Remove any from public/app/plugins/datasource/loki/components/LokiOptionFields.test.tsx (#54239) 2022-09-05 18:25:12 +02:00
Karl Persson
ff35e35ce0 RBAC: Move service and evaluator to acimpl package (#54714)
* RBAC: Move access control evaluator to acimpl package

* RBAC: Move service to acimpl package
2022-09-05 18:15:47 +02:00
Gareth Dawson
73eb1f047a Loki/Prometheus: Make sections in log/metrics browser resizable (#54704)
* Make loki label browser resizable

* Make prometheus metric browser resizable

* Remove min-width from Label and Metrics browser

* Remove max-width from Prometheus Metrics Browser
2022-09-05 17:03:03 +01:00
GitStart
69f3e48962 Panel Header: Description tooltip expand to fit large elements (#54238)
Co-authored-by: Nitesh Singh <nitesh.singh@gitstart.dev>
Co-authored-by: Rafael Toledo <87545086+Toledodev@users.noreply.github.com>
Co-authored-by: Júlio Piubello da Silva Cabral <julio.piubello@gitstart.dev>
Co-authored-by: Toledodev <rafael.toledo@engenharia.ufjf.br>
Co-authored-by: juliopiubello <juliopiubellow@gmail.com>
Co-authored-by: Rubens Rafael <70234898+RubensRafael@users.noreply.github.com>
2022-09-05 17:54:24 +02:00
Orlando Ortega Jr
042fbcc609 Chore: Added controls to ContextMenu story (#54373) 2022-09-05 16:43:02 +01:00
Kevin Yu
34fe7a1119 Plugins: Add feature toggles for long running queries (#54349)
* Add feature toggles for long running queries

* update feature flag name

* make feature toggle frontend only
2022-09-05 08:39:45 -07:00
Ezequiel Victorero
bfa35ff8d8 PublicDashboards: Add RBAC to secured endpoints (#54544) 2022-09-05 12:22:39 -03:00
Hamas Shafiq
295c36e4ec Tempo: Move interfaces & TempoQueryType from datasource.ts to types.ts (#54621) 2022-09-05 15:46:10 +01:00
Ivan Ortega Alba
fbfe2b2800 Library Panel: Allow to delete it when disabled or deprecated (#54662) 2022-09-05 16:45:45 +02:00
Hamas Shafiq
413c7c7d99 Tempo: Cache autocomplete values for tags (#54622) 2022-09-05 15:44:44 +01:00
Michael Musenbrock
78833b4a47 Alerting: Display alert's 'Created' time in local time instead of UTC (#54414)
Signed-off-by: Michael Musenbrock <michael.musenbrock@gmail.com>

Signed-off-by: Michael Musenbrock <michael.musenbrock@gmail.com>
2022-09-05 16:36:52 +02:00
Sven Grossmann
a4b86a194d changed lezer-logql version (#54712) 2022-09-05 16:25:26 +02:00
renovate[bot]
67cecef1b7 Update dependency @opentelemetry/api to v1.2.0 (#54669)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-05 15:04:33 +01:00
renovate[bot]
9b9e298896 Update dependency @react-aria/button to v3.6.1 (#54670)
* Update dependency @react-aria/button to v3.6.1

* bump @react-aria/menu at the same time

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-09-05 14:52:56 +01:00
ismail simsek
e912029ad3 influxdb integration tests (#54700) 2022-09-05 15:35:53 +02:00
kay delaney
65c3ad6721 LibraryElements: Fix inability to delete library panels under MySQL (#54600)
Closes #53456
2022-09-05 14:28:32 +01:00
Sofia Papagiannaki
950715b255 API: Do not expose user input in datasource error responses (#53483) 2022-09-05 16:10:45 +03:00
Torkel Ödegaard
11de1dfe40 TopNav: Plugin page layouts / information architecture (#53174)
* Change nav structure when topnav is enable to do initial tests with new information architecture

* Support for nested sections

* Updated

* sentance case

* Progress on plugin challange

* Rewrite to functional component

* Progress

* Updates

* Progress

* Progress on things

* missing file

* Fixing issue with runtime, need to use setter way to set component exposed via runtime

* Move PageLayoutType to grafana/data

* Fixing breadcrumb issue, adding more tests

* reverted backend change

* fix recursive issue with cleanup
2022-09-05 14:56:08 +02:00
Ashley Harrison
a423c7f22e Add scrolling to SectionNav (#54698) 2022-09-05 12:39:54 +01:00
Victor Marin
aee13563ce Fix StateTimeline duration bug + add hidden tooltip option (#54697) 2022-09-05 14:11:06 +03:00
Ashley Harrison
8d489dfd9b Navigation: Landing pages behind feature toggles (#54576)
* super quick attempt

* feature toggle everything

* only construct alertNav if there are navChildren

* fix toggle name

* plugin landing pages poc

* add apps route + put behind feature toggle

* use toIconName

* rename to NavLandingPage

* feature toggle new routes

* don't modify GetServerAdminNode

* some fairly hacky code to check if the plugin has a root page

* remove trailing slash
2022-09-05 10:07:13 +01:00
Victor Marin
6d2352735d XYPanel: Improvements (#54220)
* Fix panel option bugs and make tooltip options work

* Support multiple series in explicit mode. Rename XY/Explicit to Auto/Manual

* Fixes

* Fix

* Legend improvements

* Rewrite Pure Component to Function Component

* Add datalinks support

* Legend fixes and CR modifications

* Fix bugs that crash panel
2022-09-05 11:03:17 +03:00
Jo
4952b7f22d Add JWT url auth documentation (#54040)
* add jwt auth docs

* add appropriate warnings to docs

* remove unimplemented login_token assumptions

* Update conf/sample.ini
2022-09-05 03:46:50 -04:00
Carl Bergquist
78978048c3 Instrumentation: log the total number of db queries per request (#54647)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
Co-authored-by: Dave Henderson <dave.henderson@grafana.com>
2022-09-05 07:39:22 +02:00
Ryan McKinley
7e53bd107c Panels: Add troubleshooting snapshot (#54417) 2022-09-02 15:38:35 -07:00
Adela Almasan
37a0207463 Canvas: Phantom mouse down fix (#54673) 2022-09-02 12:58:49 -07:00
Leon Sorokin
8273839539 Histogram: ensure y axis is unit-less (#54667) 2022-09-02 13:50:01 -05:00
Adela Almasan
aa897e4f40 Chore: Upgrade Moveable to v0.35.4 (#54559)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2022-09-02 11:24:55 -07:00
Drew Slobodnjak
600ea254af Geomap: Fix duplicate layer bug (#54660)
* Geomap: Fix duplicate layer bug

* Remove dependency on name parameter
2022-09-02 10:53:21 -07:00
Adela Almasan
773a453108 Chore: Upgrade Selecto to v1.19.1 (#54598) 2022-09-02 10:41:36 -07:00
Ashley Harrison
0ab548a8b5 Chore: fixing some anys/type assertions (#54661)
* fixing some anys/type assertions

* make types consistent
2022-09-02 16:39:09 +00:00
linoman
d2bb72fb3c Login: Remove single admin team restriction (#54534)
* Remove single member team restriction

* Add label when permissions list is empty

* Fix unit tests

* Add co-author.

Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
2022-09-02 18:16:39 +02:00
Esteban Beltran
4bba3223a0 Grafana/toolkit: Update README.md to include an alternative way to run local grafana/toolkit (#54203)
* Update README.md

* Run prettier
2022-09-02 17:49:39 +02:00
Guilherme Caulada
f4a35a4645 Secrets: Implement secrets manager plugin fallback store (#54496)
* Refactor fallback to be isolated to plugin secret store

* Check for error value on replace fallback test helper

* Move ResetPlugin from test_helpers.go to plugin.go

* Add check to GetUnwrappedStoreFromCache

* Add fallback GetAll query to WithFallbackEnabled

* Add mutex lock to WithFallbackEnabled

* Add cache to fallback store

* Fix linter issues

* Fix linter issues

* Fix linter issues
2022-09-02 12:39:18 -03:00
Josh Hunt
6b197f3fa9 Chore: Use react-highlight-words types (#54627) 2022-09-02 16:36:44 +01:00
Mihály Gyöngyösi
53c095aae7 RBAC: Disable RBACPermissionValidation by default (#54626)
* update conf/provisioning/access-control/sample.yaml
2022-09-02 17:18:01 +02:00
Kevin Minehart
a76ce1f567 CI: move grabpl e2e tests from grabpl to grafana (#53075)
* move grabpl e2e tests
2022-09-02 11:02:10 -04:00
Dimitris Sotirakis
8be3ea269d Default to pull_request events (#54640) 2022-09-02 17:39:05 +03:00
Leon Sorokin
28426219ce TimeSeries: fix padding, force 0-100% y range when % stacked (#54197) 2022-09-02 09:26:04 -05:00
Ashley Harrison
3e8d178fc1 convert LokiQueryEditor test to RTL (#54639) 2022-09-02 15:11:13 +01:00
Ashley Harrison
22e5ee3b52 update LokiExploreQueryEditor test to RTL (#54644) 2022-09-02 14:46:14 +01:00
Ieva
de6584b976 Auth: Extend auth token errors with user ID (#54633)
* add user ID to user token errors

* remove colon

* move user ID to debug log, so it wouldn't accidentally be added in response
2022-09-02 14:38:25 +01:00
ismail simsek
a230439679 Add monaco-editor section in grafana-toolkit faq (#54585)
* Add monaco-editor question in faq section

* Fix typo
2022-09-02 08:30:59 -04:00
Will Browne
ecdcafb258 manager exposes renderer + secrets manager (#54629) 2022-09-02 14:20:10 +02:00
Will Browne
43987e7f8c Plugins: Fix plugin registered startup log line (#54634)
* fix plugin registered log

* remove stale test
2022-09-02 14:01:52 +02:00
Ashley Harrison
11689c0385 convert ConfigEditor test to RTL (#54636) 2022-09-02 12:48:37 +01:00
Hamas Shafiq
21dd60ba60 Tempo: Map the status tag to status.code for autocomplete (#54593) 2022-09-02 11:55:55 +01:00
Josh Hunt
3cf8e9c72e Chore: Remove grafana-ui IconName type assertions (#54623) 2022-09-02 11:31:16 +01:00
Dimitris Sotirakis
4735de6aa4 Run gen-version in windows pipelines (#54624) 2022-09-02 06:27:20 -04:00
Hamas Shafiq
d79830fdd7 Chore: Replace deprecated toPromise() calls with lastValueFrom (#54234) 2022-09-02 11:17:36 +01:00
Kian Eliasi
6e4900dc45 Footer: Add release notes url to version label (#52909)
* Add release note url to footer's version label

* Filter out pre-release versions in release notes link at the footer

* correct links for beta/prerelease release notes

* make all links target blank

* Fix TeamPages test

Co-authored-by: joshhunt <josh@trtr.co>
2022-09-02 06:05:27 -04:00
Jack Westbrook
ffdda9296a Chore: Refresh out of date yarn lock file (#54620) 2022-09-02 11:08:27 +02:00
Jack Westbrook
4179f94959 Fix: Make sure grafana/e2e cypress config file is in correct location (#54588)
* fix(grafana-e2e): make sure cypress can find config file

* chore(yarn): refresh lock file
2022-09-02 10:37:50 +02:00
Joe Blubaugh
5e4fd94413 Alerting: Write and Delete multiple alert instances. (#54072)
Prior to this change, all alert instance writes and deletes happened
individually, in their own database transaction. This change batches up
writes or deletes for a given rule's evaluation loop into a single
transaction before applying it.

Before:
```
goos: darwin
goarch: arm64
pkg: github.com/grafana/grafana/pkg/services/ngalert/store
BenchmarkAlertInstanceOperations-8           398           2991381 ns/op         1133537 B/op      27703 allocs/op
--- BENCH: BenchmarkAlertInstanceOperations-8
    util.go:127: alert definition: {orgID: 1, UID: FovKXiRVzm} with title: "an alert definition FTvFXmRVkz" interval: 60 created
    util.go:127: alert definition: {orgID: 1, UID: foDFXmRVkm} with title: "an alert definition fovFXmRVkz" interval: 60 created
    util.go:127: alert definition: {orgID: 1, UID: VQvFuigVkm} with title: "an alert definition VwDKXmR4kz" interval: 60 created
PASS
ok      github.com/grafana/grafana/pkg/services/ngalert/store   1.619s
```

After:
```
goos: darwin
goarch: arm64
pkg: github.com/grafana/grafana/pkg/services/ngalert/store
BenchmarkAlertInstanceOperations-8          1440            816484 ns/op          352297 B/op       6529 allocs/op
--- BENCH: BenchmarkAlertInstanceOperations-8
    util.go:127: alert definition: {orgID: 1, UID: 302r_igVzm} with title: "an alert definition q0h9lmR4zz" interval: 60 created
    util.go:127: alert definition: {orgID: 1, UID: 71hrlmR4km} with title: "an alert definition nJ29_mR4zz" interval: 60 created
    util.go:127: alert definition: {orgID: 1, UID: Cahr_mR4zm} with title: "an alert definition ja2rlmg4zz" interval: 60 created
PASS
ok      github.com/grafana/grafana/pkg/services/ngalert/store   1.383s
```

So we cut time by about 75% and memory allocations by about 60% when
storing and deleting 100 instances.

This change also updates some of our tests so that they run successfully against postgreSQL - we were using random Int64s, but postgres integers, which our tables use, max out at 2^31-1
2022-09-02 11:17:20 +08:00
Matthew Jacobson
d706320d0a Alerting: Fix UI bug when setting custom notification policy group by (#54607)
Custom values were not being displayed in the multiselect for notification policy `Group by` even though
they were correctly being saved.
2022-09-01 19:06:42 -04:00
Hamas Shafiq
e17c2f1cb5 Tempo: Add an options component under the TraceQL query field (#54435) 2022-09-01 22:49:27 +01:00
Michael Mandrus
39c31416a4 improve log in plugin check (#54599) 2022-09-01 13:47:37 -04:00
Timur Olzhabayev
70802d270e Fix: publish_docs GitHub action needs to be updated after a script that was used there has been removed (#54597) 2022-09-01 16:37:17 +00:00
Timur Olzhabayev
b5b41988cf Docs: Deprecating packages_api and removing it from our pipelines (#54473) 2022-09-01 18:15:44 +02:00
Serge Zaitsev
927ddf9376 Chore: Move login attempt methods to separate service (#54479)
* Chore: Move login attempt methods to separate service

* attempt to fix tests

* fix syntax

* better time mocking

* initialise now func
2022-09-01 18:08:42 +02:00
Victor Marin
d2bdb01092 Fixed tooltip does not change data when hovering over other datapoints (#54517) 2022-09-01 18:57:51 +03:00
Adela Almasan
f35a36b9f1 Chore: Downgrade Selecto to v1.17.0 (#54558) 2022-09-01 10:13:18 -05:00
Dimitris Sotirakis
212f0609eb Check if dist dir exists (#54590) 2022-09-01 10:43:04 -04:00
Andrej Kiripolský
59ba64f29b Dashboard: Fix typos in feedback request sentence (#54429)
* Fix typo in feedback request

* prettier

Co-authored-by: Domas <domasx2@gmail.com>
2022-09-01 09:29:52 -05:00
Murtaza Ahmedi
f6827a0518 Plugins Catalog: Allow to filter plugins using special characters (#54474) 2022-09-01 16:25:25 +02:00
Timur Olzhabayev
f7302149d0 Fix: Adjusting plugin.json schema regex (#54515) 2022-09-01 15:53:38 +02:00
Christopher Moyer
ac12b6d7ff refactors usage insights topics (#54497) 2022-09-01 08:46:21 -05:00
Josh Hunt
fd7a30c0a9 Fix: Restore Grafana and Dashboard data source icons (#54580) 2022-09-01 09:46:06 -04:00
Christopher Moyer
8a23b1fd4f adds video (#54545) 2022-09-01 08:35:58 -05:00
Beto Muniz
29ff97a4b8 Fix create a dashboard from Explorer and edit panel flow (#54551) 2022-09-01 10:18:57 -03:00
Dimitris Sotirakis
7e2238cf6f CI: Generate Grafana version (and metadata) when the build binary is built (#54393)
* Add GenerateVersions as BeforeFunc

* Delete gen-version

* Fix lint

* Get build id from env var
2022-09-01 15:43:40 +03:00
Dominik Prokop
4ec03bad64 Revert 54400 (#54570)
* Revert "Add FocusScope to PanelEditor when open in the Dashboard Page so that a11y focus never catches invisible content. (#54400)"

This reverts commit ef32050508.

* Betterer <3
2022-09-01 05:42:06 -07:00
Josh Hunt
c3633feea8 Chore: Remove Dashboard IconName type assertions (#54573)
* Chore: Remove Dashboard IconName type assertions

* fix lint
2022-09-01 13:26:28 +01:00
Josh Hunt
caa0c91b1c Chore: Remove Nav + story IconName type assertions (#54572)
* Chore: Remove some IconName type assertions

* fix actually importing the function

* fix lint

* fix lint
2022-09-01 13:23:41 +01:00
Julien Duchesne
67f1778bf1 Add package publishing step (#53553)
Issue: https://github.com/grafana/deployment_tools/issues/36289
Based on the new image: https://github.com/grafana/deployment_tools/tree/master/docker/package-publish
This is a new step meant to replace the store-packages command. It will greatly improve publishing performace and it publishes to a common repository shared with all Grafana products

Co-authored-by: dsotirakis <dimitrios.sotirakis@grafana.com>
2022-09-01 07:13:44 -04:00
Karl Persson
be6b8d91eb Correlations: Use correct fallback handlers (#54511)
* Correlations: Use correct fallback handlers

* Add signed in middleware to all routes
2022-09-01 12:29:44 +02:00
Gustavo Santos
822d24c123 Chore: Add controls to Label stories (#54549)
* Add controls for Label's Simple story

* Add controls for Label's Categorised story
2022-09-01 13:03:50 +03:00
Josh Hunt
f15ce633c9 Navigation: Don't round app plugin icon images (#54543)
* Navigation: Don't round app plugin icon images

* round icon
2022-09-01 10:28:50 +01:00
renovate[bot]
7efefbaece Update dependency moment-timezone to v0.5.35 [SECURITY] (#54523)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-01 10:27:39 +01:00
Hamas Shafiq
610952ca8a TestData DB: Fix node graph not showing when the Data type field is set to random (#54298) 2022-09-01 09:53:33 +01:00
Hamas Shafiq
028ba2bf95 Chore: Change JSON file to JSON File for consistency with other tabs (#54453) 2022-09-01 09:09:13 +01:00
Josa Gesell
3b848fd91b Fix a typo on the Manage dashboard links page (#54525) 2022-09-01 08:01:22 +00:00
Sven Grossmann
d31f2889a2 update @grafana/lezer-logql (#54530) 2022-09-01 09:11:55 +02:00
Adela Almasan
565766cca4 selecto version 1.19.0 (#54548) 2022-08-31 16:07:14 -05:00
Kat Yang
58449d42ed Chore: Add dashboard thumbnails service (#54500)
* Chore: Add dashboard thumbnails service

* Fix errors in dashboard thumbs impl

* Inject dashboardThumbsService into wire
2022-08-31 16:45:41 -04:00
Ryan McKinley
55fe1506ba Plugins: unlock on plugin startup failure (#54555) 2022-08-31 16:02:07 -04:00
Galen Kistler
d19a125ada Prometheus: report metrics browser toggle click interaction (#54546)
* report metrics browser toggle click interaction

Co-authored-by: ismail simsek <ismailsimsek09@gmail.com>
2022-08-31 14:43:00 -05:00
Ryan McKinley
dd38ff7cc8 Collapse: remove explicit panel-container className from definition (#54359) 2022-08-31 11:50:24 -07:00
Andre Pereira
e3c72ef5b7 Tempo: Improve TraceQL editor autocomplete (#54461)
* Detect spansets and improve autocomplete

* Better situation detection. Autocomplete scopes

* Remove scopes from tag name to get autocomplete

* Stronger regexes. More autocomplete tests

* Split big regex in smaller regexes

* Fix autocomplete when writing a string value with spaces

* Added test for the space inside string value autocomplete case

* Syntax highlight fix when using >< operators
2022-08-31 17:31:54 +01:00
Kristina
5069747893 Fix RefID and mixed datasource equality (#54536) 2022-08-31 10:22:13 -05:00
Christopher Moyer
e64009fa88 moves time series up, fixes random relrefs (#54477) 2022-08-31 10:13:07 -05:00
owensmallwood
f4bbce15a0 Public Dashboards: Add Expressions Support (#54336)
Adds support for expressions with public dashboards
2022-08-31 09:11:10 -06:00
Yuriy Tseretyan
76ea0b15ae Alerting: Scheduler to fetch folders along with rules (#52842)
* Update GetAlertRulesForScheduling to query for folders (if needed)
* Update scheduler's alertRulesRegistry to cache folder titles along with rules
* Update rule eval loop to take folder title from the
* Extract interface RuleStore 
* Pre-fetch the rule keys with the version to detect changes, and query the full table only if there are changes.
2022-08-31 11:08:19 -04:00
Mihály Gyöngyösi
60839d9c30 RBAC: Config setting to disable permission validation (#54447)
* Add scope_validation_enabled config setting to rbac section

* Rename config setting
2022-08-31 16:58:45 +02:00
Kristina
38c1f3d054 Explore: Add Mixed Datasource (#53429)
* Toggle on the mixed mode option

* Ensure switching to mixed gives existing query prev datasource

* WIP - Populate datasource when switching between mixed and not

* WIP - handle change from mixed

* Remove preimport filter, refine filter to work for queries

* WIP debugging datasource transition

* Ensure creating a new query gets target data source if switching with no matches between

* Add mixed datasource to rich history display

* Cleanup console logs, add relevant comments

* Add feature toggle for mixed datasource

* Fix Wrapper tests

* Fix tests!

* Fix test types and add feature tracking

* Remove unnecessary default, remove explore/mixed workarounds for D2E

* Move display text logic to mixed datasource file

* Add in the default query parameters to a generated empty query

* Condense some code

* Apply suggestions from code review

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

* Add more logic around mixed datasource being off for explore

* Build out logic to handle different datasource scenarios

* Add tests

* Finalize last test

* Fix mixed URL with mixed ds off, and relevant test

* Fix datasource to explore workflow

* Add datasource change function, call import queries if needed

* add logic for changing single query ds

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2022-08-31 09:24:20 -05:00
Torkel Ödegaard
e5fba788d6 AppRootPage: Fixes issue navigating between two app plugin pages (#54519)
* AppRootPage: Fixes issue where it was not possible to navigate to another plugin

* Externalize react-router

* fixing test
2022-08-31 15:36:08 +02:00
Dave Henderson
713075c494 Metrics: Fixed grafana_database_conn_* metrics, and added new go_sql_stats_* metrics as eventual replacement (#54405)
* metrics: Fix broken DBStats metrics

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

* Register the sqlstats metrics by default

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

Signed-off-by: Dave Henderson <dave.henderson@grafana.com>
2022-08-31 08:54:32 -04:00
Victor Marin
51e2f57ac9 Hidden series stay hidden in legend when toggling visibility (#54139) 2022-08-31 13:49:24 +03:00
Piotr Pomierski
e95bab1f2b Storybook: Add controls to button story (#54389) 2022-08-31 11:42:47 +01:00
Dimitris Sotirakis
87f2b13efa CI: Update grabpl verison to v3.0.5 (#54269)
* Update grabpl

* Update to grabpl v3.0.5
2022-08-31 06:27:53 -04:00
Gustavo Santos
3ba3d47b85 Chore: Added controls to Checkbox stories (#54372) 2022-08-31 11:19:37 +01:00
Ashley Harrison
9e74050472 Update latest.json (#54484) 2022-08-31 09:17:59 +01:00
Dimitris Sotirakis
239c4cdb25 Add CustomMode in versions.go (#54482) 2022-08-31 09:21:33 +03:00
Joe Blubaugh
56369457d4 Grafana Backend: Establish a database version support policy. (#54374)
As stated in the documentation, Grafana will support the versions of our backend database options that are supported by their projects at the time that a Grafana release is issued.
2022-08-31 09:40:35 +08:00
Grot (@grafanabot)
3a9a145ef7 ReleaseNotes: Updated changelog and release notes for 8.3.11, 8.4.11, 8.5.11 and 9.0.8 (#54493)
* ReleaseNotes: Updated changelog and release notes for 8.3.11, 8.4.11, 8.5.11 and 9.0.8

Co-authored-by: Joan López de la Franca Beltran <joanjan14@gmail.com>
2022-08-30 20:55:01 +02:00
Grot (@grafanabot)
ab959f9305 ReleaseNotes: Updated changelog and release notes for 9.1.2 (#54481) 2022-08-30 18:33:03 +01:00
Will Browne
166b981019 ensure process manager is background service (#54475) 2022-08-30 13:09:52 -04:00
Artur Wierzbicki
9284216880 Search: ordering tests (#54432)
* search ordering tests

* lintt
2022-08-30 18:58:19 +02:00
Christopher Moyer
dc2616f833 removes previously refactored content (#54416) 2022-08-30 11:24:31 -05:00
Matias Chomicki
6e6069a2ba Loki: Create Variable Query Editor for Loki. (#54102)
* feat(loki-query-editor): create base editor component

* feat(loki-query-editor): update editor to use loki query type

* feat(loki-query-editor): add custom variable support to datasource

* feat(loki-query-editor): prevent errors when no label is present

* Add unit test for LokiMetricFindQuery

* Update datasource test

* Add component test

* Add variable query migration support

* feat(loki-query-editor): add migration support for older-format variables

* Fix enum capitalization for consistency

* Move attribute to the top of the class

* Remove unnecessary from()

* Update capitalization of new enum

* Fix enum capitalization in component

* feat(loki-query-editor): replace unnecessary class with class method
2022-08-30 18:18:51 +02:00
Will Browne
4a707e2a88 Plugins: Split plugin manager into smaller components (#54384)
* split out plugin manager

* remove whitespace

* fix tests

* split up tests

* updating naming conventions

* simplify manager

* tidy

* add more fakes

* testing time

* add query verif to int test

* renaming

* add process tests

* tidy up manager tests

* add extra case to int test

* add more coverage to store and process tests

* remove comment

* fix capatilization

* init on provide

* remove addfromsource from API
2022-08-30 17:30:43 +02:00
Nathan Marrs
acbbdccba9 Canvas: Fix minor duplication bug #54462 2022-08-30 08:27:00 -07:00
Gabriel MABILLE
c2c319146a FIX: RBAC prevents deleting empty snapshots (#54385)
* FIX: RBAC prevents deleting empty snapshots

* Update pkg/api/dashboard_snapshot.go

Co-authored-by: Mihály Gyöngyösi <mgyongyosi@users.noreply.github.com>

* Simplify else case

Co-authored-by: Emil Tullsted <sakjur@users.noreply.github.com>

Co-authored-by: Mihály Gyöngyösi <mgyongyosi@users.noreply.github.com>
Co-authored-by: Emil Tullsted <sakjur@users.noreply.github.com>
2022-08-30 17:19:52 +02:00
Dimitris Sotirakis
933bbe228b Add PackagesBucketEnterprise2 field in config (#54449) 2022-08-30 10:47:12 -04:00
Artur Wierzbicki
7a340f486b Storage: add WithContents option to storage.Get() (#53105)
* Storage: add `WithContents` option to `storage.Get()`

* fix tests

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2022-08-30 15:23:16 +02:00
Esteban Beltran
fc348e6279 Plugins Catalog: Use appSubUrl to generate plugins catalog urls (#54426)
* Plugins Catalog: us appSubUrl to generate plugins catalog urls

* add tests for PluginList with app sub url

* remove unnecessary comments
2022-08-30 12:34:41 +02:00
Joan López de la Franca Beltran
6ec06f66b9 Rendering: Add support for renderer token (#54425)
(cherry picked from commit a4f75cc0438712c90b02d24740416f8615e3a0cb)
2022-08-30 12:09:38 +02:00
renovate[bot]
8291ec1e44 Update dependency @opentelemetry/semantic-conventions to v1.6.0 (#54316)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-08-30 10:28:48 +01:00
Ashley Harrison
db4a2d58a1 convert DerivedField test to RTL (#54334) 2022-08-30 10:28:06 +01:00
Jack Westbrook
5ea01dc9b9 Build: Introduce webpack manifest plugin (#49798)
* build(webpack): introduce manifest plugin

* build(webpack): move manifest.json to root of project and git ignore
2022-08-30 05:18:55 -04:00
Polina Boneva
ef32050508 Add FocusScope to PanelEditor when open in the Dashboard Page so that a11y focus never catches invisible content. (#54400) 2022-08-30 12:08:31 +03:00
Ashley Harrison
5e394c0385 Convert influxdb ConfigEditor test to RTL (#54332) 2022-08-30 09:30:10 +01:00
Yaelle Chaudy
711c504b39 Azure Monitor: Updated grafana_ds_azuremonitor_dashboard_loaded event, replaced array of queries for stats (#54286)
* Replaced array of queries for stats

* Added ds_version prop

* Added ds_version to tests

* Extracted event name to tracking file

* Extracted event to tracking file

* Removed ds_version - useless for core plugin

* Addressed comments

* Added note to event documentation
2022-08-30 09:55:40 +02:00
Esteban Beltran
56bceacfb1 Navigation Bar: Remove plugins link under Server Admin (#54386)
* Navigation Bar: Remove plugins link under Server Admin

* Modify frontend to handle admin plugins as just plugins

* update assets and documentation mentioned path

* Fix copy to remove redundant text
2022-08-30 03:40:04 -04:00
Adela Almasan
89236cf418 Geomap: Cleanup (#54415) 2022-08-29 17:34:42 -04:00
Ezequiel Victorero
722aca5c53 Public Dashboards: use intervalMs and maxDataPoints from request (#53613) 2022-08-29 18:13:06 -03:00
Matt Dodson
fcea9ac913 Fix admonition (#54408) 2022-08-29 15:33:54 -05:00
Michael Mandrus
2c21113917 Secrets: Implement admin mechanism for deleting all secrets stored on the secrets plugin (#54264)
* implement delete all secrets endpoint

* change deletion check to just check for installed plugin

* refactor function call
2022-08-29 14:44:55 -04:00
linoman
3f0beee362 Update README build references (#54394) 2022-08-29 16:36:06 +02:00
Adela Almasan
07dcb64e38 Geomap: Fix tooltip display (#54245) 2022-08-29 09:29:54 -05:00
Ivan Ortega Alba
4a0a6c8fd4 Analytics: Rename create dashboard event (#54390) 2022-08-29 16:26:54 +02:00
Adam Simpson
87375f570d QueryEditorRow: filter data on mount (#54260)
This works correctly on initial dashboard load. However, when an action
is taken that triggers a "re-mount", e.g. opening the options pane on
the right side of the page, the `data` prop becomes undefined.
2022-08-29 13:49:58 +00:00
Alex Khomenko
d574a5d98f TimeRangeForm: Do not use HTML form (#54318)
* TimeRangeForm: Do not use HTML form

* TimeRangeForm: rename to TimeRangeContent
2022-08-29 16:19:12 +03:00
Marcus Efraimsson
9ff2b33ff1 Chore: Fix prometheus docker block (#54388) 2022-08-29 08:42:46 -04:00
Mihály Gyöngyösi
990f673202 Docs: Fix typo in custom-role-actions-scopes.md (#54294)
* Fix typo in custom-role-actions-scopes.md

* Address lint issue
2022-08-29 11:59:17 +02:00
linoman
d2547bb832 Chore: Group auth docker blocks (#54274)
* Move auth docker images to parent folder

* Add README file for auth parent folder

* Add grafana-authnz-team as code owner

* Update `devenv` docs
2022-08-29 08:36:56 +02:00
Orlando Ortega Jr
72a143aaff Chore: Added controls to DatePickerWithInput story (#54360) 2022-08-28 16:44:51 +03:00
ying-jeanne
fe062f2eaa Chore: Use db.DB interface instead of sqlstore (#54358)
* use db.DB interface instead of sqlstore

* make store service depends on db.DB instead of sqlstore
2022-08-26 19:07:58 -05:00
Ryan McKinley
216185b7f0 Storage: Avoid UID errors from annotations api when loading dashboards from storage (#54346) 2022-08-26 15:09:56 -07:00
Jean-Philippe Quéméner
a932428057 Alerting: use raw query data in provisioning to bypass interpolation of macros (#54293) 2022-08-26 23:54:30 +02:00
Jean-Philippe Quéméner
49b1182f34 Alerting: add missing yaml tag to mute time struct (#54287) 2022-08-26 23:30:07 +02:00
Nathan Marrs
3be3b02f59 Geomap: cleanup (#54328) 2022-08-26 16:03:20 -05:00
Adela Almasan
0707d682e0 Geomap: Local color range for dimensions (#54348)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2022-08-26 15:39:59 -05:00
Jeff Levin
5cb9fca990 public-dashboards: Add log statement when public dashboard enabled or disabled (#54133)
* refactor apis for consistent outputs
* add dashboardUid validation at API layer
* add check for empty dashboardUid on SavePublicDashboard
* remove public dashboard errors from models package.

Co-authored-by: Ezequiel Victorero <evictorero@gmail.com>
2022-08-26 11:28:54 -08:00
Yuriy Tseretyan
b9be2815d3 Chore: Fix cue loader to use absolute path (#54257) 2022-08-26 14:08:12 -04:00
Brendan O'Handley
20d0aa9904 OpenTsdb: migrate annotations from angular to react (#53856)
* remove annotation angular dependency and migrate annotations

* add nullish coalescing operator

* remove annotations angular partial

* make annotation queries code and errors more readable

* handle the betterer issue with '^ Unexpected any. Specify a different type' at top of file

* run precommits

* run prettier
2022-08-26 13:44:10 -04:00
Ryan McKinley
2db6a199b8 Preferences: Support setting any dashboard as home, not just the starred ones (#54258) 2022-08-26 12:40:40 -04:00
Hamas Shafiq
93c5c175fe Jaeger: Show a better error msg if no service is selected when using search (#54172) 2022-08-26 17:09:18 +01:00
Karl Persson
9d2f5ef62f RBAC: Add function to generate wildcards from prefix (#54275)
* RBAC: Move metadata to own file

* RBAC: Rename test files

* RBAC: Add wildcard structure and helper function to generate wildcards
from prefix

* RBAC: Refactor filter to use WildcardsFromPrefix

* RBAC: Refactor GetResourceMetadata to use WildcardsFromPrefix
2022-08-26 17:10:35 +02:00
ying-jeanne
6227528ea0 Chore: SQL Store Split of datasource (#54262)
* refectory datasource

* fix linter
2022-08-26 11:03:38 -04:00
Selene
ec3697584a Move config nodes to another function (#54330) 2022-08-26 16:30:21 +02:00
Yuriy Tseretyan
db09a76125 update test environment to create folders (#54254) 2022-08-26 09:46:41 -04:00
Ivan Ortega Alba
c66c275342 SearchSrv: stop using IDs (#54296)
* SearchSrv: stop using IDs

* Remove IDs from test
2022-08-26 15:41:47 +02:00
Maria Alexandra
f4fa3e4ff4 Panel edit: Run queries when time range changes in table view (#53111) 2022-08-26 15:36:42 +02:00
Galen Kistler
6ed0787376 InfluxQL: Quoting tag values in the query editor (#54187)
* Quote numeric values in query editor
2022-08-26 08:26:44 -05:00
Giordano Ricci
26524e3ff1 GrafanaUI: Fix styles for invalid selects & DataSourcePicker (#53476)
* GrafanaUI: fix styles for invalid select & DataSourcePicker

* Apply suggestions from code review

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

* fix focus issues & tests

* remove unused import

* TypeScript work in progress

* Move react select props to types.ts

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
Co-authored-by: eledobleefe <laura.fernandez@grafana.com>
Co-authored-by: joshhunt <josh@trtr.co>
2022-08-26 13:48:51 +01:00
Gábor Farkas
a58edc9f5e elastic: always use millisecond-intervals for alerting (#54157) 2022-08-26 14:40:28 +02:00
renovate[bot]
6f72c4d10d Update dependency @testing-library/user-event to v14.4.3 (#54292)
* Update dependency @testing-library/user-event to v14.4.3

* use ReturnType instead of using a nested import

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-08-26 13:30:34 +01:00
Ashley Harrison
91948ce554 Convert elasticsearch ConfigEditor.test.tsx to RTL (#54301) 2022-08-26 13:29:31 +01:00
Giordano Ricci
b4334b26aa Chore: add missing properties to mocks (#54290)
* Chore: add missing properties to mocks

* update snapshot
2022-08-26 12:17:04 +01:00
renovate[bot]
526989e16b Update dependency @microsoft/api-extractor-model to v7.23.3 (#54283)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-08-26 11:51:16 +01:00
Giordano Ricci
c68d7f1e35 Correlations: Add CorrelationSettings Page (#53821)
* GrafanaUI: add option to close DeleteButton on confirm click

* add datasource readOnly info to frontend settings

* move isTruthy utility type guard

* add generic non-visualization table component

* Add correlations settings page

* add missing readOnly in mock

* Fix typo

* avoid reloading correlations after add/remove

* use DeepPartial from rhf

* validate source data source

* fix validation logic

* fix navmodel test

* add missing readonly property

* remove unused styles

* handle multiple clicks on elements

* better UX for loading states

* fix remove handler

* add glue icon
2022-08-26 11:27:28 +01:00
Vadim Beskrovnov
37fde2eec6 Dashboard save: Persist details message when navigating through dashboard save drawer's tabs. (#54084)
* Dashboard: Fix `changes note` textarea to save draft when going to other tabs

* Do not show Changes tab if there are no changes

* Fix comments

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2022-08-26 03:25:40 -07:00
renovate[bot]
ed50af904f Update dependency @microsoft/api-extractor to v7.29.5 (#54281)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-08-26 11:01:00 +01:00
Marcus Efraimsson
87afd9cadc Plugins: Remove various custom headers logic (#54146)
Removes various custom headers logic sprinkled around in the backend. 
It should automatically be applied to outgoing HTTP requests via the 
CustomHeadersMiddleware.
This also removes decryption of SecureJSONData to populate custom 
headers in ngalert which seemed to have caused a ton of CPU usage.
2022-08-26 11:56:10 +02:00
renovate[bot]
2f4c8e1b3d Update dependency eslint-plugin-react to v7.31.0 (#49214)
* Update dependency eslint-plugin-react to v7.31.0

* fix displayName for OldNavOnly

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-08-26 10:31:16 +01:00
Josh Hunt
ebbeed8ad7 I18n: Use locale preference (#53293) 2022-08-26 10:27:14 +01:00
Jeff Levin
681bdf1a2d public-dashboards: refactor query method (#54119)
This PR refactors the GetPublicDashboard method so we don't need to make extra database calls. Also adds general documentation
2022-08-26 05:21:52 -04:00
Hamas Shafiq
cd26cade68 Chore: Remove unused theme (#54175) 2022-08-26 10:15:21 +01:00
Artur Wierzbicki
74158ed66b Search: use SQL search as a fallback during bluge's initial indexing (#54095)
* Search: use SQL search as a fallback when bluge indexing is ongoing

* Search: lint

* Search: feedback fixes - return an empty frame with a special name

* Search: revert readiness check query type

* Search: remove println

* remove sleep, get coffee
2022-08-26 12:36:41 +04:00
Karl Persson
5a1b9d2283 RBAC: Remove DeclareFixedRoles wrapper on Access control and inject service (#54153)
* RBAC: Remove DeclareFixedRoles wrapper on Access control and inject service when needed
2022-08-26 09:59:34 +02:00
Ivan Ortega Alba
c332bf885c Migrate to UID: Stop using search result ID (#54099)
* DashList: Stop using IDs

* DashLinks: Stop using IDs

* BackendSrv: Do not use ID for search endpoint

* DashboardDataDTO: Remove ID

* Remove unused properties from DashboardSearchItem
2022-08-26 09:42:46 +02:00
Leo
e27769da9c use navId and subtitle on api keys page (#54247) 2022-08-26 09:28:17 +02:00
Matias Chomicki
cd617b6520 Loki: refactor mock instance creation and clean up datasource test (#54176)
* refactor(loki-test): move mock creation to mock module

* refactor(loki-test): allow to pass custom settings to the mock constructor

* refactor(loki-test): refactor mock factory in datasource test

* refactor(loki-test): revert change in undefined test case for dsMaxLines

* refactor(loki-test): move type assertion to mock definition

* refactor(loki-test): fix more type issues

* refactor(loki-explore-query-editor): refactor test to use createLokiDatasource() and fix type issues

* refactor(loki-test): replace makeMockLokiDatasource with metadataRequest factory

* fix: remove any

* fix(loki-test): fix remaining usages of any

* Fix: add missing exported type
2022-08-26 09:26:48 +02:00
Gábor Farkas
448a67ab43 elastic: use millisecond-intervals (#54202) 2022-08-26 08:56:39 +02:00
Victor Marin
07c9c8ffd7 Histogram cue model fixes (#54022) 2022-08-26 09:45:19 +03:00
Adela Almasan
cea2b4b7b8 Geomap: Spatial operations location options transform e2e test (#54162) 2022-08-25 17:34:24 -04:00
Adela Almasan
9db66049c6 Devenv: Geomap global vs local field coloring (#54253) 2022-08-25 16:22:14 -05:00
Guilherme Caulada
f25c7f6ddd Chore: Refactor secrets kvstore to organize testing and migrations (#54249)
* Refactor migrations and tests for secrets kvstore

* Use fake secrets store as a shortcut on tests

* Update wire

* Use global migration logger

* Fix ds proxy tests

* Fix linting issues

* Rename data source test setup function
2022-08-25 18:04:44 -03:00
ying-jeanne
fd01161bcc Chore: replace xorm by sqlx in dashboardversion service (#53869) 2022-08-25 16:04:16 -05:00
Michael Mandrus
8deababa50 Chore: Refactor secrets plugin unit tests code (#54231)
* refactor test setup to return struct rather than many values

* changes to code style from review

* apply diff from Leandro for logging
2022-08-25 15:15:58 -04:00
Yuriy Tseretyan
03e746d9df Alerting: Delete state from the database on reset (#53919)
* make ResetStatesByRuleUID return states
* delete rule states when reset
* rule eval routine to clean up the state only when rule is deleted
2022-08-25 14:12:22 -04:00
Artur Wierzbicki
5c0bf2ba39 Storage: fix creating a new dashboard with dashboardsFromStorage feature flag enabled 2022-08-25 14:04:09 -04:00
Christopher Moyer
3f0636083d Docs/adds cloud support disclaimer (#54150)
* adds cloud support disclaimer to three sections

* starts add cloud disclaimer

* adds disclaimer to JWT and Org sections

* adds final Cloud disclaimer to the Loki data source
2022-08-25 12:53:41 -05:00
Christopher Moyer
948452034e Docs/refactors manage dashboard topics (#54178)
* makes prettier

* refactors manage dashboard topics

* Apply suggestions from code review

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

* incorporates review feedback

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2022-08-25 11:30:07 -05:00
GitStart
468597b687 Elasticsearch: Remove any from public/app/plugins/datasource/elasticsearch/components/AddRemove.test.tsx (#54232)
Co-authored-by: gitstart <gitstart@users.noreply.github.com>
Co-authored-by: gitstart <gitstart@gitstart.com>
Co-authored-by: Nitesh Singh <nitesh.singh@gitstart.dev>
Co-authored-by: Júlio Piubello da Silva Cabral <julio.piubello@gitstart.dev>
Co-authored-by: Toledodev <rafael.toledo@engenharia.ufjf.br>
Co-authored-by: juliopiubello <juliopiubellow@gmail.com>
2022-08-25 17:33:16 +02:00
Ashley Harrison
15e19cef95 Navigation: improve page toolbar responsiveness (#54223)
* improve page toolbar responsiveness

* rename emotion style to be more descriptive

* remove unnecessary max-width
2022-08-25 16:21:29 +01:00
Brendan O'Handley
c9a3b2d420 use metadata endpoint (#53980) 2022-08-25 10:59:49 -04:00
Christopher Moyer
ca3296da34 Docs: refactors and copy edits share dashboard topics (#53972)
* refactors and copy edits share dashboard topics

* fixes typo

* incorporates feedback

* completes splitting out reporting and playlists
2022-08-25 08:19:28 -05:00
Ashley Harrison
d765aaff49 use navId + pageNav on datasource pages (#54218) 2022-08-25 13:58:41 +01:00
Emil Tullstedt
0ffbf901d7 ContextHandler: Use stdlib format for middleware (#54219) 2022-08-25 14:35:21 +02:00
Mihály Gyöngyösi
aace0b1e7f Admin: Create/Edit Team/ServiceAccount UI changes (#53889)
* RolePicker: Handle inherited with

* Small ammendment to Create Service Account layout

* RolePicker: introduce maxWidth prop

* Clean up

* Change VerticalGroup spacing to large on Team Settings page

* Introduce constant for submenu width

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

Simplify style parameter

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

* Add description to the improved calculation

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2022-08-25 13:30:11 +02:00
Leo
9f8cb17b01 Navigation: Use new page layout in Service accounts item page (#54200)
* use navId, pageNav and update alignments of service account page

* Fixing item header when feature is disabled

* Fix orgs item page

* Minor tweak to subtitle for service account item page

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2022-08-25 13:11:30 +02:00
Karl Persson
552d3fec8d RBAC: Fix resolver issue on wildcard resulting in wrong status code for endpoints (#54208)
* RBAC: Test evaluation before attaching mutator

* RBAC: Return error if no resolver is found for scope

* RBAC: Sync changes to evaluation in mock

* RBAC: Check for resolver not found error and just fail the evaluation in that case
2022-08-25 12:50:27 +02:00
Gábor Farkas
89d264fecc logs: better names and comments (#53770)
* logs: better names and comments

* comment: updated capitalization
2022-08-25 12:49:35 +02:00
Hamas Shafiq
5148464c88 Jaeger: Make search form fields more consistent with Tempo (#54026) 2022-08-25 09:51:21 +01:00
Esteban Beltran
6200c6d70f Build: Force a specific nodejs version for levitate detect breaking changes pipeline (#54207) 2022-08-25 04:35:13 -04:00
Armand Grillet
0a18456507 Move GH workflow step to have node_id unchanged (#54201) 2022-08-25 10:15:04 +02:00
Carl Bergquist
ab59f3cb1a metrics: add operation name used in metrics/tracing for middlewares (#53949)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
2022-08-25 10:11:27 +02:00
Dominik Prokop
8eac5706fd AdHoc variable: Correctly preselect datasource when provisioning (#54088)
* Adhoc variable: Correctly preselect datasource when provisioning

* Fix test

* Remove data sources from ad hoc variable state in favor of DataSourcePicker
2022-08-25 00:56:45 -07:00
Yaelle Chaudy
d0d6562f63 AzureMonitor: Added ARG query function for template variables (#53059)
* Added ARG query functionfor template variables

* removed unused import

* Tweak tests

* Fix tests

* Renamed query function - added 'Azure'

* Revert "Renamed query function - added 'Azure'"

This reverts commit a046bcdd7c.

* Adressed comments

* Fix uncaught error issue

* revert last commit

* Add back errorMessage check
2022-08-25 09:38:43 +02:00
Gábor Farkas
60d1668d74 Elasticsearch: Respect time range in ad hoc filters (#53874)
* elastic: respect time range in ad hoc filters

* added unit test
2022-08-25 09:29:15 +02:00
Dominik Prokop
f9a49aa3ed Fix: Correctly migrate mixed data source targets (#54152)
* Failing test case

* Fix mixed datasource targets migration
2022-08-25 00:07:10 -07:00
Jeff Levin
6128cb60b4 cleanup unused fields (#54115)
This PR removes unused struct fields in SavePublicDashboardCommand
2022-08-24 21:29:01 -04:00
Kim Nylander
fe87ffdda0 [Doc] Fix broken link in Tempo doc (#54120)
* Fix broken link

* Update docs/sources/datasources/tempo.md

Co-authored-by: Ursula Kallio <ursula.kallio@grafana.com>

Co-authored-by: Ursula Kallio <ursula.kallio@grafana.com>
2022-08-24 16:58:45 -07:00
Ryan McKinley
b483ac322f Chore: replace React.FC<Props> with simple function component (#54123) 2022-08-24 16:54:34 -04:00
Michael Mandrus
277ea836b6 Secrets: Implement migration of secrets from plugin back to unified secrets (#53561)
* initial cut at migration from plugin

* create new migration from plugin

* only migrate to or from, not both

* remove cfg check from plugin migration itself

* update comments, clean up secret after migration

* add better error handling

* hook up REST API with migrations

* Minor fixes

* fix wire injection issue

* modify migrator to access plugin calls directly. create unit tests

* change pre-migration checks in admin api

* stop plugin after migrating from it

* fix compile issues after merge

* add comment about migration

* fix linting issue

* bleh, fix unit test

* fix another unit test

* update plugin error fatal flag after a migration from the plugin

* add extra logging to migration

* make linter happy

Co-authored-by: Leandro Deveikis <leandro.deveikis@gmail.com>
2022-08-24 16:24:50 -04:00
lean.dev
c8f2cd2599 Fixing swagger meta preventing spec generation (#54181) 2022-08-24 16:56:28 -03:00
Yuriy Tseretyan
41bd36eb97 Alerting: Update rules delete endpoint to handle rules in group (#53790)
* update RouteDeleteAlertRules rules to update as a group
* remove expecter from scheduler mock to support variadic function
* create function to check for provisioning status + tests

Co-authored-by: Alexander Weaver <weaver.alex.d@gmail.com>
2022-08-24 15:33:33 -04:00
Santiago
4fad827acd Alerting: log external alertmanager URLs #54127 2022-08-24 13:52:39 -04:00
Andre Pereira
c8f2148f75 Tempo: Basic PoC of the upcoming TraceQL editor in Explore (#54028)
* First working version of the TraceQL editor with syntax highlighting and autocomplete

* Add feature flag around the new editor option

* Fix tests and cleanup

* Fix misspelling
2022-08-24 17:57:59 +01:00
Ryan McKinley
94b4f6f459 Search: Show all dashboards in the folder view (#54163) 2022-08-24 12:10:34 -04:00
Torkel Ödegaard
264645eecd TopNav: Dashboard settings (#52682)
* Scenes: Support new top nav

* Page: Make Page component support new and old dashboard page layouts

* Pass scrollbar props

* Fixing flex layout for dashboard

* Progress on dashboard settings working with topnav

* Updated

* Annotations working

* Starting to work fully

* Fix merge issue

* Fixed tests

* Added buttons to annotations editor

* Updating tests

* Move Page component to each page

* fixed general settings page

* Fixed versions

* Fixed annotation item page

* Variables section working

* Fixed tests

* Minor fixes to versions

* Update

* Fixing unit tests

* Adding add variable button

* Restore annotations edit form so it's the same as before

* Fixed semicolon in dashboard permissions

* Fixing unit tests

* Fixing tests

* Minor test update

* Fixing unit test

* Fixing e2e tests

* fix for e2e test

* fix a11y issues

* Changing places Settings -> General

* Trying to fix a11y

* I hope this fixes the e2e test

* Fixing merge issue

* tweak
2022-08-24 18:05:12 +02:00
Ryan McKinley
fe61a97c9d TextPanel: Support code formats (#53850) 2022-08-24 08:13:00 -07:00
ying-jeanne
4d4ecd7fec fix the event attributes (#54117) 2022-08-24 09:59:06 -05:00
Dimitris Sotirakis
9be8b0564a Update whatsNewUrl (#54154) 2022-08-24 09:57:03 -05:00
Jeff Levin
f5b99e5ca7 add tests for api urls (#54116)
Create function for generating api urls and add tests
2022-08-24 08:51:35 -06:00
Yuriy Tseretyan
736d035c65 Chore: Add context util that allow to provide cause of cancellation (#53918) 2022-08-24 10:24:41 -04:00
Armand Grillet
6804a8c9cc Add GH action to automatically add issue labeled to GH board (#54151) 2022-08-24 16:20:10 +02:00
Andreas Christou
e8b13f8122 Bump code coverage workflow version (#54138) 2022-08-24 14:40:47 +01:00
Laura Benz
95ec6f6c0f Explore: Improve a11y of query row collapse button (#53827)
* refactor: convert to IconButton

* refactor: adjust attributes
2022-08-24 15:38:16 +02:00
Dimitris Sotirakis
50d0581000 Trigger backend tests on devenv changes (#54137) 2022-08-24 14:54:11 +03:00
Valério Valério
b5142832fa Alerting: Fix saving of screenshots uploaded with a signed url (#53933)
The URL of screenshots uploaded to external image storages can be optionally signed, resulting in a long string (800+ chars).
2022-08-24 12:40:50 +01:00
Karl Persson
55c7b8add2 RBAC: Split up service into several components (#54002)
* RBAC: Rename interface to Store

* RBAC: Move ranme scopeInjector

* RBAC: Rename files to service

* RBAC: Rename to service

* RBAC: Split up accesscontrol into two components

* RBAC: Add DeclareFixedRoles to AccessControl interface

* Wire: Fix wire bindings

* RBAC: Move resolvers to root

* RBAC: Remove invalid test

* RBAC: Inject access control service

* RBAC: Implement the RoleRegistry interface in fake
2022-08-24 13:29:17 +02:00
Ashley Harrison
211c9991c5 Navigation: Add responsive behaviour to ToolbarButtonRow (#53739)
* hacky first attempt

* slightly cleaner...

* behaviour mostly working...

* remove unnecessary wrapper

* css tweaks

* much cleaner implementation with intersectionobserver

* set style props directly on children

* separate story, integrate when toggle is off

* improve story, integrate when toggle is on

* remove styles from DashNavTimeControls

* mock IntersectionObserver for all unit tests

* prettier

* don't use dropdown anymore

* add some basic documentation

* add right alignment to scenes toolbarbuttonrow

* just use the react children api to prevent duplicating children
2022-08-24 11:19:36 +01:00
renovate[bot]
b51167e89a Update dependency @betterer/regexp to v5.4.0 (#54051)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-08-24 11:04:51 +01:00
Marcus Efraimsson
cd5f27a25d Plugins: Propagate distributed tracing headers to backend plugins (#54107) 2022-08-24 11:55:49 +02:00
sam boyer
1cfb3c1627 devenv: run stripnulls.sh (#54124) 2022-08-24 12:26:20 +03:00
renovate[bot]
caf3077ebb Update dependency @betterer/eslint to v5.4.0 (#54046)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-08-24 09:29:17 +01:00
Matias Chomicki
1642716978 Chore(loki): remove any from DerivedFields test (#53547) 2022-08-24 10:06:28 +02:00
Kevin Minehart
95ec3e8c09 Chore: update latest.json to 9.1.1 (#54108) 2022-08-24 08:34:41 +01:00
Torkel Ödegaard
8880cbd7f6 AngularPanels: Fixing changing angular panel options not taking having affect when coming back from panel edit (#54087) 2022-08-24 08:35:44 +02:00
ying-jeanne
4dbe0b4f02 Chore: Move updateorg out of sqlstore (#54111)
* Chore: move updateorg out of sqlstore

* fix api test
2022-08-23 12:26:21 -05:00
Kristina
5f57edd08a Allow for clickable link (#54067) 2022-08-23 12:17:58 -05:00
Ryan McKinley
1d4e01f8ba Transformers: Support inner vs outer join (#53913) 2022-08-23 10:14:03 -07:00
eledobleefe
1766ea9fdf Navigation: Use new page layout in Server Admin > Orgs pages (#54018) 2022-08-23 18:38:46 +02:00
Grot (@grafanabot)
2eec035c13 ReleaseNotes: Updated changelog and release notes for 9.1.1 (#54103) 2022-08-23 11:56:04 -04:00
Isabella Siu
4f2b66ac1d CloudWatch: Log group variable should get all log groups (#54062) 2022-08-23 11:43:30 -04:00
Andreas Christou
1f17e9a044 Update effects to avoid retrieving metrics descriptors except on project name update (#54091) 2022-08-23 16:42:59 +01:00
Guilherme Caulada
d90600c454 Secrets: Add fallback to secrets kvstore plugin (#54056)
* Add fallback to secrets kvstore plugin

* Fix linter issues

* Fix linter issues

* Add deletion error to bool to fake secrets kvstore

* Add fallback to fake secrets kvstore

* Fix fake secrets kvstore fallback setter

* Use Key on Item message for secrets manager protobuf

* Add clarifying comment about fallback
2022-08-23 12:21:54 -03:00
ying-jeanne
ebcdf402b2 Chore: move from xorm to sqlx apikey store (#53434)
* migrate from xorm to sqlx

* fix tests

* fix comments

* fix some comments on the PR

* fix CI

* fix the comments
2022-08-23 11:01:35 -04:00
Kim Nylander
45b65cc6c9 [DOC] Add APM changes and fix links (#53986)
* Add APM changes and fix links

* Apply suggestions from code review

* Update docs/sources/datasources/tempo.md

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

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

* Prettier update

Co-authored-by: Eve Meelan <81647476+Eve832@users.noreply.github.com>
2022-08-23 07:46:23 -07:00
Giordano Ricci
fe8a4e926d Chore: cleanup datasources devenv (#54092) 2022-08-23 15:10:13 +01:00
Ryan McKinley
dfda3e2b03 Dependencies: Update monaco-editor (#54068)
Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
2022-08-23 06:58:58 -07:00
Esteban Beltran
6fe7a1f034 Icons: Move unicons icons to the repository and generate the iconsBundle.js with nodejs (#53766) 2022-08-23 15:47:14 +02:00
Karl Persson
c9661a5be1 RBAC: Only display unique permissions in list (#54074)
* PermissionList: Only display one row for each user, team or builtin role
2022-08-23 15:34:31 +02:00
Jo
5c1f614d3c Service Accounts: Separate metrics logic from store (#54085)
* separate stats logic from store

* remove in_teams unused stat

* use init instead
2022-08-23 08:24:55 -04:00
Hamas Shafiq
afa7e8d8de Tempo: Make TempoQuery.search & SearchQueryParams.tags optional (#54052) 2022-08-23 12:27:19 +01:00
Marcus Efraimsson
e6857bf17d Plugins: Handle app plugin proxy routes per request (#51835)
Fixes #47530
2022-08-23 13:05:31 +02:00
Hamas Shafiq
5f80bf5297 Tempo: Remove unused functions in datasource.ts (#54081) 2022-08-23 12:02:43 +01:00
Will Browne
26dfdd5af3 Plugins: Refactor plugin download/installation (#43046)
* installer -> repo

* add semver format checking

* add plugin callbacks in test

* remove newline

* post install only scans new directories

* remove unused stuff

* everything in own package

* add missing cli params

* make grafana version part of the API

* resolve conflicts

* tidy up logger

* fix cli and tidy log statements

* rename log package

* update struct name

* fix linter issue

* fs -> filestore

* reorder imports

* alias import

* fix test

* fix test

* inline var

* revert jsonc file

* make repo dep of manager

* actually inject the thing

* accept all args for compatability checks

* accept compat from store

* pass os + arch vals

* don't inject fs

* tidy up

* tidy up

* merge with main and tidy fs storage

* fix test

* fix packages

* fix comment + field name

* update fs naming

* fixed wire

* remove unused func

* fix mocks

* fix storage test

* renaming

* fix log line

* fix test

* re-order field

* tidying

* add test for update with same version

* fix wire for CLI

* remove use of ioutil

* don't pass field

* small tidy

* ignore code scanning warn

* fix testdata link

* update lgtm code
2022-08-23 11:50:50 +02:00
Karl Persson
cc78486535 RBAC: Display indicator if a permission is inherited (#54080)
* RBAC: Add IsInherited property

* PermissionList: Display inherited indicator
2022-08-23 05:34:19 -04:00
Will Browne
eb4266a85e Plugins: Interpolate plugin type as part of plugin ID schema (#54030)
* do it

* undo
2022-08-23 05:14:23 -04:00
Leon Sorokin
530dd63ac6 TimeSeries: Fix crash when min >= max in config (#54069)
* TimeSeries: fix crash when min === max in config

* stat sparkline, too

* better types
2022-08-23 01:00:42 -07:00
Christopher Moyer
c29a2c37c1 docs: corrects broken relrefs (#54061)
* corrects broken relrefs

* Apply suggestions from code review

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

Co-authored-by: Eve Meelan <81647476+Eve832@users.noreply.github.com>
2022-08-22 17:03:58 -05:00
Ryan McKinley
13aacf3590 Geomap: Fix geohash editor settings #54058 2022-08-22 14:12:21 -07:00
Christopher Moyer
657e1683d2 docs: refactors field value overrides topics (#53849)
* refactors field value overrides topics

* Update docs/sources/panels/configure-overrides/index.md

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

* Update docs/sources/panels/configure-overrides/index.md

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

* Update docs/sources/panels/configure-overrides/index.md

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

* Update docs/sources/panels/configure-overrides/index.md

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

* Update docs/sources/panels/configure-overrides/index.md

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

* Update docs/sources/panels/configure-overrides/index.md

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

* Update docs/sources/panels/configure-overrides/index.md

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

* makes prettier

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2022-08-22 15:37:29 -05:00
Ryan McKinley
dcdf232882 Heatmap: update heatmap documentation (#52756)
Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
2022-08-22 12:50:34 -05:00
ceh
ad501e770f Docs: Fix minor typo (#53590) 2022-08-22 18:26:52 +02:00
sam boyer
4d433084a5 plugins: New static scanner and validator, with Thema slot support (#53754)
* coremodels: Convert plugin-metadata schema to a coremodel

* Newer cuetsy; try quoting field name

* Add slot definitions

* Start sketching out pfs package

* Rerun codegen with fixes, new cuetsy

* Catch up dashboard with new cuetsy

* Update to go1.18

* Use new vmuxers in thema

* Add slot system in Go

* Draft finished implementation of pfs

* Collapse slot pkg into coremodel dir; add PluginInfo

* Add the mux type on top of kernel

* Refactor plugin generator for extensibility

* Change models.cue package, numerous debugs

* Bring new output to parity with old

* Remove old plugin generation logic

* Misc tweaking

* Reintroduce generation of shared schemas

* Drop back to go1.17

* Add globbing to tsconfig exclude

* Introduce pfs test on existing testdata

* Make most existing testdata tests pass with pfs

* coremodels: Convert plugin-metadata schema to a coremodel

* Newer cuetsy; try quoting field name

* Add APIType control concept, regen pluginmeta

* Use proper numeric types for schema fields

* Make pluginmeta schema follow Go type breakdown

* More decomposition into distinct types

* Add test case for no plugin.json file

* Fix missing ref to #Dependencies

* Remove generated TS for pluginmeta

* Update dependencies, rearrange go.mod

* Regenerate without Model prefix

* Use updated thema loader; this is now runnable

* Skip app plugin with weird include

* Make plugin tree extractor reusable

* Split out slot lineage load/validate logic

* Add myriad tests for new plugin validation failures

* Add test for zip fixtures

* One last run of codegen

* Proper delinting

* Ensure validation order is deterministic

* Let there actually be sorting

* Undo reliance on builtIn field (#54009)

* undo builtIn reliance

* fix tests

Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
2022-08-22 12:11:45 -04:00
renovate[bot]
828497447a Update dependency @betterer/cli to v5.4.0 (#54041)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-08-22 16:59:45 +01:00
Ashley Harrison
3cf95d7eee Chore: fix some anys pt.2 (#53928)
* correctly type some more any's

* undo this change for now...
2022-08-22 16:51:33 +01:00
Josh Hunt
2b17e5354a Chore: Remove needless eslint ignore comment from variable utils (#54050) 2022-08-22 16:50:24 +01:00
Vadim Beskrovnov
7caba545ec A11y: Fix a11y for toolbar buttons in PanelEditor (#53864)
Co-authored-by: Vadim Beskrovnov <vbeskrovnov@fb.com>
2022-08-22 17:08:22 +02:00
Christopher Moyer
666f84be57 refactors transformation topics (#53984) 2022-08-22 10:04:59 -05:00
George Robinson
e163a976fa Alerting: Fix width of Adapative Cards in Teams notifications (#53996) 2022-08-22 16:04:22 +01:00
Alex Khomenko
2caaa7fba2 ColorInputPicker: Fix popover in disabled state (#54000) 2022-08-22 18:01:33 +03:00
renovate[bot]
38017fd3f5 Update dependency @betterer/betterer to v5.4.0 (#54031)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-08-22 15:50:51 +01:00
Guilherme Caulada
2e9edf4592 Secrets: Refactor code duplicity on secrets sql kvstore (#54032) 2022-08-22 11:48:57 -03:00
renovate[bot]
013dda7bb8 Remove dependency jest-mock-console (#52872)
* Update dependency jest-mock-console to v2

* let's remove jest-mock-console

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-08-22 15:47:45 +01:00
Christopher Moyer
1da4aa25a8 docs: refactors value mappings topics (#53616)
* starts copy edit

* completes refactor and copy edit
2022-08-22 09:26:53 -05:00
Gábor Farkas
35253a909d Elasticsearch: remove already-disabled code (#52932)
* elastic: removed unused code from go-part

* elastic: removed unused code from js-part
2022-08-22 16:25:20 +02:00
Josh Hunt
9db9ebce02 Typed variables pt6: Clean up and test variable type guards (take 2) (#54025)
* Add fixture-factories for all variable types

* clean up variable guards

* add tests for isMulti, hasCurrent, and hasOptions variable type guards

* create VariableSupport type to try and work around ts wonkiness
2022-08-22 14:45:40 +01:00
renovate[bot]
4c8ea0bb89 Update dependency @lezer/common to v1 (#50866)
* Update dependency @lezer/common to v1

* Bump lezer/lr as well

* Fix broken code

* Add new lezer-promql and update lezer-logql

* Change to prometheus lezer-promql, fix lezer-logql code

* Update tests for Loki

* fix typeErrors

* fix tests by adding new error node to expected objects

* refactor usages of node references to differentiate usage from node object

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
Co-authored-by: Ivana Huckova <ivana.huckova@gmail.com>
Co-authored-by: gtk-grafana <galen.kistler@grafana.com>
2022-08-22 08:45:29 -05:00
Dimitris Sotirakis
ceb32a7506 Add GCP_KEY secret to the artifacts-page pipeline (#54013) 2022-08-22 08:44:43 -05:00
Gilles De Mey
0923d2455c Alerting: Show alerting enabled for Alertmanager data sources (#54023) 2022-08-22 14:34:55 +02:00
Ashley Harrison
0f4b8c5e54 convert AzureCredentialsForm test to RTL (#53959) 2022-08-22 13:22:19 +01:00
Karl Persson
ef25d297d6 RBAC: Display groups for custom roles (#54020)
* RolePicker: Default to "Other" for roles without group

* RolePicker: Add GroupType enum and calculate group options based on
group type

* RolePicker: Display groups for custom roles

* RolePicker: Remove unused code

* RolePicker: Restructure

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2022-08-22 14:21:12 +02:00
Ashley Harrison
f91f05f32c Chore: convert DebugSection test to RTL (#53965)
* convert DebugSection test to RTL

* remove unused import
2022-08-22 13:19:46 +01:00
Gábor Farkas
395e443932 loki: Fix adding refId to rowId (#53932) 2022-08-22 13:09:33 +02:00
Hamas Shafiq
895616a231 Tempo: Remove spanName from the query object if undefined (#53945) 2022-08-22 11:52:36 +01:00
Victor Marin
cbe4fb4dab TablePanel: Fix vertical scrollbar (#53457)
* TablePanel: Fix vertical scroll

* Fix vertical scrollbar with virtualized rendering

* betterer

* Refactor prop
2022-08-22 13:41:05 +03:00
George Robinson
c960301aa8 Alerting: Fix links in Microsoft Teams notifications (#54003) 2022-08-22 12:08:38 +02:00
Joao Silva
ee58d4ce4b TimePicker: Fixes relative timerange of less than a day not displaying 2022-08-22 10:37:27 +01:00
eledobleefe
8cdfedc559 A11y: Update buttons in Explore page to not use HTML Title for tooltip (#53894) 2022-08-22 11:19:22 +02:00
Polina Boneva
51d173711f A11y: do not change the focus when switching between Viz/Suggestions/Library Panels views (#53814) 2022-08-22 12:12:39 +03:00
Emil Tullstedt
ce7593686d Errors: Allow using Base as an error type (#53824) 2022-08-22 11:07:33 +02:00
Takuya Kosugiyama
2ff007b266 Cloud Monitoring: Support SLO burn rate (#53710) 2022-08-22 10:11:54 +02:00
Leon Sorokin
d5cc1bfff2 TimeSeries: fix regression with hardMin + hardMax ranging (#53922) 2022-08-19 12:20:21 -05:00
Alexander Weaver
c7b93ec331 Make channels_config no longer depend on legacy alerting (#53799) 2022-08-19 11:21:02 -05:00
Ashley Harrison
0b322a0f5d fix some anys (#53789) 2022-08-19 16:46:58 +01:00
Ryan McKinley
7cbf6015db StructureRev: use deep equals for structure revision change detection (#53920) 2022-08-19 08:29:23 -07:00
Esteban Beltran
88419aa8fe Grafana/schema: Fix plugins API regression. Add back "hidden" in LegendDisplayMode (#53925) 2022-08-19 17:06:33 +02:00
Esteban Beltran
edb54fc8d3 Fix: Rename timezones prop to timezone for plugins compatibility (#53926) 2022-08-19 16:59:56 +02:00
Joao Silva
4f2d30b153 Decimals: Fixes auto decimals to behave the same for positive and negative values (#53960) 2022-08-19 15:42:34 +01:00
Ashley Harrison
b6835ef87d convert TestRuleResult to RTL (#53953) 2022-08-19 15:00:53 +01:00
Timur Olzhabayev
4ca845e479 Chore/extend plugin schema json (#53950)
* Allowing additional parameters in tokenAuth and jwtTokenAuth
2022-08-19 08:58:32 -04:00
Ashley Harrison
0550808126 use navId over navModel, add page descriptions + create pageNav for child pages (#53936) 2022-08-19 13:32:43 +01:00
sam boyer
a87c685345 coremodels: Convert plugin-metadata schema to a coremodel (#52121)
* coremodels: Convert plugin-metadata schema to a coremodel

* Newer cuetsy; try quoting field name

* Add APIType control concept, regen pluginmeta

* Use proper numeric types for schema fields
2022-08-19 12:11:13 +02:00
Joao Silva
25538c528d Grafana-UI: Changes ClipboardButton to always allow copy of multi line content (#53903) 2022-08-19 09:57:56 +01:00
Hamas Shafiq
6b1804b6c0 Tempo: Set the default query type even if queryType was set to 'clear' (#53887) 2022-08-19 09:41:39 +01:00
eledobleefe
f926020c1b Chore: Improve FolderSettingsPage test (#53601) 2022-08-19 10:25:33 +02:00
Ashley Harrison
78995e252a implement responsive breadcrumb behaviour (#53764) 2022-08-19 09:17:52 +01:00
Ryan McKinley
7755f4c4ba Inspect: show DataFrame JSON *before* transformation and field config are applied (#53867) 2022-08-18 15:06:33 -07:00
Alex Karacaoglu
9be73e758d Transforms: Allow for clearing of select fields for outer join and grouping to matrix transformations (#53916) 2022-08-18 14:19:59 -07:00
Carl Bergquist
a74681036e prometheus: upgrades http client to 1.30 (#53901)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
2022-08-18 18:44:31 +01:00
Alex Karacaoglu
a3c1cd836e Transformations: Add support for an inner join transformation (#53865) 2022-08-18 10:22:45 -07:00
owensmallwood
fb40b80141 shows example of how and where to enable public dashboards in config.ini (#53904) 2022-08-18 11:13:48 -06:00
Laura Benz
f5f93ccd96 A11y: Make tabs in query history + inspector accessible in Explore (#53773)
* refactor: make tabs accesible

* refactor: make content after slider accessible

* refactor: add a comment with todo
2022-08-18 17:16:37 +02:00
Jo
4a9137ac40 API Keys: Add revocation for SATs (#53896)
* add apikey is_revoked field

* add token store tests

* Apply suggestions from code review

* remove unused fields
2022-08-18 16:54:39 +02:00
Galen Kistler
8b18530cb8 Prometheus: properly de-accumulate multi-heatmap responses (#53688)
* Implement workaround to #3373, grouping heatmaps by query before sorting prevents bug when calculating a heatmap with multiple values for the same label on the x-axis

* Group heatmap frames prior to sort by the concatenation of their values, excluding quantile (le)

* add unit tests for multiple query and multi-dimensional query

* replace final le value with more apt quartile label

* unify quantile labels

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2022-08-18 09:54:09 -05:00
Andreas Gerstmayr
8b22481aec User management: Use HMAC-SHA256 to generate time limit codes (password reset tokens) (#42334)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
Co-authored-by: bergquist <carl.bergquist@gmail.com>
2022-08-18 16:01:09 +02:00
Yuriy Tseretyan
9f90a7b54d Alerting: State manager to use InstanceStore (#53852)
* move saving the state to state manager when scheduler stops
* move saving state to ProcessEvalResults

* add GetRuleKey to State
* add LogContext to AlertRuleKey
2022-08-18 09:40:33 -04:00
Zoltán Bedi
86de94cbfa TimeSeries: Don't show y axis when visualisation is hidden (#53671)
* TimeSeries: Don't show y axis when visualisation is hidden

* Update snapshot

* make scale ranger return nulls for minMax when no visible data exists on scale

* drop unneeded change

* remove explicit axis.show

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2022-08-18 09:26:40 -04:00
Jo
10e6eac632 Auth: Reduce lookup cookie error to warning and invalidate cookie (#53881)
* Reduce lookup cookie error to warning. Delete invalid cookie to avoid continuous refresh

* debug log branch
2022-08-18 09:24:31 -04:00
Victor Marin
ae69b1d99c HistogramPanel: Generate .cue model (#53826)
* Generate .cue model for histogram panel

* Docs

* Refactor PR
2022-08-18 16:19:11 +03:00
Jan Garaj
6ca7009b6c CloudWatch: Add missing AWS/Lambda metrics (#53866)
Missing metrics/dimensions for AWS/Lambda. Removed Alias dimension - it isn't mentioned by doc and I don't see that dimension in my CloudWatch. Doc: https://docs.aws.amazon.com/lambda/latest/dg/monitoring-metrics.html
2022-08-18 09:18:40 -04:00
Zoltán Bedi
ea5e58a051 BarChart/PieChart: create/update models.cue (#52988)
* Reverse engineering barchart models.cue from models.gen.ts

* Barchart models.cue and import fixes

* Add models.cue for piechart

* Use single-item syntax to dodge cuetsy bug

* Add some docs

Co-authored-by: sam boyer <sdboyer@grafana.com>
2022-08-18 14:46:36 +02:00
Leon Sorokin
329aab7395 TimeSeries: Fix memory leak on viz re-init caused by KeyboardPlugin 2022-08-18 07:09:37 -05:00
Mihály Gyöngyösi
a915977002 Teams: Add TeamRolePicker to the Create and Edit Team pages (#53775)
* Add TeamRolePicker to CreateTeam and TeamSettings pages

* Align tests to the changes

* Change TeamRolePicker

* Add useRoleOptions hook

* Clean up

* Requested changes by reviewers

* Fixes

* Fixes
2022-08-18 13:21:06 +02:00
Oscar Kilhed
eedc7f1831 Update betterer results because of #53806 (#53884) 2022-08-18 06:36:12 -04:00
linoman
52904151f1 Update open ldap for macos (#53819)
* Add new OpenLDAP Docker block for macOS

* Add preconfigured users, groups and modules

* Add README
2022-08-18 12:31:19 +02:00
Karl Persson
4ff4aaab23 RBAC: Remove builtin role code (#53767)
* remove rbacBuiltInRoleAssignmentEnabled from frontendsettings

* RBAC: Remove RBACBuiltInRoleAssignmentEnabled

* RBAC: Remove code for builtin role

* RolePicker: Remove unused prop

* RolePicker: Rename builtinRole to basicRole

* RolePicker: Rename onBuiltinRoleChange to onBasicRoleChange

* RolePicker: Rename properties
2022-08-18 12:25:37 +02:00
Phil Z
8145caf554 Fix file extension (#53838) 2022-08-18 11:21:38 +02:00
Hamas Shafiq
a6ff6cd0c1 Tempo: Remove unused theme param in getStyles (#53823) 2022-08-18 09:55:24 +01:00
Jan Garaj
fdaf6b5e8d CloudWatch: Add missing AWS/ApiGateway metrics (#53839)
Missing metrics/dimensions for WebSocket API. Doc: https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-logging.html
2022-08-18 09:52:14 +02:00
Karl Persson
1b933ff3ed RBAC: Move resource permissions store to service package (#53815)
* Rename file to store

* Move resource permission specific database functions to
resourcepermissions package

* Wire: Remove interface bind

* RBAC: Remove injection of resourcepermission Store

* RBAC: Export store constructor

* Tests: Use resource permission package to initiate store used in tests

* RBAC: Remove internal types package and move to resourcepermissions
package

* RBAC: Run database tests as itegration tests
2022-08-18 09:43:45 +02:00
Jan Garaj
83f8da2e02 Update of AWS/Events (#53831)
Added missing metrics: Events, IngestionToInvocationStartLatency. Doc: https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-monitoring.html
2022-08-18 08:48:01 +02:00
Oscar Kilhed
e877c1da90 Revert "BarchartPanel: Fix color from thresholds show incorrectly (#52038)" (#53806)
This reverts commit 11c79cd6da.
2022-08-18 08:47:17 +02:00
ying-jeanne
82b63688d2 Chore: remove xorm from preference (#53803)
* Chore: remove xorm from preference

* separte feature toggle

* fix comments

* fix comments

* remove the dublicated namedexec
2022-08-17 22:07:20 -04:00
Ryan McKinley
4ac87a3b3b Geomap: update the layer order in docs (#53749) 2022-08-17 15:57:52 -07:00
Artur Wierzbicki
2a0ae74f96 Live: fix StreamingDataFrame length on replace action and schema change (#53796)
* streaming-data-frame

* add more expect.length in tests
2022-08-18 00:58:38 +04:00
Christopher Moyer
070393075a updates broken relrefs (#53857) 2022-08-17 15:26:29 -05:00
Eve Meelan
59e638acb9 Legal: CLA formatting update (#53853)
* Formatting

* linter
2022-08-17 14:37:25 -05:00
Christopher Moyer
5cbc579955 fixes time-series relrefs (#53851) 2022-08-17 14:22:52 -05:00
Brendan O'Handley
085258c035 Influxdb Datasource: Remove angular dependencies for Influxdb influxql annotations (#52546)
* migrate influxQL annotations to react and build new annotation editor

* use es-lint ignore for any type in migration

* changes for PR comments

* handle annotation editor on load error without query

* correct label for ann editor query

* add null coalesce operator and remove comment

* fix tooltip
2022-08-17 13:20:46 -04:00
Jean-Philippe Quéméner
2fef8e6f2c Alerting: add docs for file provisioning (#53101) 2022-08-17 18:53:36 +02:00
ying-jeanne
c7212643c2 add sqlx_store into star service (#53430) 2022-08-17 11:17:23 -05:00
George Robinson
6d69d7acb8 Alerting: Fix notifications for Microsoft Teams (#53810)
This commit fixes notifications for Microsoft Teams where notifications
would just contain "Card" rather than the title.
2022-08-17 16:46:46 +01:00
Karl Persson
57d87389e0 RBAC: Remove user permissions in org when user is removed (#53782)
* RBAC: Add orgID to DeleteUserPermissions

* RBAC: Refactor query to delete all permissions in specified org, 0
deletes all permissions

* Delete user permission in org when user is removed

* Remove call to delete permissions in frontend

* Remove user permissions if removed orgs is detected during oauth sync

Co-authored-by: Jo <joao.guerreiro@grafana.com>
2022-08-17 16:32:02 +02:00
Gábor Farkas
6fe2d4724a devenv: elastic: update to new version (#53825) 2022-08-17 15:02:00 +02:00
Beto Muniz
d4a63aca64 InfluxDB: Remove browser ('direct' access) mode. (#53529)
* Remove InfluxDB browser ('direct' access) mode.

* Improve text usage and clarity
2022-08-17 09:40:21 -03:00
Andrej Ocenas
f30795b088 Prometheus: Throw error on direct access (#50162)
* Disable direct access

* Hide access select if Server mode is already selected

* Update docs

* Add more tests

Co-authored-by: Beto Muniz <contato@betomuniz.com>
2022-08-17 09:37:29 -03:00
Victor Marin
b5cb7738da TimeRangePicker: Absolute timeranges with timezone (#53763) 2022-08-17 13:52:21 +03:00
Victor Marin
2d391c98d2 Histogram: Fix panel hide when clicking on legend (#53651) 2022-08-17 13:40:38 +03:00
Gilles De Mey
0523eba2a9 Alerting: Read group details before saving (#53586) 2022-08-17 11:56:54 +02:00
Gilles De Mey
68f6ae5de1 Alerting: Hide "no rules" message when we are fetching from data sources (#53778) 2022-08-17 11:54:51 +02:00
sam boyer
8ef6820f06 coremodels: Remove "Model" prefix from Go types (#53801)
Using the prefix "Model" on all generated types was adding more
verbosity to already lengthy generated types. This removed that prefix,
only replacing the base generated struct with the literal "Model" to
avoid a redundant name, e.g. dashboard.Dashboard.
2022-08-17 05:42:41 -04:00
Esteban Beltran
81957732ab Chore: Replace react-inlinesvg usage for the Icon component (#53736) 2022-08-17 09:09:58 +02:00
Kat Yang
7c5ddaea58 Chore: Add loginattempt service (#53687)
* Chore: Add loginattempt service

* Inject loginattemptservice into httpserver
2022-08-17 08:34:23 +02:00
sam boyer
c23a9d78ab Actually enforce dashboard schema on devenv (#53797)
* Relocate dashboards test so it runs

* Cover newer schema versions in stripnulls

* Strip nulls and remove iteration fields

* Fix fiscalYearStartMonth bounds

* Fix up and format dashboard schema

* Update thema, tidy Go dependencies
2022-08-16 22:07:57 -04:00
ying-jeanne
25de383540 Chore: Replace xorm with sqlx (#52575)
* Change of sqlstore to use sqlx

* Use sqlx in the playlist store

* Refectory of the interface

* update playlist service

* go mod tidy

* some refectory on interface

* fix kyle
2022-08-16 13:17:14 -05:00
Hamas Shafiq
860fd83ab4 Jaeger: Remove advanced options toggle & show advanced options by default (#53774)
Jaeger: Remove advanced options toggle & show advanced options by default
Jaeger: Make the width of all labels in the search form the same
Jaeger: Fix typo in the tooltip for the "Limit" field
Chore: Re-add durationPlaceholder constant
2022-08-16 19:27:43 +02:00
idafurjes
e3501dfa4d Chore: Add Get User Profile to user and Get User Org List to org service (#53788)
* Remove delete suer from store interface

* Remove get signed in user with cache ctx from store interface

* Support options when setting up access control tests

* Fix broken tests

* Fix lint

* Add user fake to middleware

* Fix middleware tests, remove usertest being initialised twice

* Chore: Add Get User Profile to user and Get User Org List to org service

Co-authored-by: Karl Persson <kalle.persson@grafana.com>
2022-08-16 17:50:45 +02:00
Karl Persson
d1df896962 Remove unsued dep (#53785) 2022-08-16 17:33:24 +02:00
Daniel Lee
ca017e0209 Chore: update latest.json to 9.1.0 (#53786) 2022-08-16 17:07:02 +02:00
Ashley Harrison
7eab08364e Navigation: Improve responsiveness of TopSearchBar (#53777)
* remove some magic numbers + used grid for better responsiveness

* remove old responsive styles
2022-08-16 15:09:22 +01:00
idafurjes
fa2e74cd6e Chore: Remove GetSignedInUserWithCacheCtx from store interface (#53734)
* Remove delete suer from store interface

* Remove get signed in user with cache ctx from store interface

* Support options when setting up access control tests

* Fix broken tests

* Fix lint

* Add user fake to middleware

* Fix middleware tests, remove usertest being initialised twice

Co-authored-by: Karl Persson <kalle.persson@grafana.com>
2022-08-16 16:08:59 +02:00
Konrad Lalik
f3085b1cac Alerting: Improve Mimir AM interoperability with Grafana (#53396) 2022-08-16 16:01:57 +02:00
Grot (@grafanabot)
932d1b6650 ReleaseNotes: Updated changelog and release notes for 9.1.0 (#53780) 2022-08-16 15:54:14 +02:00
Gilles De Mey
fb93b60fcc Alerting: Support for re-ordering alert rules in a group (#53318)
Co-authored-by: Peter Holmberg <peterholmberg@users.noreply.github.com>
2022-08-16 14:42:02 +02:00
idafurjes
1f442b419b Chore: Remove disable user, disable batch users and searchusers methods from store interface (#53717)
* Chore: Remove disable user and searchusers methods from store interface

* Remove disable batch user from sqlstore interface

* Remove sqlstore from search store

* Fix lint
2022-08-16 14:24:57 +02:00
Gábor Farkas
549f963366 codeowners: adjust logs ownership (#53771) 2022-08-16 07:29:30 -04:00
Hamas Shafiq
3e209c06f3 Tempo: Fix typo in the tooltip for 'Limit' (#53750) 2022-08-16 06:52:44 -04:00
Ivan Ortega Alba
38c690ecb0 Revert "Analytics: Use Fullstory to get behavioral data (#53732)" (#53762)
This reverts commit 961479b111.
2022-08-16 12:45:14 +02:00
Selene
6988dcd7f5 Release Notes: Add missing report bug fixes (#53597)
* Add missing report bug fixes

* Update docs/sources/release-notes/release-notes-9-0-7.md

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

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2022-08-16 06:42:33 -04:00
sh0rez
635571db8a pkg/web: remove Router and Logger from Context (#53765)
web.Context previously held references to the current *web.Router albeit
not using it.

It also had a log.Logger only being used once internally
2022-08-16 12:25:27 +02:00
Garrett Guillotte
47364ae11f fix configuration secret_key relref link (#52742)
Co-authored-by: Fabio Michelini <fabio.michelini@protonmail.com>
2022-08-16 10:57:08 +02:00
Garrett Guillotte
25e546ad21 Docs: Fix link in What's New in 9.1 (#53259) 2022-08-16 10:54:33 +02:00
Garrett Guillotte
1f692d4020 Docs: Add 9.1 to What's New index (#53545)
* Docs: Add 9.1 to What's New index

* Docs: Update docs index What's New link
2022-08-16 10:45:05 +02:00
Ivan Ortega Alba
961479b111 Analytics: Use Fullstory to get behavioral data (#53732) 2022-08-16 10:32:00 +02:00
renovate[bot]
a7dd095231 Update dependency eslint to v8.22.0 (#52723)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-08-16 08:44:24 +01:00
Torkel Ödegaard
c8fc840865 Fix initDashboard bug (#53722)
Co-authored-by: Erik Sundell <erik.sundell87@gmail.com>
2022-08-16 03:24:04 -04:00
sam boyer
4a5afe4fb6 openapi: Use indentations for human-readable JSON (#53707) 2022-08-15 15:39:18 -04:00
malcolmholmes
a19d82124b Build: upgrade Alpine images (#53743) 2022-08-15 18:17:55 +02:00
Zoltán Bedi
835562bb68 GeoMap: Fix tooltip not showing values (#53738) 2022-08-15 16:39:00 +02:00
Timur Olzhabayev
12381c74f4 Adding urlparams to the routes schema (#53735) 2022-08-15 15:39:50 +02:00
Isabella Siu
f39f9eb053 Cloudwatch: update redis metrics (#53618) 2022-08-15 09:09:27 -04:00
Vardan Torosyan
962bf8a906 RBAC: Remove the flag from the config which states that you can disable RBAC (#53730) 2022-08-15 14:22:04 +02:00
idafurjes
dfc75b1114 Remove delete suer from store interface (#53726) 2022-08-15 13:56:16 +02:00
Mihály Gyöngyösi
1c0ab501aa UsersTable: Display Disabled flag in Organizations' Users table (#53656)
* Add disabled column to Org's Users table

* fix typo

* Change column order

* Add test for testing whether GetOrgUsers populates the DTO correctly
* Remove type assertion
2022-08-15 10:58:58 +02:00
Karl Persson
4069fe1c39 RBAC: Update permission query to not join on team table (#53677)
* RBAC: Add teamIDs to get permission query

* RBAC: Remove join on team table and use team ids

* RBAC: Pass team ids
2022-08-15 09:41:20 +02:00
Nathan Marrs
97eec9c220 Geomap: Minor 9.1 doc fixes (#53704) 2022-08-12 20:45:33 -07:00
Drew Slobodnjak
e9e5c97807 Geomap: Update language to match documentation and remove beta (#53703)
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2022-08-12 21:33:30 -04:00
Nathan Marrs
0362ab131e Geomap: Update whats new docs for 9.1 (#53634)
Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>
2022-08-12 15:58:01 -07:00
Drew Slobodnjak
ef24453b9b Geomap: Update Documentation (#53552)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
Co-authored-by: Nathan Marrs  <nathanielmarrs@gmail.com>
2022-08-12 15:37:10 -07:00
Alexander Weaver
f093c249ac Alerting: Fix incorrect embedded DTO being returned when handling rule groups (#53701)
* Fix DTO embedding when getting/putting alert rule groups

* Drop usage of word 'Domain'

* Rename var as well
2022-08-12 16:36:50 -05:00
Nathan Marrs
a19b3136c9 Geomap: Add devenv dashboard for v9.1 of geomap (#53638) 2022-08-12 14:30:55 -07:00
Eve Meelan
a0cbe548fe replace relrefs with URLs (#53686) 2022-08-12 13:10:07 -07:00
Alexander Weaver
ccd41df603 Fix order-of-magnitude bug in DTO conversion (#53690) 2022-08-12 15:02:40 -05:00
Kat Yang
943cdea855 Chore: Add tempuser service (#53325)
* Chore: Add tempuser service

* Add implementation

* Fix linter; Inject tempUser into wire and HTTPServer

* Fix errors
2022-08-12 12:13:23 -04:00
Kim Nylander
101c087fc7 [Doc] Added link to APM dashboard doc for Service graph Tempo data source doc (#53491)
* Added link to APM dashboard doc

* Apply suggestions from code review
2022-08-12 08:46:28 -07:00
Leo
0ce89dbcb6 use dash-db type when searching for dashboard (#53607) 2022-08-12 16:14:04 +02:00
Eric Leijonmarck
dc8eb0b777 Print package error message for deprecated io/ioutil (#53665)
* Add: package error message for io/util

* added a ioutil for testing ci

* Revert "added a ioutil for testing ci"

This reverts commit 8c324ccf8a.

* removed spaces
2022-08-12 09:57:42 -04:00
Yuriy Tseretyan
d8d97d15ba Alerting: AlertingProxy to elevate permissions for request forwarded to data proxy when RBAC enabled (#53620) 2022-08-12 09:56:18 -04:00
Andreas Christou
d6a0a5c9ed Set projectName in componentDidMount to ensure GCE project is set (#53652)
- Update componentDidMount to call ensureGCEDefaultProject to correctly set project name for GCE Service Account auth
- Set state appropriately
- Update test
2022-08-12 14:54:19 +01:00
Andreas Christou
cace6f06d1 Fix webpack issue (#53666) 2022-08-12 13:53:35 +00:00
Eric Leijonmarck
cac3833b8e Auth: Add cli command users-manager for conflict resolution (#52344)
* add users-manager command

* add users-manager command

* rename files

* refactor: imports and renaming

* Command: add conflict merge user command

- MergeUser will
	- replace all user_ids from conflicting users to the chosen userId
	- delete users whose user_ids are not the chosen user
- SameIdentification will
	- update chosen user with chosen email,login details
	- delete users whose user_ids are not the chosen user

* refactor: clean up

* refactor: create structure for read, validate, ingest

* feat: ls and generate-file for conflicting users

* remove usagestats

* added back pkg/services/login/authinfoservice/database/stats.go

* Revert "added back pkg/services/login/authinfoservice/database/stats.go"

This reverts commit 2ba6e3c4d6.

* Revert "remove usagestats"

This reverts commit 1e3fa97810.

* cherry pick

* Revert "cherry pick"

This reverts commit 461626c306.

* fix test

* make lint

* make test run

* clean up and refactored to align with downstream refactoring

* formatting

* refactor: name list instead of ls

* fix: static lint error use trimprefix

* fix: remove unused functions in sqlstore

* fix: remove unused function

* handling of multiple users and resolve discarded users

* fix tests

* fix: bug that did not exclude the blocks

* ioutil is blacklisted

* should not run tests for mysql

* fix tests
2022-08-12 14:47:31 +01:00
Emil Tullstedt
cc777e175e Chore: Panic! in the Logs (#53664) 2022-08-12 13:43:16 +00:00
Sonia Aguilar
f416651842 Show alerting availability in data source details (#53391)
* Show alerting availability in data source details

* Show tooltip info in data source dropdown when creating an alert

* return earlier in HeaderExtras component

* Use getDataSourceSrv().getInstanceSettings instead of getDataSourceSrv().get to simplify

* Make information icon clickable and open a new window with documentation url
2022-08-12 15:32:07 +02:00
Ivana Huckova
fde5147d71 Loki, Prometheus: Fix passing of query with defaults to code mode (#53646) 2022-08-12 15:00:55 +02:00
Ivana Huckova
f34a03b2f1 Loki: Rename Labels to Label filter and update placeholders (#53446)
* Loki: Rename Labels to Label filter and update placeholders

* Update label

* Replace Label filter with Label filters based on suggestion
2022-08-12 07:38:34 -04:00
Karl Persson
91ef08de68 RBAC: Remove unused code (#53649) 2022-08-12 13:02:24 +02:00
idafurjes
0a2a8bc919 Chore: Add user methods to service (#53595) 2022-08-12 12:13:26 +02:00
Alex Khomenko
7944f3a692 ColorPickerInput: Enable input clearing (#53587)
* ColorPickerInput: Enable removing selected color

* ColorPickerInput: Add tests

* ColorInput: Add isClearable prop
2022-08-12 13:07:24 +03:00
Andreas Christou
d4f382892d CloudMonitor: Fix to hide queries when used in conjunction with Expressions (#53537)
* Correctly pass all original query parameters on interpolation

* Add datasource tests

- Update props on mock query
- Add mock instance settings
- Add util function to generate template variables
- Add datasource test file
- Correct setting of templateSrv
- Update betterer results

* Simplify test and pass templateSrv appropriately

* Fix lint issue

* Simplify test and add type that supports parital nested objects

* Update test and remove unneeded util function

* Rename to avoid duplicate mock
2022-08-12 11:02:56 +01:00
Maria Alexandra
2b5d12310a Docs: Fix missing reference update on dashboard page (#53641) 2022-08-12 09:49:46 +02:00
Mihály Gyöngyösi
57a46767cd AccessControl: Move GetCacheKey to SignedInUser (#53591)
* Add HasUniqueId and IsApiKeyUser to SignedInUser

* Improve GetCacheKey by explicit checks and error branch

* Align SignedInUser to merged changes

* change comparison method

Co-authored-by: jguer <joao.guerreiro@grafana.com>
2022-08-12 09:47:47 +02:00
Karl Persson
7e16d5b4b4 RBAC: Fix various ui issues for role picker (#53589)
* RolePicker: Check if user has permissions to delegate roles

* UserRolePicker: Require both UserRolsAdd and UserRolesRemove for chaning
roles

* RolePicker: Add option for controlling if roles can be updated to
RolePicker

* UserOrgs: Dont try to fetch roles with wrong permission

* RolePicker: make usage consistent with allowed actions

* RolePickerMenu: Remove unused property

* UserOrgs: Check for correct permission

* UserRolePicker: add apply to controll apply behaviour instand of
updateDisabled

* UserOrgs: Check for correct permission when trying to update roles

* RolePicker: Disable button if no roles or org role can be updated

* RolePicker: Always close on update

* RolePicker: Fix issue with updating immutable value

* ServiceAccountsListItem: Pass correct value to RolePicker

* ServiceAccountCreatePage: Pass correct value
2022-08-12 09:16:16 +02:00
Christopher Moyer
01bb83853c docs: refactor work, combines time-series topics (#53530)
* combines time-series topics

* makes prettier

* Progress on new time series docs

* Move annotation docs to dashboard annotation topic, simplify and update text for axis docs and color scheme docs

* Minor tweaks

* Move titles from shared files into the topic and add some intro paragraphs

* Fix double axis headings

* Test new image

* starts copyedit

* copy edit

* Update docs/sources/visualizations/time-series/index.md

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

* Update docs/sources/visualizations/time-series/index.md

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

* fixes typos

* adjust path to images

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2022-08-12 08:20:23 +02:00
Jean-Philippe Quéméner
7f0002448d Alerting: use duration model for alert rule provisioning api (#53196) 2022-08-12 00:58:02 +02:00
Jean-Philippe Quéméner
e14c91d5d4 Alerting: fetch interval from stored namespace UID (#53195) 2022-08-12 00:54:57 +02:00
Jean-Philippe Quéméner
8c5f5e7a32 Alerting: create provisioning dir in docker image (#53594) 2022-08-12 00:16:02 +02:00
Yuriy Tseretyan
e3da9da51d update alertmanager to 0.24 (#53555) 2022-08-11 17:54:32 -04:00
Adela Almasan
1f93216f1d Layers check (#53611) 2022-08-11 17:39:18 -04:00
Giordano Ricci
6b84dddee8 Fix build error (#53615) 2022-08-11 15:21:37 -04:00
Gilles De Mey
e9980a9bb8 Alerting: Adds interval and For to alert rule details (#53211) 2022-08-11 18:49:21 +02:00
Andre Pereira
1216e70b08 Fix devenv tempo port (#53605) 2022-08-11 17:17:21 +01:00
Matias Chomicki
8d69acb9f8 Chore(loki): remove any from LokiQueryField test (#53548) 2022-08-11 18:08:23 +02:00
Matias Chomicki
df8d1de94f Chore(loki): remove any from config editor test (#53475) 2022-08-11 18:08:05 +02:00
Giordano Ricci
c1b30c56c9 Correlations: Add GetCorrelation(s) HTTP APIs (#52517)
* Correlations: Get Single correlations

* Correlations: Get all correlations for given source ds

* Correlations: Get all correlations

* add tests

* add DB indices

* fix lint errors

* remove skip from tests

* use DatasourceService in test
2022-08-11 16:58:11 +01:00
Ivana Huckova
8813cbfb62 Loki: Update copy for missing label filter error message (#53449)
* Loki: Update copy for missing label filter

* Update
2022-08-11 17:57:10 +02:00
Hamas Shafiq
6592b03f12 Jaeger: Extract inline CSS into getStyles 2022-08-11 16:41:59 +01:00
Ashley Harrison
6cdeeeda3c remove UseState from last 2 stories (#53596) 2022-08-11 16:28:22 +01:00
Hamas Shafiq
20caed026f Jaeger: Improve JSON file upload error msg 2022-08-11 16:23:19 +01:00
Maria Alexandra
6ec5e7b998 Docs: Update dashboard documentation, including new search (#53050)
Co-authored-by: Chris Moyer <chris.moyer@grafana.com>
2022-08-11 17:18:52 +02:00
malcolmholmes
0ac85c8169 Build: fix shellcheck (#53602) 2022-08-11 16:13:41 +01:00
Andres Martinez Gotor
a31d96d20a Prometheus: Promote Azure auth flag to configuration (#53447) 2022-08-11 16:12:57 +02:00
zhichli
806fb8ab7a Tracing: Fix OpenTelemetry Jaeger context propagation (#53269)
* fix otel jaeger context propagation

* add back launch.json

* add back launch.json
2022-08-11 16:11:34 +02:00
Josh Hunt
44ea98b24f Chore: Ignore type assertions in __mocks__ (#53593) 2022-08-11 14:06:15 +00:00
timkendrickmw
85dbacafdb GrafanaUI: improve Prometheus getQueryHints performance (#52148) 2022-08-11 15:47:07 +02:00
Karl Persson
c08fe3a53c RBAC: Enable rbac when creating new settings (#53531)
* Settings: Set RBACEnabled to true by default

* Remove accessControlEnabledFlag and explicitly set to false when needed

* Disable rbac for tests
2022-08-11 15:37:31 +02:00
Jack Westbrook
b1ce721cf1 Levitate: Update workflow to find type declaration via package.json (#53539)
* refactor(breaking-changes): make sure to pack and zip tarballed packages before artifact upload

* feat(check-breaking-changes): support extracting npm package tarballs before comparing packages

* chore(breaking-changes): fix typo preventing upload of pr_built_packages.zip
2022-08-11 15:17:51 +02:00
idafurjes
da72a4ed2e Chore move Filter to user service (#53588) 2022-08-11 14:45:29 +02:00
idafurjes
a14621fff6 Chore: Add user service method SetUsingOrg and GetSignedInUserWithCacheCtx (#53343)
* Chore: Add user service method SetUsingOrg

* Chore: Add user service method GetSignedInUserWithCacheCtx

* Use method GetSignedInUserWithCacheCtx from user service

* Fix lint after rebase

* Fix lint

* Fix lint error

* roll back some changes

* Roll back changes in api and middleware

* Add xorm tags to SignedInUser ID fields
2022-08-11 13:28:55 +02:00
Jo
ca72cd570e Remove ioutil.ReadDir from usage (#53550)
* add depguard rule for ioutil

* replace ioutil.ReadDir with os.ReadDir

* use legacy option in depguard supported in golangci-lint v1.40

* replace ioutil.ReadDir with os.ReadDir

* return error for file info
2022-08-11 07:21:12 -04:00
Alex Khomenko
b42f3e2c4c A11y: Create Minimal Styleguide (#46948)
* First draft of the guide

* Fix Select part

* Move a11y PR guidelines

* Update contribute/create-pull-request.md

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

Co-authored-by: Maria Alexandra <239999+axelavargas@users.noreply.github.com>
2022-08-11 14:00:38 +03:00
Dimitris Sotirakis
332bc3aa63 CI: Split store-packages step (#53516)
* Remove unused def

* Add grafanacom step
2022-08-11 05:31:35 -04:00
Dimitris Sotirakis
fa4abdcce1 Grafana Build: Sync Grafana versioning changes from build-pipeline (#53522)
* Sync version changes

(cherry picked from commit fb449ba0376cd7d86928e8b08ef77a851488604b)

Sync version refactoring changes

* Update grabpl
2022-08-11 11:44:59 +03:00
Ivan Ortega Alba
6423485061 Preferences: Use search endpoint to get missing dashboard (#53540) 2022-08-11 10:34:01 +02:00
Serge Zaitsev
72367f99cf Chore: Move plugin settings store code into a dedicated service (#53560) 2022-08-11 09:50:53 +02:00
Zoltán Bedi
818bc88242 MSSQL: Don't inject angular dependency (#53546) 2022-08-11 09:43:20 +02:00
Yaelle Chaudy
dfe33a63fb Datasources: Emit event on dashboard load with queries info (#52052)
Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
Co-authored-by: Andres Martinez <andres.martinez@grafana.com>
2022-08-11 09:30:14 +02:00
Levente Balogh
d7556bd189 fix: use type instead of uid to get datasource metadata (#53543) 2022-08-11 07:24:39 +02:00
Guilherme Caulada
7554322327 Fix middleware tests for public dashboards (#53557) 2022-08-10 17:12:25 -04:00
Guilherme Caulada
7924d3b3b5 Secrets: Move license check to secret store plugin (#53185)
* Move license check to secret store plugin

* Use shouldUseRemoteSecretsPlugin for migration

* Encapsulate plugin startup logic in sync.Once

* Remove global logger from startup functions

* Fix issues with wire and secrets plugin check

* Remove todo for plugin fatal error

* Rename fatalErr variable to be less confusing

* Fix merge conflicts

* Fix issue with grafana-cli wire and opentsdb

* Remove duplicated import on remote plugin

* Rename plugin check in favor of error return value

* Remove unnecessary import on grafana-cli wireexts_oss

* Remove unnecessary import on grafana wireexts_oss

* Reset sync.Once during test setup

* Remove unrelated opentsdb change on grafana-cli wire

* Readd opentsdb change on grafana-cli wire
2022-08-10 16:47:03 -03:00
lean.dev
92d0420a45 Adding logs during migration of secrets to plugin (#53426) 2022-08-10 16:23:55 -03:00
George Robinson
5e1d628f21 Alerting: Use Adaptive Cards in Teams notifications (#53532)
This commit changes the cards in Teams notifications from Office 365
Connector cards to Adaptive Cards to fix an issue where images were not
shown in Teams for desktop and web. Since Office 365 Connector cards
are deprecated, it made sense to move to Adapative Cards and fix this
bug at the same time.

The Adaptive Card messages maintain the design of the Office 365
Connector Card with a number of minor differences:

- In Adaptive Card messages the color of the title is red or green
  depending on the status of the alerts, where as with Office 365
  connector cards there was a colored border at the top of the title

- In Adaptive Card messages the title is bold to make it easier to read
  when the color is red or green

- In Adaptive Card messages the thumbnails for images are medium size
  if there are more than two images, otherwise large size
2022-08-10 19:51:20 +01:00
Alexander Weaver
b198559225 Alerting: Extend PUT rule-group route to write the entire rule group rather than top-level fields only (#53078)
* Wire up to full alert rule struct

* Extract group change detection logic to dedicated file

* GroupDiff -> GroupDelta for consistency

* Calculate deltas and handle backwards compatible requests

* Separate changes and insert/update/delete as needed

* Regenerate files

* Don't touch the DB if there are no changes

* Quota checking, delete unused file

* Mark modified records as provisioned

* Validation + a couple API layer tests

* Address linter errors

* Fix issue with UID assignment and rule creation

* Propagate top level group fields to all rules

* Tests for repeated updates and versioning

* Tests for quota and provenance checks

* Fix linter errors

* Regenerate

* Factor out some shared logic

* Drop unnecessary multiple nilchecks

* Use alternative strategy for rolling UIDs on inserted rules

* Fix tests, add back nilcheck, refresh UIDs during test

* Address feedback

* Add missing nil-check
2022-08-10 12:33:41 -05:00
owensmallwood
dc23643bee Public Dashboards: Usage Insights (#52768) 2022-08-10 14:14:48 -03:00
Christopher Moyer
5e4d5eb14b updates whats new version number and link (#53541) 2022-08-10 10:22:01 -05:00
Christopher Moyer
f96a72d3ec Docs/refactors configure panels (#53485)
* updates prose

* updates prose and relrefs

* incorporates feedback

* moves repeating rows to add and organize panels; fixes relrefs
2022-08-10 10:18:04 -05:00
Josh Hunt
081d6e9d3e Typed variables pt5: Remove generics from getInstanceState (#53018)
* wip

* make diff easier to read

* Update template_srv getVariables to return new TypedVariableModel

* update VariableType to use the type from TypedVariableModel

* tidy things up

* Chore: Use type-accurate mock variables in tests

* Chore: Type VariableState to use TypedVariableModel

* fix typo

* remove type assertion from template_srv.getVariables

* use typescript/no-redeclare for compatibility with ts overloads

* remove generics from getVariable() and overload it to only return undefined based on arguments

* update usages of getVariable()

* Remove generic from getInstanceState

* update usages of getInstanceState

* fix lint
2022-08-10 16:06:49 +01:00
Ashley Harrison
f32c0058a1 remove UseState from legacy Select story (#53519) 2022-08-10 15:30:02 +01:00
Kevin Minehart
d117689aea CI: move grabpl build-frontend from grabpl to grafana (#53073)
* move grabpl build-frontend
2022-08-10 10:29:51 -04:00
ismail simsek
435aaf81d2 Chore: update latest.json to 9.0.7 (#53533) 2022-08-10 14:28:41 +00:00
Josiah (Jay) Goodson
7d7890e23c Transform: Add a limit transform (#49291)
* Add a limit transform

* Add a limit transform

* Simplify filter code

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2022-08-10 07:21:11 -07:00
Jo
062d255124 Handle ioutil deprecations (#53526)
* replace ioutil.ReadFile -> os.ReadFile

* replace ioutil.ReadAll -> io.ReadAll

* replace ioutil.TempFile -> os.CreateTemp

* replace ioutil.NopCloser -> io.NopCloser

* replace ioutil.WriteFile -> os.WriteFile

* replace ioutil.TempDir -> os.MkdirTemp

* replace ioutil.Discard -> io.Discard
2022-08-10 15:37:51 +02:00
Leo
4926767737 Dashboard: Reverted the changes of hiding multi-select and all variable in the datasource picker (#53521)
* REVERT PanelEdit: Hide multi-/all-select datasource variables in datasource picker, PR 52142

* user essentials mob! 🔱

lastFile:public/app/features/dashboard/dashgrid/PanelChrome.tsx

* user essentials mob! 🔱

lastFile:public/app/features/dashboard/dashgrid/PanelChrome.tsx

* removed todo comments

Co-authored-by: polinaboneva <polina.boneva@grafana.com>
Co-authored-by: Joao Silva <joao.silva@grafana.com>
Co-authored-by: eledobleefe <laura.fernandez@grafana.com>
2022-08-10 15:30:00 +02:00
lean.dev
07681a737d Add LockExecuteAndRelease method to ServerLockService (#53417) 2022-08-10 10:28:25 -03:00
Serge Zaitsev
6e4b537ba6 Chore: Remove datasources from the Store interface (#53515) 2022-08-10 15:04:51 +02:00
Grot (@grafanabot)
86030493a8 ReleaseNotes: Updated changelog and release notes for 9.0.7 (#53524) 2022-08-10 08:57:57 -04:00
Ashley Harrison
26e81cad21 Add tests for Breadcrumbs (#53514) 2022-08-10 12:56:25 +01:00
Ashley Harrison
e51c80f8dd Storybook: remove UseState from ButtonSelect story (#53509)
* remove UseState from ButtonSelect story

* leave this type assertion for now
2022-08-10 07:00:19 -04:00
Ashley Harrison
aaccb592cc remove UseState from Drawer story (#53503) 2022-08-10 11:40:33 +01:00
Dimitris Sotirakis
e9fe9a25dc Run docs pipeline on *.md changes only, in the packages dir (#53517) 2022-08-10 13:39:56 +03:00
idafurjes
6afad51761 Move SignedInUser to user service and RoleType and Roles to org (#53445)
* Move SignedInUser to user service and RoleType and Roles to org

* Use go naming convention for roles

* Fix some imports and leftovers

* Fix ldap debug test

* Fix lint

* Fix lint 2

* Fix lint 3

* Fix type and not needed conversion

* Clean up messages in api tests

* Clean up api tests 2
2022-08-10 11:56:48 +02:00
Kirchen99
46004037e2 Dashboard: Support Variables in "Filter by Name" Transformation (#51804) 2022-08-10 10:54:40 +01:00
Matias Chomicki
9b1e1d67cc Chore(devenv): remove unsupported elasticsearch versions (#53470) 2022-08-10 11:13:39 +02:00
Selene
119ce90234 Allow empty value in kv_store (#53416) 2022-08-10 10:48:14 +02:00
Leo
c4984854b6 added dashboard uid when tracing header in browsermode (#53232) 2022-08-10 10:36:19 +02:00
Karl Persson
aa484a60c9 RBAC: Fix dashboard filter in SQLBuilder (#53379)
* Reuse DasbhoardPermissionFilter

*  Use rbac dashboard filter if enabled
2022-08-10 10:32:03 +02:00
Ashley Harrison
6d495a6a8e Navigation: Improve breadcrumb accessibility (#53471)
* refactor breadcrumbs into their own folder, add appropriate accessibility

* rename Breadcrumb to BreadcrumbItem
2022-08-10 09:24:21 +01:00
Jo
1f8b1eef75 SAML: Do not SAML SLO if user is not SAML authenticated (#53418)
* Only SLO user if the user is using SAML

* only one source of truth for auth module info

* ensure SAML is also enabled and not only SLO

* move auth module naming to auth module login package

* use constants in other previously unused spots
2022-08-10 10:21:33 +02:00
Jo
09c95bc31f TeamSync: Fix team syncing out of orgs mapped by auth method (#53257) 2022-08-10 10:20:23 +02:00
Matej Kubinec
bca8a5d153 Grafana UI: Add implicit submit to TimeRangeForm for A11y (#52647) 2022-08-10 10:00:02 +02:00
Ashley Harrison
d38e86f3a6 Storybook: add controls support + remove UseState from RelativeTimeRangePicker story (#53459)
* add controls support + remove UseState from RelativeTimeRangePicker story

* don't need this displayName

* exclude onChange
2022-08-10 08:55:22 +01:00
Ivan Ortega Alba
742686bab1 Library Panels: Use UIDs to list Dashboards using a panel (#53477) 2022-08-10 03:43:09 -04:00
Kian Eliasi
e3c50f0cd6 Chore: Remove any from public/app/plugins/datasource/elasticsearch/hooks/useNextId.test.tsx (#53427)
* Remove any from public/app/plugins/datasource/elasticsearch/hooks/useNextId.test.tsx

* Fix lint and update betterer results
2022-08-10 09:25:35 +02:00
Joey Tawadrous
9fbebc7550 Update codeowners (#53381) 2022-08-10 08:04:37 +01:00
Joey Tawadrous
f9576ad137 Update add to project urls (#53384) 2022-08-10 08:03:48 +01:00
Adela Almasan
45750da667 Geomap: Set markers color based on selected color field #53493 2022-08-09 15:42:37 -07:00
Christopher Moyer
ffb4aba214 updates aliases (#53488) 2022-08-09 14:59:05 -05:00
Christopher Moyer
acae736796 moves legend to visualizations, adds links (#53486) 2022-08-09 14:41:41 -05:00
linoman
9f749eead7 Fix cloak typo (#53474) 2022-08-09 17:38:49 +02:00
Mihály Gyöngyösi
3ac4415d6d Devenv: Universal jwt_proxy environment (#53377)
* change hostname to env.grafana.local to not collide with any custom host.docker.internal settings
* add WSL2 documentation
* update general documentation
* cleanup
2022-08-09 17:02:36 +02:00
Ashley Harrison
e73e3cac11 add controls support + remove UseState from WeekStartPicker.story.tsx (#53455) 2022-08-09 16:00:39 +01:00
Peter Holmberg
509e34cfe7 Alert list panel: Add view mode "Stat" (#53281)
* add stat mode

* remove unused import
2022-08-09 16:37:09 +02:00
George Robinson
196b781c70 Alerting: Delete expired images from the database (#53236)
This commit adds a DeleteExpiredService that deletes expired images from the database. It is run in the periodic collector service.
2022-08-09 15:28:36 +01:00
sh0rez
adbb789877 pkg/web: detect Hijack() as chain write (#53466) 2022-08-09 16:04:21 +02:00
kay delaney
96403236cb Chore: Further reduce usage of v1 theme (#53423) 2022-08-09 14:58:32 +01:00
kay delaney
f4a5e034b3 LibraryPanels: Rewrite invalid connection deletion query to be MySQL-friendly (#53460)
Closes #53456
2022-08-09 14:55:36 +01:00
Karl Persson
e4c45c4f98 RBAC: Remove sort and unique values when fetching permissions (#53461)
* RBAC: remove sort and unique values for fetching permissions
2022-08-09 15:52:14 +02:00
Matias Chomicki
27e2953951 Loki: Rewrite getHighlighterExpressionsFromQuery to use Loki parser (#53316)
* refactor(loki): use Loki parser in getHighlighterExpressionsFromQuery

* fix(highlighter): update regex to properly identify term quotes

* refactor(highlighter): determine quote type by string comparison

* Chore: remove empty line
2022-08-09 15:23:14 +02:00
Dimitris Sotirakis
d638cd4fd7 Trigger test release on pkg/cmd/** changes (#53448) 2022-08-09 08:21:09 -05:00
Ivana Huckova
ab739bf0e6 Collapse: Fix miss-aligned arrow icon (#53452) 2022-08-09 15:05:10 +02:00
sh0rez
534ece064b pkg/web: closure-style middlewares (#51238)
* pkg/web: closure-style middlewares

Switches the middleware execution model from web.Handlers in a slice to
web.Middleware.
Middlewares are temporarily kept in a slice to preserve ordering, but
prior to execution they are applied, forming a giant call-stack, giving
granular control over the execution flow.

* pkg/middleware: adapt to web.Middleware

* pkg/middleware/recovery: use c.Req over req

c.Req gets updated by future handlers, while req stays static.

The current recovery implementation needs this newer information

* pkg/web: correct middleware ordering

* pkg/webtest: adapt middleware

* pkg/web/hack: set w and r onto web.Context

By adopting std middlewares, it may happen they invoke next(w,r) without
putting their modified w,r into the web.Context, leading old-style
handlers to operate on outdated fields.

pkg/web now takes care of this

* pkg/middleware: selectively use future context

* pkg/web: accept closure-style on Use()

* webtest: Middleware testing

adds a utility function to web/webtest to obtain a http.ResponseWriter,
http.Request and http.Handler the same as a middleware that runs would receive

* *: cleanup

* pkg/web: don't wrap Middleware from Router

* pkg/web: require chain to write response

* *: remove temp files

* webtest: don't require chain write

* *: cleanup
2022-08-09 14:58:50 +02:00
Victor Marin
3893c46976 Histogram: Send proper dataframe to PlotLegend (#53284)
* Send proper dataframe to PlotLegend

* Update dataFrameFieldIndex for multiple frames
2022-08-09 15:39:42 +03:00
Ashley Harrison
8185b6fdf7 refactor component to be more dumb, use LinkButton for icons and fix alignment (#53383) 2022-08-09 11:46:27 +01:00
Ashley Harrison
25c7dc9151 Add controls support + remove UseState from TimeRangePicker.story.tsx (#53376) 2022-08-09 11:20:03 +01:00
Andrew Grangaard
109f821abf Query Builder: Fix spelling of "lose" in user visible message (#53435)
* Fix spelling of "lose" in user visible message

* Fix spelling of "lose"
2022-08-09 10:59:17 +02:00
lai
8f9a372ce2 Access Control: optimize GetUserPermissions sql (#53279)
* Access Control: optimize GetUserPermissions sql
2022-08-09 10:40:22 +02:00
Dimitris Sotirakis
bf30976200 Change from arm to armv7 (#53437) 2022-08-09 04:20:45 -04:00
Alex Ratner
fecf4c41ad Dashboard: Spelling corrections in end-user visible dialogs (#53340) 2022-08-09 10:19:30 +02:00
Karl Persson
592d31e617 RBAC: Handle case when folder id is negative (#53438) 2022-08-09 04:14:08 -04:00
Kevin Minehart
59ce564d49 CI: move grabpl build-docker from grabpl to grafana (#53077)
* add grabpl build-docker
2022-08-09 09:43:28 +03:00
linoman
ed5dac7a75 Fix groups and useres indentation (#53414) 2022-08-09 08:05:15 +02:00
Brendan O'Handley
7aeb8b4cdf Prometheus: Remove metadata endpoint (#53428)
* remove prom metadata endpoint until we have a fix for detecting versions and implementations

* fix linting issue
2022-08-08 18:37:12 -04:00
sam boyer
e6903582d0 coremodels: Include nested optional fields in output (#53355) 2022-08-08 21:48:21 +00:00
Seth Falco
a8666370be fix: add promql placeholder text (#53321) 2022-08-08 19:11:45 +02:00
Dimitris Sotirakis
499cac44e3 Remove packages-bucket arg (#53421) 2022-08-08 13:05:26 -04:00
matt abrams
d69457d5e5 revise to match docs (#53354) 2022-08-08 18:49:54 +02:00
Dimitris Sotirakis
c472726083 Change base image for npm storage (#53419) 2022-08-08 12:43:44 -04:00
Brendan O'Handley
85db523dd5 Graphite Plugin: fix annotation migration regression with ref-ids (#53361)
* fix regression with ref-ids

* remove duplicate check for annotations in fix
2022-08-08 12:32:35 -04:00
ying-jeanne
ba89471598 Chore: Enable ANSI_QUOTES for Mysql Database (#53277)
* remove the quote dialect

* add environment variable
2022-08-08 12:14:17 -04:00
Dimitris Sotirakis
732c22ed02 CI: Update grabpl to v3.0.1 (#53369)
* Update grabpl to v3.0.0

* Update to v3.0.1
2022-08-08 12:08:55 -04:00
ying-jeanne
af09638a0d remove the sqlstore playlist methods (#53415) 2022-08-08 11:06:06 -05:00
eledobleefe
9930fd522d Chore: convert DashboardGrid test to RTL (#53405) 2022-08-08 17:43:35 +02:00
kay delaney
1772bd4238 Chore: Reduce usage of v1 theme (#53245) 2022-08-08 16:37:06 +01:00
Kevin Minehart
d1d237f30a CI: move grabpl shellcheck from grabpl to grafana (#53076)
* add grabpl shellcheck

* grabpl shellcheck -> ./bin/build shellcheck
2022-08-08 10:36:13 -05:00
Ezequiel Victorero
7f43839813 Chore: disable flaky e2e test (#53408)
* Chore: disable flaky e2e test
2022-08-08 11:34:59 -04:00
linoman
82d35b7d72 Change LDAP configuration to secure connections (#53404) 2022-08-08 17:27:22 +02:00
Gilles De Mey
f0594ebace Alerting: Fix alert detail layout issue (#53256) 2022-08-08 16:57:34 +02:00
kay delaney
c2d3b45bf4 Chore: Make "why-did-you-render" a dynamic import (#53121) 2022-08-08 15:33:49 +01:00
Ashley Harrison
f1295e4bd0 Chore: Update version of @grafana/eslint-config (#53403)
* use let/const over var

* use new version of @grafana/eslint-config
2022-08-08 15:19:15 +01:00
Grot (@grafanabot)
ff8d96602a ReleaseNotes: Updated changelog and release notes for 8.5.10 (#53395) 2022-08-08 15:16:29 +02:00
Ivana Huckova
84b2498150 Loki: Fix showing of unusable labels field in detected fields (#53319)
* Loki: Fix showing of labels field in detected fields

* Create reusable createlogRow mock
2022-08-08 14:27:33 +02:00
Dimitris Sotirakis
ee8966344d Replace with anonymoud functions (#53386) 2022-08-08 08:09:52 -04:00
Josh Hunt
aee2856907 Fix: correct bold, italics, and code color in Panel tooltips (#53380) 2022-08-08 07:10:42 -04:00
Matias Chomicki
6f01930e9d Chore: remove any from test (#53260) 2022-08-08 11:26:12 +02:00
Leo
64967325b2 Search: Migrated impressions to use dashboardUID (#53090)
* used dashboarduid in impressions

* handle scenario to convert all ids saved in storage to uids
2022-08-08 11:13:19 +02:00
Jo
beb3cb9abe Oauth: Reduce error scope on upsert (#53242) 2022-08-08 10:58:10 +02:00
ismail simsek
a40c1e227c Prometheus: Use lezer-promql types instead of hardcoded strings (#53287)
* Prometheus: Use lezer-promql types instead of hardcoded strings

* Update comment line

* Removing more hardcoded values
2022-08-08 10:14:12 +02:00
Ashley Harrison
2fea3f0d9a BarGauge: Show empty bar when value, minValue and maxValue are all equal (#53314)
* prevent returning NaN from getValuePercent

* return 0 instead of NaN always
2022-08-08 09:11:46 +01:00
Teddy Lin
42f9a6e67b Azure Monitor: Add Network Insights Dashboard (#50362) 2022-08-08 09:38:23 +02:00
Josh Hunt
fbc48d68f1 E2E: Make Cypress recordings higher res + quality (#53342) 2022-08-08 09:54:00 +03:00
Krzysztof Dąbrowski
2dab7ad890 Login: allow basic users to reset password when LDAP or Auth Proxy is enabled (#52331) 2022-08-08 05:12:39 +00:00
Kat Yang
62b4dbf52f Chore: Remove pluginsettings methods from store and mockstore (#53347) 2022-08-05 12:26:39 -04:00
Josh Hunt
4b4d546e32 Typed variables pt4: Remove generics from getVariable (#53017)
* wip

* make diff easier to read

* Update template_srv getVariables to return new TypedVariableModel

* update VariableType to use the type from TypedVariableModel

* tidy things up

* Chore: Use type-accurate mock variables in tests

* Chore: Type VariableState to use TypedVariableModel

* fix typo

* remove type assertion from template_srv.getVariables

* use typescript/no-redeclare for compatibility with ts overloads

* remove generics from getVariable() and overload it to only return undefined based on arguments

* update usages of getVariable()

* Fix Interval variable options picker not working
2022-08-05 13:44:52 +01:00
Yuriy Tseretyan
4090e122f8 Alerting: Remove mention of host name from Alerting HA docs (#53178) 2022-08-05 08:41:37 -04:00
Ieva
b590c1c60f Access Control: Set permissions for Grafana's test data source (#53247)
* set permissions for Grafana's test data source

* linting
2022-08-05 10:19:50 +03:00
Drew Slobodnjak
64721bfa94 Geomap: Do not show markers with empty coordinates (#53330)
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2022-08-04 21:17:32 -04:00
Timur Olzhabayev
2107652c3f Docs: Adding hint about healthcheck not being mandatory (#53308) 2022-08-04 18:51:52 +02:00
lean.dev
e8e7b59bb0 Implementing OpenApi 3 specs (converted from Swagger 2) (#53243)
* Adding OpenApi target to makefile, to covert swagger spec into OpenAPI 3
* Adding endpoint to server swaggerui with new openapi3 specs
* Passing output file as parameter for OpenApi3 specs
* Implement workaround for missing host and prefix domain
2022-08-04 13:51:12 -03:00
Kevin Minehart
138f03aad1 CI: move grabpl build-plugins from grabpl to grafana (#53071)
* add grabpl command to build internal plugins

* grabpl build-plugins -> ./bin/build build-plugins
2022-08-04 11:39:36 -05:00
Ivana Huckova
bf3fa4a445 Loki: Fix producing correct log volume query for query with comments (#53254)
* Loki: Remove comments from log volume query

* Update, add more tests

* Update based on suggestions

* Update

* Update tests to use it.each
2022-08-04 17:58:39 +02:00
Joao Silva
a84873a52b i18n: Translates the Share Panel modal (#53297) 2022-08-04 16:43:49 +01:00
Gilles De Mey
ca2b97b095 Alerting: Adds support for editing group details for Grafana managed rules (#53120) 2022-08-04 11:39:28 -04:00
eledobleefe
c65b4c732f Chore: Convert FolderSettingsPage.test.tsx to RTL (#53307) 2022-08-04 16:00:04 +02:00
idafurjes
0c5b71694f Chore: Add user service method UpdateLastSeenAt (#53309)
* Chore: Add user service method UpdateLastSeenAt

* Fix lint
2022-08-04 15:44:14 +02:00
idafurjes
20f4191e56 Chore: Add user service method ChangePassword (#53303)
* Chore: Add user service method ChangePassword

* Fix lint
2022-08-04 15:05:05 +02:00
idafurjes
6fdb6ea6f6 Chore: Add user service method Update (#53300)
* Chore: Add user service method Update

* Remove UpdateUser from store interface
2022-08-04 14:22:44 +02:00
Serge Zaitsev
191ab3bb01 Chore: Move api key models into apikey service package (#53241)
* Chore: move api key models into apikey service package

* force table name for api key
2022-08-04 14:19:09 +02:00
idafurjes
af83a09a92 Chore: Add user service method GetByEmail (#53298) 2022-08-04 13:47:30 +02:00
idafurjes
1ecbe22751 Chore: Add user service method GetByLogin (#53204)
* Add wrapper around sqlstore method GetUserByLogin

* Use new method from user service

* Fix lint

* Fix lint 2

* fix middleware basic auth test

* Fix grafana login returning a user by login

* Remove GetUserByLogin from store interface

* Merge commit
2022-08-04 13:22:43 +02:00
Giordano Ricci
1ec9007fe0 GrafanaUI: Render PageToolbar's leftItems regardless of title's presence (#53285)
* Grafana-UI: make PageToolbar render leftItems regardless of title's presence

* simplify test
2022-08-04 11:59:20 +01:00
idafurjes
66fd516c44 Remove GetUserById from store interface (#53226) 2022-08-04 10:34:05 +02:00
Esteban Beltran
112f69177b Build: Replace the file-loader loader with asset module in webpack config (#53088) 2022-08-04 10:29:42 +02:00
Joan López de la Franca Beltran
6b8316d510 Encryption: Fall back to AES-CFB on empty algorithm metadata (#53266) 2022-08-04 09:37:53 +02:00
Levente Balogh
2bf37a0d35 Data Connections: Remove the placeholder for Recorded Queries (#53230)
* feat(Data Connections): remove the Recorded Queries tab

* chore: remove the Recorded Queries from the nav
2022-08-04 06:39:06 +00:00
Drew Slobodnjak
fe0f193189 Geomap: Add measuring tools (#51608)
* Geomap: add measuring tools

* Add measure type selection

* Add controls and state to measure overlay

* Override tooltip mouse events when menu active

* Move measure tools to top right

* Lay groundwork for units and consolidate measuring

* Create measure vector layer class

* Improve styling to match other overlay controls

* Consolidate styling and use theme2

* Update unit language and add km2

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2022-08-03 16:19:30 -07:00
Adela Almasan
6c58ea66a9 Canvas: Fix inconsistent border behavior (#53262) 2022-08-03 16:23:08 -05:00
sam boyer
b11f66b4bb coremodels: Combine static and generic registries (#53246)
* Stop generating non-dynamic registry code

* Remove generic, errors, s/static/base/

* Sort during codegen, not runtime

* Not a method call

* Precisiate a comment

* Remove generic registry, fix assignability test
2022-08-04 00:04:54 +04:00
Adela Almasan
d54e55ea9a Canvas: Fix duplicated option editors functionality (#53184)
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2022-08-03 12:49:35 -07:00
Beto Muniz
4c02d072e3 Ensure that tooltip and legend have same parameters to calculate and display label equally (#53176) 2022-08-03 14:47:22 -03:00
Sofia Papagiannaki
ae101bf935 Alerting: Fix migration (#53253) 2022-08-03 11:41:18 -04:00
Ashley Harrison
202f5d38c8 Add missing package to @grafana/schema (#53252) 2022-08-03 11:28:01 -04:00
Ashley Harrison
9d6faa7e9a Storybook: remove UseState + add controls support to TimeZonePicker story (#53219)
* remove UseState + add controls support to TimeZonePicker story

* remove redundant check
2022-08-03 16:17:42 +01:00
Kyle Brandt
643d2bc890 Chore: Sql store split for legacy alerting (#52901)
Moves ~20 sqlstore methods for legacy alerting out of sqlstore (sqlstore.Store interface) and into alerting.
2022-08-03 11:17:26 -04:00
Will Browne
46b7ca12e1 add missing check for root URLs length (#53239) 2022-08-03 17:13:45 +02:00
gtk-grafana
f8d6730134 Metrics: Refactor use of lezer nodes to reference ID instead of name (parsing.ts) (#53177)
* Update public/app/plugins/datasource/prometheus/querybuilder/shared/parsingUtils.ts

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

* Since loki is still passing in node type strings, update the getAllByType shared function to allow string or number types

* add todo to remove string type when last datasource has migrated

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2022-08-03 09:57:29 -05:00
gtk-grafana
7f165729b0 remove string constant and use ids provided in lezer-promql library (#53180) 2022-08-03 09:56:32 -05:00
Sofia Papagiannaki
5fec6cc4f5 API: Fix snapshot responses (#52998)
* API: Fix response status when snapshots are not found

* API: Fix response status when snapshot key is empty

* Apply suggestions from code review
2022-08-03 10:31:23 -04:00
Jean-Philippe Quéméner
54217a2037 Alerting: set dashboard and panel id using annotations in provisioning api (#53221) 2022-08-03 16:05:32 +02:00
Matias Chomicki
97ce40577b Loki: Fix types in querybuilder state test (#53223)
* Chore: add missing refId property to LokiQuery type

* Chore: fix types in Loki querybuilder state test

* Chore: remove unnecessary added property to LokiQuery
2022-08-03 15:59:33 +02:00
Ivana Huckova
3877964470 Loki: Remove some of any assertions from tests (#53114)
* Loki: Remove some of any assertions from tests

* Remove unnecessary as assertions
2022-08-03 15:57:38 +02:00
Grafana I18n Bot
1c1f72b1aa I18n: Crowdin sync (#53222)
* New translations messages.po (French)

* New translations messages.po (French)
2022-08-03 09:49:53 -04:00
ismail simsek
87af08129c Prometheus: Add tests for new explain section (#53182)
* Prometheus: Add tests for new explain section

* Update public/app/plugins/datasource/prometheus/querybuilder/components/PromQueryBuilder.test.tsx

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

* Mock MonacoQueryFieldWrapper

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2022-08-03 15:48:16 +02:00
Jack Westbrook
d87bf30e9e Build: Introduce ESM and Treeshaking to NPM package builds (#51517)
* Revert "Chore: Bump terser to fix security vulnerability (#53052)"

This reverts commit 7ae74d2a18.

* feat: use tsc and rollup directly with esbuild and publishConfig, files props

* refactor(grafana-data): fix isolatedModules re-export type error

* refactor(grafana-data): import paths from src not package name

* refactor(rollup): fix dts output.file

* chore(grafana-schema): delete dashboard_experimental.gen.ts - cannot work with isolatedModules

* refactor(grafana-e2e-selectors): fix export types isolatedModules error

* refactor(grafana-runtime): fix isolatedModules re-export type error

* refactor(grafana-ui): fix isolatedModules re-export type error

* feat(grafana-ui): use named imports for treeshaking

* refactor(grafana-ui): use named imports for treeshaking

* feat: react and react-dom as peerDeps for packages

* feat(grafana-ui): emotion packages as peerDeps

* feat(grafana-e2e): use tsc, rollup, esbuild for bundling

* chore(packages): clean up redundant dependencies

* chore(toolkit): deprecate unused package:build task

* chore(schema): put back dashboard_experimental and exclude to prevent isolatedModules error

* docs(packages): update readme

* chore(storybook): disable isolatedModules for builds

* chore: relax peerDeps for emotion and react

* revert(grafana-ui): put @emotion dependencies back

* refactor: replace relative package imports with package name

* build(packages): set emitDeclaration false for typecheck scripts to work

* test(publicdashboarddatasource): move test next to implementation. try to appease the betterer gods

* chore(storybook): override ts-node config for storybook compilation

* refactor(grafana-data): use ternary so babel doesnt complain about expecting flow types

* chore(toolkit): prefer files and publishConfig package.json props over copying

* build(npm): remove --contents dist arg from publishing commands

* chore(packages): introduce sideEffects prop to package.json to hint package can be treeshaken

* chore(packages): remove redundant index.js files

* feat(packages): set publishConfig.access to public

* feat(packages): use yarn berry and npm for packaging and publishing

* refactor(packages): simplify rollup configs

* chore(schema): add comment explaining need to exclude dashboard_experimental

* revert(toolkit): put back clean to prevent cli failures

* ci(packages): run packages:pack before a canary publish

* chore(gitignore): add npm-artifacts directory to ignore list

* test(publicdashboarddatasource): fix module mocking

* chore(packages): delete package.tgz when running clean

* chore(grafana-data): move dependencies from devDeps to prevent build resolution errors
2022-08-03 15:47:09 +02:00
Ieva
610abc2af0 Access Control: Fix permission error during dashboard creation flow (#53214)
* remove permission check

* remove unneeded function
2022-08-03 16:39:20 +03:00
Will Browne
5523c00b01 check not empty root urls before setting field (#53135) 2022-08-03 15:25:59 +02:00
Giordano Ricci
09c4dbdb9f Correlations: Add UpdateCorrelation HTTP API (#52444)
* Correlations: add UpdateCorrelation HTTP API

* handle correlation not found

* add tests

* fix lint errors

* add bad request to API spec

* change casing

* fix casing in docs

* fix tests

* update spec
2022-08-03 14:18:51 +01:00
Artur Wierzbicki
f61a97a0ab Search: rename remove search constraints (#53190) 2022-08-03 16:44:51 +04:00
Mihály Gyöngyösi
dc775c7577 RolePicker: Fix RolePicker menu positioning (#53201)
Fixes #52800
2022-08-03 14:35:51 +02:00
Dimitris Sotirakis
1d1fb07124 Make retrieve and release npm packages allowed to fail (#53191) 2022-08-03 08:24:32 -04:00
Serge Zaitsev
8d36f71673 Chore: Remove apikey store methods from sqlstore (#53197)
* Chore: remove apikey store methods from sqlstore

* remove GetAPIKeys

* remove GetAllAPIKeys

* remove the rest of apikey from sqlstore
2022-08-03 08:13:05 -04:00
Dimitris Sotirakis
5d014f0c37 CI: Run main-docs pipeline only, when a docs PR is merged (#53026)
* Trigger docs pipeline on main, on docs only changes

* Export docs inclusion paths in variable
2022-08-03 08:08:43 -04:00
Julien Duchesne
157303d8ba Drone: Add retries for pipelines (#53171)
* Drone: Add retries for pipelines
Self-explanatory, this should reduce flakiness for the clone step

* Oops remove extra file
2022-08-03 14:51:29 +03:00
Victor Marin
34b7c38314 Change var keyword to const (#53206) 2022-08-03 11:41:39 +00:00
Josh Hunt
c7d3fec515 Typed variables pt3: Type VariableState with TypedVariableModel (#53015)
* wip

* make diff easier to read

* Update template_srv getVariables to return new TypedVariableModel

* update VariableType to use the type from TypedVariableModel

* tidy things up

* Chore: Use type-accurate mock variables in tests

* Chore: Type VariableState to use TypedVariableModel

* fix typo

* remove type assertion from template_srv.getVariables

* undo whatever changes i did to swagger spec
2022-08-03 12:38:59 +01:00
Josh Hunt
8f81c4d2ce Chore: reformat swagger specs, again (#53205) 2022-08-03 12:18:52 +01:00
Andrey Smirnov
fc9577b76d MegaMenu: Fix broken hamburger toggle (#52770)
* MegaMenu: Fix broken hamburger toggle

* oops

* MegaMenu: move NavBarToggle to FocusScope
2022-08-03 12:08:39 +01:00
Matias Chomicki
7cf2b68e0a Loki: Remove hardcoded values for LokiOperationId (#53168) 2022-08-03 12:50:43 +02:00
Josh Hunt
805203dba9 Chore: Prettier ignore api-merged & api-spec swagger api specs (#53170)
* Prettier ignore api-merged & api-spec swagger api specs

* add enterprise
2022-08-03 11:41:31 +01:00
user10x
fb00a11b5f rename table_model.ts => TableModel.ts (#51659)
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-08-03 10:33:13 +00:00
Joey Tawadrous
1592ea45b0 Tempo: Devenv update to support all features (#52728)
* Tempo devenv

* Add logging to tempo devenv

* Update readme

* Formatting

* Update loki image

* Update tempo image
2022-08-03 11:24:50 +01:00
Gabriel MABILLE
00ff61cb9e RBAC: Add an additional check on UserID before fetching the permissions (#53002)
* RBAC: add an additional check before fetching permissions

* Nit.

* Readd removed test

* change message
2022-08-03 11:06:06 +02:00
J-Loup
2054414d37 Frontend: Make datalinks work with status history and state timeline (#50226)
* fix datalinks for state and status panels

* Add close button on tooltip

* fix links from all series displayed in tooltip

* Allow annotations creation, tweak UI

* Nits

* Remove unused property

* fix returns made from review

* setupUPlotConfig renamed to addTooltipSupport

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
Co-authored-by: Victor Marin <victor.marin@grafana.com>
2022-08-03 11:58:01 +03:00
Harry Tennent
c56aae6f63 Docs: update annotations API docs to include required field (#52644)
* Update annotations.md

A minor change to include the required fields when creating a new annotation via the annotations API. The error message when fields are missing is not descriptive and there is no indication in the current documentation (that I can see anyway) that would indicate these fields are required.

* Update annotations.md

Update required json body fields to only include fields that are actually required.

* Add required field in Swagger

Co-authored-by: Sofia Papagiannaki <1632407+papagian@users.noreply.github.com>
2022-08-03 08:01:25 +00:00
ismail simsek
920ee16b54 Update LokiQueryCodeEditor test title (#53181)
* Update LokiQueryCodeEditor test title

* Update public/app/plugins/datasource/loki/querybuilder/components/LokiQueryCodeEditor.test.tsx
2022-08-03 09:59:02 +02:00
Armand Grillet
edbaaf495b Docs: update Alerting configuration (#53169) 2022-08-03 09:52:38 +02:00
Gilles De Mey
b7e11358cf Alerting: Fix crash when viewing alert group without interval (#53166) 2022-08-03 08:22:52 +02:00
Garrett Guillotte
e1bb23a2d7 Docs: Add What's New in v9.1 (#53066)
* Docs: Add What's New in v9.1

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

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

* Docs: Pass CI

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

Co-authored-by: Kim Nylander <104772500+knylander-grafana@users.noreply.github.com>

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

Co-authored-by: Kim Nylander <104772500+knylander-grafana@users.noreply.github.com>

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

Co-authored-by: Kim Nylander <104772500+knylander-grafana@users.noreply.github.com>

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

Co-authored-by: Kim Nylander <104772500+knylander-grafana@users.noreply.github.com>

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

Co-authored-by: Kim Nylander <104772500+knylander-grafana@users.noreply.github.com>

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

Co-authored-by: Kim Nylander <104772500+knylander-grafana@users.noreply.github.com>

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

Co-authored-by: Kim Nylander <104772500+knylander-grafana@users.noreply.github.com>

* Docs: Apply style and semantic linebreak suggestions to 9.1 what's new

* Docs: Pass CI

* Removed reference to AWS SM project that has been pulled from announcement

* Docs: Pass CI

* Docs: Pass CI

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>
Co-authored-by: Kim Nylander <104772500+knylander-grafana@users.noreply.github.com>
Co-authored-by: Tim Levett <tim.levett@grafana.com>
2022-08-02 11:07:36 -07:00
Sofia Papagiannaki
3713a193d8 Chore: Fix Makefile target dependency (#53165) 2022-08-02 19:42:48 +03:00
Ieva
67d817ff48 update versions (#53167) 2022-08-02 11:55:46 -04:00
Scott Lepper
fe7add0bc6 ref experimental query editor (#53061)
* ref experimental query editor
2022-08-02 11:44:06 -04:00
Ieva
904d21dc93 update latest.json testing version (#53157) 2022-08-02 15:35:04 +00:00
Ivana Huckova
c4ed5c4d4b Docs: Update explain section in Loki docs (#53107) 2022-08-02 17:21:09 +02:00
Ivana Huckova
5009c330ca Loki: Add tests for explain section in builder and code editor (#53113)
* Loki: Add tests for new explain section

* Update any assertions
2022-08-02 17:20:22 +02:00
Grot (@grafanabot)
8a1dc85e2c ReleaseNotes: Updated changelog and release notes for 9.1.0-beta1 (#53155) 2022-08-02 11:07:36 -04:00
idafurjes
fab6c38c95 Chore: Split get user by ID (#52442)
* Remove user from preferences, stars, orguser, team member

* Fix lint

* Add Delete user from org and dashboard acl

* Delete user from user auth

* Add DeleteUser to quota

* Add test files and adjust user auth store

* Rename package in wire for user auth

* Import Quota Service interface in other services

* do the same in tests

* fix lint tests

* Fix tests

* Add some tests

* Rename InsertUser and DeleteUser to InsertOrgUser and DeleteOrgUser

* Rename DeleteUser to DeleteByUser in quota

* changing a method name in few additional places

* Fix in other places

* Fix lint

* Fix tests

* Chore: Split Delete User method

* Add fakes for userauth

* Add mock for access control Delete User permossion, use interface

* Use interface for ream guardian

* Add simple fake for dashboard acl

* Add go routines, clean up, use interfaces

* fix lint

* Update pkg/services/user/userimpl/user_test.go

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

* Update pkg/services/user/userimpl/user_test.go

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

* Update pkg/services/user/userimpl/user_test.go

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

* Split get user by ID

* Use new method in api

* Add tests

* Aplly emthod in auth info service

* Fix lint and some tests

* Fix get user by ID

* Fix lint
Remove unused fakes

* Use split get user id in admin users

* Use GetbyID in cli commands

* Clean up after merge

* Remove commented out code

* Clena up imports

* add back )

* Fix wire generation for runner after merge with main

Co-authored-by: Sofia Papagiannaki <1632407+papagian@users.noreply.github.com>
2022-08-02 16:58:05 +02:00
Serge Zaitsev
64488f6b90 Chore: split APIKey store (#52781)
* move apikey store into a separate service

* add apikey service to wire graph

* fix linter

* switch api to use apikey service

* fix provideservice in tests

* add apikey service test double

* try different sql syntax

* rolling back the dialect

* trigger drone

* trigger drone
2022-08-02 16:55:19 +02:00
Andres Martinez Gotor
43955bdebd Azure Monitor: Early error if the client secret is not set (#53106) 2022-08-02 16:53:05 +02:00
Andres Martinez Gotor
245af46798 Docs: Remove limitation for Azure Monitor template variables (#52983) 2022-08-02 16:52:28 +02:00
kay delaney
b9598a08a4 Chore: Enable React strict mode (#53126) 2022-08-02 15:27:49 +01:00
Andres Martinez Gotor
194d0fe33b Azure Monitor: Clarify removed query methods (#52986) 2022-08-02 16:02:26 +02:00
Josh Hunt
1a683e53c5 Typed variables pt2: Use type-accurate mock variables in tests (#52987)
* wip

* make diff easier to read

* Update template_srv getVariables to return new TypedVariableModel

* update VariableType to use the type from TypedVariableModel

* tidy things up

* Chore: Use type-accurate mock variables in tests

* make createBaseVariableModel take the variable type
2022-08-02 14:47:41 +01:00
Yuriy Tseretyan
718620c197 Alerting: Update forking request handlers to use the same errors (#52965)
* generalize error handling in forking request handlers
* remove MatchesBackend and change test to test Can
* add 404 to route specs
* change backendTypeByUID to getDatasourceByUID of expected type
* use common errors in api testing
* handle 401 in errorToResponse
* replace backend type error with "unexpected datasource type"
* update swagger spec
2022-08-02 09:33:59 -04:00
Joan López de la Franca Beltran
28e27e1365 Encryption: De-duplicate encryption code with extensible service (#52472)
* Encryption: De-duplicate encryption code with extensible service

* Fix Wire injections

* Fix tests

* Register reload handler
2022-08-02 15:08:09 +02:00
Ashley Harrison
9c6aab3bc9 Chore: remove UseState + add support for controls in TimeOfDayPicker/TimeRangeInput story (#53040)
* remove UseState + add support for controls in TimeOfDayPicker story

* remove UseState + add controls support in TimeRangeInput story

* Add documentation + fix error when clearing

* properly type range
2022-08-02 13:33:59 +01:00
Grafana I18n Bot
db08ece3db I18n: Crowdin sync (#53104)
* New translations messages.po (French)

* New translations messages.po (Spanish)
2022-08-02 12:14:07 +01:00
Josh Hunt
4323e12588 I18n: Add X-Crowdin-SourceKey to messages.po files (#53102)
* add X-Crowdin-SourceKey to messages.po files

* remove previous fake translation
2022-08-02 06:54:24 -04:00
Josh Hunt
1cadccf137 Add crowdin config (#53096) 2022-08-02 05:15:37 -04:00
Josh Hunt
eaf6aea98f Typed variables pt1: Use discriminated union for variable model (#52981)
* wip

* make diff easier to read

* Update template_srv getVariables to return new TypedVariableModel

* update VariableType to use the type from TypedVariableModel

* tidy things up
2022-08-02 10:15:25 +01:00
Ashley Harrison
4d47d7085b don't show dashboards or starred items in navbar when unauthenticated (#53051) 2022-08-02 09:57:32 +01:00
Eric Leijonmarck
f6985835aa Chore: update latest.json to 9.0.6 (#53095) 2022-08-02 04:45:52 -04:00
ismail simsek
3701c9a8f5 Update prometheus docs (#53062) 2022-08-02 10:38:22 +02:00
Grot (@grafanabot)
47a7f84c86 ReleaseNotes: Updated changelog and release notes for 9.0.6 (#53092) 2022-08-02 10:18:46 +02:00
Jack Westbrook
7ae74d2a18 Chore: Bump terser to fix security vulnerability (#53052) 2022-08-02 09:08:10 +02:00
Alexander Weaver
c50cbea0bb Alerting: Extract alert rule diff logic into separate file with exported API (#53083)
* Refactor diff logic into separate file with exported API

* Fix linter complaint
2022-08-01 23:41:23 -05:00
Michael Mandrus
d5c80a2411 remove documentation for feature not yet being launched (#53082) 2022-08-01 22:02:30 -04:00
Nathan Marrs
c00c8db13c Canvas: Unable to add fixed text in textbox element #53080 2022-08-01 20:32:41 -05:00
Yuriy Tseretyan
5fb778814c Alerting: Update rules version when folder title is updated (#53013)
* remove support for bus from scheduler
* rename event to FolderTitleUpdated and fire only if title has changed
* add method to increase version of all rules that belong to a folder
* update ngalert service to subscribe to folder title change event call data store and update scheduler
* add tests
2022-08-01 19:28:38 -04:00
Jeff Levin
b3f7deebda fix audit log prefix for public dashboards (#53070) 2022-08-01 14:46:48 -08:00
Alexander Weaver
cc20f04860 Alerting: Increase alert rule operation perf by replacing subquery with threshold calculation (#53069)
* Replace subquery with threshold calculation

* Use offset/limit to account for orgs with large gaps in IDs

* Collapse into one statement

* Drop dead constants

* Revert to 2 query approach

* Drop unused consts again
2022-08-01 16:48:34 -05:00
Adela Almasan
5797fbc0b2 Canvas: Cleanup default elements (#52958) 2022-08-01 15:34:05 -05:00
Adela Almasan
f2436b15bf Canvas - Clear button bugfix (#53068) 2022-08-01 14:40:01 -05:00
Artur Wierzbicki
0d817987ec Storage: move file quota check to service (#53058)
* Storage: move file quota check to service

* Fix tests
2022-08-01 22:53:44 +04:00
Jean-Philippe Quéméner
8fc8d00167 Alerting: Add file provisioning for text templates (#52952) 2022-08-01 20:50:03 +02:00
Jean-Philippe Quéméner
3d39594d75 Alerting: Add file provisioning for mute timings (#52936) 2022-08-01 14:19:33 -04:00
Nathan Marrs
7b249d19b2 Canvas: Inline element settings (#52771) 2022-08-01 12:22:13 -05:00
Jean-Philippe Quéméner
eab6365cf7 Alerting: Add file provisioning for notification policies (#52877) 2022-08-01 19:14:57 +02:00
Jean-Philippe Quéméner
d9cace4dca Alerting: Add file provisioning for contact points (#51924) 2022-08-01 18:17:42 +02:00
Alexander Emelin
e791a4e576 Search: Move entity events to transaction (#52394) 2022-08-01 18:56:36 +03:00
Andres Martinez Gotor
a4f56446ee Azure Monitor: Restore Metrics query parameters: subscription, resourceGroup, metricNamespace and resourceName (#52897)
* Azure Monitor: (Components) deprecate ResourceURI (#52982)
2022-08-01 17:48:49 +02:00
Victor Marin
2948bf01dc TimeSeriesPanel: Tooltip works properly when changing modes (#52876)
* TimeSeriesPanel: Tooltip works properly when changing modes

* TooltipPlugin respects display mode

* Pass options to TimeSeriesPanel props
2022-08-01 18:12:40 +03:00
Ezequiel Victorero
e0d71f02b1 Public Dashboards: add e2e tests for public dashboards (#52970) 2022-08-01 11:20:49 -03:00
Isabella Siu
52b57fdb1c CloudWatch: add CloudWatchSynthetics namespace (#52956) 2022-08-01 10:19:02 -04:00
Isabella Siu
74f0c3dbd4 CloudWatch: the variable editor should accept custom values (#52955) 2022-08-01 10:07:27 -04:00
Ashley Harrison
f64b241d32 Navigation: split logic, reenable unit test, copy whole node to prevent recursion error (#53033)
* split logic, reenable unit test, copy whole node to prevent recursion error

* remove double assignment
2022-08-01 14:47:52 +01:00
Sofia Papagiannaki
3f58e8ec2a Chore: Cleanup Makefile (#53037)
Remove redundant reference to deleted folder pkg/api/docs/definitions
2022-08-01 16:31:49 +03:00
Konrad Lalik
f877f79bbc Alerting: Show evaluation interval global limit warning (#52942)
Co-authored-by: George Robinson <george.robinson@grafana.com>
2022-08-01 15:01:14 +02:00
Andres Martinez Gotor
314eb5223f CloudMonitoring: Remove link setting for SLO queries (#53031) 2022-08-01 14:53:09 +02:00
Jeff Levin
58ff0f07b4 public dashboards: check to see if dashboard state is different from persisted on save (#52008)
* public dashboards: check to see if dashboard state is different from persisted on save

Co-authored-by: Ezequiel Victorero <ezequiel.victorero@grafana.com>
2022-08-01 09:35:09 -03:00
lean.dev
3395981d35 Chaging log level when secret is not found (#53007) 2022-08-01 09:25:24 -03:00
Ashley Harrison
6781041860 Import: prevent recursion blowup in redux + reintroduce import e2e test (#52985)
* prevent recursion blowup in redux, attempt to reintroduce import e2e test

* try importing json like this instead?

* need the panel validation

* Update text so it finds Panel data instead of Dataframe JSON

* skip test for now
2022-08-01 12:53:31 +01:00
Artur Wierzbicki
784cfcf2b0 Search: add request metrics (#53028)
* Search: add request metrics

* Search: consistent naming

* Search: remove success counter

* Search: update buckets

* Search: remove log
2022-08-01 15:23:41 +04:00
Dimitris Sotirakis
cea4b3fb19 Make compile-build-cmd depend on init-enterprise (#53029) 2022-08-01 06:56:06 -04:00
Josh Hunt
96564be396 GrafanaUI: Improved ClipboardButton success state (#52665)
* Add new pill-shaped Indicator component

* Use indicator for clipboard button success

* show just check icon during success state

* expose Indicator

* move animation and positioning into Indicator component

* update stories

* update stories
2022-08-01 10:46:29 +01:00
Dimitris Sotirakis
1666871d48 Trigger pr-integration-tests pipeline only on backend changes (#53024) 2022-08-01 12:36:32 +03:00
Konrad Lalik
54f2c056f5 Alerting: Configure alert manager data source as an external AM (#52081)
Co-authored-by: Jean-Philippe Quéméner <JohnnyQQQQ@users.noreply.github.com>
Co-authored-by: gotjosh <josue.abreu@gmail.com>
Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2022-08-01 10:20:43 +02:00
Leo
1fc9f6f1c6 Annotations: Migrate dashboardId to dashboardUID (#52588)
* Annotations: replaced dashboardId with dashboardUID when fetching annotations

* Annotations: Replaced dashboardID with dashboardUID when adding and updating annotations

* Annotations: Used dashboardUID for PanelChrome related methods

* Annotations: Used dashboarduid in annolistpanel

* Annotations: Used dashboardUID in graph plugin

* used boolean in canEditDashboard
2022-08-01 09:21:41 +02:00
Artur Wierzbicki
046a2602ff Storage: optimize sql list operation (#53009) 2022-07-30 00:19:28 +04:00
Artur Wierzbicki
08dabfaffc Storage: add global resources/system (#53000)
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2022-07-29 15:58:47 -04:00
Holger Freyther
27709adac3 docker: The cue directory is gone. Catch-up (#52606)
The files got removed in 8876d56495 but
the container was not updated yet.
2022-07-29 10:47:27 -05:00
Josh Hunt
583490678b update e2e docs to remove aria-label mentions (#52999) 2022-07-29 16:42:53 +01:00
Ryan McKinley
a51d3dad4f Loki: support template variables when running stream (live) mode (#52973) 2022-07-29 08:41:11 -07:00
Ivan Ortega Alba
c9d50ddaaa Search: Track user searches and results interactions (#52949) 2022-07-29 11:30:13 -04:00
Josh Hunt
06d78ea904 Dashboards: Disable variable pickers for snapshots (#52827)
* user essentials mob! 🔱

lastFile:public/app/features/variables/textbox/TextBoxVariablePicker.tsx

* user essentials mob! 🔱

* user essentials mob! 🔱

lastFile:public/app/features/variables/adhoc/picker/AdHocFilter.tsx

* finish up disabling variables in snapshots

* remove accident

* use theme.spacing instead of the v1 shim

Co-authored-by: Joao Silva <joao.silva@grafana.com>
Co-authored-by: Leodegario Pasakdal <leodegario.pasakdal@grafana.com>
2022-07-29 16:29:55 +01:00
Torkel Ödegaard
d3323f870e AppChrome: Fix race condition when updating chrome state on route changed (#52694) 2022-07-29 17:16:14 +02:00
Ivana Huckova
b8e4c2abeb Loki: Move explain section to builder mode (#52879)
* Loki: Move explain to builder and code mode

* Update

* Update transition

* Fix tests

* Fix tests

* Prometheus: Move explain section to builder mode (#52935)

* Prometheus: Move explain section to builder mode

* Show explain switch before raw query switch

* Store explain switch value in localstorage

* Make explain available for code mode too

* Introduce useFlag hook for query editor switches

* Remove Explain mode

Co-authored-by: ismail simsek <ismailsimsek09@gmail.com>
2022-07-29 17:09:43 +02:00
Ryan McKinley
fbd289c19c Search: add starred filter and swap button order (#52184)
Co-authored-by: Alexandra Vargas <alexa1866@gmail.com>
Co-authored-by: Ivan Ortega Alba <ivanortegaalba@gmail.com>
2022-07-29 16:34:17 +02:00
Selene
085ae014cd Sync: Move ActiveTokenCount to a new service (#52991)
* Move ActiveTokenCount to a new service

* Fixing tests

* fix `RootSystem`

Co-authored-by: Artur Wierzbicki <artur.wierzbicki@grafana.com>
2022-07-29 16:30:46 +02:00
Ivana Huckova
1eb3513781 Prometheus: Fix adding of multiple values for regex operator (#52978)
* Prometheus, Loki: Fix adding of multiple values for regex operator

* Refactor
2022-07-29 15:27:19 +02:00
Sofia Papagiannaki
87004cc22d API: Do not expose user input in datasource error responses (#52992) 2022-07-29 08:46:51 -04:00
Gábor Farkas
ba76f9b580 elastic: eliminate react warning (#52934) 2022-07-29 12:24:33 +00:00
Victor Marin
e88e3482e0 Tooltip mode works in BarChart panel (#52941) 2022-07-29 15:11:42 +03:00
Josh Hunt
b223c65a6c Chore: remove unnessisary type assertion from GrafanaContext (#52979) 2022-07-29 11:48:52 +01:00
Jo
ff1c294963 AzureAD: Don't copy claims around (#52950) 2022-07-29 10:17:07 +02:00
Ryan McKinley
197acd73c0 Storage: support git + github backed roots (#52192) 2022-07-28 23:26:44 -07:00
Drew Slobodnjak
e2044cde13 Canvas: Enable ability to instantly select and drag an element (#52861)
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2022-07-28 16:55:31 -07:00
Leon Sorokin
7c40257baf BarChart: fix top y tick clipping when x labels are rotated (#52964) 2022-07-28 16:51:37 -05:00
mingozh
11c79cd6da BarchartPanel: Fix color from thresholds show incorrectly (#52038)
Signed-off-by:  Kyle Cunningham <kyle.cunningham@grafana.com>
2022-07-28 15:56:12 -05:00
Artur Wierzbicki
273c37c27d Previews: return an empty array, rather than a null, if a dashboard has no datasources (#52961) 2022-07-28 22:49:06 +04:00
Kim Nylander
d0aa688e36 [DOC] Updates to K8s install instructions (#52772)
* Updates to K8s install

* Update docs/sources/setup-grafana/installation/kubernetes.md

* Apply suggestions from code review

* Update docs/sources/setup-grafana/installation/kubernetes.md

* Update docs/sources/setup-grafana/installation/kubernetes.md

Co-authored-by: Ursula Kallio <ursula.kallio@grafana.com>

* Update docs/sources/setup-grafana/installation/kubernetes.md

Co-authored-by: Ursula Kallio <ursula.kallio@grafana.com>

* Update docs/sources/setup-grafana/installation/kubernetes.md

Co-authored-by: Ursula Kallio <ursula.kallio@grafana.com>

* Apply suggestions from code review from Ursula

Co-authored-by: Ursula Kallio <ursula.kallio@grafana.com>

* Apply suggestions from code review

Co-authored-by: Ursula Kallio <ursula.kallio@grafana.com>

* Update docs/sources/setup-grafana/installation/kubernetes.md

Co-authored-by: Ursula Kallio <ursula.kallio@grafana.com>

* Update docs/sources/setup-grafana/installation/kubernetes.md

Co-authored-by: Ursula Kallio <ursula.kallio@grafana.com>

* Apply Prettier fixes to pass CI

Co-authored-by: Ursula Kallio <ursula.kallio@grafana.com>
Co-authored-by: Garrett Guillotte <garrett.guillotte@grafana.com>
2022-07-28 11:37:07 -07:00
Artur Wierzbicki
449acb56a9 Previews: fix dashboard.thumbnails.ds_uids migration (#52960) 2022-07-28 21:50:02 +04:00
Adam Simpson
165efcd9cc CloudMonitor: Consolidate editor rows (#52675)
* consolidate project, metric, and service

* CloudMonitor: make AlignmentPeriodLabel a tooltip

alignmentPeriodLabel now returns a string instead of component. This is
because as a <label> it would cause wrapping issues when the screen size
would change. It also isn't essential information _unless_ the user is
using a template variable for the Alignment period.

* refactor: remove any hard-coded widths for auto

* chore: use newly moved experimental comps in UI
2022-07-28 17:47:01 +00:00
Ashley Harrison
921d32d70b Chore: use new pa11y-ci version (#52953)
* use new pa11y-ci version, update some thresholds and set standard to WCAG2AA

* remove unneeded comment

* PRs won't have unified alerting enabled...
2022-07-28 12:49:41 -04:00
jcolladokuri
0acf98db5c Azure Monitor: Add new dashboard with geo map for app insights test availability (#52494) 2022-07-28 16:15:36 +02:00
Kevin Minehart
d567f199dd CI: add the grabpl build-backend command into the repo (#52673)
* Move the grabpl build-backend command and clean it up a bit
2022-07-28 10:11:22 -04:00
Dimitris Sotirakis
f215a35caf Docker: Install jq on build-container image (#52928)
* Install jq on build-container image

* Bump build-container version
2022-07-28 08:21:48 -05:00
Esteban Beltran
6395d6d6f3 Grafana/toolkit: Fix incorrect image and font generation for plugin builds (#52927) 2022-07-28 14:54:29 +02:00
Artur Wierzbicki
18daa6754c Previews: datasource permissions (#52747)
* Previews: datasource permissions

* lint

* simplify - force non-null `ds_uids`

* add `canBeDisabled` to search service

* add `IncludeThumbnailsWithEmptyDsUids`

* remove force refresh migration

* refactor main preview service

* add safeguard

* revert ticker interval

* update testdata

* fix test

* add mock search service

* add datasources lookup test

* update migration

* extract ds lookup to its own package to avoid cyclic imports

* lint

* fix dashbaord extract, use the real datasource lookup in tests. IS IT BULLETPROOF YET?!

* fix dashbaord extract, use the real datasource lookup in tests. IS IT BULLETPROOF YET?!

* remove stale log

* consistent casing

* pass context to `createServiceAccount`

* filter out the special grafana ds
2022-07-28 16:40:26 +04:00
Andrej Ocenas
d0e548c3e5 Prometheus: Add flag to compare streaming and buffered responses (#51711)
* Add flag to compare streaming and buffered

* Move log

* Fix lint

* Fix tests

* Remove debug logs
2022-07-28 14:26:51 +02:00
ismail simsek
2f9636e698 InfluxDB: move datasource health check to backend (#52668)
* Move datasource health check to backend

* Introduce healthcheck unit tests

* Remove unused method
2022-07-28 12:06:09 +02:00
Vardan Torosyan
532741a8fe RBAC: Update the docs homepage to mention that RBAC is only enterprise (#52890)
* RBAC: Update the docs homepage to mention that RBAC is only enterprise

* Don't mention that there is anything to enable for provisioning RBAC

* Add GE notices to child RBAC pages

* Extend the RBAC availibility note to Cloud Advanced

Co-authored-by: Garrett Guillotte <garrett.guillotte@grafana.com>
2022-07-28 05:32:11 -04:00
Artur Wierzbicki
9e841ef21d Storage: fix delete folder (#52860) 2022-07-28 12:27:26 +03:00
Leo
8d6d5f2fdc SearchV2: Add minor UX improvements to Search pages (#52833)
* Search: display dash for panel and folder when sort type is view or error

* Search: Disabled panel checkbox in folrder view
2022-07-28 11:17:47 +02:00
Gilles De Mey
9332fb65a9 Alerting: Allow testing provisioned contact points (#52824) 2022-07-28 10:03:28 +02:00
Agnès Toulet
44cc9132e3 RBAC: Add RBAC for query caching (#52113)
* start adding RBAC for query caching

* update with scope

Co-authored-by: Leonard Gram <leo@xlson.com>
2022-07-28 09:49:58 +02:00
Leon Sorokin
8ee0555bac TimeSeries: Implement auto decimals for y axes (#52912) 2022-07-28 02:58:42 -04:00
Jo
51e2a1c0a4 Deps: Update SAML libraries (#52893)
Deps: ensure goxmldsig is pinned

update go.mod
2022-07-28 08:43:30 +02:00
Ryan McKinley
8a2d40c2bc Canvas: Add all options to inline editor (#52834)
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2022-07-27 19:20:39 -04:00
Ryan McKinley
cb3f7ccd09 Transformers: remove config from "join by labels" source fields (#52850) 2022-07-27 13:52:38 -07:00
ying-jeanne
017e6771ce fix the issue of annotation endpoint (#52907) 2022-07-27 16:35:27 -04:00
Brendan O'Handley
6c3efb0c88 Graphite Plugin: Remove angular dependencies for graphite annotations (#52261)
* fix merge conflict

* fix betterer

* handle new creating annotations

* add h5 'or' tag to annotation editor

* fix annotation regression looking for tags before target

* remove angular annotation partial

* change ann tags type to string[] and use TagsInput to create ann

* remove GraphiteEventsType, return annotations targets setting 'textEditor': true

* fix yarn typecheck errors

* add dateTime for yarn fix to tests

* fix incorrect merge conflict resolution

* fix betterer

* making changes for PR approval resolutions

* fix prettier issue

* fix prettier
2022-07-27 16:27:42 -04:00
Alyssa Bull
6ec9a7682d Various Panels: Add ability to toggle legend with keyboard shortcut (#52241) 2022-07-27 13:39:55 -06:00
Christopher Moyer
d06ea6ea0e fixes links (#52899) 2022-07-27 14:06:35 -05:00
Ieva
0d324e931d Access Control: Allow org admins to invite new users (#52894)
* allow org admins to invite new users to Grafana

* doc updates

* fix test
2022-07-27 17:37:27 +01:00
Kristina
6ecc420534 Revert "Explore: Add Mixed Datasource (#51605)" (#52889)
This reverts commit e2258120e7.
2022-07-27 10:17:31 -05:00
renovate[bot]
a4355bd6e4 Update Monthly patch updates (#52885)
* Update Monthly patch updates

* ignore updates to lezer-logql and @types/slate

* update lockfile

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-07-27 16:02:48 +01:00
Andres Martinez Gotor
d66e178b66 Azure Monitor: Append /default to the resource URI if needed (#52884) 2022-07-27 16:49:51 +02:00
Joey Tawadrous
dc0ef2913e Tempo: Set APM table default span kind (#52851)
* Add span kind server to query

* Updated test
2022-07-27 15:48:09 +01:00
Kristina
e2258120e7 Explore: Add Mixed Datasource (#51605)
* Toggle on the mixed mode option

* Ensure switching to mixed gives existing query prev datasource

* WIP - Populate datasource when switching between mixed and not

* WIP - handle change from mixed

* Remove preimport filter, refine filter to work for queries

* WIP debugging datasource transition

* Ensure creating a new query gets target data source if switching with no matches between

* Add mixed datasource to rich history display

* Cleanup console logs, add relevant comments

* Add feature toggle for mixed datasource

* Fix Wrapper tests

* Fix tests!

* Fix test types and add feature tracking

* Remove unnecessary default, remove explore/mixed workarounds for D2E

* Move display text logic to mixed datasource file

* Add in the default query parameters to a generated empty query

* Condense some code

* Apply suggestions from code review

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

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2022-07-27 09:40:59 -05:00
Ashley Harrison
a98920f910 Storybook: add controls support + remove UseState from Collapse story (#52869)
* add controls support + remove UseState from Collapse story

* exclude className as well

* exclude className prop as well
2022-07-27 15:36:54 +01:00
Jo
c2d3c90bc8 Auth: Implement Token URL JWT Auth (#52662)
* Auth: check of auth_token in url and resolve user if present

* check if auth_token is passed in url

* Auth: Pass auth_token for request if present in path

* no need to decode token in index

* temp

* use loadURLToken and set authorization header

* cache token in memory and strip it from url

* Use loadURLToken

* Keep token in url

* strip sensitive query strings from url used by context logger

* adapt login by url to jwt token

* add jwt iframe devenv

* add jwt iframe devenv instructions

* add access note

* add test for cleaning request

* ensure jwt token is not carried into handlers

* do not reshuffle queries, might be important

* add correct db dump location

* prefer set token instead of cached token

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

Co-authored-by: Karl Persson <kalle.persson@grafana.com>
Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
2022-07-27 16:10:47 +02:00
Sofia Papagiannaki
7ba076de10 Chore: Move swagger definitions to the handlers (#52643) 2022-07-27 09:54:37 -04:00
Ursula Kallio
c968b76279 Separate task with additional information (#52871) 2022-07-27 09:44:18 -04:00
Andres Martinez Gotor
7505cf418b Azure Monitor: Deprecate metricDefinition (#52793) 2022-07-27 15:26:32 +02:00
Timur Olzhabayev
976a91cb0a Fixing the relative url path (#52774) 2022-07-27 15:21:56 +02:00
Timur Olzhabayev
84930e2ef9 Adding rudderstack to our storybook (#52777) 2022-07-27 15:20:13 +02:00
Timur Olzhabayev
8ddf8ab6ee Updating plugin packaging documentation (#52744)
* Updating packaging documentation

* Adding link to zipinfo manpage

* Removing unx as codespell doesnt like it
2022-07-27 15:19:47 +02:00
renovate[bot]
8005357858 Update dependency lint-staged to v13 (#52873)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-07-27 14:16:08 +01:00
Taewoo K
8b6b82f239 PromQuery: Show exemplars in collapsed view (#52767)
* add Examplars: false in collapsed view

* assign defaut value - false to switch

* add 3 tests for 3 possible cases

Co-authored-by: Taewoo Kim <taewookim@Taewoos-MacBook-Pro.local>
2022-07-27 09:08:52 -04:00
Isabella Siu
542b4f2431 CloudWatch: returnData should default to true (#52759) 2022-07-27 08:45:59 -04:00
Carl Bergquist
7825ad6aa3 Instrumentation: Collect database connection stats (#52797)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
2022-07-27 13:42:28 +02:00
Will Browne
6d066a7aa8 Plugins: Add validation for plugin manifest (#52787)
* add validation for plugin manifest

* no more semver checking

* undo go.mod changes

* undo go.mod changes

* only validate v2 fields where necessary

* remove manifest version field check
2022-07-27 12:56:52 +02:00
renovate[bot]
6e5bd934fd Update dependency html-loader to v4 (#52858)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-07-27 10:56:48 +01:00
renovate[bot]
23af7d7bb4 Update dependency jest-junit to v14 (#52859)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-07-27 10:41:59 +01:00
Zoltán Bedi
309965aaf0 Dev: Bump eslint sdk for vscode (#52852) 2022-07-27 11:22:05 +02:00
renovate[bot]
77a4443aa7 Update dependency @opentelemetry/semantic-conventions to v1.5.0 (#52856)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-07-27 09:58:03 +01:00
Ivana Huckova
3f681114e5 Loki: Show label options for unwrap operation (#52810)
* Loki: Show options for unwrap operation

* Add comment for check
2022-07-27 10:45:30 +02:00
renovate[bot]
33f67ed6e2 Update typescript-eslint monorepo to v5.31.0 (#52819)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-07-27 09:27:55 +01:00
renovate[bot]
290b2e1ed0 Update grafana monorepo to v0.4.0 (#52805)
* Update grafana monorepo to v0.4.0

* update mock

* actually mock...

* typescript is hard...

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-07-27 09:21:13 +01:00
Ashley Harrison
85e80d1d7b Don't make the whole row a drag handle, use css instead (#52795) 2022-07-27 09:18:16 +01:00
Giordano Ricci
9a06b00e92 Correlations: Add DeleteCorrelation HTTP API (#51801)
* Correlations: add DeleteCorrelation HTTP API

* fix error message copy

* add readonly check

* add source_uid in delete condition

* make path singular

* Revert "make path singular"

This reverts commit d15be89578e202e5cb64a3e964ee09521b72d87c.

* add tests

* fix lint errors

* fix lint errors

* change casing

* update spec

* Remove transaction

* change casing in param name in docs
2022-07-27 09:07:58 +01:00
Gábor Farkas
52989c2144 loki: remove unused code (#52435) 2022-07-27 06:11:09 +00:00
Giordano Ricci
4b2144fe40 Correlations: change casing of *UID properties (#52836)
* Correlations: change casing of *UID properties

* add link to correlations HTTP API
2022-07-27 07:01:46 +01:00
Ryan McKinley
0235fc136c Storage: allow public access to public files (#52849) 2022-07-26 20:37:35 -07:00
ying-jeanne
86283bb99e Chore: Rename dashboardUID to dashboardUIDs in search endpoint and up… (#52766)
* Chore: Rename dashboardUID to dashboardUIDs in search endpoint and update doc

* make it backward compatible
2022-07-26 22:28:14 -04:00
ying-jeanne
7da0a6d3ce Chore: Add dashboard UID as query parameter of Get annotation endpoint (#52764)
* Chore: Add dashboard uid as query parameter of Get annotation endpoint

* Update pkg/api/annotations.go

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

* update the dashboarUID

Co-authored-by: Sofia Papagiannaki <1632407+papagian@users.noreply.github.com>
2022-07-26 21:52:34 -04:00
Adela Almasan
a5410063c6 Canvas: Merge tree view and layer element list UX (#52701)
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2022-07-26 19:51:20 -04:00
Michael Mandrus
e5d89ddb95 fix typo in SQL editor placeholders #52846 2022-07-26 19:23:47 -04:00
gjed
6968478d94 Docs: updated configuration description for auto_assign_org (#50180)
* Docs: updated configuration description for auto_assign_org

* Update docs/sources/setup-grafana/configure-grafana/_index.md

* Resolve prettier issues for CI

* Update docs/sources/setup-grafana/configure-grafana/_index.md

Remove trailing space

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>
Co-authored-by: Garrett Guillotte <garrett.guillotte@grafana.com>
Co-authored-by: Ursula Kallio <ursula.kallio@grafana.com>
2022-07-26 10:09:40 -07:00
ismail simsek
0a664faeeb Graphite: Introduce new query types in annotation editor (#52341)
* Fix comment lines

* Introduce graphite variable editor

* Render results differently based on queryType

* Add comments and fallback values

* Unit tests for different type of graphite queries

* Use metrics/expand endpoint to retrieve metric names
2022-07-26 18:30:23 +02:00
Gábor Farkas
7d78d3f8b2 CODEOWNERS: update for the observability-logs squad (#52792) 2022-07-26 15:51:15 +00:00
Andres Martinez Gotor
d68f8d9577 Azure Monitor: fix bug in variable editor (#52804) 2022-07-26 17:42:43 +02:00
Adela Almasan
817837a532 Geomap: Support ability to color markers based on label value (#47476)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2022-07-26 10:26:29 -05:00
Ryan McKinley
5df6a95045 Transformations: Add standard deviation and variance reducers (#52769)
Co-authored-by: Selva <selvavm@hotmail.com>
Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
2022-07-26 11:25:35 -04:00
Gilles De Mey
a1c6147374 Alerting: Group alert state history by labels and allow filtering (#52784) 2022-07-26 17:00:04 +02:00
Gabriel MABILLE
f3cc54f7ef Chore: update latest.json to 9.0.5 (#52820) 2022-07-26 16:50:25 +02:00
renovate[bot]
21ba1469b5 Update linguijs monorepo to v3.14.0 (#52811)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-07-26 15:21:26 +01:00
Gilles De Mey
aa8c9d86dd UI/Card: Fix card items always having pointer cursor (#52809) 2022-07-26 16:15:18 +02:00
Dimitris Sotirakis
12079a7285 Remove unused code (#52806) 2022-07-26 15:08:45 +01:00
Grot (@grafanabot)
c20d96aaec ReleaseNotes: Updated changelog and release notes for 9.0.5 (#52813) 2022-07-26 16:04:54 +02:00
Yuriy Tseretyan
a081764fd8 Alerting: Scheduler to use AlertRule (#52354)
* update GetAlertRulesForSchedulingQuery to have result AlertRule
* update fetcher utils and registry to support AlertRule
* alertRuleInfo to use alert rule instead of version
* update updateCh hanlder of ruleRoutine to just clean up the state. The updated rule will be provided at the next evaluation
* update evalCh handler of ruleRoutine to use rule from the message and clear state as well as update extra labels

* remove unused function in ruleRoutine
* remove unused model SchedulableAlertRule

* store rule version in ruleRoutine instead of rule
* do not call the sender if nothing to send
2022-07-26 09:40:06 -04:00
renovate[bot]
58d8d7c44d Update dependency webpack to v5.74.0 (#52799)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-07-26 14:36:20 +01:00
sam boyer
566d0a7148 coremodel: Fix hardcoded text and overly broad embedding (#52802)
* Replace hardcoded 'dashboard' references

* Only embed cue.mod/module.cue

* Add quotes
2022-07-26 09:14:07 -04:00
renovate[bot]
22374cfab8 Update dependency ts-node to v10.9.1 (#52798)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-07-26 13:55:55 +01:00
Torkel Ödegaard
6af5f71dda Dropdown: New dropdown component (#52684)
* Progress

* Example usage in application

* Add FocusScope

* REmove unused type

* simplify it by removing trigger property

* Use new Menu.Item way to access component
2022-07-26 14:19:30 +02:00
renovate[bot]
21dab47293 Update dependency selecto to v1.17.0 (#52794)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-07-26 12:36:59 +01:00
Ashley Harrison
4c9786ea18 add a note about starred dashboards in the navbar to the documentation (#52660) 2022-07-26 12:32:45 +01:00
brendamuir
8fa6489dd4 Docs: fix data source MSSQL link (#52796) 2022-07-26 13:31:29 +02:00
renovate[bot]
8c3eb2a965 Update dependency sass to v1.54.0 (#52791)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-07-26 12:19:02 +01:00
renovate[bot]
4d7e26abfd Update dependency rollup to v2.77.1 (#52786)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-07-26 11:33:24 +01:00
renovate[bot]
c70641c593 Update dependency lru-cache to v7.13.1 (#52733)
* Update dependency lru-cache to v7.13.1

* update snapshot

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-07-26 11:21:57 +01:00
Carl Bergquist
732cc99480 instrumentation: add buckets to catch very slow requests (#51492)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
2022-07-26 12:38:59 +03:00
renovate[bot]
1d7edb1c3a Update dependency react-select to v5.4.0 (#52763)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-07-26 10:19:23 +01:00
Torkel Ödegaard
284ec1d428 Profile: Fix nav tree link to notifications (#52685) 2022-07-26 10:11:40 +01:00
George Robinson
23fc5383d9 Docs: Update docs for images in notifications (#52721) 2022-07-26 10:09:48 +01:00
Gábor Farkas
c74f9daba0 logs: better volume-color (#52711) 2022-07-26 10:50:48 +02:00
Ieva
e947910910 Service accounts: update docs (#52734)
* update the docs

* Update docs/sources/administration/service-accounts/_index.md

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
2022-07-26 09:44:12 +01:00
Ieva
b3a10202d4 Revert "Service accounts: Add service account to teams" (#52710)
* Revert "Service accounts: Add service account to teams (#51536)"

This reverts commit 0f919671e7.

* remove unneeded line

* fix test
2022-07-26 09:43:29 +01:00
Esteban Beltran
8f4d924531 Grafana/toolkit: Fix incorrect image and font generation for plugin builds (#52661) 2022-07-26 10:36:18 +02:00
Gabriel MABILLE
c6340a8214 Dashboard and Folder permissions: Update docs to reflect reality (#52730)
* Folder permissions: Update docs to reflect reality
2022-07-26 09:07:37 +02:00
Laura Benz
d429ec18a0 grafana/ui: convert sass to emotion (#52541)
* refactor: convert .elapsed-time

* refactor: elapsedTime styling not required

* refactor: logs-rows styling not defined, remove classname

* refactor: logs-meta-item__labels styling not defined, remove classname

* refactor: transfer .label-slider styling to its own element

* refactor: clean up .slider styling

* refactor: muted styling not defined, remove classname

* refactor: transfer .space-between styling to its own element + clean up

* refactor: remove icon
2022-07-26 08:31:40 +02:00
Ryan McKinley
238d761450 Geomap: refactor and cleanup structures (#52760)
Co-authored-by: Adela Almasan <adela.almasan@grafana.com>
2022-07-25 20:12:20 -04:00
Simon Podlipsky
7eabd7c83a Chore: typos in MySQL/PostgreSQL ConfigurationEditor (#52735) 2022-07-25 23:58:52 +00:00
Ryan McKinley
19ef418edc Transforms: Add Join by label transformation (#52670) 2022-07-25 19:16:58 -04:00
ying-jeanne
ac502e5013 Chore: add dashboarduid in the connection endpoint response (#52761)
* Chore: add dashboarduid in the connection endpoint response

* add uid of dashboard in the markdown
2022-07-25 18:55:28 -04:00
renovate[bot]
9df9b1b5c3 Update dependency ol to v6.15.1 (#52751)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-07-25 13:54:33 -07:00
Kristina
3ac5dfec42 Only reset keybindings on route change, not param change (#52746) 2022-07-25 14:21:24 -05:00
Kristina
0e13ee345d Explore: Change datasourceName usage to datasourceUID or datasourceRef where appropriate (#52479)
* First pass at using datasource UID when appropriate

* Fix tests

* be more lenient with lookup to accomodate different URLs

* Make test setup get mock work like real datasource get

* Fix the typing issue and remaining tests

* Fix PR feedback
2022-07-25 13:05:57 -05:00
Joey Tawadrous
cb35729553 Traces: Align APM table names (#52591)
* Order col values according to rate names order

* Tests
2022-07-25 18:59:43 +01:00
Michael Mandrus
12c495bd74 fix typo, ensure kms key example uuid isn't a potentially real key (#52750) 2022-07-25 10:20:58 -07:00
Artur Wierzbicki
3cd43bd7ea Storage: externalize allow_unsanitized_svg_upload (#52703) 2022-07-25 21:11:17 +04:00
Robin Tönniges
9c3f9887fc Updated pushover in Supported notifiers (#52631)
Pushover supports images in notifications since v9.0.2
2022-07-25 17:01:21 +00:00
Michael Mandrus
72d9de3a0f Secrets: Implement Secret Plugin required flag and fatal crash on startup (#52552)
* add special handling on the plugin gathering side to check whether secrets manager plugins are enabled or not

* show disabled badge in front end if the plugin is not enabled

* Only show error in disabled badge hover if one is present (otherwise it shows "undefined")

* refactor to make use of fields already available in the DTO

* fix typo

* if there is no error returned for the plugin, just show 'disabled'

* fix typo

* Update public/app/features/plugins/admin/components/Badges/PluginDisabledBadge.tsx

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

* Update frontendsettings.go

add clarifying comment

* fix unit test

* rework task to use new frontend property combined with plugin type to determine if the plugin should be disabled

* Update helpers.test.ts

revert test change

* fix unit test

* show custom uninstall message if the plugin is a secrets manager

* bogus commit to trigger precommit

* undo commit

* run precommit manually

* add some consts

* refactor a bit to pull plugin error management up a level

* re-add code squashed in merge

* fix compile issues

* add code to set plugin error fatal flag after secret migration

* refactor to move plugin startup out of Should Check func

* re-add important check

* make plugin startup errors fatal the first time we set a secret on the plugin

* rename func to make intent clearler

* remove unnecessary duplicate code from plugin mig

* fix compile error

* fix more compile errors

* add some extra logging to secrets migration

* have remote_plugin secret service managed plugin error fatal flag directly

* add blank file for eventual unit tests

* fix linting issues

* changes from PR review

* quick bit of cleanup

* add comment explaining design decision

* move more common test helpers to file

* slightly update to first time Get secret call

* add unit tests

* remove override func from provider

* fix linting issues

* add test cleanup step

* add some comments about refactoring to hacky test function

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
2022-07-25 12:37:47 -04:00
kay delaney
06012d51a9 Dashboard: Adjust styles for very long titles (#52452) 2022-07-25 17:03:37 +01:00
Artur Wierzbicki
33fc3a683b Datasources: add datasourceUids filter 2022-07-25 19:24:22 +04:00
Jo
4a12d0f236 Auditing: Add new options to docs (#52050)
* Auditing: Add new option docs

* add log all status codes

* change option to verbose

* denote status_codes

* Apply suggestions from code review

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

* add setup-grafana docs

Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
2022-07-25 11:15:04 -04:00
Torkel Ödegaard
feaa037a19 Menu: Improvements to menu component (#52686) 2022-07-25 16:54:58 +02:00
renovate[bot]
da5bc5bde7 Update dependency lerna to v5.2.0 (#52732)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-07-25 15:44:11 +01:00
Med Amine Amara
4d2f2b88b6 docs(alerting): removed a repetition of a word (#52376)
removed a repetition of a word in doc
2022-07-25 16:38:50 +02:00
renovate[bot]
2c78977e97 Update dependency date-fns to v2.29.1 (#52722)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-07-25 15:31:39 +01:00
Giordano Ricci
5ce4baf6f5 Correlations: Add CreateCorrelation HTTP API (#51630)
* Correlations: add migration

* Correlations: Add CreateCorrelation API

* Correlations: Make correlations work with provisioning

* Handle version changes

* Fix lining error

* lint fixes

* rebuild betterer results

* add a UID to each correlation

* Fix lint errors

* add docs

* better wording in API docs

* remove leftover comment

* handle ds updates

* Fix error message typo

* add bad data test

* make correlations a separate table

* skip readonly check when provisioning correlations

* delete stale correlations when datasources are deleted

* restore provisioned readonly ds

* publish deletion event with full data

* generate swagger and HTTP API docs

* apply source datasource permission to create correlation API

* Fix tests & lint errors

* ignore empty deletion events

* fix last lint errors

* fix more lint error

* Only publish deletion event if datasource was actually deleted

* delete DS provisioning deletes correlations, added & fixed tests

* Fix unmarshalling tests

* Fix linting errors

* Fix deltion event tests

* fix small linting error

* fix lint errors

* update betterer

* fix test

* make path singular

* Revert "make path singular"

This reverts commit 420c3d315e.

* add integration tests

* remove unneeded id from correlations table

* update spec

* update leftover references to CorrelationDTO

* fix tests

* cleanup tests

* fix lint error
2022-07-25 15:19:07 +01:00
Scott Lepper
dbc2171401 fix dockerfile for oracle alpine image (#52667)
fix dockerfile for oracle alpine image
2022-07-25 10:12:22 -04:00
Ieva
fc4fd47deb change managed permissions for service accounts (#52709) 2022-07-25 15:02:25 +01:00
Ivana Huckova
77421907b7 Loki: Add support for IP label and line filter in query builder (#52658)
* Add support for IP line filter

* Add support for IP label filter

* Updates for Explain mode

* Update test

* Remove invalid options in LabelFilterIpMatches
2022-07-25 15:16:04 +02:00
Chris Hodges
bdcef92e35 Fix small typo in panel doc (#52568) 2022-07-25 13:04:29 +00:00
Ivana Huckova
9d960e8723 Docs: Fix query history documentation (#52610)
* Query history: Fix docs

* Update query history docs

* Update docs/sources/explore/query-management.md

* Update docs/sources/explore/query-management.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Trigger drone

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2022-07-25 15:00:56 +02:00
kay delaney
c35c3abaa3 Chore: Bump typescript version to 4.7.4 (#52325)
* Chore: Bump typescript version to 4.7.4

* Bump related packages

* Revert eslint-plugin-react upgrade
2022-07-25 13:47:59 +01:00
renovate[bot]
4cd9fa3ff5 Update dependency core-js to v3.24.0 (#52708)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-07-25 13:45:02 +01:00
Josh Hunt
972105cc52 I18n: Wrap event-based modals with I18nProvider (#52720) 2022-07-25 08:44:11 -04:00
renovate[bot]
84a92bc5c8 Update dependency @visx/shape to v2.11.1 (#52707)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-07-25 13:41:43 +01:00
Levente Balogh
a1c565dec9 Data Connections: Add data sources (#52436)
* feat: show data-sources under the data-connections page

* refactor: add a constant for data-sources routes

* refactor: add a context that holds the currently active data-sources routes

* refactor: use the data-sources routes constant wherever possible

* refactor: use the data-sources routes context wherever possible

* feat(data-connections): add edit and new pages

* feat(data-connections): set the the custom routes via the context provider

* fix(data-connections): set the active tab properly

We needed to update the routes to match with the ones on the backend ("data-sources" vs "datasources"),
and we also needed to check if it is the default tab, in which case we would like to highlight the Datasources tab.

* tests: fix tests for Data Connections page

* fix: address rebase issues

* tests: find button based on role and text

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

* fix: add missing closing ) paren in tests

* refactor: use implicit return types for components

* tests: change role from "button" to "link"

* refactor: stop using unnecessary wrapper components

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
2022-07-25 14:29:21 +02:00
Ivana Huckova
53b8e528fc Loki: Add unwrap with conversion function to builder (#52639)
* Loki: Add unwrap with conversion operator to builder

* Update explain section

* Update test
2022-07-25 12:51:28 +02:00
Torkel Ödegaard
9d6994c565 ToolbarButton: Add back useful storybook story (#52683)
* ToolbarButton: Add back useful storybook story

* Remove duplicate bits
2022-07-25 12:46:07 +02:00
Shirley
7f73f65bcd CloudWatch: Refactor tests to assert struct instead of marshalled json (#52024)
* CloudWatch: Refactor tests to assert struct instead of marshalled json

* apply linter suggestion

* Move false next to average
2022-07-25 05:48:09 -04:00
renovate[bot]
4176b652a8 Update dependency @opentelemetry/semantic-conventions to v1.4.0 (#52663)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-07-25 10:15:11 +01:00
renovate[bot]
fab0f9c6be Update dependency @types/ol-ext to v2.1.2 (#52691)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-07-25 10:13:37 +01:00
renovate[bot]
044d8315de Update dependency @testing-library/user-event to v14.3.0 (#52690)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-07-25 10:11:42 +01:00
Joey Tawadrous
4937105994 Tempo: Add context menu to edges (#52396)
* Edge links

* Update tests

* Update menu title

* Remove title

* Update duration linked query

* Update links

* Added test for getFieldConfig
2022-07-25 10:03:57 +01:00
Andres Martinez Gotor
eacda83caf Azure Monitor: New template variable editor (#52594) 2022-07-25 09:32:27 +02:00
Artur Wierzbicki
d9db155394 Storage: Mime type detection (#52512)
* Storage: implement mime type detection

* lint
2022-07-25 11:30:20 +04:00
Alex Khomenko
1e3135b18a ColorPickerInput: Allow returning empty color value (#52650)
* ColorPickerInput: Allow returning empty color value

* ColorPickerInput: Do not call onChange if the value didn't change
2022-07-25 10:01:19 +03:00
Torkel Ödegaard
f9d8b68543 Slider: Fixes styling of marker dots (#52678) 2022-07-24 09:34:27 -07:00
Torkel Ödegaard
973be23908 FolderPage: Do not create browser history when adding slug to url (#52695) 2022-07-24 09:32:16 -07:00
Ilya Stoliar
d0db3ab306 TimeZone: Remove political reference (#52689)
* Remove political reference

* Name adjustment

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

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2022-07-24 11:41:18 +02:00
Torkel Ödegaard
be5e96f628 Timezone: Consistency in how we write time zone (#52679)
* Timezone: Consistency in how we write time zone

* Updated
2022-07-23 17:49:58 +02:00
Torkel Ödegaard
b782d9aa12 GrafanaContext: Exploring a way to get rid of global scope singletons (#52128)
* Context start

* More progress on more generic react context for services

* Update

* Update Page test

* Fixing tests

* Moving to core app
2022-07-23 17:09:03 +02:00
Torkel Ödegaard
4eb0a8a98e Plugins: Fixes navigation between different plugin pages (#52571) 2022-07-23 13:38:14 +02:00
Ryan McKinley
2fa10dc903 TimeSeries: Support multiple timezones in x axis (#52424)
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2022-07-22 22:18:27 -05:00
Artur Wierzbicki
17ea5f4f3e Search: Handle special datasource types (#52446) 2022-07-22 21:10:53 -04:00
Artur Wierzbicki
bcfa4fabf6 Search: Allowed actions (#52529) 2022-07-22 17:42:43 -07:00
Carl Bergquist
ce04a01ae9 devenv: removes old ab script (#52657)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
2022-07-22 17:39:23 -07:00
matt abrams
667ae91323 Docs: Replace apt-key command with signed-by option (#44885)
* replace apt-key command with signed-by option

* add gpg command to meet debian best practices

* delete old file

* update filepath
2022-07-22 18:44:20 -05:00
Ashley Harrison
2b46138202 improve meta and story typings (#52659) 2022-07-22 17:19:16 +01:00
kay delaney
0c89743759 Variables: Optimize "timeRangeUpdated" path (#52047) 2022-07-22 16:10:10 +01:00
renovate[bot]
3c1a9293c3 Update dependency @microsoft/api-extractor-model to v7.22.1 (#52641)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-07-22 15:59:48 +01:00
Ivana Huckova
772b6396f5 Loki: Add hints for level-like labels (#52414)
* Loki: Add hint for level-like label

* Add test to addToQuery

* Add tests

* Update tests

* Update copy

* Get log position in metrics query and add test

* Update
2022-07-22 16:59:25 +02:00
Josh Hunt
9f81b3dcc6 I18n: Change locale format to IETF language tag (#52596)
* I18n: Change locale format to our agreed format

* fix test

* Build lingui messages files before ci tests
2022-07-22 10:50:00 -04:00
Josh Hunt
1ee21b81d1 GrafanaUI: Improve ClipboardButton story (#52656)
* GrafanaUI: Improve ClipboardButton story

* GrafanaUI: Improve ClipboardButton story
2022-07-22 15:23:08 +01:00
Joey Tawadrous
39f385d2cd Remove need to use lowercase in span name dropdown (#52645) 2022-07-22 14:34:46 +01:00
Dimitris Sotirakis
f26c49ecc0 Remove build-storybook from release-branch mode for enterprise (#52654) 2022-07-22 08:29:29 -04:00
Ashley Harrison
64d30e37b2 add support for controls in DataSourceHttpSettings story (#52618) 2022-07-22 13:27:43 +01:00
eledobleefe
42e92665f3 Internationalisation: Translate the Share modal (#52457) 2022-07-22 13:01:57 +02:00
Konrad Lalik
0507b3564f Alerting: Fix alert panel instance-based rules filtering (#52583) 2022-07-22 12:52:56 +02:00
renovate[bot]
b4c6efa07b Update dependency moment to v2.29.4 [SECURITY] (#51886)
* Update dependency moment to v2.29.4 [SECURITY]

* chore(moment): make sure nested moment deps resolve to moment@2.29.4

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
2022-07-22 12:00:54 +02:00
Dimitris Sotirakis
6e6863f10a Remove condition - simplify code (#52637) 2022-07-22 12:23:08 +03:00
Konrad Lalik
8ce9f2c936 Alerting: Add subpath to the folder edit and permission url (#52399) 2022-07-22 11:20:28 +02:00
Will Browne
843ff932b7 Plugins: Add signature wildcard globbing for dedicated private plugin type (#52163)
* it's glob time

* add more tests

* fix warn log

* support new sig type
2022-07-22 10:48:16 +02:00
Ivan Ortega Alba
2ec01c8d08 Preferences: Use dashboardUID to set the home dashboard (#51919) 2022-07-22 10:44:22 +02:00
Alex Khomenko
c7f8c2a7e1 LoginLayout: Remove hardcoded background-color (#52505) 2022-07-22 11:44:00 +03:00
Torkel Ödegaard
5b275ca3f5 TopNav: Support for deeper nesting in section nav (#52562) 2022-07-22 10:42:41 +02:00
Gabriel MABILLE
8d938175f5 Fix anonymous access (#52615) 2022-07-22 10:35:26 +02:00
Vardan Torosyan
47c9d461b3 Service accounts: Document service account managed permissions (#52628) 2022-07-22 10:35:14 +02:00
Vardan Torosyan
18867d6d78 Service account: Ensure that you can revert only service accounts which you can access (#52626)
* Service account: Ensure that you can revert only service accounts which you can access

* Remove prettier messup with docs

* Remove prettier messup with docs

* Prettier run
2022-07-22 10:35:01 +02:00
Vardan Torosyan
5d05d26e12 Service account: Redirect to the edit page after creation (#52623) 2022-07-22 09:54:24 +02:00
Gabriel MABILLE
5e5e8c0b04 Docs: Revoke access to App Plugins (#52542)
* Docs: Revoke access to App Plugins

* Describe role and permission

* Adding a 'Managing app plugins access' section to plugin management
2022-07-22 08:53:11 +02:00
Leon Sorokin
d7b208ec58 TimeSeries: Add option for symmetrical y axes (align 0) (#52555) 2022-07-21 23:38:22 -05:00
Drew Slobodnjak
bf8bb26f63 Canvas: Set element cursor to grab (#52503)
* Only display grab cursor when editing enabled

* Apply grabbing cursor while dragging an element
2022-07-21 13:17:25 -07:00
Drew Slobodnjak
3c2ef54e04 Geomap: Fix tooltip offset bug (#52627) 2022-07-21 13:16:05 -07:00
owensmallwood
cf86c696e0 Public Dashboards: Adds template variable validation for pubdash on the backend (#52566)
Validates template variables for pubdash on the backend when saving a public dashboard
2022-07-21 13:56:20 -06:00
Torkel Ödegaard
9ef29bb5c3 TopNav: Keyboard shortcut to toggle topnav on or off (#52572)
* TopNav: Keyboard shortcut to google topnav on off

* gate it behind dev mode
2022-07-21 20:55:24 +02:00
Christopher Moyer
1974f166e0 removes unnecessary words in into (#52622) 2022-07-21 13:41:29 -05:00
Eric Leijonmarck
fb24ff3081 Auth: Add prometheus metrics for case insensitive ids (#52162)
* rename file

* add promstats for authinfostore every 4h

* add mixed cased users

* cherry pick and cleanup

* fix: query login,email instead of count()

* FIX: mysql missing alias to subquery

* fix: query working on mysql, sqllite3, and pg
2022-07-21 18:11:35 +01:00
Vardan Torosyan
7251b8524f Service accounts: Update docs to mention about reverting token to API key (#52608)
* Service accounts: Update docs to mention about reverting token to API key

* Update docs/sources/administration/api-keys/_index.md
2022-07-21 18:56:41 +02:00
Vardan Torosyan
f571c46495 Service accounts: Add a confirm modal for migration actions (#52604)
* Service accounts: Add a confirm modal for migration actions

* Handle the error case when migrating fails, reload page afterwards so that the tab disappears
2022-07-21 18:56:20 +02:00
Connor Lindsey
83c1756251 Tracing: Send tags, events, and references as raw json (#52245)
* Tracing: Send tags, events, and references as raw json

* Update tempo fixture
2022-07-21 10:00:47 -06:00
Ashley Harrison
c68ae0b616 remove UseState from SpectrumPalette story (#52612) 2022-07-21 16:20:31 +01:00
Ashley Harrison
27542445ce Chore: remove UseState from ColorPicker story (#52611)
* remove UseState from ColorPicker story

* remove story meta type assertion
2022-07-21 16:15:55 +01:00
Ashley Harrison
f25c609105 Convert MultiModeGraphTooltip test to RTL (#52595)
* Convert MultiModeGraphTooltip test to RTL

* don't export these styles

* use theme instead of hardcoded style values
2022-07-21 15:54:18 +01:00
Todd Treece
b5d57c45e3 Plugins: Add support for HTTP logger (#46578) 2022-07-21 09:46:47 -04:00
Darren Janeczek
565430f297 Prometheus: Don't show errors from unsuccessful API checks like rules or exemplar checks (#52193)
The query inspector was experiencing some error pop-ups due
to errors encountered on metrics datasources configured with multiple
tenants.

e.g., team-a|team-b

This fix suppresses those errors so as to not mislead the user.
2022-07-21 15:45:02 +02:00
Andres Martinez Gotor
5644555833 Azure Monitor: Migrate template variables to new format (#52584) 2022-07-21 13:21:07 +02:00
brendamuir
cf42365fdd Docs: minor corrections to prefix and naming (#52579) 2022-07-21 12:09:25 +01:00
gotjosh
d762de7aa7 Revert "Alerting: Add support for images in Line alerts (#50703)" (#52593)
This reverts commit 0af09b8c57.
2022-07-21 06:57:57 -04:00
Josh Hunt
62a3f2ed32 Chore: Align on 'internationalization' for feature name (#52585)
* rename internationalization docs

* Move localisation.tsx to internationalization/index.tsx
2022-07-21 06:31:08 -04:00
Ivan Ortega Alba
3fbec39952 History: list, compare and restore versions using UID (#51989) 2022-07-21 11:52:36 +02:00
George Robinson
0af09b8c57 Alerting: Add support for images in Line alerts (#50703) 2022-07-21 11:43:06 +02:00
gotjosh
b026f2bc5d Alerting: Allow the webhook notifier to support a custom Authorization header (#52515)
* Allow the webhook notifier to support a custom Authorization header

Instead of doing something clever of re-using the existing username/password fields of Basic Authentication - I opted for two diffent fields to match the upstream Alertmanager configuration (that in turn is based of the HTTP Basic authentication).

 It'll fail if you have values for both HTTP Basic Authentication and Authorization.
2022-07-21 10:25:58 +01:00
Sven Grossmann
b1f355fddc Changelog: Removed falsely added bugfix (#52580) 2022-07-21 10:19:12 +02:00
Michael Mandrus
530135c403 Documentation: Create documentation around AWS Secrets Manager plugin (#52181)
* first draft of secrets manager documentation

* some minor refinements

* Update docs/sources/enterprise/aws-secrets-plugin.md

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

* Update docs/sources/enterprise/aws-secrets-plugin.md

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>

* Update docs/sources/enterprise/aws-secrets-plugin.md

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>

* Update docs/sources/enterprise/aws-secrets-plugin.md

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>

* Update docs/sources/enterprise/aws-secrets-plugin.md

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>

* Update docs/sources/enterprise/aws-secrets-plugin.md

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>

* Update docs/sources/enterprise/aws-secrets-plugin.md

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>

* Update docs/sources/enterprise/aws-secrets-plugin.md

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>

* Update docs/sources/enterprise/aws-secrets-plugin.md

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>

* Update docs/sources/enterprise/aws-secrets-plugin.md

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>

* Update docs/sources/enterprise/aws-secrets-plugin.md

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>

* Update docs/sources/enterprise/aws-secrets-plugin.md

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>

* Update docs/sources/enterprise/aws-secrets-plugin.md

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>

* Update docs/sources/enterprise/aws-secrets-plugin.md

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>

* Update docs/sources/enterprise/aws-secrets-plugin.md

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>

* Update docs/sources/enterprise/aws-secrets-plugin.md

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>

* Update docs/sources/enterprise/aws-secrets-plugin.md

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>

* Update docs/sources/enterprise/aws-secrets-plugin.md

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>

* Update docs/sources/enterprise/aws-secrets-plugin.md

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>

* a few changes from the review

* more changes based on review

* add menuTitle

* final round of changes based on feedback

* final cleanup before new review

* add sample config for clarity

* Apply suggestions from code review

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>

* add feature to other enterprise page

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>
Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
2022-07-20 15:02:22 -04:00
Ieva
f9ef7cac11 allow setting team managed permissions for service accounts (#52467) 2022-07-20 20:27:41 +02:00
Jean-Philippe Quéméner
ba9c18d9c3 Alerting: use static channel configuration to determinate secure fields (#52527)
* Alerting: use static channel configuration to determinate secure fields

* move to channels package

* introduce channel_config package to fix cyclic import

* add missing changes

* compare type to type
2022-07-20 19:58:36 +02:00
Christopher Moyer
7d90f2f1a3 Docs: adjusts heading and rewords the intro to active voice (#52545)
* adjusts heading and makes intro active voice

* Update docs/sources/administration/service-accounts/_index.md

Co-authored-by: Ursula Kallio <ursula.kallio@grafana.com>

Co-authored-by: Ursula Kallio <ursula.kallio@grafana.com>
2022-07-20 12:33:05 -05:00
Ieva
f3baac581d Chore: update latest.json to 9.0.4 (#52550) 2022-07-20 13:21:59 -04:00
Grot (@grafanabot)
240bb8928d ReleaseNotes: Updated changelog and release notes for 9.0.4 (#52548) 2022-07-20 18:03:00 +01:00
Scott Lepper
de956fc3d8 Core code editor/builder components (#52421)
* migrate experimental to core grafana - update refs

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2022-07-20 12:50:08 -04:00
Drew Slobodnjak
feb9960f96 Canvas: Add constraint selection icons (#52504) 2022-07-20 09:49:34 -07:00
Sarah Zinger
355489d9b4 Upgrade grafana-aws-sdk from core, and remove it from @grafana/ui (#52420) 2022-07-20 12:33:57 -04:00
Joao Silva
e3567c21d1 Internationalisation: Translates RefreshPicker and the dashboard toolbar (#51827) 2022-07-20 17:28:32 +01:00
Gabriel MABILLE
60da9eaac5 Docs: Fix access-control links (#52537) 2022-07-20 18:01:05 +02:00
Torkel Ödegaard
77f7e8dafc PageLayouts: Updates dashboard section routes with navId (#52175)
* First stab at new page layouts behind feature toggle

* Simplifying PageHeader

* Progress on a new model that can more easily support new and old page layouts

* Progress

* rename folder

* Progress

* Minor change

* fixes

* Fixing tests

* Make breadcrumbs work

* Add tests for old Page component

* Adding tests for new Page component and behavior

* fixing page header test

* Fixed test

* Moving user profile routes to navId

* PageLayouts: Updates dashboards routes with navId

* added missing navId

* AppChrome outside route

* Renaming folder

* Minor fix

* Updated

* Fixing StoragePage

* Updated

* Updating translation ids

* Updated snapshot

* update nav translation ids (yes this is confusing)

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
Co-authored-by: joshhunt <josh@trtr.co>
2022-07-20 17:26:52 +02:00
Jean-Philippe Quéméner
320262c3db Alerting: Cleanup the alert_configuration table on write (#51497) 2022-07-20 16:54:18 +02:00
Jean-Philippe Quéméner
50ae42130b Alerting: take datasources as external alertmanagers into consideration (#52534) 2022-07-20 16:50:49 +02:00
Jo
5c4aa4a7ac OAuth: Allow role mapping from GitHub and GitLab groups (#52407)
* OAuth: Add extract role support to github

OAuth: correct github errors

Oauth: add github tests

Oauth: Allow mapping via group memberships

Oauth: Add markdown instructions to the new mappers

fix lint

* Apply suggestions from code review

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

* Apply suggestions from code review

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
Co-authored-by: Vardan Torosyan <vardants@gmail.com>
2022-07-20 10:32:04 -04:00
Torkel Ödegaard
01d561224c TopNav: Updates to create service account page and invite user (#52480)
* Simplify logic to support both navs

* Added new file
2022-07-20 16:02:25 +02:00
Gábor Farkas
b42ac8a211 github: add issues to logs-squad based on labels (#52533) 2022-07-20 10:01:02 -04:00
Ieva
becd895244 display dashboard settings to users who are allowed to edit the dashboard (#52532) 2022-07-20 13:53:36 +00:00
Dimitris Sotirakis
3b6cef9dfa CI: Refactor/Reorder *.star files (#52384)
* Refactor test pipelines

* Move pr, main and release starlark files under scripts/drone/event

* Move cron.star to scripts/drone/events

* Further unused code removal

* Introducing build.star

* Extract verify_drone.star

* Extract windows.star

* Extract publish.star

* Remove unused code

* Fix formatting in main.star
2022-07-20 09:43:19 -04:00
Adam Simpson
c8be92e827 CloudMonitoring: add tests around experimental UI (#52487)
* CloudMonitoring: add tests around experimental UI

I also reworked the annotation query editor UI a little bit to bring it
inline with how AzureMonitor's query editor looks.

Closes #44431
2022-07-20 13:40:55 +00:00
Sofia Papagiannaki
f7c5eceb21 Chore: Update to the latest grafana-plugin-sdk-go and more swagger fixes (#52445)
* Fix get legacy alert response

* Swagger: Fix get folder by UID response

* Fix conflicting swagger model Alert

Reanme legacy alerting swagger model to LegacyAlert to differentiate it
from the prometheus Alert

* Bump grafana-plugin-sdk-go

* Fix get folder response

* Use go-swagger command for merging the specifications and remove merge_specs script
2022-07-20 16:09:42 +03:00
idafurjes
d3d8fdd878 Chore: Move user errors to user service (#52460)
* Move user not found err to user service

* User ErrCaseInsensitive from user pkg

* User ErrUserAlreadyExists from user pkg

* User ErrLastGrafanaAdmin from user pkg

* Remove errors from model
2022-07-20 14:50:06 +02:00
Emil Tullstedt
78f26a079c Chore: Upgrade to Go version 1.17.12 (#52523) 2022-07-20 14:27:44 +02:00
Dominik Prokop
98d41f0bf8 Table: Fix type safety (#52525) 2022-07-20 05:26:04 -07:00
Nathan Marrs
813f18b990 Canvas: Fix selecto box offset placement #52489 2022-07-20 04:28:02 -07:00
Agnès Toulet
66f941adb8 RBAC: Add RBAC for data source insights (#51496) 2022-07-20 12:54:26 +02:00
Dimitris Sotirakis
47678cd087 CI; Update Dockerfile for grafana/grafana-ci-deploy container (#52516)
* Use python 3.7 for gcloud

* Update comment for reference

* Update image version

* Update gcloud components
2022-07-20 06:34:09 -04:00
Sven Grossmann
6cab909132 Loki: Fix show context not working in some occasions (#52458)
* added missing `languageProvider.start` call

* moved `languageProvider.start`
2022-07-20 12:28:11 +02:00
Ezequiel Victorero
0633840777 GrafanaUI: Add success state to ClipboardButton (#52069)
* User Experience: apply the same pattern feedback for all copy to clipboard buttons

* add copy icon to all ClipboardButton use cases

* Change primary color for copy to clipboard in create token

* Add success button variant

* Remove copy confirmation from TableCellInspectModal because it's in the base component now

* Design tweaks to copy confirmation

 - Only change the icon to tick to avoid the button changing size
 - Change button to success green
 - Only show copy confirmation state for 2 seconds

* revert TabelCellInspectModal text button back

* revert accidental change to ShareLink

Co-authored-by: joshhunt <josh@trtr.co>
2022-07-20 10:33:46 +01:00
Ieva
ba76be174f Access control: Fix org user removal for OSS users (#52473)
* allow setting team managed permissions for service accounts

* Revert "allow setting team managed permissions for service accounts"

This reverts commit 7598626397.

* fix org user removal for OSS

* remove comment
2022-07-20 10:18:41 +01:00
Andres Martinez Gotor
2538fca53a Azure Monitor: Add support for Metric Names variables (#52322)
* Azure Monitor: Add support for Metric Names variables

* Azure Monitor: Add support for Workspaces variables (#52323)
2022-07-20 11:04:01 +02:00
Levente Balogh
d6d49d8ba3 DataSources: refactor datasource pages to be reusable (#51874)
* refactor: move utility functions out of the redux actions

* refactor: move password handlers to the feature root

* refactor: move API related functions to an api.ts

* refactor: move components under a /components folder

* refactor: move page containers under a /pages folder and extract components

* refactor: update mocks to be easier to reuse

* refactor: move tests into a state/tests/ subfolder

* refactor: expose 'initialState' for plugins

* refactor: move generic types to the root folder of the feature

* refactor: import path fixe

* refactor: update import paths for app routes

* chore: update betterer

* refactor: fix type errors due to changed mock functions

* chore: fix mocking context_srv in tests

* refactor: udpate imports to be more concise

* fix: update failing test because of mocks

* refactor: use the new `navId` prop where we can

* fix: use UID instead ID in datasource edit links

* fix:clean up Redux state when unmounting the edit page

* refactor: use `uid` instead of `id`

* refactor: always fetch the plugin details when editing a datasource

The deleted lines could provide performance benefits, although they also make the
implementation more prone to errors. (Mostly because we are storing the information
about the currently loaded plugin in a single field, and it was not validating if it
is for the latest one).

We are planning to introduce some kind of caching, but first we would like to clean up
the underlying state a bit (plugins & datasources.

* fix: add missing dispatch() wrapper for update datasource callback

* refactor: prefer using absolute import paths

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

* fix: ESLINT import order issue

* refactor: put test files next to their files

* refactor: use implicit return types for components

* fix: remove caching from datasource fetching

I have introduced a cache to only fetch data-sources once, however as we
are missing a good logic for updating the instances in the Redux store
when they change (create, update, delete), this approach is not keeping the UI in sync.
Due to this reason I have removed the caching for now, and will reintroduce it once we have a
more robust client-side state logic.

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2022-07-20 09:25:09 +02:00
Torkel Ödegaard
9f4683b3d0 Dashboard: Fix iteration property change triggering unsaved changes warning (#51272) 2022-07-20 03:41:54 +02:00
owensmallwood
3bc13e2335 Public Dashboards: Add Public Tag to Dashboard Title (#52351)
Adds Public tag to dashboard title when it has an enabled public dashboard
2022-07-19 17:44:41 -06:00
Michael Mandrus
acd85314b3 Secrets: Add logging to track secrets migration (#52481)
* add logging to track migration

* fix lint problem
2022-07-19 16:36:51 -04:00
owensmallwood
20907d0635 Adds documentation for public dashboards under the dashboards section. (#52126)
Adds documentation for public dashboards
2022-07-19 13:19:40 -06:00
Usman Ahmad
a8ddea0d35 Update upgrade-grafana.md (#52406)
fixed the broken link for the release notes
2022-07-19 14:14:56 -05:00
Torkel Ödegaard
b29045b57b FolderPage: Improve folder page to work with new nav breadcrumbs and modify Dashboard page show path based breadcrumbs" (#52428)
* FolderPage: Progress on folder page navigation

* Dashboard to adapt breadcrumbs when opening dashboard from file storage

* add warning when topnav is not enabled

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2022-07-19 20:41:27 +02:00
Yuriy Tseretyan
79d92aa03e Alerting: Rename sender.Sender to sender.ExternalAlertmanagers (#52463) 2022-07-19 14:04:48 -04:00
Isabella Siu
146c90d59e CloudWatch: fix log explorer context (#52118) 2022-07-19 13:59:30 -04:00
lean.dev
e1785f4eb4 Secret migration from Sql KV Store to Secret Plugin (#52191)
* Created PluginSecretMigrationService to be able to migrate from the secrets table from the database to the secret plugin. Added migration which takes all the secrets at the sql store and stores it in the plugin. Then deletes all the secrets from the sql
* Added secretsKVStoreSQL.GetAll() method to return all the secrets at the sql table
* Renaming kvstore_test.go as sql_test.go, adding GetAll test case. Fixing decryption of keys
2022-07-19 14:42:23 -03:00
Adela Almasan
b742e80930 Tree navigation in inline editor (#52427) 2022-07-19 12:37:37 -05:00
Torkel Ödegaard
dfce454eca StyleGuide: Update frontend style guide (#52471)
We should not explicitly type the return type for React functional components.
2022-07-19 19:12:11 +02:00
George Robinson
094dfd0d4d Alerting: Fix Slack push notifications (#52391)
This commit fixes push notifications for Slack which used to show "This content cannot be displayed". The text field is shown in both the message and the push notification.
2022-07-19 17:42:24 +01:00
Ivana Huckova
c087198b1b Loki: Fix adding of multiple label filters when parser (#52335)
* Loki: Fix adding multiple filters

* Update logic in sorting
2022-07-19 18:08:55 +02:00
Alexander Weaver
39d7fdbbbc Alerting: Preserve new-lines from custom email templates in rendered email (#52253)
* Add line break, regenerate, and fix

* Left-align custom text in addition to preserving newlines
2022-07-19 11:05:50 -05:00
Torkel Ödegaard
16f813fc04 Scene: Fixing state issue with useState when SceneObject instance changes (#52372)
* ScenePanelRepeater: Fixes refreshes temporarily by setting key to guid

* Fixing issue with old state being returned by useState when the scene object instance changed (with same react key)
2022-07-19 17:47:59 +02:00
Torkel Ödegaard
8d92417a16 Scenes: Improve typing of scene state to avoid type guards and casting (#52422)
* Trying to get rid of type guard but failing

* Improve typing of scene object state

* Fixed wrongly renamed event

* Tweaks
2022-07-19 17:46:49 +02:00
Torkel Ödegaard
6483914815 ServiceAccounts: Updates the service accounts list page to look good in new top nav design (#52425) 2022-07-19 17:46:04 +02:00
kay delaney
0142c8ccd1 Dashboard Links: Fix styles for very long dashboard titles (#52443) 2022-07-19 16:15:59 +01:00
Ryan McKinley
3bdec4d138 Storage: remove orgId from sql config (#52426) 2022-07-19 08:13:26 -07:00
Dimitris Sotirakis
529289268b Docker: Install git in grafana/grafana-ci-deploy image (#52466)
* Install git in grafana/grafana-ci-deploy image

* Bump grafana/grafana-ci-deploy version
2022-07-19 11:04:16 -04:00
Ezequiel Victorero
e0a58300ac Public Dashboards: count public dashboards view requests (#52419) 2022-07-19 11:50:37 -03:00
Artur Wierzbicki
0300b1c674 Storage: branding access (#52412)
* Storage: add special users for system branding access

* Storage: explicit global org id

* Storage: initialize org storages with global org id

* Storage: add comments

* Storage: simplify - use orgId: 1 for systembranding
2022-07-19 18:47:11 +04:00
Agnès Toulet
2b7fe7251c Docs: Update query caching support (#50706)
* Docs: Update query caching support

* Update query-caching.md
2022-07-19 16:23:44 +02:00
idafurjes
c061b66d5f Chore: Split delete user method (#52216)
* Remove user from preferences, stars, orguser, team member

* Fix lint

* Add Delete user from org and dashboard acl

* Delete user from user auth

* Add DeleteUser to quota

* Add test files and adjust user auth store

* Rename package in wire for user auth

* Import Quota Service interface in other services

* do the same in tests

* fix lint tests

* Fix tests

* Add some tests

* Rename InsertUser and DeleteUser to InsertOrgUser and DeleteOrgUser

* Rename DeleteUser to DeleteByUser in quota

* changing a method name in few additional places

* Fix in other places

* Fix lint

* Fix tests

* Chore: Split Delete User method

* Add fakes for userauth

* Add mock for access control Delete User permossion, use interface

* Use interface for ream guardian

* Add simple fake for dashboard acl

* Add go routines, clean up, use interfaces

* fix lint

* Update pkg/services/user/userimpl/user_test.go

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

* Update pkg/services/user/userimpl/user_test.go

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

* Update pkg/services/user/userimpl/user_test.go

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

* Add wrapper for not service account error

* fix indentation

* Use fmt for error wrapper

Co-authored-by: Sofia Papagiannaki <1632407+papagian@users.noreply.github.com>
2022-07-19 16:01:05 +02:00
Ieva
39025bb4cd add logs to debug failing migration (#52447) 2022-07-19 09:34:49 -04:00
Yuriy Tseretyan
054fe54b03 Alerting: Split Scheduler and AlertRouter tests (#52416)
* move fake FakeExternalAlertmanager to sender package
* move tests from scheduler to router
* update alerts router to have all fields private
* update scheduler tests to use sender mock
2022-07-19 09:32:54 -04:00
Leo
c60487fdbf Plugins: Convert BarGaugePanel to RTL (#52423)
* Plugins: Convert bargaugepanel tests to RTL

* Chore: Improved test methods used in BarGaugePanel
2022-07-19 14:17:22 +02:00
Dominik Prokop
49311e1cfb Legend: Right align calculation values (#52400) 2022-07-19 14:07:27 +02:00
Dimitris Sotirakis
e0d1af1867 Remove volumes from build-e2e pipeline on main (#52386) 2022-07-19 14:38:43 +03:00
Sofia Papagiannaki
e6b9ded949 API: Add service account routes to the swagger (#52398)
* API: Add service account routes to the swagger
2022-07-19 12:52:51 +03:00
Joe Blubaugh
a0f96ed4e1 SQLStore: Support Upserting multiple rows. (#52228)
This will be used to reduce write load when the alerting system writes a
large number of events.
2022-07-19 16:42:48 +08:00
Peter Holmberg
e74c2390de Alerting: Prevent evaluation if "for" shorter than "evaluate" (#51797)
Co-authored-by: Armand Grillet <armand.grillet@outlook.com>
2022-07-19 10:30:26 +02:00
Kat Yang
ab8ad1bb42 Chore: Add new go test commands for unit, integration, and pro tests to makefile (#51202)
* Chore: Add new go test commands for unit, integration tests to makefile

* Add test-go-unit and test-go-integration targets as dependencies of the test-go target

* Add makefile target for mysql & postgres backends

* Set GRAFANA_TEST_DB variable for the xargs postgres command

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

* Set GRAFANA_TEST_DB variable for the xargs mysql command

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

* Use postgres_tests as source

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

* Set postgres_tests as source

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

* Clean test cache before postgres and mysql integration test makefile commands

Co-authored-by: Sofia Papagiannaki <1632407+papagian@users.noreply.github.com>
2022-07-19 11:04:38 +03:00
Gabriel MABILLE
2617a25fb5 Fix: Use ac.parameter for the scope protecting plugins routes (#52389)
* Fix: Use parameter for the scope protecting /a routes

* Fix: Use parameter for the scope protecting /plugins/resources routes
2022-07-19 09:30:54 +02:00
Joey Tawadrous
11b743ecd9 Traces: Remove serviceMap feature flag (#52375)
* Remove serviceMap feature flag

* Remove import

* Add serviceMap to queryTypeOptions
2022-07-19 08:00:58 +01:00
Gábor Farkas
46eec85b1a loki: better handle an empty-response (#52397) 2022-07-19 08:13:38 +02:00
Alex Khomenko
ba543343c4 Grafana/UI: Add ColorPickerInput component (#52222)
* ColorPickerInput: Setup componnet

* ColorPickerInput: Add onChange callback

* ColorPickerInput: Conver ColorInput to functional component

* ColorPickerInput: Extend Input props

* ColorPickerInput: Upate value prop

* ColorPickerInput: Allow customising color format for onChange

* ColorPickerInput: Add docs

* ColorPickerInput: Update docs

* ColorPickerInput: Memoize debounced callback

* ColorPickerInput: Add tests and use theme for spacing

* Apply styles from SpectrumPalette

* Cleanup
2022-07-19 01:09:09 -04:00
sunb3am
9a72ebcd99 Docs: Updated links to landing pages for the notifiers (#51875)
* Documentation: Updated links to landing pages for the respective notifiers in alerting 

Updated links for listed notifiers to correctly redirect to their landing pages

* Ran prettier
2022-07-19 04:13:51 +02:00
Leon Sorokin
a5a8052916 TimeSeries: Add option to match axis color to series color (#51437) 2022-07-18 17:50:07 -05:00
Adela Almasan
524948515c Storage: Upload button (#52346) 2022-07-18 16:09:24 -05:00
Torkel Ödegaard
4aae9d1567 Scene: Support for collapsable rows via a nested scene object (#52367)
* initial row test

* Updated

* Row is more of a nested collapsable scene

* Updated

* Added test for nested scene

* Added test for nested scene
2022-07-18 20:26:10 +02:00
Ryan McKinley
824f12a993 Storage: Remove storageLocalUpload flag (#52413) 2022-07-18 10:44:42 -07:00
Artur Wierzbicki
841e5ae8ad Storage: system/branding storage (#51987)
* Storage: add `system` branding storage root, expose `system/branding` subfolder

* Storage: merge
2022-07-18 19:37:22 +04:00
George Robinson
e7feff6d99 Alerting: Move debug log line to where alert rules are updated (#52318) 2022-07-18 11:27:06 -04:00
Torkel Ödegaard
38ec4c0a09 UnsavedChanges: Should not be triggered when only going into panel edit without changing anything (#52363) 2022-07-18 17:24:21 +02:00
Torkel Ödegaard
1bedf33e3d ServiceAccount: New service account modal to follow design system (#52373)
* ServiceAccount: New service account modal to follow design system

* Fixing spacing and removing double Field label

* Fixing imports

* Update comment
2022-07-18 17:23:49 +02:00
Ryan McKinley
b3b64e24c2 Export: include section count in status updates (#52368) 2022-07-18 11:03:08 -04:00
Michael Mandrus
278f5b131b add secretsmanager type to plugin.json (#52408) 2022-07-18 11:02:37 -04:00
Joey Tawadrous
6c89bf53f2 Tempo: Tempo/Prometheus links select ds in new tab (cmd + click) (#52319)
* Set tempo/prom ds name when clicking trace links

* Updated tests

* Removed vars
2022-07-18 15:36:16 +01:00
Leo
7b7b9ff4a7 ValueMappings: Make value mapping row focusable (#52337)
* Dimensions: Move drag handle to draggable container

* Accessibility: Added unique ids to preserve focus when dragging items using keyboard
2022-07-18 16:19:32 +02:00
Artur Wierzbicki
9afe845d5c Sanitization: fix log message (#52401) 2022-07-18 06:46:57 -07:00
idafurjes
f5cace8bbd Rename Acl to ACL (#52342)
* Rename Acl to ACL

* Fix yaml files

* Add xorm tags and fix test
2022-07-18 15:14:58 +02:00
Ivana Huckova
8ff152f98f ModifyQuery: Improve typing for modifyQuery and query hints (#52326)
* ModifyQuery: Improve typing

* Elasticsearch: Added `modifyQuery` method to add filters in Explore (#52313)

* fixed elasticsearch `QueryFixAction` type

Co-authored-by: Sven Grossmann <Svennergr@gmail.com>
2022-07-18 14:13:34 +02:00
Artur Wierzbicki
b2736ac1fe Storage: limit the number of uploaded files (#50796)
* #50608: sql file upload quotas

* rename `files_in_sql` to `file`

* merge conflict
2022-07-18 15:24:39 +04:00
Artur Wierzbicki
67ea2da57e Storage: fix svg upload (#52395) 2022-07-18 06:36:54 -04:00
brendamuir
076851313d Docs: fixes warning for enterprise customers (#52385)
* Docs: fixes data source links

* fixes unified alerting redirect

* Docs: fixes enterprise customer warning
2022-07-18 12:09:29 +02:00
Sofia Papagiannaki
fb379ae436 Chore: Introduce playlist service (#52252)
* Store: Introduce playlist service

* Integrate playlist service

* Update swagger
2022-07-18 05:26:35 -04:00
eledobleefe
332639ce43 PanelEdit: Hide multi-/all-select datasource variables in datasource picker (#52142) 2022-07-18 11:02:18 +02:00
Joey Tawadrous
3617eac5f3 Traces: Add more template variables in Tempo & Zipkin (#52306)
* Add support for more vars in Tempo

* Tests for Tempo vars

* Tempo ds vars

* Tempo ds vars test

* Zipkin template var

* Zipkin tests
2022-07-18 08:08:35 +01:00
Joe Blubaugh
689ae96a0e Alerting: Refactor API types generation with different names. (#51785)
This changes the API codegen template (controller-api.mustache) to simplify some names. When this package was created, most APIs "forked" to either a Grafana backend implementation or a "Lotex" remote implementation. As we have added APIs it's no longer the case. Provisioning, configuration, and testing APIs do not fork, and we are likely to add additional APIs that don't fork.

This change replaces {{classname}}ForkingService with {{classname}} for interface names, and names the concrete implementation {{classname}}Handler. It changes the implied implementation of a route handler from fork{{nickname}} to handle{{nickname}}. So PrometheusApiForkingService becomes PrometheusApi, ForkedPrometheusApi becomes PrometheusApiHandler and forkRouteGetGrafanaAlertStatuses becomes handleRouteGetGrafanaAlertStatuses

It also renames some files - APIs that do no forking go from forked_{{name}}.go to {{name}}.go and APIs that still fork go from forked_{{name}}.go to forking_{{name}}.go to capture the idea that those files a "doing forking" rather than "are a fork of something."

Signed-off-by: Joe Blubaugh <joe.blubaugh@grafana.com>
2022-07-18 03:08:08 -04:00
Joan López de la Franca Beltran
9abe9fa702 Encryption: Expose secrets migrations through HTTP API (#51707)
* Encryption: Move secrets migrations into secrets.Migrator

* Encryption: Refactor secrets.Service initialization

* Encryption: Add support to run secrets migrations even when EE is disabled

* Encryption: Expose secrets migrations through HTTP API

* Update docs

* Fix docs links

* Some adjustments to makes errors explicit through HTTP response
2022-07-18 08:57:58 +02:00
Alexander Gee
a71b4f13e4 Dashboard: Add guidance about reload required after updating shared cursor/tooltip setting. (#52280)
* Dashboard: Add guidance about reloaded needed for shared cursor/tooltip

* Dashboard: Added todo note for author of (#46581) impl

* Dashboard: prettier errors fixed for new text
2022-07-18 08:32:52 +02:00
Artur Wierzbicki
6188526e1d Storage: use static access rules (#52334)
* Storage: use static access rules

* Storage: use static access rules

* Storage: add tests
2022-07-17 22:41:54 +04:00
Torkel Ödegaard
e6a5b9ee7f TopNav: Store collapse state for chrome top search bar in local storage (#52300) 2022-07-16 17:44:16 +02:00
Adela Almasan
57249aa408 Canvas: Overlapping elements bugfix (#52343) 2022-07-15 17:03:03 -05:00
Christopher Moyer
433bb735de Docs: refactors configure standard options (#52278)
* refactors configure standard options

* makes prettier
2022-07-15 17:02:16 -05:00
Christopher Moyer
1834973cc6 Docs: removes old whats new docs (#52188)
* removes old whats new docs

* adds v7 whats new back in
2022-07-15 16:28:02 -05:00
Scott Lepper
53933972b6 mysql query editor - angular to react (#50343)
mysql conversion to react

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2022-07-15 16:49:24 -04:00
Yuriy Tseretyan
6e1e4a4215 Alerting: Update DbStore to use disabled orgs from the config (#52156)
* update DbStore to use UnifiedAlerting settings
* remove disabled orgs from scheduler and use config in db store instead
* remove test
2022-07-15 14:13:30 -04:00
Zoltán Bedi
35d98104ad MSSQL: Migrate to React (#51765)
* Fix: sql plugins feature

* SQLDS: Use builtin annotation editor

Plus strict rule fixes

* MSSQL: Migrate query editor to React

* Make code editor work

* Make SQLOptions and SQLQuery in SQLDatasource and in Editor generic

* MSSQL: Fix ts issues

* Fix SQLDatasource refID

* Remove comment

* Revert "Make SQLOptions and SQLQuery in SQLDatasource and in Editor generic"

This reverts commit 1d15b4061a.

* Fix ts issues without generic

* TS
2022-07-15 19:51:28 +02:00
Joan López de la Franca Beltran
7b40322bbe Encryption: Add support to run secrets migrations even when EE is disabled (#51705)
* Encryption: Move secrets migrations into secrets.Migrator

* Encryption: Refactor secrets.Service initialization

* Encryption: Add support to run secrets migrations even when EE is disabled

* Init EE providers on-demand (only when needed)

* Add multiple tests + some adjustments

* Apply feedback
2022-07-15 18:33:34 +02:00
Yuriy Tseretyan
a7509ba18b Alerting: rule evaluation loop's update channel to provide version (#52170)
* handler for update message in rule evaluation routine ignores the message if its version greater or equal.
* replace messages to update the channel if it is not empty
2022-07-15 12:32:52 -04:00
idafurjes
17ec9cac83 Add delete user from other services/stores (#51912)
* Remove user from preferences, stars, orguser, team member

* Fix lint

* Add Delete user from org and dashboard acl

* Delete user from user auth

* Add DeleteUser to quota

* Add test files and adjust user auth store

* Rename package in wire for user auth

* Import Quota Service interface in other services

* do the same in tests

* fix lint tests

* Fix tests

* Add some tests

* Rename InsertUser and DeleteUser to InsertOrgUser and DeleteOrgUser

* Rename DeleteUser to DeleteByUser in quota

* changing a method name in few additional places

* Fix in other places

* Fix lint

* Fix tests

* Rename DeleteOrgUser to DeleteUserFromAll

* Update pkg/services/org/orgimpl/org_test.go

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

* Update pkg/services/preference/prefimpl/inmemory_test.go

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

* Rename Acl to ACL

* Fix wire after merge with main

* Move test to uni test

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
2022-07-15 18:06:44 +02:00
Will Browne
5d052be6ff Plugins: Always validate root URL if specified in signature manfiest (#52332)
* always validate root URL if specified in signature

* tidy imports
2022-07-15 17:42:20 +02:00
Gábor Farkas
1d3cd0103e logs: send more info to getLogRowContext (#52130) 2022-07-15 14:02:43 +00:00
Joao Silva
57273d4846 Internationalisation: Translates "Inspect panel" drawer (#52324) 2022-07-15 14:38:14 +01:00
Sven Grossmann
0531e4efc0 Elasticsearch: Added modifyQuery method to add filters in Explore (#52313) 2022-07-15 14:37:53 +02:00
Sven Grossmann
a2512dd1c7 Logs: Fixed incorrect highlighting on empty line filter (#52214)
* fixed hightlighting searchwords

* do not add empty searchWords
2022-07-15 14:26:15 +02:00
Andres Martinez Gotor
10b9830cec Azure Monitor: Add template variables for namespaces and resource names (#52247) 2022-07-15 13:10:03 +02:00
Ivana Huckova
8fc51932f5 Loki: Fix incorrect TopK value type in query builder (#52226)
* Loki: Fix incorrect TopK value type in query builder

* Simplify code

* Remove bracket

* Brackets are back
2022-07-15 13:03:14 +02:00
George Robinson
91fd0223a4 Datasources: Allow configuration of the TTL (#52161) 2022-07-15 10:48:52 +01:00
Andreas Christou
1c48f443f0 Upgrade grafana-azure-sdk-go package (#52248)
- Includes fix for appropriate selection of system assigned identity when using managed identity credential for Azure Monitor auth
2022-07-15 10:46:30 +01:00
Jo
f3ee57abef Fix: Choose Lookup params per auth module (#395) (#52312)
Co-authored-by: Karl Persson <kalle.persson@grafana.com>

Fix: Prefer pointer to struct in lookup

Co-authored-by: Karl Persson <kalle.persson@grafana.com>

Fix: user email for ldap

Co-authored-by: Karl Persson <kalle.persson@grafana.com>

Fix: Use only login for lookup in LDAP

Co-authored-by: Karl Persson <kalle.persson@grafana.com>

Fix: use user email for ldap

Co-authored-by: Karl Persson <kalle.persson@grafana.com>

fix remaining test

fix nit picks
2022-07-15 10:21:09 +01:00
Polina Boneva
bec500b69f Chore: Test grafana/public/app/plugins/panel/text/TextPanel.tsx (#52244)
* move sanitize test to its own test file

* add a test for renderTextPanelMarkdown to always sanitize

* setup TextPanel tests

* add tests to always sanitize Text Panel contents and always convert correctly to html/markdown
2022-07-15 12:06:16 +03:00
Jo
13b23fd512 Auth: Lockdown non-editables in frontend when external auth is configured (#52160)
* Auth: Lockdown user profile edit if external synced

* Auth: use builtin isExternal

* Auth: When user is synced, orgs will be overriden on next login
2022-07-15 09:10:20 +02:00
Torkel Ödegaard
85309f4e63 Scenes: Fixes layout when the editor is active (#52291) 2022-07-15 02:08:40 +02:00
Nathan Marrs
8b7516bc55 Canvas: Remove inline editor button #52237 2022-07-14 16:55:22 -07:00
Drew Slobodnjak
644e82e85c Chore: update latest.json to 9.0.3 (#52298) 2022-07-14 18:56:25 -04:00
Christopher Moyer
6177e433ff updates broken relrefs, removes unneeded file (#52292) 2022-07-14 15:54:09 -07:00
Nathan Marrs
5579c59fd1 Canvas: Improve context menu UX (#52234) 2022-07-14 15:53:02 -07:00
Ryan McKinley
da1701ce57 Dashboards: load from storage (#51949) 2022-07-14 15:36:17 -07:00
Grot (@grafanabot)
eab03aa207 ReleaseNotes: Updated changelog and release notes for 9.0.3 (#52296) 2022-07-14 17:34:46 -05:00
Joan López de la Franca Beltran
973b3112d7 Encryption: Re-order error check (#52251) 2022-07-14 23:53:43 +02:00
Jean-Philippe Quéméner
41790083d2 Alerting: Add file provisioning for alert rules (#51635) 2022-07-14 23:53:13 +02:00
Yuriy Tseretyan
e5e8747ee9 Alerting: Update state manager to accept reserved labels (#52189)
* add tests for cache getOrCreate
* update ProcessEvalResults to accept extra lables
* extract to getRuleExtraLabels
* move populating of constant rule labels to extra labels
2022-07-14 15:59:59 -04:00
Dave Henderson
19cf9fa87d Docs: Correct references to 'lockingMigration' (#51678)
Signed-off-by: Dave Henderson <dave.henderson@grafana.com>
2022-07-14 15:42:24 -04:00
Torkel Ödegaard
52a7b0e75f Browse/Search: Make browser back work properly when visiting Browse or search (#52271) 2022-07-14 21:07:12 +02:00
Esteban Beltran
0573df931b Docs: Fix broken grafana plugins tutorial links (#52147)
* Fix broken grafana plugins docs links

* Update docs/sources/developers/plugins/build-a-streaming-data-source-plugin.md

* Update docs/sources/developers/plugins/_index.md

* Update docs/sources/developers/plugins/_index.md

* Update docs/sources/developers/plugins/_index.md

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

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

* Update docs/sources/developers/plugins/build-a-logs-data-source-plugin.md

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>
2022-07-14 11:52:17 -07:00
Torkel Ödegaard
a472e094e1 TopNav: Page can now support dashboard page layouts (Both new and old) (#52039)
* Scenes: Support new top nav

* Page: Make Page component support new and old dashboard page layouts

* Pass scrollbar props

* Fixing flex layout for dashboard

* Updated title handling and test
2022-07-14 20:52:03 +02:00
Torkel Ödegaard
7947629f82 TopNav: Make dashboard toolbar actions work in new top nav (#51950)
* Initial work on new toolbar button

* Minor step

* Small progress

* Minor progress

* Minor fix

* removed console.log

* Removing stuff we don't need yet
2022-07-14 20:34:00 +02:00
Ieva
ecdd4a184f fix dates (#52264) 2022-07-14 19:15:25 +01:00
Grot (@grafanabot)
f4e0420e66 ReleaseNotes: Updated changelog and release notes for 8.4.10 (#52259) 2022-07-14 11:29:44 -06:00
Matthew Jacobson
efa0d90093 Alerting: Fix Teams notifier not failing on 200 response with error (#52254)
Team's webhook API does not always use the status code to communicate errors.
There are cases where it returns 200 and an error message in the body.
For example, 429 - Too Many Requests or when the message is too large.
Instead, what we should be looking for is a response body = "1".

https://docs.microsoft.com/en-us/microsoftteams/platform/webhooks-and-connectors/how-to/connectors-using?tabs=cURL#send-messages-using-curl-and-powershell
2022-07-14 13:15:18 -04:00
Grot (@grafanabot)
03456a9c3b ReleaseNotes: Updated changelog and release notes for 8.5.9 (#52256) 2022-07-14 13:03:35 -04:00
Eric Leijonmarck
58a4122624 Fix: Comment out flaky tests for TestReadProm (#52243)
* comment out flaky test

* commented out unused functions

* using t.skip()

* disable linting
2022-07-14 17:42:13 +01:00
Ieva
c851907fc3 Access Control: Fix missing folder permissions (#52153)
* add the migration

* Update pkg/services/sqlstore/migrations/accesscontrol/dashboard_permissions.go

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

Co-authored-by: Eric Leijonmarck <eric.leijonmarck@gmail.com>
2022-07-14 12:01:21 -04:00
grafanabot
6c6537383b ReleaseNotes: Updated changelog and release notes for 8.4.10 2022-07-14 15:13:23 +01:00
Kyle Brandt
05fd7eb047 SSE: Add noData type (#51973)
When there is a single frame with no fields (e.g. splunk datasource) SSE errors when trying to figure out the data type. This frame needs to exist since this is where the executedQueryString metadata exists.

This adds a new return type to SSE to represent no data, so the original frame with its metadata can still be maintained.
2022-07-14 09:18:12 -04:00
Adam Simpson
5d199a40b7 AzureMonitor: Update UI to experimental package (#52123)
* feat: make azure experimental the default

* feat: combine metrics query editor rows

fix: linter errors

* chore: remove test loop for DimensionFields test
2022-07-14 13:07:31 +00:00
Emil Tullstedt
c8b5307c61 Preferences: Get home dashboard from teams (#52225) 2022-07-14 08:20:11 -04:00
Oscar Kilhed
9498ee3d54 SQL: Migrate (MS/My/Postgres)SQL configuration pages from Angular to React (#51891)
* Migrate SQL configuration pages from angular to react

* Move enums to types.ts and remove angular partials

* remove es lint disables and update betterer instead

* Fix automatically added type declarations

* Bump wor.. betterer ;)

* Export SecretInput component from grafana-ui

* Fix A11y issues

* Export SecretTextArea as well

* Fix typo

* Use const instead of var

* Fix typo in doc

* Add autoDetectFeatures to postgres config editor

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2022-07-14 13:29:08 +02:00
Leo
77e87f1806 fix: set RGL wrapper height to auto to remove empty space below the panel (#52122) 2022-07-14 13:28:50 +02:00
kay delaney
3131d12738 Panels: Prevent panel content from escaping its bounds (#52167) 2022-07-14 11:17:40 +01:00
Michał Zielonka
b54da68765 Alerting: fix validation of alertmanager template. (#51538)
without setting function map from alertmanager we receive error:
method=PUT path=/api/v1/provisioning/templates/slack.message status=400
level=error msg="invalid object specification: invalid template: template: :1: function \"toUpper\" not defined"

So for validation we should use the same settings as alertmanager do
for templates internally.
2022-07-14 11:54:08 +02:00
George Robinson
34d45977ca Alerting: Fix bug where state did not change between Alerting and Error (#52204)
This commit fixes a bug where the state did not change from Alerting to Error if the evaluation result returned an error, or from Error to Alerting if evaluations stopped returning errors.
2022-07-14 10:53:39 +01:00
Josh Hunt
cabdfb4811 Chore: Remove any that was introduced in a test (#52203) 2022-07-14 09:35:12 +00:00
Andreas Christou
caec0f8771 Cloud Datasources: Add necessary inputs and bump version for code coverage workflow (#52055)
* Add necessary inputs and bump version

* Test coverage commit

* Bump coverage workflow version

* Bump workflow version

* Try updated workflow

* Bump commit sha

* Rename empty file for testing

* Update sha

* Update sha

* Update sha

* Bump SHA

* Update SHA

* Update sha

* Bump SHA

* Bump SHA

* Bump sha

* Bump SHA

* Test all plugins (including backend)

* Bump SHA

* Update SHA

* Remove empty files and set appropriate workflow version
2022-07-14 10:14:55 +01:00
eledobleefe
e565f69711 Internationalisation: Translates the panel header menu (#52168) 2022-07-14 11:09:58 +02:00
Ivana Huckova
1d077e84ce Loki: Add hint for pipeline error to query builder (#52134)
* WIP

* Update

* Add tests

* Fix lint/betterer errors

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

* Update copy
2022-07-14 10:48:27 +02:00
Sven Grossmann
63776d5a0e Logs: Fixed LogContext being underneath the table (#52165) 2022-07-14 10:35:54 +02:00
Andreas Christou
a4d33a0f43 AzureMonitor: Improve handling of unsupported template variable cases in URIs (#52054)
* Set error message for certain template variable combinations

- Make use of setError method from query editor
- Update Azure Monitor error type
- Add test for case 2 from https://github.com/grafana/grafana/pull/51331

* Update template variable docs

* Fix lint issues

* Update docs/sources/datasources/azuremonitor/template-variables.md

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>

* PR comment updates

Co-authored-by: Garrett Guillotte <100453168+gguillotte-grafana@users.noreply.github.com>
2022-07-14 09:28:44 +01:00
Andres Martinez Gotor
99d9c3d0fd AzureMonitor: Add ResourceGroups template variable (#52141) 2022-07-14 09:48:11 +02:00
brendamuir
07e03666ad Docs: fixes data source links (#52196)
* Docs: fixes data source links

* fixes unified alerting redirect
2022-07-14 08:24:53 +01:00
Alexander Weaver
2d7389c34d Alerting: Provisioning API respects global rule quota (#52180)
* Inject interface for quota service and create mock

* Check quota and return 403 if limit exceeded

* Implement tests for quota being exceeded
2022-07-13 17:36:17 -05:00
Nathan Marrs
eb5a96eae9 Canvas: Remove Open Editor option from context menu when in normal editor mode #52186 2022-07-13 15:33:43 -07:00
Christopher Moyer
2520d8f827 combines table viz docs (#52176) 2022-07-13 16:56:01 -05:00
Ryan McKinley
5fe1068f81 Export: Export plugin settings (#52129) 2022-07-13 12:36:14 -07:00
Emil Tullstedt
06bd8b8e7a CSRF: Fix additional headers option (#50629)
* CSRF: Fix additional headers option

* fix: type assertion on error fail on wrapped error

* Update pkg/middleware/csrf/csrf_test.go

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

* update test

Co-authored-by: eleijonmarck <eric.leijonmarck@gmail.com>
2022-07-13 19:28:59 +01:00
Ryan McKinley
ab6cf9e94d Storage: refactor readonly support (#52127) 2022-07-13 10:15:25 -07:00
Nathan Marrs
074bcf8599 Canvas: Avoid refreshing elements while dragging (#52120) 2022-07-13 11:44:43 -04:00
Yuriy Tseretyan
429ed4b4ee remove unused orgStore from scheduler (#52157) 2022-07-13 10:34:35 -04:00
Kian Eliasi
7c5ba889a4 Fix the bug in navbar's active item when the root url include a subpath (#51767) 2022-07-13 15:33:26 +01:00
Ezequiel Victorero
05dd0d7f57 Public Dashboards: add information about how time settings works (#52152) 2022-07-13 11:28:55 -03:00
Yuriy Tseretyan
0d4c503d3d update Evaluator interface to accept context (#52151) 2022-07-13 10:21:11 -04:00
Laura Benz
d71735d431 grafana/ui: convert sass to emotion explore classes (#52078)
* refactor: move .explore styling

* refactor: make new theme run

* refactor: convert .explore-split

* refactor: remove .explore and .explore-split

* refactor: cleanup ExplorePaneContainer

* refactor: convert .explore-wrapper

* refactor: move .page-scrollbar-wrapper

* refactor: apply changes from code review

* refactor: add theme to class interface

* refactor: remove typecheck errors
2022-07-13 15:45:27 +02:00
Michael Mandrus
9aa6ce2a50 Datasource: Propagate datasource secret decryption errors to the frontend (#52068)
* update decrypt secrets function signature and add secrets error handling

* remove a couple instances of unnecessary logging since errors are properly handled now

* add unit test

* fix linting issues
2022-07-13 09:27:03 -04:00
Emil Tullstedt
dd6d71ee4b HTTP: Add function for using new style errors with fallback (#51627) 2022-07-13 13:14:28 +02:00
Sofia Papagiannaki
4ff0f006dd SQLstore: Fix fetching an inexistent playlist response (#51962)
* SQLstore: Fix fetching and deleting an inexistent playlist

xorm's session.Get() does not return an error if the raw does not exist.
It returns a boolean instead.
The playlist `sqlstore.GetPlaylist()` used to check only the error and in case
of inexistent UID didn't return an error.
2022-07-13 13:00:03 +03:00
Konrad Lalik
169a1c5b0f Use non-blocking way of fetching ruler api availability (#52102)
Co-authored-by: Joe Blubaugh <joe.blubaugh@grafana.com>
2022-07-13 11:50:20 +02:00
Sofia Papagiannaki
21632817c5 Alerting: Fix invalid swagger specification (#51907)
* Alerting: Fix invalid swagger specification

* Add make targets for validating the generated swagger spec
2022-07-13 12:34:54 +03:00
Sofia Papagiannaki
b3992df988 API: Do not validate/save legacy alerts when saving a dashboard if legacy alerting is disabled (#51883)
* API: Do not validate/save legacy alerts if legacy alerting is disabled

Co-authored-by: Ida Furjesova <ida.furjesova@grafana.com>
2022-07-13 12:33:28 +03:00
Andres Martinez Gotor
c4c7908f51 AzureMonitor: Add support for Subscriptions template variable (#52086) 2022-07-13 11:16:16 +02:00
Sven Grossmann
05ba08fd8b Logs: Fixed wrapping log lines from detected fields (#52108)
* fixed wrap in detected fields

* removed cx
2022-07-13 09:25:00 +02:00
Michael Mandrus
dfc7a98d87 add comments (#52124) 2022-07-12 19:21:02 -04:00
owensmallwood
894e519406 Owensmallwood/pubdash panel blank when target has no datasource (#52115)
Fixes public dashboards bug. When panel targets have no datasource, the datasource on the panel can be a json object or a string and will get added to the targets for pubdash.
2022-07-12 17:01:08 -06:00
Yuriy Tseretyan
554ebd647b Alerting: Refactor Evaluator (#51673)
* AlertRule to return condition
* update ConditionEval to not return an error because it's always nil
* make getExprRequest private
* refactor executeCondition to just converter and move execution to the ConditionEval as this makes code more readable.
* log error if results have errors
* change signature of evaluate function to not return an error
2022-07-12 16:51:32 -04:00
Guilherme Caulada
2d8a91a846 Secrets: Improve unified secrets migration and implement compatibility flag (#50463)
* Implement disableSecretsCompatibility flag

* Allow secret deletion right after migration

* Use dialect.Quote for secure_json_data on secret deletion

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

* Set secure_json_data to NULL instead of empty json

* Run toggles_gen_test and use generated flag variable

* Add ID to delete data source secrets command on function call

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

* Remove extra query to get datasource on secret deletion

* Fix linting issues with CHANGELOG.md

* Use empty json string when deleting secure json data

* Implement secret migration as a background process

* Refactor secret migration as a background service

* Refactor migration to be inside secret store

* Re-add secret deletion function removed on merge

* Try using transaction to fix db lock during tests

* Disable migration for pipeline debugging

* Try adding sleep to fix database lock

* Remove unecessary time sleep from migration

* Fix merge issue, replace models with datasources

* Try event listener approach

* Fix merge issue, replace models with datasources

* Fix linting issues with unchecked error

* Remove unecessary trainling new line

* Increase wait interval on background secret migration

* Rename secret store migration folder for consistency

* Convert background migration to blocking

* Fix number of arguments on server tests

* Check error value of secret migration provider

* Fix linting issue with method varaible

* Revert unintended change on background services

* Move secret migration service provider to wire.go

* Remove unecessary else from datasource service

* Move transaction inside loop on secret migration

* Remove unecessary GetServices function

* Remove unecessary interface after method removal

* Rename Run to Migrate on secret migration interface

* Rename secret migrations service variable on server

* Use MustBool on datasource secret migration

* Revert changes to GetDataSources

* Implement GetAllDataSources function

* Remove DeleteDataSourceSecrets function

* Move datasource secret migration to datasource service

* Remove unecessary properties from datasource secret migration

* Make DecryptLegacySecrets a private method

* Remove context canceled check on secret migrator

* Log error when fail to unmarshal datasource secret

* Add necessary fields to update command on migration

* Handle high availability on secret migration

* Use kvstore for datasource secret migration status

* Add error check for migration status set on kvstore

* Remove NewSecretMigrationService from server tests

* Use const for strings on datasource secrets migration

* Test all cases for datasources secret migrations

Co-authored-by: Sofia Papagiannaki <1632407+papagian@users.noreply.github.com>
2022-07-12 17:27:37 -03:00
Yuriy Tseretyan
a6b1090879 Alerting: refactor scheduler and separate notification logic (#48144)
* Introduce AlertsRouter in the sender package, and move all fields and methods related to notifications out of the scheduler to this router.
* Introduce a new interface AlertsSender in the schedule package and replace calls of anonymous function `notify` inside the ruleRoutine to calling methods of that interface.
* Rename interface Scheduler in api package to ExternalAlertmanagerProvider, and replace scheduler with AlertRouter as struct that implements the interface.
2022-07-12 15:13:04 -04:00
Ryan McKinley
ededf1dd6f Graph: move time region calculation to a utility function (#51413) 2022-07-12 12:09:49 -07:00
Joao Silva
7bb644d910 GrafanaUI: Reverts changes in styling to tag component (#51911) 2022-07-12 18:46:51 +02:00
dependabot[bot]
0ae98743e0 Bump actions/setup-node from 3.3.0 to 3.4.0 (#52075)
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3.3.0 to 3.4.0.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v3.3.0...v3.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>
2022-07-12 15:52:53 +00:00
Yuriy Tseretyan
f4606faec2 fix docs with correct instructions to create a silence URL (#52062) 2022-07-12 11:36:01 -04:00
Jo
c9c4fc604e LDAP: Improve errors and documentation (#52111) 2022-07-12 11:11:09 -04:00
Nathan Marrs
48e757ff87 Canvas: Show constraints on element drag #52074 2022-07-12 07:22:16 -07:00
Adela Almasan
2f942c57e8 Storage: Optionally overwrite existing files (#52067)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2022-07-12 09:13:57 -05:00
Ivana Huckova
2090534635 Loki: Support json parser with expressions in query builder (#51965)
* Loki: Support json parser with expressions in query builder

* Add explain docs for json parser
2022-07-12 15:42:01 +02:00
Adela Almasan
c73d78eaac Canvas: Tree View Navigation (#51855)
* tree navigation using rc-tree library
2022-07-12 08:31:02 -05:00
Connor Lindsey
db9c9b5354 Node Graph: Emphasize hovered or connected nodes (#51925)
* Node Graph: Emphasize hovered or connected nodes

* Add tests and refactor into util functions
2022-07-12 06:14:45 -06:00
Zoltán Bedi
4155dc8eca SQL: Fix couple of issues in SQLDatasource (#52080)
* Fix: sql plugins feature

(cherry picked from commit 035862bade)

* SQLDS: Use builtin annotation editor

Plus strict rule fixes

(cherry picked from commit fee2eb3716)
2022-07-12 14:11:54 +02:00
Will Browne
b32ad993c5 Plugins: Validate root URLs when signing private plugins via grafana-toolkit (#51968)
* validate URLs

* apply PR review feedback

* fix err msg
2022-07-12 05:51:16 -04:00
Konrad Lalik
e46ee78bed Alerting: Add default input parameters for expressions (#51810) 2022-07-12 11:50:58 +02:00
Joey Tawadrous
3761e9efa8 Add Splunk to annotations legacy runner (#52025) 2022-07-12 09:16:27 +01:00
Joe Blubaugh
0cbc14961a Alerting: Disable /api/admin/pause-all-alerts with Unified Alerting (#51895)
/api/admin/pause-all-alerts only takes effect for legacy alerts. This
change returns a 403 if it's called when legacy alerting is disabled.

Fixes #51729
2022-07-12 10:01:31 +03:00
Sonja Feitsch
ef77c93934 Chore: Improve TagList story (#52012)
* Chore: Improve TagList story

* Chore: fix moreTagsLabel in the TagList component
2022-07-12 09:06:31 +03:00
Ryan McKinley
3003a48dc6 Export: include alerts, thumbnails, usage stats, and short urls (#51938) 2022-07-11 16:25:40 -07:00
Alexander Weaver
0e066dd5f8 Alerting: Allow filtering of contact points by name (#51933)
* Define query param and regenerate

* Add query struct for contact points

* Filter contact points by name in query

* Document that name filter is optional
2022-07-11 17:11:46 -05:00
Vardan Torosyan
73f4d7ac05 Service accounts: Update documentation with new changes (#52015)
* Service accounts: Update documentation with new changes

* Apply suggestions from code review

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

* Add sections about migration, handle comments

Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
2022-07-11 21:32:07 +01:00
Leon Sorokin
254159ad69 BarChart: fix crash when checking bar value text overlap (#52061) 2022-07-11 12:45:42 -05:00
Matthew Jacobson
28dd413c1d Alerting: Add config disabled_labels to disable reserved labels (#51832)
* Alerting: Add config disabled_labels to disable reserved labels

[unified_alerting.reserved_labels]
disabled_labels

* Replace IsGrafanaFolderDisabled with more generic IsReservedLabelDisabled

* Simplify SchedulerCfg by including UnifiedAlertingSettings
2022-07-11 12:41:40 -04:00
Matthew Jacobson
434e94ef2b Alerting: Update default route groupBy to [grafana_folder, alertname] (#50052)
* Alerting: Update default route groupBy to [grafana_folder, alertname]

Default group by for new routes and migrations is now [grafana_folder, alertname]
2022-07-11 12:24:43 -04:00
Vardan Torosyan
32c2b62dc7 Service accounts: Remove feature toggle check on API keys page (#52048)
* Service accounts: Remove feature toggle check on API keys page

* Increase a11y threshold
2022-07-11 16:24:10 +01:00
despian
1f3ff08482 AzureMonitor: Update resource and namespace metadata. (#52030)
Fixes #52028
2022-07-11 17:17:49 +02:00
Sofia Papagiannaki
42f69a5e63 API: Add playlists endpoints to the swagger spec (#51918) 2022-07-11 17:12:22 +03:00
Alexander Zobnin
958e1b6ad0 Geomap: Fix layer extent (#51956) 2022-07-11 08:32:16 -05:00
Ursula Kallio
f1960b8ffc Emphasize American English as source language (#52040) 2022-07-11 08:36:46 -04:00
Torkel Ödegaard
4d4ab87bb6 Page: Update profile page components to use new navId (#51664) 2022-07-11 14:35:30 +02:00
Christopher Moyer
94175a801a refactors all dashboard and linking content (#52005) 2022-07-11 07:35:19 -05:00
Ivana Huckova
0a2a370b77 Loki: Fix suggesting operations from different category (#52034) 2022-07-11 14:24:49 +02:00
brendamuir
2f41ee7333 Docs: fixes couple of typos (#52031) 2022-07-11 13:04:15 +01:00
Jeff Levin
fcfde8abd8 public dashboards:fix time regression (#51998)
This PR fixes a regression bug for public dashboards and adds a test to ensure the regression does not resurface.
2022-07-11 08:50:34 -03:00
Joey Tawadrous
5aacc7cc2a Traces: More feature tracking (#51686)
* Added tracing for json upload, service graph, loki queries

* Tracking for node graph expand/collapse

* Tracking for traceID expand/collapse

* Updated betterer.results

* Update tests

* Updated betterer.results

* Fixed?

* Fix for test

* Update report interaction key for loki expr

* Change grafana_traces_search_queried limit to resultLimit as limit is reserved keyword
2022-07-11 10:21:24 +01:00
Joe Blubaugh
b808cd4432 Documentation: Show that admin/pause-all-alerts is only for legacy. (#51862)
Fixes #51728
2022-07-11 15:39:25 +08:00
Laura Benz
1d8272c286 URL: Encode certain special characters (#51806)
* refactor: add encoding of certain special characters in url

* refactor: add related test
2022-07-11 09:28:28 +02:00
Adela Almasan
5ad2767954 File upload error handling (#52006) 2022-07-08 20:10:15 -05:00
Drew Slobodnjak
7e9194e6e2 Geomap: update with template variable change (#52007)
After componentDidUpdate, check for a data change and apply it.

Fixes #51983
2022-07-08 15:46:01 -07:00
Alexander Weaver
fce283d73e Alerting: Add method to reset notification policy tree back to the default (#51934)
* Define route and run codegen

* Wire up HTTP layer

* Update API layer and test fakes

* Implement reset of policy tree

* Implement service layer test and authorization bindings

* API layer testing

* Be more specific when injecting settings
2022-07-08 16:23:18 -05:00
Adam Simpson
05cdef5004 CloudWatch: Remove simplejson in favor of 'encoding/json' (#51062) 2022-07-08 19:39:53 +00:00
Ryan McKinley
eb6d6d0d2b Search: pass the 'explain' flag from the UI and debug paging issues (#51847) 2022-07-08 15:28:21 -04:00
Garrett Guillotte
25edee88a7 Fix relrefs in product docs (#51944) 2022-07-08 12:25:19 -07:00
Garrett Guillotte
92577d3770 Fix relrefs in api keys doc (#51943) 2022-07-08 12:22:19 -07:00
Garrett Guillotte
a243dc8713 Fix relrefs in alerting (#51939) 2022-07-08 12:21:56 -07:00
Garrett Guillotte
1c6ee69c2d Fix relrefs in devloper docs (#51942) 2022-07-08 12:21:29 -07:00
Artur Wierzbicki
1d2aa7c69b Storage: add delete / deleteFolder / createFolder (#51887)
* delete / delete folder / create folder

* add backend tests

* implement force delete

* fix merge

* lint fix

* fix delete root folder

* fix folder name validation

* fix mysql path_hash issue

* Fix returning error
2022-07-08 22:23:16 +04:00
Brendan O'Handley
e51187a474 Prometheus datasource: query builder freezes when metrics metadata is undefined (#51929)
* add error handling for prom query builder returning undefined metrics metadata

* remove reference to escalation
2022-07-08 11:59:48 -04:00
Alexander Weaver
d77731646c Fix consistency errors and regenerate (#51935) 2022-07-08 10:33:43 -05:00
Christopher Moyer
7f70be0580 adds shared content (#51982) 2022-07-08 10:28:11 -05:00
Artur Wierzbicki
c372b892ec fix nil pointer dereference (#51978) 2022-07-08 19:27:53 +04:00
Stephanie Hingtgen
704a602d8c FeatureFlags: omit metric when grafana cant run the feature (#51856) 2022-07-08 09:11:49 -06:00
ying-jeanne
56f3f3fe69 Chore: Remove the old log format (#51526)
* remove the old log format

* fix CI

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
2022-07-08 09:56:30 -05:00
Dominik Prokop
e1f876eee8 Table panel: Show ellipsis in Default cell when data link is wider than the column (#51975) 2022-07-08 16:26:28 +02:00
Leon Sorokin
fda7f064ad GraphNG: uPlot 1.6.22 (#51945) 2022-07-08 09:45:16 -04:00
Josh Hunt
15d9cf2139 Chore: Set codeowner for betterer results file (#51971)
* Update CODEOWNERS

* Update CODEOWNERS

* Update CODEOWNERS
2022-07-08 09:38:19 -04:00
Ivana Huckova
99fb29850e Loki: Add missing operators in label filter expression (#51880) 2022-07-08 15:33:03 +02:00
Josh Hunt
0c88850070 Chore: Sync betterer results (#51963) 2022-07-08 14:19:17 +01:00
Gabriel MABILLE
5975c4bc6d RBAC: Allow app plugins access restriction (#51524)
* RBAC: Allow app plugins restriction

Co-authored-by: Kalle Persson <kalle.persson@grafana.com>

* Fix tests

* Imports

* WIP

* Adding RBAC to AppPluginsRoutes

* Switching middleware order

* Restrict access to resources

* Nit

* Cosmetic changes

* Fix fallback

* Moving declaration to HttpServer

Co-Authored-By: marefr <marcus.efraimsson@gmail.com>

Co-authored-by: Kalle Persson <kalle.persson@grafana.com>
Co-authored-by: marefr <marcus.efraimsson@gmail.com>
2022-07-08 13:24:09 +02:00
Ieva
0c33b9f211 Access control: Allow organisation admins to add existing users to org (#51668)
* check users with user add permission to access the invite endpoint

* undo unneeded changes

* tests and cleanup

* linting

* linting

* betterer

* betterer again

* fix prettier issue

Co-authored-by: jguer <joao.guerreiro@grafana.com>
2022-07-08 12:07:00 +01:00
Zoltán Bedi
506e63f4e1 Table: Fix scrollbar is hidden by pagination (#51501)
* Table: Pagination fix centering

* Table: Fix scrollbar is hidden by pagination

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2022-07-08 06:28:41 -04:00
Ieva
d85df0a560 Service Accounts: Managed permissions for service accounts (#51818)
* backend changes

* frontend changes

* linting

* nit

* import order

* allow SA creator to access the SA page

* fix merge

* tests

* fix frontend tests

Co-authored-by: alexanderzobnin alexanderzobnin@gmail.com
2022-07-08 05:53:18 -04:00
Dimitris Sotirakis
2af5feb147 CI: Add pr-verify-drone pipeline (#51951)
* Introduce pr-verify-drone pipeline

* Remove `make drone` pre-commit hook

* Remove lint-drone from test-backend pipeline
2022-07-08 12:18:46 +03:00
hannes-256
62b0a8bae6 LDAP: Allow specifying LDAP timeout (#48870)
* Allow specifying LDAP timeout

* Update docs/sources/auth/ldap.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* LDAP timeout: Add annotations; Make functions "private"

* Setting the default timeout if unspecified

* fix goimports lint issue

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
Co-authored-by: jguer <joao.guerreiro@grafana.com>
2022-07-08 08:52:54 +02:00
Torkel Ödegaard
cff763ca1d Dashboard: Fixes sub menu alignment issue (#51775) 2022-07-08 08:46:42 +02:00
Drew Slobodnjak
dec3c3a5b1 Canvas: Position inline editor default via panel dimensions and add context menu option (#51471)
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2022-07-07 19:16:22 -04:00
Artur Wierzbicki
63366615bb Search: support datasource template variables when parsing dashboard JSON models (#51587)
* init

* support template variables

* support variables without curly braces

* add todo for `__all` case

* fix `$__all` case for non-multivalue

* extract some functions

* fix flakinesss

* support `$__all` and `default` template variables

* add todo

* compilation fix

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2022-07-08 01:59:24 +04:00
owensmallwood
2aff83d4e1 Public Dashboards Bug: Permissions error on panel when using mixed datasource with Enterprise (#51930)
Fixes pubdash bug for enterprise when pubdash panel uses a mixed datasource
2022-07-07 15:58:11 -06:00
Sarah Zinger
e1d36754a1 Split up issue boards for cloud datasources (#51902) 2022-07-07 17:06:58 -04:00
Dimitris Sotirakis
beb60a5de2 Make store packages depend on gen-version (#51916) 2022-07-07 15:13:47 -04:00
Drew Slobodnjak
6dc119ef56 Slider: Enforce numeric constraints and styling within the text input (#50905)
* Add NumberInput to core slider

* Change opacity interpretation

To be consistent with other layers, and CSS, opacity of 0 is fully
transparent and an opacity of 1 is fully opaque.

* Add state management for slider.

* Ensure number input step matches slider

* Style input width based on expected digits

* Improve styling for number input validation error
2022-07-07 11:57:03 -07:00
Jack Baldry
1976edaffc Remove indentation from docs/list shortcode usage (#51715)
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
2022-07-07 14:02:35 -04:00
Ryan McKinley
5cb8010440 Export: support stopping exports (#51769) 2022-07-07 11:02:01 -07:00
ismail simsek
8deb17fdc4 Plugins: InfluxDB update time range query (#51833) 2022-07-07 19:55:51 +02:00
Isabella Siu
8dd8c50dc4 CloudWatch: Add default log groups to config page (#49286)
Co-authored-by: Shirley Leu <4163034+fridgepoet@users.noreply.github.com>
2022-07-07 13:03:02 -04:00
ismail simsek
3d68023606 Plugins: InfluxDB datasource - set epoch query param value as "ms" (#51651) 2022-07-07 13:02:20 -04:00
Vardan Torosyan
5eaba5b5b2 Service account: Update service accounts creation (#51848) 2022-07-07 17:32:56 +01:00
ismail simsek
885c517983 Plugins: InfluxDB variable interpolation fix (#51917)
* Don't use regex on flux mode while applying template variables
2022-07-07 17:16:35 +02:00
Agnès Toulet
ca80865bf1 Rendering: Fix user information when using render key (#50879)
* Rendering: Fix user information when using render key

* fix when render user ID is 0

* update fix

* improve fix

* add comment
2022-07-07 17:01:49 +02:00
Dimitris Sotirakis
5cbb7003c0 Add artifacts-page grabpl command (#51894) 2022-07-07 11:00:28 -04:00
Torkel Ödegaard
849134b5dd Scene: Small refactorings and name changes (#51866)
* Rename onMount and onUnmount and some other small refactorings

* More refactorings fixing typescript issues
2022-07-07 16:49:05 +02:00
Dimitris Sotirakis
6447e08809 Add gen-version step to release pipelines (#51913) 2022-07-07 10:32:18 -04:00
Jguer
b79b53cbdb JWT: Add JWT proxy setup devenv (#51731)
* JWT: Add JWT Auth devenv

* Auth: JWT allow retrieving login token

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

* JWT: Add JWT Auth Proxy devenv

* JWT: Add instructions to readme

* JWT: Add JWT users

* JWT: Remove oauth users

* revert session changes, unnecessary

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
2022-07-07 10:28:04 -04:00
Dominik Prokop
5a65a12278 Time series panel: Fix an issue with stacks being not complete due to the incorrect data frame length (#51910)
* Test failure

* Fix
2022-07-07 07:25:52 -07:00
Jguer
db9f80a7a3 ServiceAccounts: Add Prometheus metrics service (#51831)
* ServiceAccounts: Add Prometheus metrics service

* add missing init in tests
2022-07-07 10:03:16 -04:00
Ivana Huckova
10cb84e401 Loki: Implement hints for query builder (#51795)
* Loki: Implement hints for query builder

* Update name of file

* Update imports

* Refactor

* Remove unused import

* Unify

* Revert "Unify"

This reverts commit 78da0e27e3.

* Unify

* Fix types

* Fix tests

* Fix type error

* Simplify

* Update test

* Add documentation

* Update comment

* Add tests for addParserToQuery

* Smaller updates
2022-07-07 15:49:31 +02:00
George Robinson
2b2c09b8d5 Docs: Improve docs for differences and limitations (#51905) 2022-07-07 14:49:03 +01:00
George Robinson
ef1fb9d3a3 Docs: Improve docs for images in notifications (#51900) 2022-07-07 14:38:02 +01:00
eledobleefe
cd3bf59ce3 Storybook: Add documentation and controls to RefreshPicker story (#51736) 2022-07-07 15:34:46 +02:00
idafurjes
ee88b44458 Do not check permissions while deleting external snapshot (#51897) 2022-07-07 15:15:39 +02:00
Jguer
9ab210a7d7 ServiceAccounts: Don't create new orgs for service accounts (#51819)
* Org: use constants for status codes

* ServiceAccounts: Avoid creating new orgs for service accounts

* Document createUserBehavior

* Update pkg/services/sqlstore/org_users_test.go

* add doc string to flag
2022-07-07 08:50:38 -04:00
Andres Martinez Gotor
438c76252a Azure Monitor: Add support to migrate some queries with template variables (#51881) 2022-07-07 14:44:53 +02:00
brendamuir
f6f017edc2 Docs: new data sources topic (#51863)
* Docs: new datasources topic

* Update docs/sources/alerting/fundamentals/data-source-alerting.md

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

* Update docs/sources/alerting/fundamentals/data-source-alerting.md

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

* corrects relrefs

Co-authored-by: George Robinson <george.robinson@grafana.com>
2022-07-07 13:32:00 +01:00
Dimitris Sotirakis
88943590b3 Add gen-version for main-publish pipeline (#51890) 2022-07-07 12:58:20 +01:00
Sven Grossmann
b12998df16 upgrade @grafana/lezer-logql (#51888) 2022-07-07 13:35:34 +02:00
Artur Wierzbicki
e96f67ae2e Renderer: Add sanitize API (#50936)
* svg fun

* #50597: add proto

* #50597: add sanitizer methods

* #50597: add provider

* #50597: use sanitizer

* #50597: use sanitizer

* update grafana to match new api

* add comments

* add capability check

* add timing

* update sanitize path

* improve log message

* strings.HasPrefix rather than filepath.IsAbs

* filepath.Clean + filepath.ToSlash for windows

* read 404

* remove `path.clean` from `getPathAndScope`

* add resp body close

* remove unneeded prop

* Update pkg/services/rendering/rendering.go

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

* remove test files

* filepath.ToSlash correct wrapping

* filepath.ToSlash correct wrapping

* filepath.ToSlash comment

* compilation error

* lint fix

* fix error message

* Update pkg/services/rendering/rendering.go

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

* add `image/svg+xml` mime type

* refactored log

* refactored log

Co-authored-by: Agnès Toulet <35176601+AgnesToulet@users.noreply.github.com>
2022-07-07 15:32:18 +04:00
Dimitris Sotirakis
f279699beb CI: Abstract Grafana versioning (#50935)
* Remove flags and update grabpl

* Sign drone yaml
2022-07-07 13:41:27 +03:00
Levente Balogh
99de3313f7 Datasources: Refactor the list page (#51438)
* refactor(Data Sources): rename file to follow naming convention

* refactor: use react-redux hooks for interacting with the store

* tests: update data-sources list related test files

* refactor: extract datasource list page contents

* refactor: pass dataSources to the DataSourcesList as a prop

* refactor: use proper typing for navIndex mocks
2022-07-07 11:15:34 +02:00
Kevin Yu
689639cdb0 CloudMonitoring: Update AnnotationQueryEditor to use experimental UI components (#51841) 2022-07-07 10:29:32 +02:00
Kevin Yu
401ce2b2f9 CloudMonitoring: Update Selector to use experimental UI components (#51840) 2022-07-07 10:27:20 +02:00
Kevin Yu
6d2d99e804 CloudMonitoring: Update SLO to use experimental UI components (#51839) 2022-07-07 10:26:24 +02:00
Kevin Yu
19fa4ef9af CloudMonitoring: Update Service to use experimental UI components (#51838) 2022-07-07 10:25:53 +02:00
Kevin Yu
5bd58be334 CloudMonitoring: Update Project to use experimental UI components (#51837) 2022-07-07 10:25:08 +02:00
Joe Blubaugh
d99a7334d5 Alerting: Fix RegExp matchers in frontend for Silences and other previews. (#51726) 2022-07-07 16:06:25 +08:00
Jack Baldry
602ee37533 Add doc-validator tool to CI (#51698)
* Add doc-validator tool to CI

Signed-off-by: Jack Baldry <jack.baldry@grafana.com>

* Use simpler apostrophe to make title match h1

Signed-off-by: Jack Baldry <jack.baldry@grafana.com>

* Ensure doc-validator CI always passes until all errors are resolved

Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
2022-07-07 08:58:51 +01:00
Yaelle Chaudy
a802e84772 Fixed broken link for supported namespaces (#51302) 2022-07-07 09:58:01 +02:00
Joan López de la Franca Beltran
81753526bd Encryption: Refactor secrets.Service initialization (#51091)
* Encryption: Refactor secrets.Service initialization
2022-07-07 09:48:25 +02:00
Torkel Ödegaard
9f2df8f8ee Scene: Fix merge issue in main (#51865) 2022-07-07 09:02:15 +02:00
Torkel Ödegaard
935334cbda Scene: POC for a future dashboard model and runtime (#50980)
* Playing around

* This is getting interesting

* Updates

* Updated

* Observable experiments

* This is tricky

* VizPanel panel renderer

* New model progress

* Maybe this could be something

* Updated

* Rename

* updates

* Updated

* Query runners? not sure

* Updated

* updates

* flex box layout starting to work

* Testing

* Tested an action

* Parent context sort of working

* Progress

* Progress

* Updated

* Starting to work

* Things are working

* Scene list, nested scene demo

* Progress on repeats

* Moving things

* Pretty big progress

* More things working

* Great progress

* Progress

* Name changing

* Minor tweaks

* Simplified sizing

* Move toggleDirection to SceneFlexLayout

* add feature flag (#50990)

* removed new useObservable hook

* Rename folder and feature toggle to scenes

* Caching scenes so you can go back to another scene without having to re-query data

* Fix issue with subs on re-mount

* Fixing test

* Added SceneCanvasText to play around with layout elements with size based on content

* Scene: Edit mode and component edit wrapper that handles selection  (#51078)

* First step for scene variables

* Started playing around with a scene edit mode

* Better way to set component

* Progress on edit mode

* Update

* Progress on edit mode

* Progress on editor

* Progress on editor

* Updates

* More working

* Progress

* Minor update

* removed unnessary file

* Moving things around

* Updated

* Making time range separate from time picker

* minor rename of methods

* The most basic variable start

* Minor renames

* Fixed interpolate issue if not found at closest level

* An embryo of event model and url sync handling

* Update url sync types

* Removed unnessary any type arg

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2022-07-07 08:53:02 +02:00
Artur Wierzbicki
052132be46 Storage: simplify retrieving the file names from the response frame (#51805)
* add util method for storage list frame

* use go:embed

* remove enum
2022-07-07 10:47:05 +04:00
Torkel Ödegaard
4f931afe29 Betterer: Rebuild better results file as it was corrupt (#51861) 2022-07-07 08:32:56 +02:00
Jeff Levin
eacee08135 public dashboards: move into into its own service (#51358)
This PR moves public dashboards into its own self contained service including API, Service, Database, and Models. Routes are mounted on the Grafana HTTPServer by the API service at injection time with wire.go. The main  route that loads the frontend for public dashboards is still handled by the API package.

Co-authored-by: Jesse Weaver <jesse.weaver@grafana.com>
Co-authored-by: Owen Smallwood <owen.smallwood@grafana.com>
2022-07-06 17:51:44 -06:00
Ezequiel Victorero
ba2d8cd838 Public Dashboards: disable saving button instead of hide before accepting checkboxes (#51744) 2022-07-06 18:21:00 -03:00
Ezequiel Victorero
10a33be2c2 Public Dashboards: add icon buttons with links to useful information for the user (#51722) 2022-07-06 16:34:23 -03:00
Torkel Ödegaard
777f0d532a Fixes tooltip issue with time picker and dashboard settings (#51836) 2022-07-06 20:53:52 +02:00
gjed
c93f1f3693 Docs: added clarification to plugin provisioning (#50212)
* Docs: added clarification to plugin provisioning

* Update docs/sources/administration/provisioning.md

* Lint docs

Signed-off-by: Jack Baldry <jack.baldry@grafana.com>

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2022-07-06 13:49:58 -05:00
owensmallwood
0b4af38bfa Public Dashboards: Query Caching (#51403)
* passes id and uid to PublicDashboardDatasource

* betterer results

* If for a public dashboard, return the PublicDashboardDataSource first or else getDatasourceSrv.get() will fail bc of no authed user.

Added some unit tests for resolving the uid from the many possible datasource types.

* updates betterer

* Exports DashboardService. Adds method to DashboardService to build anonymous user for use with public dashboards where there is no authed user. Adds method on dashboard_queries to get all dashboard uids from a dashboard.

* refactors to get unique datasource uids

* Adds tests for getting all unique datasource uids off a dashboard

* adds test for building anonymous user with read and query actions that are scoped to each datasource uid in the dashboard

* updates casing of DashboardService

* updates test case to have additional panel with a different datasource

* gives default interval to public dashboard data source
2022-07-06 12:42:39 -06:00
ismail simsek
9941e06e22 Plugins: InfluxDB variable interpolation fix for influxdbBackendMigration feature flag (#51624) 2022-07-06 19:27:21 +02:00
Ezequiel Victorero
9f6297ca9b Public Dashboards: use default dashboard time range instead of current (#51656) 2022-07-06 13:37:39 -03:00
dingweiqings
119c13e666 Alerting: Add custom templated title to Wecom notifier (#51529)
* add custom title in wecom channel

* add wecom test case and setting config in ui

* Update pkg/services/ngalert/notifier/channels/wecom_test.go

Co-authored-by: Matthew Jacobson <JacobsonMT@gmail.com>

* change version in comment

* Update pkg/services/ngalert/notifier/available_channels.go

Co-authored-by: Matthew Jacobson <JacobsonMT@gmail.com>

* format

Co-authored-by: Matthew Jacobson <JacobsonMT@gmail.com>
2022-07-06 11:54:46 -04:00
Kevin Yu
396278a6e5 add experimental slo query editor (#51351) 2022-07-06 11:48:43 -04:00
Emil Tullstedt
c12d1727f0 Docker: Update glibc version (#51107) 2022-07-06 17:30:56 +02:00
Kevin Yu
b5eef488ce Cloud Monitoring: Update LabelFilter to use experimental UI components (#51342)
* add label filter

* add tests

* define labels once

* update betterer results
2022-07-06 11:28:54 -04:00
Santiago
93e2a0eddc fix broken links (#51821) 2022-07-06 12:16:05 -03:00
Leon Sorokin
173636aa61 Histogram: filter nulls, bucket-adaptive xAxis decimals (#51773) 2022-07-06 10:13:32 -05:00
Torkel Ödegaard
1e85a6f4fd TopNav: New page layouts (#51510)
* First stab at new page layouts behind feature toggle

* Simplifying PageHeader

* Progress on a new model that can more easily support new and old page layouts

* Progress

* rename folder

* Progress

* Minor change

* fixes

* Fixing tests

* Make breadcrumbs work

* Add tests for old Page component

* Adding tests for new Page component and behavior

* fixing page header test

* Fixed test

* AppChrome outside route

* Renaming folder

* Minor fix

* Updated

* Fixing StoragePage

* Fix for banners

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-07-06 17:00:56 +02:00
Sven Grossmann
663f3fcd2a Loki: Fix error when changing operations with different parameters (#51779)
* copy defaultParams when changing an operation

* add type and name comparison

* removed name check
2022-07-06 16:52:58 +02:00
Andreas Christou
0a6eeaa636 AzureMonitor: Update curated dashboards (#51331)
* Ensure resource name is appended to URI

* Add storage account check to ensure default subresource is appended

* Update storage dashboard

* Bump storage version

* Remove ADX StreamingIngestRequestRate panel as the metric is unavailable

* Refactor condition for storage namespaces

* Add more tests for URI builder

* Do not migrate resource URI if resource name or metric definition uses template variables

* Revert change to metricNamespace
2022-07-06 15:37:17 +01:00
Will Browne
40dff288cd Plugins: Register management endpoints only when external managed is also false (#51802)
* Only define plugin install endpoints when catalog enabled

* add external check
2022-07-06 16:22:59 +02:00
Leon Sorokin
d122449a97 BarChart: fix explicit yAxis min (#51768) 2022-07-06 06:47:49 -06:00
Jack Westbrook
edfbdc4b63 Chore: Bump parse-url to 6.0.2 to fix security vulnerabilities (#51796) 2022-07-06 13:21:41 +02:00
Jack Westbrook
0c04fe16aa Chore: Fix CVE-2021-3807 (#51753) 2022-07-06 13:01:08 +02:00
Jack Westbrook
aa06328e8c Chore: Fix CVE-2021-43138 (#51751) 2022-07-06 13:00:37 +02:00
Joey Tawadrous
45a00bdc94 Traces: Move towards using OTEL naming conventions (#51379)
* Updates names

* Update tests

* Update betterer results

* Updated betterer.results

* Updated tests
2022-07-06 11:12:53 +01:00
Gábor Farkas
df9f86190f devenv: influxdb: fix config (#51781) 2022-07-06 11:58:17 +02:00
Eric Leijonmarck
0f919671e7 Service accounts: Add service account to teams (#51536)
* Revert "Serviceaccounts: #48995

Do not display service accounts assigned to team (#48995)"

This reverts commit cbf71fbd7f.

* fix: test to not include more actions than necessary

* adding service accounts to teams - backend and frontend changes

* also support SA addition through the old team membership endpoints

* fix tests

* tests

* serviceaccounts permission tests

* serviceaccounts permission service tests run

* added back test that was removed by accident

* lint

* refactor: add testoptionsTeams

* fix a bug

* service account picker change

* explicitly set SA managed permissions to false for dash and folders

* lint

* allow team creator to list service accounts

Co-authored-by: IevaVasiljeva <ieva.vasiljeva@grafana.com>
2022-07-06 05:34:36 -04:00
Sriram
efdd999e03 Chore: Plugin CI E2E image update (#51787) 2022-07-06 12:26:08 +03:00
Jack Westbrook
3be4af87f6 Chore: Remove unused nodemon dependency (#51749) 2022-07-06 11:20:09 +02:00
Jack Westbrook
c1ef68535b Chore: Fix CVE-2022-0155 (#51755) 2022-07-06 11:19:09 +02:00
Jack Westbrook
f14cdc712c Chore: Fix CVE-2020-7753 (#51752) 2022-07-06 11:18:35 +02:00
Jack Westbrook
73e7a1cc92 Chore: Fix CVE-2021-3918 (#51745) 2022-07-06 11:16:57 +02:00
Will Browne
ba9fc10a74 Only define plugin install endpoints when catalog enabled (#51788) 2022-07-06 05:13:20 -04:00
Sonja Feitsch
95053b760d Chore: Improve Tagstory (#51677) 2022-07-06 09:26:34 +01:00
Joey Tawadrous
2970c6db37 Traces: Trace to logs fix (#51053)
* Fix to set isSplunkDS

* Remove comment

* Updated betterer.results
2022-07-06 08:39:41 +01:00
Polina Boneva
556f312b00 remove event.stopPropagation(), so that when one menu opens, all others close; (#51557)
Put the ClickOutsideWrapper further out in the PanelHeader, so it doesn't catch itself when clicking on the panel header above the menu;
2022-07-06 10:33:25 +03:00
Dominik Prokop
73c5a9f23c Tabe panel: Minor fixes caused by datalinks context menu (#51756) 2022-07-06 00:29:14 -07:00
Joey Tawadrous
01130f22b7 Traces: Span bar label (#50931)
* Add SpanBarSettings

* Add SpanBarSettings to Jaeger

* Add SpanBarSettings to Zipkin

* Updated title

* Add dropdown to select identifer and make duration a default option

* Show duration by default

* Add option to hide

* Move identifers into constants

* Add process

* Update text

* Update placeholders

* Text/meta data updates

* Added tests

* Added docs

* Update find

* Merge tag and prcoess options

* Update docs

* Updated tests

* Update betterer results and trace view to match

* Updated docs
2022-07-06 08:14:03 +01:00
Alexander Zobnin
21591be469 Geomap: Support shared crosshair for route layer (#51495) 2022-07-06 10:08:55 +03:00
Josh Hunt
ffd9d9d0c5 Chore: Refactor logs_model to clean up types (#51201)
* Chore: Minor refector of logs_model to clean up types

* undo a change i didn't commit to

* use isObservable instead

* fix type
2022-07-06 08:49:45 +02:00
Victor Marin
5b058d617d Graphite: Use TimeRange with applied fiscalYearStartMonth (#51623)
* Parse date with fiscalYearStartMonth in graphite ds

* Use precalculated timeranges

* Always use precalculated values

* Modify test
2022-07-06 09:27:09 +03:00
Christopher Moyer
e4bf7ddefe Docs: Add and organize panels (#51763)
* combines topics into add and organize panels topic

* updates front matter

* fixes relrefs

* fixes typo

* Update docs/sources/dashboards/add-organize-panels.md

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

* Update docs/sources/dashboards/add-organize-panels.md

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

* make prettier

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2022-07-05 12:59:17 -05:00
Ryan McKinley
4fa606c600 Export: save all dashboards to git (#48233) 2022-07-05 10:54:07 -07:00
Ryan McKinley
4a00c7ebde Storage: Add basic file upload management (#50638) 2022-07-05 10:53:41 -07:00
Jean-Philippe Quéméner
4a76436be2 Altering: validate that the mute time intervals exist when updating routing tree (#51573)
* validate that the mute time intervals exist when updating routing tree

* run lint

* add tests
2022-07-05 13:09:17 -04:00
Alexander Weaver
b9c7eb1380 Alerting: Add method to provisioning API for obtaining a group and its rules (#51398)
* Generate shell for new route

* Propagate path parameters

* Implement route logic

* Add a couple simple tests

* Use NotFound error for not found, avoid returning pointer

* Regenerate
2022-07-05 11:53:50 -05:00
Jean-Philippe Quéméner
e64cde8727 Alerting: validate that the receiver exist when updating routing tree (#51561)
* Alerting: validate that the receiver exist when updating routing tree

* rename interface

* add missing file

* change constructor

* fix e2e tests

* only import package once

* add unit test for bug

* wording

* close response body

* Update pkg/services/ngalert/api/tooling/definitions/alertmanager_validation.go

* refactor to remove database roundtrip
2022-07-05 18:09:57 +02:00
idafurjes
578ab71ba9 Copy delete user permission to access control service (#51747)
* Copy delete user permission to access control service

* Update pkg/services/accesscontrol/database/database_test.go

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

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
2022-07-05 18:05:56 +02:00
eledobleefe
13fbe6ed28 Storybook: Add documentation to PluginSignatureBadge story (#51645)
* Import the mdx documentation file to PluginSignatureBadge.story.tsx and add to its export defaul

* Create the mdx file of PluginSignatureBadge with its information

* Fix signed PluginSignatureBadge status

* Modify text according to reviewer suggestions

* betterer

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-07-05 09:38:26 -04:00
Torkel Ödegaard
18b481cedc MegaMenu: Add mega menu to new top nav design (#51616)
* MegaMenu: Add mega menu to new top nav design

* Copy NavBar in order to make changes more cleanly

* Adding tests

* whoops, forgot to resolve conflicts...

* Review fixes

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-07-05 15:06:07 +02:00
Christopher Moyer
7eec92988e Docs: Manage library panels refactor (#51661)
* merges library panel content into a single topic

* updates menuTite

* fixes typo

* removed Grafana from task titles
2022-07-05 07:43:01 -05:00
Seyaji
500010e0b6 Chore: Convert QueryOperationRow test to RTL (#51290)
* Convert QueryOperationRow test to RTL

* Convert QueryOperationRow test to RTL

* Convert QueryOperationRow test to RTL

* Convert QueryOperationRow test to RTL

* Update QueryOperationRow.test.tsx

* update betterer

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-07-05 08:10:20 -04:00
kay delaney
d4eef3bd76 TimeSrv: Don't modify refresh interval when editing panel (#51718) 2022-07-05 05:25:07 -04:00
Pawan Verma
920bd1e88d Chore: Improve SecretInput story (#51665)
* Added mdx file for secret input

* Chore: Improve SecretInput story

* review related changes in docs

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-07-05 09:32:51 +01:00
Sriram
f78b7f1f17 TestDataDB: update CSV wave scenario ui (#51719)
* update testdb csv wave

* support enter key

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2022-07-05 04:57:32 +01:00
Andrej Ocenas
bf334ab777 Prometheus: Small improvements to the custom client (#51709)
* Add suggestions

* Fix tests
2022-07-04 22:55:07 +02:00
Santiago
9797744c10 template functions reference and examples moved to corresponding section, description and links fixed (#51654) 2022-07-04 10:38:22 -03:00
Ieva
1768e09cfd document auth_style option (#51697) 2022-07-04 14:22:19 +01:00
Gabriel MABILLE
c9708e1813 Devenv: Add an oauth block (#51514)
* Devenv: Add an oauth block

* Adding profile to responses

Co-authored-by: Jguer <joao.guerreiro@grafana.com>

Co-authored-by: Jguer <joao.guerreiro@grafana.com>
2022-07-04 13:56:15 +02:00
Ashley Harrison
986b766ca0 Chore: Make betterer tests more stable (#51703)
* rewrite eslint test to not care about position of errors

* changing file contents shouldn't require a betterer.results update

* fix up eslint test

* fix the undocumented stories test

* ignore .test.ts files as well
2022-07-04 12:13:20 +01:00
Will Browne
0b40c8e51e Plugins: Add missing asserts for Plugin Errors field (#51702)
* make sure to check plugin errors

* remove unused test
2022-07-04 11:03:50 +00:00
renovate[bot]
6af8189816 Update dependency @rushstack/ts-command-line to v4.12.1 (#51586)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-07-04 10:32:31 +00:00
Ivan Ortega Alba
f8ac160545 DashboardRow: collapse shortcut doesn't allow to move the row (#51589) 2022-07-04 12:32:21 +02:00
renovate[bot]
e781ef582f Update dependency @microsoft/api-extractor-model to v7.21.0 (#51629)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-07-04 10:26:13 +00:00
Joan López de la Franca Beltran
38bcd37fba Encryption: Move secrets migrations into secrets.Migrator (#51014) 2022-07-04 12:17:21 +02:00
George Robinson
6844ac9879 Alerting: Change __alertScreenshotToken__ to __alertImageToken__ (#50771) 2022-07-04 06:05:36 -04:00
Jean-Philippe Quéméner
580c5b6ad2 Alerting: add YAML support for relative time range (#51694) 2022-07-04 06:03:34 -04:00
Ieva
75873d05d7 Access Control: Allow dashboard admins to query org users (#51652)
* allow dashboard admins to query org users

* rename one more variable
2022-07-04 10:43:06 +01:00
Andrej Ocenas
3df34fe064 Prometheus: Remove cache, pass headers in request, simplify client creation for resource calls and custom client (#51436)
* Remove cache, pass headers in request, simplify client creation

* Add test for http options creation
2022-07-04 11:18:45 +02:00
Sven Grossmann
b7e22c37a8 UsageStats: fixed elasticsearch version number to semver (#49054)
* UsageStats: fixed elasticsearch version number

- The version numbering was changed from plain numbers to a semver-ish approach

* added missing version assertion

* adapted tests
2022-07-04 11:08:01 +02:00
Alexander Emelin
f233a74b70 Search: Downgrade Bluge, refactor code (#51560)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2022-07-04 11:33:07 +03:00
Dominik Prokop
16f9830fc3 State Timeline: Enable support for annotations (#47887)
* WIP: Enable annotations display and annotations editor in State timeline panel

* Note support for annotations in module file

* Lint fix

* Post review

Co-authored-by: Kyle Cunningham <kyle@codeincarnate.com>
2022-07-04 01:27:27 -07:00
Zoltán Bedi
ebb9025669 StateTimeline: Try to sort time field (#51569)
* StateTimeline: Try to sort time field

* Sort frame earlier
2022-07-04 10:11:33 +02:00
Seyaji
e88514beea Chore: Convert SpanDetailsRow test to RTL (#51345)
* Convert SpanDetailsRow test to RTL

* Convert SpanDetailsRow test to RTL
2022-07-04 10:30:03 +03:00
6489 changed files with 364649 additions and 137684 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -1,28 +1,18 @@
import { regexp } from '@betterer/regexp';
import { eslint } from '@betterer/eslint';
import { BettererFileTest } from '@betterer/betterer';
import { ESLint, Linter } from 'eslint';
import { existsSync } from 'fs';
export default {
'no enzyme tests': () => regexp(/from 'enzyme'/g).include('**/*.test.*'),
'better eslint': () =>
eslint({
'@typescript-eslint/no-explicit-any': 'error',
'@typescript-eslint/consistent-type-assertions': [
'error',
{
assertionStyle: 'never',
},
],
}).include('**/*.{ts,tsx}'),
'no undocumented stories': () => countUndocumentedStories().include('**/*.{story.tsx,mdx}'),
'better eslint': () => countEslintErrors().include('**/*.{ts,tsx}'),
'no undocumented stories': () => countUndocumentedStories().include('**/*.story.tsx'),
};
function countUndocumentedStories() {
return new BettererFileTest(async (filePaths, fileTestResult) => {
const storyFilePaths = filePaths.filter((filePath) => filePath.endsWith('story.tsx'));
const mdxFilePaths = filePaths.filter((filePath) => filePath.endsWith('mdx'));
storyFilePaths.forEach((filePath) => {
if (!mdxFilePaths.includes(filePath.replace(/\.story.tsx$/, '.mdx'))) {
filePaths.forEach((filePath) => {
if (!existsSync(filePath.replace(/\.story.tsx$/, '.mdx'))) {
// In this case the file contents don't matter:
const file = fileTestResult.addFile(filePath, '');
// Add the issue to the first character of the file:
@@ -31,3 +21,52 @@ function countUndocumentedStories() {
});
});
}
function countEslintErrors() {
return new BettererFileTest(async (filePaths, fileTestResult, resolver) => {
const { baseDirectory } = resolver;
const cli = new ESLint({ cwd: baseDirectory });
await Promise.all(
filePaths.map(async (filePath) => {
const linterOptions = (await cli.calculateConfigForFile(filePath)) as Linter.Config;
const rules: Partial<Linter.RulesRecord> = {
'@typescript-eslint/no-explicit-any': 'error',
};
const isTestFile =
filePath.endsWith('.test.tsx') || filePath.endsWith('.test.ts') || filePath.includes('__mocks__');
if (!isTestFile) {
rules['@typescript-eslint/consistent-type-assertions'] = [
'error',
{
assertionStyle: 'never',
},
];
}
const runner = new ESLint({
baseConfig: {
...linterOptions,
rules,
},
useEslintrc: false,
cwd: baseDirectory,
});
const lintResults = await runner.lintFiles([filePath]);
lintResults
.filter((lintResult) => lintResult.source)
.forEach((lintResult) => {
const { messages } = lintResult;
const file = fileTestResult.addFile(filePath, '');
messages.forEach((message, index) => {
file.addIssue(0, 0, message.message, `${index}`);
});
});
})
);
});
}

View File

@@ -29,17 +29,17 @@ $(DRONE): $(BINGO_DIR)/drone.mod
@echo "(re)installing $(GOBIN)/drone-v1.5.0"
@cd $(BINGO_DIR) && $(GO) build -mod=mod -modfile=drone.mod -o=$(GOBIN)/drone-v1.5.0 "github.com/drone/drone-cli/drone"
SWAGGER := $(GOBIN)/swagger-v0.29.0
$(SWAGGER): $(BINGO_DIR)/swagger.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)/swagger-v0.29.0"
@cd $(BINGO_DIR) && $(GO) build -mod=mod -modfile=swagger.mod -o=$(GOBIN)/swagger-v0.29.0 "github.com/go-swagger/go-swagger/cmd/swagger"
GOLANGCI_LINT := $(GOBIN)/golangci-lint-v1.40.1
GOLANGCI_LINT := $(GOBIN)/golangci-lint-v1.49.0
$(GOLANGCI_LINT): $(BINGO_DIR)/golangci-lint.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)/golangci-lint-v1.40.1"
@cd $(BINGO_DIR) && $(GO) build -mod=mod -modfile=golangci-lint.mod -o=$(GOBIN)/golangci-lint-v1.40.1 "github.com/golangci/golangci-lint/cmd/golangci-lint"
@echo "(re)installing $(GOBIN)/golangci-lint-v1.49.0"
@cd $(BINGO_DIR) && $(GO) build -mod=mod -modfile=golangci-lint.mod -o=$(GOBIN)/golangci-lint-v1.49.0 "github.com/golangci/golangci-lint/cmd/golangci-lint"
SWAGGER := $(GOBIN)/swagger-v0.30.2
$(SWAGGER): $(BINGO_DIR)/swagger.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)/swagger-v0.30.2"
@cd $(BINGO_DIR) && $(GO) build -mod=mod -modfile=swagger.mod -o=$(GOBIN)/swagger-v0.30.2 "github.com/go-swagger/go-swagger/cmd/swagger"
WIRE := $(GOBIN)/wire-v0.5.0
$(WIRE): $(BINGO_DIR)/wire.mod

View File

@@ -1,5 +1,174 @@
module _ // Auto generated by https://github.com/bwplotka/bingo. DO NOT EDIT
go 1.17
go 1.19
require github.com/golangci/golangci-lint v1.40.1 // cmd/golangci-lint
require github.com/golangci/golangci-lint v1.49.0 // cmd/golangci-lint
require (
4d63.com/gochecknoglobals v0.1.0 // indirect
github.com/Antonboom/errname v0.1.7 // indirect
github.com/Antonboom/nilnil v0.1.1 // indirect
github.com/BurntSushi/toml v1.2.0 // indirect
github.com/Djarvur/go-err113 v0.0.0-20210108212216-aea10b59be24 // indirect
github.com/GaijinEntertainment/go-exhaustruct/v2 v2.3.0 // indirect
github.com/Masterminds/semver v1.5.0 // indirect
github.com/OpenPeeDeeP/depguard v1.1.0 // indirect
github.com/alexkohler/prealloc v1.0.0 // indirect
github.com/alingse/asasalint v0.0.11 // indirect
github.com/ashanbrown/forbidigo v1.3.0 // indirect
github.com/ashanbrown/makezero v1.1.1 // indirect
github.com/beorn7/perks v1.0.1 // indirect
github.com/bkielbasa/cyclop v1.2.0 // indirect
github.com/blizzy78/varnamelen v0.8.0 // indirect
github.com/bombsimon/wsl/v3 v3.3.0 // indirect
github.com/breml/bidichk v0.2.3 // indirect
github.com/breml/errchkjson v0.3.0 // indirect
github.com/butuzov/ireturn v0.1.1 // indirect
github.com/cespare/xxhash/v2 v2.1.2 // indirect
github.com/charithe/durationcheck v0.0.9 // indirect
github.com/chavacava/garif v0.0.0-20220630083739-93517212f375 // indirect
github.com/curioswitch/go-reassign v0.1.2 // indirect
github.com/daixiang0/gci v0.6.3 // indirect
github.com/davecgh/go-spew v1.1.1 // indirect
github.com/denis-tingaikin/go-header v0.4.3 // indirect
github.com/esimonov/ifshort v1.0.4 // indirect
github.com/ettle/strcase v0.1.1 // indirect
github.com/fatih/color v1.13.0 // indirect
github.com/fatih/structtag v1.2.0 // indirect
github.com/firefart/nonamedreturns v1.0.4 // indirect
github.com/fsnotify/fsnotify v1.5.4 // indirect
github.com/fzipp/gocyclo v0.6.0 // indirect
github.com/go-critic/go-critic v0.6.4 // indirect
github.com/go-toolsmith/astcast v1.0.0 // indirect
github.com/go-toolsmith/astcopy v1.0.1 // indirect
github.com/go-toolsmith/astequal v1.0.2 // indirect
github.com/go-toolsmith/astfmt v1.0.0 // indirect
github.com/go-toolsmith/astp v1.0.0 // indirect
github.com/go-toolsmith/strparse v1.0.0 // indirect
github.com/go-toolsmith/typep v1.0.2 // indirect
github.com/go-xmlfmt/xmlfmt v0.0.0-20191208150333-d5b6f63a941b // indirect
github.com/gobwas/glob v0.2.3 // indirect
github.com/gofrs/flock v0.8.1 // indirect
github.com/golang/protobuf v1.5.2 // indirect
github.com/golangci/check v0.0.0-20180506172741-cfe4005ccda2 // indirect
github.com/golangci/dupl v0.0.0-20180902072040-3e9179ac440a // indirect
github.com/golangci/go-misc v0.0.0-20220329215616-d24fe342adfe // indirect
github.com/golangci/gofmt v0.0.0-20190930125516-244bba706f1a // indirect
github.com/golangci/lint-1 v0.0.0-20191013205115-297bf364a8e0 // indirect
github.com/golangci/maligned v0.0.0-20180506175553-b1d89398deca // indirect
github.com/golangci/misspell v0.3.5 // indirect
github.com/golangci/revgrep v0.0.0-20220804021717-745bb2f7c2e6 // indirect
github.com/golangci/unconvert v0.0.0-20180507085042-28b1c447d1f4 // indirect
github.com/google/go-cmp v0.5.8 // indirect
github.com/gordonklaus/ineffassign v0.0.0-20210914165742-4cc7213b9bc8 // indirect
github.com/gostaticanalysis/analysisutil v0.7.1 // indirect
github.com/gostaticanalysis/comment v1.4.2 // indirect
github.com/gostaticanalysis/forcetypeassert v0.1.0 // indirect
github.com/gostaticanalysis/nilerr v0.1.1 // indirect
github.com/hashicorp/errwrap v1.0.0 // indirect
github.com/hashicorp/go-multierror v1.1.1 // indirect
github.com/hashicorp/go-version v1.6.0 // indirect
github.com/hashicorp/hcl v1.0.0 // indirect
github.com/hexops/gotextdiff v1.0.3 // indirect
github.com/inconshreveable/mousetrap v1.0.0 // indirect
github.com/jgautheron/goconst v1.5.1 // indirect
github.com/jingyugao/rowserrcheck v1.1.1 // indirect
github.com/jirfag/go-printf-func-name v0.0.0-20200119135958-7558a9eaa5af // indirect
github.com/julz/importas v0.1.0 // indirect
github.com/kisielk/errcheck v1.6.2 // indirect
github.com/kisielk/gotool v1.0.0 // indirect
github.com/kulti/thelper v0.6.3 // indirect
github.com/kunwardeep/paralleltest v1.0.6 // indirect
github.com/kyoh86/exportloopref v0.1.8 // indirect
github.com/ldez/gomoddirectives v0.2.3 // indirect
github.com/ldez/tagliatelle v0.3.1 // indirect
github.com/leonklingele/grouper v1.1.0 // indirect
github.com/lufeee/execinquery v1.2.1 // indirect
github.com/magiconair/properties v1.8.6 // indirect
github.com/maratori/testpackage v1.1.0 // indirect
github.com/matoous/godox v0.0.0-20210227103229-6504466cf951 // indirect
github.com/mattn/go-colorable v0.1.13 // indirect
github.com/mattn/go-isatty v0.0.16 // indirect
github.com/mattn/go-runewidth v0.0.9 // indirect
github.com/matttproud/golang_protobuf_extensions v1.0.1 // indirect
github.com/mbilski/exhaustivestruct v1.2.0 // indirect
github.com/mgechev/revive v1.2.3 // indirect
github.com/mitchellh/go-homedir v1.1.0 // indirect
github.com/mitchellh/mapstructure v1.5.0 // indirect
github.com/moricho/tparallel v0.2.1 // indirect
github.com/nakabonne/nestif v0.3.1 // indirect
github.com/nbutton23/zxcvbn-go v0.0.0-20210217022336-fa2cb2858354 // indirect
github.com/nishanths/exhaustive v0.8.1 // indirect
github.com/nishanths/predeclared v0.2.2 // indirect
github.com/olekukonko/tablewriter v0.0.5 // indirect
github.com/pelletier/go-toml v1.9.5 // indirect
github.com/pelletier/go-toml/v2 v2.0.2 // indirect
github.com/phayes/checkstyle v0.0.0-20170904204023-bfd46e6a821d // indirect
github.com/pkg/errors v0.9.1 // indirect
github.com/pmezard/go-difflib v1.0.0 // indirect
github.com/polyfloyd/go-errorlint v1.0.2 // indirect
github.com/prometheus/client_golang v1.12.1 // indirect
github.com/prometheus/client_model v0.2.0 // indirect
github.com/prometheus/common v0.32.1 // indirect
github.com/prometheus/procfs v0.7.3 // indirect
github.com/quasilyte/go-ruleguard v0.3.17 // indirect
github.com/quasilyte/gogrep v0.0.0-20220120141003-628d8b3623b5 // indirect
github.com/quasilyte/regex/syntax v0.0.0-20200407221936-30656e2c4a95 // indirect
github.com/quasilyte/stdinfo v0.0.0-20220114132959-f7386bf02567 // indirect
github.com/ryancurrah/gomodguard v1.2.4 // indirect
github.com/ryanrolds/sqlclosecheck v0.3.0 // indirect
github.com/sanposhiho/wastedassign/v2 v2.0.6 // indirect
github.com/sashamelentyev/interfacebloat v1.1.0 // indirect
github.com/sashamelentyev/usestdlibvars v1.13.0 // indirect
github.com/securego/gosec/v2 v2.13.1 // indirect
github.com/shazow/go-diff v0.0.0-20160112020656-b6b7b6733b8c // indirect
github.com/sirupsen/logrus v1.9.0 // indirect
github.com/sivchari/containedctx v1.0.2 // indirect
github.com/sivchari/nosnakecase v1.7.0 // indirect
github.com/sivchari/tenv v1.7.0 // indirect
github.com/sonatard/noctx v0.0.1 // indirect
github.com/sourcegraph/go-diff v0.6.1 // indirect
github.com/spf13/afero v1.8.2 // indirect
github.com/spf13/cast v1.5.0 // indirect
github.com/spf13/cobra v1.5.0 // indirect
github.com/spf13/jwalterweatherman v1.1.0 // indirect
github.com/spf13/pflag v1.0.5 // indirect
github.com/spf13/viper v1.12.0 // indirect
github.com/ssgreg/nlreturn/v2 v2.2.1 // indirect
github.com/stbenjam/no-sprintf-host-port v0.1.1 // indirect
github.com/stretchr/objx v0.4.0 // indirect
github.com/stretchr/testify v1.8.0 // indirect
github.com/subosito/gotenv v1.4.0 // indirect
github.com/sylvia7788/contextcheck v1.0.6 // indirect
github.com/tdakkota/asciicheck v0.1.1 // indirect
github.com/tetafro/godot v1.4.11 // indirect
github.com/timakin/bodyclose v0.0.0-20210704033933-f49887972144 // indirect
github.com/timonwong/logrlint v0.1.0 // indirect
github.com/tomarrell/wrapcheck/v2 v2.6.2 // indirect
github.com/tommy-muehle/go-mnd/v2 v2.5.0 // indirect
github.com/ultraware/funlen v0.0.3 // indirect
github.com/ultraware/whitespace v0.0.5 // indirect
github.com/uudashr/gocognit v1.0.6 // indirect
github.com/yagipy/maintidx v1.0.0 // indirect
github.com/yeya24/promlinter v0.2.0 // indirect
gitlab.com/bosi/decorder v0.2.3 // indirect
go.uber.org/atomic v1.7.0 // indirect
go.uber.org/multierr v1.6.0 // indirect
go.uber.org/zap v1.17.0 // indirect
golang.org/x/exp v0.0.0-20220722155223-a9213eeb770e // indirect
golang.org/x/exp/typeparams v0.0.0-20220613132600-b0d781184e0d // indirect
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4 // indirect
golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4 // indirect
golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab // indirect
golang.org/x/text v0.3.7 // indirect
golang.org/x/tools v0.1.12 // indirect
google.golang.org/protobuf v1.28.0 // indirect
gopkg.in/ini.v1 v1.66.6 // indirect
gopkg.in/yaml.v2 v2.4.0 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
honnef.co/go/tools v0.3.3 // indirect
mvdan.cc/gofumpt v0.3.1 // indirect
mvdan.cc/interfacer v0.0.0-20180901003855-c20040233aed // indirect
mvdan.cc/lint v0.0.0-20170908181259-adc824a0674b // indirect
mvdan.cc/unparam v0.0.0-20220706161116-678bad134442 // indirect
)

File diff suppressed because it is too large Load Diff

View File

@@ -2,4 +2,4 @@ module _ // Auto generated by https://github.com/bwplotka/bingo. DO NOT EDIT
go 1.18
require github.com/go-swagger/go-swagger v0.29.0 // cmd/swagger
require github.com/go-swagger/go-swagger v0.30.2 // cmd/swagger

View File

@@ -1,48 +1,86 @@
github.com/Masterminds/goutils v1.1.1 h1:5nUrii3FMTL5diU80unEVvNevw1nH4+ZV4DSLVJLSYI=
github.com/Masterminds/semver/v3 v3.1.1 h1:hLg3sBzpNErnxhQtUy/mmLR2I9foDujNK030IGemrRc=
github.com/Masterminds/sprig/v3 v3.2.2 h1:17jRggJu518dr3QaafizSXOjKYp94wKfABxUmyxvxX8=
github.com/PuerkitoBio/purell v1.1.1 h1:WEQqlqaGbrPkxLJWfBwQmfEAE1Z7ONdDLqrN38tNFfI=
github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578 h1:d+Bc7a5rLufV/sSk/8dngufqelfh6jnri85riMAaF/M=
github.com/asaskevich/govalidator v0.0.0-20210307081110-f21760c49a8d h1:Byv0BzEl3/e6D5CLfI0j/7hiIEtvGVFPCZ7Ei2oq8iQ=
github.com/felixge/httpsnoop v1.0.2 h1:+nS9g82KMXccJ/wp0zyRW9ZBHFETmMGtkk+2CTTrW4o=
github.com/felixge/httpsnoop v1.0.3 h1:s/nj+GCswXYzN5v2DpNMuMQYe+0DDwt5WVCU6CWBdXk=
github.com/fsnotify/fsnotify v1.5.1 h1:mZcQUHVQUQWoPXXtuf9yuEXKudkV2sx1E06UadKWpgI=
github.com/fsnotify/fsnotify v1.5.4 h1:jRbGcIw6P2Meqdwuo0H1p6JVLbL5DHKAKlYndzMwVZI=
github.com/go-openapi/analysis v0.21.2 h1:hXFrOYFHUAMQdu6zwAiKKJHJQ8kqZs1ux/ru1P1wLJU=
github.com/go-openapi/analysis v0.21.4 h1:ZDFLvSNxpDaomuCueM0BlSXxpANBlFYiBvr+GXrvIHc=
github.com/go-openapi/errors v0.20.2 h1:dxy7PGTqEh94zj2E3h1cUmQQWiM1+aeCROfAr02EmK8=
github.com/go-openapi/errors v0.20.3 h1:rz6kiC84sqNQoqrtulzaL/VERgkoCyB6WdEkc2ujzUc=
github.com/go-openapi/inflect v0.19.0 h1:9jCH9scKIbHeV9m12SmPilScz6krDxKRasNNSNPXu/4=
github.com/go-openapi/jsonpointer v0.19.5 h1:gZr+CIYByUqjcgeLXnQu2gHYQC9o73G2XUeOFYEICuY=
github.com/go-openapi/jsonreference v0.19.6 h1:UBIxjkht+AWIgYzCDSv2GN+E/togfwXUJFRTWhl2Jjs=
github.com/go-openapi/jsonreference v0.20.0 h1:MYlu0sBgChmCfJxxUKZ8g1cPWFOB37YSZqewK7OKeyA=
github.com/go-openapi/loads v0.21.0 h1:jYtUO4wwP7psAweisP/MDoOpdzsYEESdoPcsWjHDR68=
github.com/go-openapi/loads v0.21.2 h1:r2a/xFIYeZ4Qd2TnGpWDIQNcP80dIaZgf704za8enro=
github.com/go-openapi/runtime v0.21.1 h1:/KIG00BzA2x2HRStX2tnhbqbQdPcFlkgsYCiNY20FZs=
github.com/go-openapi/runtime v0.24.1 h1:Sml5cgQKGYQHF+M7yYSHaH1eOjvTykrddTE/KtQVjqo=
github.com/go-openapi/spec v0.20.4 h1:O8hJrt0UMnhHcluhIdUgCLRWyM2x7QkBXRvOs7m+O1M=
github.com/go-openapi/spec v0.20.7 h1:1Rlu/ZrOCCob0n+JKKJAWhNWMPW8bOZRg8FJaY+0SKI=
github.com/go-openapi/strfmt v0.21.1 h1:G6s2t5V5kGCHLVbSdZ/6lI8Wm4OzoPFkc3/cjAsKQrM=
github.com/go-openapi/strfmt v0.21.3 h1:xwhj5X6CjXEZZHMWy1zKJxvW9AfHC9pkyUjLvHtKG7o=
github.com/go-openapi/swag v0.19.15 h1:D2NRCBzS9/pEY3gP9Nl8aDqGUcPFrwG2p+CNFrLyrCM=
github.com/go-openapi/swag v0.22.3 h1:yMBqmnQ0gyZvEb/+KzuWZOXgllrXT4SADYbvDaXHv/g=
github.com/go-openapi/validate v0.20.3 h1:GZPPhhKSZrE8HjB4eEkoYAZmoWA4+tCemSgINH1/vKw=
github.com/go-openapi/validate v0.22.0 h1:b0QecH6VslW/TxtpKgzpO1SNG7GU2FsaqKdP1E2T50Y=
github.com/go-stack/stack v1.8.1 h1:ntEHSVwIt7PNXNpgPmVfMrNhLtgjlmnZha2kOpuRiDw=
github.com/go-swagger/go-swagger v0.29.0 h1:z3YoZtLvS1Y8TE/PCat1VypcZxM0IgKLt0NvZxQyNl8=
github.com/go-swagger/go-swagger v0.29.0/go.mod h1:Z4GJzI+bHKKkGB2Ji1rawpi3/ldXX8CkzGIa9HAC5EE=
github.com/go-swagger/go-swagger v0.30.2 h1:23odPUyQZdkNFZZSBJ3mqYYcdh+LnuReEbdWN18OMRo=
github.com/go-swagger/go-swagger v0.30.2/go.mod h1:neDPes8r8PCz2JPvHRDj8BTULLh4VJUt7n6MpQqxhHM=
github.com/google/uuid v1.1.2 h1:EVhdT+1Kseyi1/pUmXKaFxYsDNy9RQYkMWRH68J/W7Y=
github.com/gorilla/handlers v1.5.1 h1:9lRY6j8DEeeBT10CvO9hGW0gmky0BprnvDI5vfhUHH4=
github.com/hashicorp/hcl v1.0.0 h1:0Anlzjpi4vEasTeNFn2mLJgTSwt0+6sfsiTG8qcWGx4=
github.com/huandu/xstrings v1.3.2 h1:L18LIDzqlW6xN2rEkpdV8+oL/IXWJ1APd+vsdYy4Wdw=
github.com/imdario/mergo v0.3.12 h1:b6R2BslTbIEToALKP7LxUvijTsNI9TAe80pLWN2g/HU=
github.com/jessevdk/go-flags v1.5.0 h1:1jKYvbxEjfUl0fmqTCOfonvskHHXMjBySTLW4y9LFvc=
github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY=
github.com/kr/pretty v0.3.0 h1:WgNl7dwNpEZ6jJ9k1snq4pZsg7DOEN8hP9Xw0Tsjwk0=
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
github.com/magiconair/properties v1.8.5 h1:b6kJs+EmPFMYGkow9GiUyCyOvIwYetYJ3fSaWak/Gls=
github.com/magiconair/properties v1.8.6 h1:5ibWZ6iY0NctNGWo87LalDlEZ6R41TqbbDamhfG/Qzo=
github.com/mailru/easyjson v0.7.7 h1:UGYAvKxe3sBsEDzO8ZeWOSlIQfWFlxbzLZe7hwFURr0=
github.com/mitchellh/copystructure v1.2.0 h1:vpKXTN4ewci03Vljg/q9QvCGUDttBOGBIa15WveJJGw=
github.com/mitchellh/mapstructure v1.4.3 h1:OVowDSCllw/YjdLkam3/sm7wEtOy59d8ndGgCcyj8cs=
github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY=
github.com/mitchellh/reflectwalk v1.0.2 h1:G2LzWKi524PWgd3mLHV8Y5k7s6XUvT0Gef6zxSIeXaQ=
github.com/oklog/ulid v1.3.1 h1:EGfNDEx6MqHz8B3uNV6QAib1UR2Lm97sHi3ocA6ESJ4=
github.com/pelletier/go-toml v1.9.4 h1:tjENF6MfZAg8e4ZmZTeWaWiT2vXtsoO6+iuOjFhECwM=
github.com/pelletier/go-toml v1.9.5 h1:4yBQzkHv+7BHq2PQUZF3Mx0IYxG7LsP222s7Agd3ve8=
github.com/pelletier/go-toml/v2 v2.0.1 h1:8e3L2cCQzLFi2CR4g7vGFuFxX7Jl1kKX8gW+iV0GUKU=
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
github.com/rogpeppe/go-internal v1.8.1 h1:geMPLpDpQOgVyCg5z5GoRwLHepNdb71NXb67XFkP+Eg=
github.com/rogpeppe/go-internal v1.9.0 h1:73kH8U+JUqXU8lRuOHeVHaa/SZPifC7BkcraZVejAe8=
github.com/shopspring/decimal v1.2.0 h1:abSATXmQEYyShuxI4/vyW3tV1MrKAJzCZ/0zLUXYbsQ=
github.com/spf13/afero v1.8.0 h1:5MmtuhAgYeU6qpa7w7bP0dv6MBYuup0vekhSpSkoq60=
github.com/spf13/afero v1.8.2 h1:xehSyVa0YnHWsJ49JFljMpg1HX19V6NDZ1fkm1Xznbo=
github.com/spf13/cast v1.4.1 h1:s0hze+J0196ZfEMTs80N7UlFt0BDuQ7Q+JDnHiMWKdA=
github.com/spf13/cast v1.5.0 h1:rj3WzYc11XZaIZMPKmwP96zkFEnnAmV8s6XbB2aY32w=
github.com/spf13/jwalterweatherman v1.1.0 h1:ue6voC5bR5F8YxI5S67j9i582FU4Qvo2bmqnqMYADFk=
github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA=
github.com/spf13/viper v1.10.1 h1:nuJZuYpG7gTj/XqiUwg8bA0cp1+M2mC3J4g5luUYBKk=
github.com/spf13/viper v1.12.0 h1:CZ7eSOd3kZoaYDLbXnmzgQI5RlciuXBMA+18HwHRfZQ=
github.com/subosito/gotenv v1.2.0 h1:Slr1R9HxAlEKefgq5jn9U+DnETlIUa6HfgEzj0g5d7s=
github.com/subosito/gotenv v1.3.0 h1:mjC+YW8QpAdXibNi+vNWgzmgBH4+5l5dCXv8cNysBLI=
github.com/toqueteos/webbrowser v1.2.0 h1:tVP/gpK69Fx+qMJKsLE7TD8LuGWPnEV71wBN9rrstGQ=
go.mongodb.org/mongo-driver v1.8.2 h1:8ssUXufb90ujcIvR6MyE1SchaNj0SFxsakiZgxIyrMk=
go.mongodb.org/mongo-driver v1.10.1 h1:NujsPveKwHaWuKUer/ceo9DzEe7HIj1SlJ6uvXZG0S4=
golang.org/x/crypto v0.0.0-20220829220503-c86fa9a7ed90 h1:Y/gsMcFOcR+6S6f3YeMKl5g+dZMEWqcz5Czj/GWYbkM=
golang.org/x/mod v0.5.1 h1:OJxoQ/rynoF0dcCdI7cLPktw/hR2cueqYfjm43oqK38=
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4 h1:6zppjxzCulZykYSLyVDYbneBfbaBIQPYMevg0bEwv2s=
golang.org/x/net v0.0.0-20220121210141-e204ce36a2ba h1:6u6sik+bn/y7vILcYkK3iwTBWN7WtBvB0+SZswQnbf8=
golang.org/x/sys v0.0.0-20220114195835-da31bd327af9 h1:XfKQ4OlFl8okEOr5UvAqFRVj8pY/4yfcXrddB8qAbU0=
golang.org/x/sys v0.0.0-20220829200755-d48e67d00261 h1:v6hYoSR9T5oet+pMXwUWkbiVqx/63mlHjefrHmxwfeY=
golang.org/x/text v0.3.7 h1:olpwvP2KacW1ZWvsR7uQhoyTYvKAupfQrRGBFM352Gk=
golang.org/x/tools v0.1.8 h1:P1HhGGuLW4aAclzjtmJdf0mJOjVUZUzOTqkAkWL+l6w=
golang.org/x/tools v0.1.12 h1:VveCTK38A2rkS8ZqFY25HIDFscX5X9OoEhJd3quQmXU=
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 h1:go1bK/D/BFZV2I8cIQd1NKEZ+0owSTG1fDTci4IqFcE=
gopkg.in/ini.v1 v1.66.3 h1:jRskFVxYaMGAMUbN0UZ7niA9gzL9B49DOqE78vg0k3w=
gopkg.in/ini.v1 v1.66.4 h1:SsAcf+mM7mRZo2nJNGt8mZCjG8ZRaNGMURJw7BsIST4=
gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY=
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=

View File

@@ -12,9 +12,9 @@ BRA="${GOBIN}/bra-v0.0.0-20200517080246-1e3013ecaff8"
DRONE="${GOBIN}/drone-v1.5.0"
SWAGGER="${GOBIN}/swagger-v0.29.0"
GOLANGCI_LINT="${GOBIN}/golangci-lint-v1.49.0"
GOLANGCI_LINT="${GOBIN}/golangci-lint-v1.40.1"
SWAGGER="${GOBIN}/swagger-v0.30.2"
WIRE="${GOBIN}/wire-v0.5.0"

View File

@@ -4,18 +4,19 @@
# 3. Run `make drone`
# More information about this process here: https://github.com/grafana/deployment_tools/blob/master/docs/infrastructure/drone/signing.md
load('scripts/drone/pipelines/pr.star', 'pr_pipelines')
load('scripts/drone/pipelines/main.star', 'main_pipelines')
load('scripts/drone/events/pr.star', 'pr_pipelines')
load('scripts/drone/events/main.star', 'main_pipelines')
load('scripts/drone/pipelines/docs.star', 'docs_pipelines')
load('scripts/drone/pipelines/release.star', 'release_pipelines', 'publish_image_pipelines', 'publish_artifacts_pipelines', 'publish_npm_pipelines', 'publish_packages_pipeline')
load('scripts/drone/events/release.star', 'release_pipelines', 'publish_artifacts_pipelines', 'publish_npm_pipelines', 'publish_packages_pipeline', 'artifacts_page_pipeline')
load('scripts/drone/pipelines/publish_images.star', 'publish_image_pipelines_public', 'publish_image_pipelines_security')
load('scripts/drone/version.star', 'version_branch_pipelines')
load('scripts/drone/pipelines/cron.star', 'cronjobs')
load('scripts/drone/events/cron.star', 'cronjobs')
load('scripts/drone/vault.star', 'secrets')
def main(ctx):
edition = 'oss'
return pr_pipelines(edition=edition) + main_pipelines(edition=edition) + release_pipelines() + \
publish_image_pipelines('public') + publish_image_pipelines('security') + \
publish_image_pipelines_public() + publish_image_pipelines_security() + \
publish_artifacts_pipelines('security') + publish_artifacts_pipelines('public') + \
publish_npm_pipelines('public') + publish_packages_pipeline() + \
publish_npm_pipelines('public') + publish_packages_pipeline() + artifacts_page_pipeline() + \
version_branch_pipelines() + cronjobs(edition=edition) + secrets()

2976
.drone.yml

File diff suppressed because it is too large Load Diff

View File

@@ -17,7 +17,7 @@ vendor
# TS generate from cue by cuetsy
**/*.gen.ts
# Auto-generated localisation files
# Auto-generated internationalization files
public/locales/_build/
public/locales/**/*.js

View File

@@ -1,7 +1,7 @@
{
"extends": ["@grafana/eslint-config"],
"root": true,
"plugins": ["@emotion", "lodash", "jest", "import"],
"plugins": ["@emotion", "lodash", "jest", "import", "jsx-a11y"],
"settings": {
"import/internal-regex": "^(app/)|(@grafana)",
"import/external-module-folders": ["node_modules", ".yarn"]
@@ -18,7 +18,82 @@
"newlines-between": "always",
"alphabetize": { "order": "asc" }
}
]
],
"no-restricted-imports": [
"warn",
{
"paths": [
{
"name": "react-redux",
"importNames": ["useDispatch", "useSelector"],
"message": "Please import from app/types instead."
}
]
}
],
// Use typescript's no-redeclare for compatibility with overrides
"no-redeclare": "off",
"@typescript-eslint/no-redeclare": ["error"],
// these are all the rules listed in the strict preset
// we should fix them one by one and mark them as errors
// once they're all fixed, we can remove them all and instead extend the strict preset
// with "extends": ["plugin:jsx-a11y/strict"]
"jsx-a11y/alt-text": "off",
"jsx-a11y/anchor-has-content": "error",
"jsx-a11y/anchor-is-valid": "off",
"jsx-a11y/aria-activedescendant-has-tabindex": "error",
"jsx-a11y/aria-props": "error",
"jsx-a11y/aria-proptypes": "error",
"jsx-a11y/aria-role": "off",
"jsx-a11y/aria-unsupported-elements": "error",
"jsx-a11y/autocomplete-valid": "error",
"jsx-a11y/click-events-have-key-events": "off",
"jsx-a11y/heading-has-content": "error",
"jsx-a11y/html-has-lang": "error",
"jsx-a11y/iframe-has-title": "off",
"jsx-a11y/img-redundant-alt": "off",
"jsx-a11y/interactive-supports-focus": [
"off",
{
"tabbable": [
"button",
"checkbox",
"link",
"progressbar",
"searchbox",
"slider",
"spinbutton",
"switch",
"textbox"
]
}
],
"jsx-a11y/label-has-associated-control": "off",
"jsx-a11y/media-has-caption": "error",
"jsx-a11y/mouse-events-have-key-events": "off",
"jsx-a11y/no-access-key": "error",
"jsx-a11y/no-autofocus": "off",
"jsx-a11y/no-distracting-elements": "error",
"jsx-a11y/no-interactive-element-to-noninteractive-role": "error",
"jsx-a11y/no-noninteractive-element-interactions": [
"off",
{
"body": ["onError", "onLoad"],
"iframe": ["onError", "onLoad"],
"img": ["onError", "onLoad"]
}
],
"jsx-a11y/no-noninteractive-element-to-interactive-role": "off",
"jsx-a11y/no-noninteractive-tabindex": "off",
"jsx-a11y/no-redundant-roles": "error",
"jsx-a11y/no-static-element-interactions": "off",
"jsx-a11y/role-has-required-aria-props": "off",
"jsx-a11y/role-supports-aria-props": "off",
"jsx-a11y/scope": "error",
"jsx-a11y/tabindex-no-positive": "off"
},
"overrides": [
{
@@ -35,6 +110,13 @@
"react/jsx-uses-react": "off",
"react/react-in-jsx-scope": "off"
}
},
{
"files": ["public/dashboards/scripted*.js"],
"rules": {
"no-redeclare": "error",
"@typescript-eslint/no-redeclare": "off"
}
}
]
}

77
.github/CODEOWNERS vendored
View File

@@ -11,12 +11,27 @@
# In each subsection folders are ordered first by depth, then alphabetically.
# This should make it easy to add new rules without breaking existing ones.
# Documentation owner: Jita Chatterjee
# Documentation
/docs/ @grafana/docs-squad
/contribute/ @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
/contribute/ @grafana/docs-squad
/docs/sources/developers/plugins/ @grafana/docs-squad @grafana/plugins-platform-frontend @grafana/plugins-platform-backend
/docs/sources/developers/plugins/backend @grafana/docs-squad @grafana/plugins-platform-backend
# Administration, data sources, querying, release updates: Garrett Guillotte
# Set up, dashboards/visualization, best practices: Chris Moyer
# Alerting: Brenda Muir
/docs/sources/administration/ @gguillotte-grafana
/docs/sources/alerting @brendamuir
/docs/sources/best-practices/ @chri2547
/docs/sources/dashboards/ @chri2547
/docs/sources/datasources/ @gguillotte-grafana
/docs/sources/enterprise/ @gguillotte-grafana
/docs/sources/explore/ @gguillotte-grafana
/docs/sources/getting-started/ @chri2547
/docs/sources/old-alerting @brendamuir
/docs/sources/panels/ @chri2547
/docs/sources/release-notes/ @gguillotte-grafana
/docs/sources/visualization/ @chri2547
/docs/sources/whatsnew/ @gguillotte-grafana
# Backend code
*.go @grafana/backend-platform
@@ -24,6 +39,13 @@ go.mod @grafana/backend-platform
go.sum @grafana/backend-platform
/.bingo @grafana/backend-platform
# Backend code, developers environment
/devenv/docker/blocks/auth @grafana/grafana-authnz-team
# Logs code, developers environment
/devenv/docker/blocks/loki* @grafana/observability-logs
/devenv/docker/blocks/elastic* @grafana/observability-logs
# Continuous Integration
.drone.yml @grafana/grafana-release-eng
.drone.star @grafana/grafana-release-eng
@@ -38,12 +60,12 @@ go.sum @grafana/backend-platform
# Observability backend code
/pkg/tsdb/prometheus @grafana/observability-metrics
/pkg/tsdb/influxdb @grafana/observability-metrics
/pkg/tsdb/elasticsearch @grafana/observability-logs-and-traces
/pkg/tsdb/elasticsearch @grafana/observability-logs
/pkg/tsdb/graphite @grafana/observability-metrics
/pkg/tsdb/jaeger @grafana/observability-logs-and-traces
/pkg/tsdb/loki @grafana/observability-logs-and-traces
/pkg/tsdb/zipkin @grafana/observability-logs-and-traces
/pkg/tsdb/tempo @grafana/observability-logs-and-traces
/pkg/tsdb/jaeger @grafana/observability-traces-and-profiling
/pkg/tsdb/loki @grafana/observability-logs
/pkg/tsdb/zipkin @grafana/observability-traces-and-profiling
/pkg/tsdb/tempo @grafana/observability-traces-and-profiling
# BI backend code
/pkg/tsdb/mysql @grafana/grafana-bi-squad
@@ -60,7 +82,7 @@ go.sum @grafana/backend-platform
/pkg/services/store/ @grafana/grafana-edge-squad
/pkg/services/export/ @grafana/grafana-edge-squad
/pkg/infra/filestore/ @grafana/grafana-edge-squad
pkg/tsdb/testdatasource/sims/ @grafana/grafana-edge-squad
/pkg/tsdb/testdatasource/sims/ @grafana/grafana-edge-squad
# Alerting
/pkg/services/ngalert @grafana/alerting-squad-backend
@@ -78,6 +100,7 @@ pkg/tsdb/testdatasource/sims/ @grafana/grafana-edge-squad
/pkg/plugins @grafana/plugins-platform-backend
/pkg/services/datasourceproxy @grafana/plugins-platform-backend
/pkg/services/datasources @grafana/plugins-platform-backend
/pkg/plugins/pfs @grafana/plugins-platform-backend @grafana/grafana-as-code
# Dashboard previews / crawler (behind feature flag)
/pkg/services/thumbs @grafana/grafana-edge-squad
@@ -95,11 +118,12 @@ pkg/tsdb/testdatasource/sims/ @grafana/grafana-edge-squad
/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/Logs @grafana/observability-logs
/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-logs-and-traces
/packages/jaeger-ui-components/ @grafana/observability-traces-and-profiling
/plugins-bundled @grafana/plugins-platform-frontend
# public folder
/public/app/core/components/TimePicker @grafana/grafana-bi-squad
@@ -108,6 +132,7 @@ pkg/tsdb/testdatasource/sims/ @grafana/grafana-edge-squad
/public/app/features/comments/ @grafana/grafana-edge-squad
/public/app/features/dimensions/ @grafana/grafana-edge-squad
/public/app/features/geo/ @grafana/grafana-edge-squad
/public/app/features/storage/ @grafana/grafana-edge-squad
/public/app/features/live/ @grafana/grafana-edge-squad
/public/app/features/explore/ @grafana/observability-experience-squad
/public/app/features/plugins @grafana/plugins-platform-frontend
@@ -116,8 +141,9 @@ pkg/tsdb/testdatasource/sims/ @grafana/grafana-edge-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/logs @grafana/observability-logs-and-traces
/public/app/plugins/panel/nodeGraph @grafana/observability-logs-and-traces
/public/app/plugins/panel/logs @grafana/observability-logs
/public/app/plugins/panel/nodeGraph @grafana/observability-traces-and-profiling
/public/app/plugins/panel/traces @grafana/observability-traces-and-profiling
/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
@@ -130,8 +156,6 @@ pkg/tsdb/testdatasource/sims/ @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
@@ -143,26 +167,27 @@ lerna.json @grafana/frontend-ops
.eslintrc @grafana/frontend-ops
.pa11yci.conf.js @grafana/user-essentials
.pa11yci-pr.conf.js @grafana/user-essentials
.betterer.results @joshhunt
# @grafana/ui component documentation
*.mdx @marcusolsson @jessover9000 @grafana/plugins-platform-frontend
*.mdx @jessover9000 @grafana/plugins-platform-frontend
# Core datasources
/public/app/plugins/datasource/cloudwatch @grafana/aws-plugins
/public/app/plugins/datasource/elasticsearch @grafana/observability-logs-and-traces
/public/app/plugins/datasource/elasticsearch @grafana/observability-logs
/public/app/plugins/datasource/grafana-azure-monitor-datasource @grafana/cloud-provider-plugins
/public/app/plugins/datasource/graphite @grafana/observability-metrics
/public/app/plugins/datasource/influxdb @grafana/observability-metrics
/public/app/plugins/datasource/jaeger @grafana/observability-logs-and-traces
/public/app/plugins/datasource/loki @grafana/observability-logs-and-traces
/public/app/plugins/datasource/jaeger @grafana/observability-traces-and-profiling
/public/app/plugins/datasource/loki @grafana/observability-logs
/public/app/plugins/datasource/mssql @grafana/grafana-bi-squad
/public/app/plugins/datasource/mysql @grafana/grafana-bi-squad
/public/app/plugins/datasource/opentsdb @grafana/backend-platform
/public/app/plugins/datasource/postgres @grafana/grafana-bi-squad
/public/app/plugins/datasource/prometheus @grafana/observability-metrics
/public/app/plugins/datasource/cloud-monitoring @grafana/cloud-provider-plugins
/public/app/plugins/datasource/zipkin @grafana/observability-logs-and-traces
/public/app/plugins/datasource/tempo @grafana/observability-logs-and-traces
/public/app/plugins/datasource/zipkin @grafana/observability-traces-and-profiling
/public/app/plugins/datasource/tempo @grafana/observability-traces-and-profiling
/public/app/plugins/datasource/alertmanager @grafana/alerting-squad
# Cloud middleware
@@ -181,3 +206,11 @@ lerna.json @grafana/frontend-ops
/pkg/services/oauthtoken @grafana/grafana-authnz-team
/pkg/services/teamguardian @grafana/grafana-authnz-team
/pkg/services/serviceaccounts @grafana/grafana-authnz-team
# Grafana Partnerships Team
/pkg/infra/httpclient/httpclientprovider/sigv4_middleware.go @grafana/grafana-partnerships-team
# Schema framework and code generation
/pkg/codegen @grafana/grafana-as-code
/pkg/framework/coremodel @grafana/grafana-as-code
/public/app/plugins/*gen.go @grafana/grafana-as-code

23
.github/commands.json vendored
View File

@@ -41,6 +41,7 @@
"type":"label",
"name":"bot/no new info",
"action":"close",
"removeLabel":"needs more info",
"comment":"We've closed this issue since it needs more information and hasn't had any activity recently. We can re-open it after you you add more information. To avoid having your issue closed in the future, please read our [CONTRIBUTING](https://github.com/grafana/grafana/blob/main/CONTRIBUTING.md) guidelines.\n\nHappy graphing!"
},
{
@@ -79,7 +80,7 @@
"name":"datasource/Azure",
"action":"addToProject",
"addToProject":{
"url":"https://github.com/orgs/grafana/projects/97"
"url":"https://github.com/orgs/grafana/projects/190"
}
},
{
@@ -103,7 +104,7 @@
"name":"datasource/GoogleCloudMonitoring",
"action":"addToProject",
"addToProject":{
"url":"https://github.com/orgs/grafana/projects/97"
"url":"https://github.com/orgs/grafana/projects/190"
}
},
{
@@ -138,20 +139,12 @@
"url":"https://github.com/orgs/grafana/projects/112"
}
},
{
"type":"label",
"name":"datasource/OpenSearch",
"action":"addToProject",
"addToProject":{
"url":"https://github.com/orgs/grafana/projects/110"
}
},
{
"type":"label",
"name":"datasource/Loki",
"action":"addToProject",
"addToProject":{
"url":"https://github.com/orgs/grafana/projects/110"
"url":"https://github.com/orgs/grafana/projects/203"
}
},
{
@@ -159,7 +152,7 @@
"name":"datasource/Tempo",
"action":"addToProject",
"addToProject":{
"url":"https://github.com/orgs/grafana/projects/110"
"url":"https://github.com/orgs/grafana/projects/221"
}
},
{
@@ -167,7 +160,7 @@
"name":"datasource/Elasticsearch",
"action":"addToProject",
"addToProject":{
"url":"https://github.com/orgs/grafana/projects/110"
"url":"https://github.com/orgs/grafana/projects/203"
}
},
{
@@ -175,7 +168,7 @@
"name":"datasource/Jaeger",
"action":"addToProject",
"addToProject":{
"url":"https://github.com/orgs/grafana/projects/110"
"url":"https://github.com/orgs/grafana/projects/221"
}
},
{
@@ -183,7 +176,7 @@
"name":"datasource/Zipkin",
"action":"addToProject",
"addToProject":{
"url":"https://github.com/orgs/grafana/projects/110"
"url":"https://github.com/orgs/grafana/projects/221"
}
},
{

View File

@@ -16,6 +16,10 @@
"name": "needs_more_info",
"query": "label:\"needs more info\" is:open"
},
{
"name": "triage_needs_confirmation",
"query": "label:\"triage/needs-confirmation\" is:open"
},
{
"name": "unlabeled",
"query": "is:open is:issue no:label"
@@ -23,10 +27,6 @@
{
"name": "open_prs",
"query": "is:open is:pr"
},
{
"name": "milestone_7_4_open",
"query": "is:open is:issue milestone:7.4"
}
]
}

View File

@@ -4,12 +4,10 @@
],
"enabledManagers": ["npm"],
"ignoreDeps": [
"@grafana/slate-react", // should be updated when the `slate` package is updated
"@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/grafana__slate-react", // should be updated when the `slate` package is updated
"@types/react-icons", // jaeger-ui-components is being refactored to use @grafana/ui icons instead
"commander", // we are planning to remove this, so no need to update it
"d3",
@@ -18,15 +16,13 @@
"d3-scale-chromatic", // we should bump this once we move to esm modules
"execa", // we should bump this once we move to esm modules
"history", // we should bump this together with react-router-dom
"@mdx-js/react", // storybook peer-depends on it's 1.x version, we should upgrade this when we upgrade storybook
"@mdx-js/react", // storybook peer-depends on its 1.x version, we should upgrade this when we upgrade storybook
"monaco-editor", // due to us exposing this via @grafana/ui/CodeEditor's props bumping can break plugins
"node-fetch", // we should bump this once we move to esm modules
"react-hook-form", // due to us exposing these hooks via @grafana/ui form components bumping can break plugins
"react-icons", // jaeger-ui-components is being refactored to use @grafana/ui icons instead
"react-redux", // react-beautiful-dnd depends on react-redux 7.x, we need to update that one first
"react-router-dom", // we should bump this together with history
"slate",
"slate-plain-serializer",
"systemjs",
"copy-webpack-plugin", // try to upgrade with newer yarn release. Not working with 3.1.1
"ts-loader", // we should remove ts-loader and use babel-loader instead

1
.github/teams.yml vendored
View File

@@ -7,4 +7,5 @@ test:
# Alerting team
area/alerting:
github-board: 52
channel-label: C02B9MXQE0J

View File

@@ -3,12 +3,12 @@ on:
workflow_dispatch:
inputs:
version:
description: 'Needs to match, exactly, the name of a milestone. The version to be released please respect: major.minor.patch or major.minor.patch-beta<number> format. example: 7.4.3 or 7.4.3-beta1'
required: true
default: '7.x.x'
workflow_call:
inputs:
version_call:
description: Needs to match, exactly, the name of a version
description: 'Needs to match, exactly, the name of a milestone. The version to be released please respect: major.minor.patch or major.minor.patch-beta<number> format. example: 7.4.3 or 7.4.3-beta1'
required: true
type: string
secrets:
@@ -74,7 +74,7 @@ jobs:
repository: "grafana/grafana-github-actions"
path: ./actions
ref: main
- uses: actions/setup-node@v3.3.0
- uses: actions/setup-node@v3.4.0
with:
node-version: '16'
- name: Install Actions

View File

@@ -14,4 +14,7 @@ on:
jobs:
workflow-call:
uses: grafana/code-coverage/.github/workflows/code-coverage.yml@v0.1.2
uses: grafana/code-coverage/.github/workflows/code-coverage.yml@v0.1.12
with:
frontend-path-regexp: public\/app\/plugins\/datasource\/(grafana-azure-monitor-datasource|cloud-monitoring|cloudwatch)
backend-path-regexp: pkg\/tsdb\/(azuremonitor|cloudmonitoring|cloudwatch)

View File

@@ -6,6 +6,7 @@
name: "CodeQL"
on:
workflow_dispatch:
push:
branches: [main, v1.8.x, v2.0.x, v2.1.x, v2.6.x, v3.0.x, v3.1.x, v4.0.x, v4.1.x, v4.2.x, v4.3.x, v4.4.x, v4.5.x, v4.6.x, v4.7.x, v5.0.x, v5.1.x, v5.2.x, v5.3.x, v5.4.x, v6.0.x, v6.1.x, v6.2.x, v6.3.x, v6.4.x, v6.5.x, v6.6.x, v6.7.x, v7.0.x, v7.1.x, v7.2.x]
paths-ignore:
@@ -39,6 +40,12 @@ jobs:
# a pull request then we can checkout the head.
fetch-depth: 2
- if: matrix.language == 'go'
name: Set go version
uses: actions/setup-go@v3
with:
go-version: '1.19.2'
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v2
@@ -49,5 +56,11 @@ jobs:
# Prefix the list here with "+" to use these queries and those in the config file.
# queries: ./path/to/local/query, your-org/your-repo/queries@main
- if: matrix.language == 'go'
name: Build go files
run: |
go mod verify
make build-go
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2

View File

@@ -12,13 +12,16 @@ jobs:
steps:
- uses: actions/checkout@v3
with:
with:
path: './pr'
- uses: actions/setup-node@v3
with:
node-version: 16.16.0
- name: Get yarn cache directory path
id: yarn-cache-dir-path
run: echo "::set-output name=dir::$(yarn config get cacheFolder)"
- name: Restore yarn cache
uses: actions/cache@v2
id: yarn-cache
@@ -27,15 +30,18 @@ jobs:
key: yarn-cache-folder-${{ hashFiles('**/yarn.lock', '.yarnrc.yml') }}
restore-keys: |
yarn-cache-folder-
- name: Install dependencies
run: yarn install --immutable
- name: Build packages
run: yarn packages:build
- name: Zip built packages
run: zip -r ./pr_built_packages.zip ./packages/**/dist
- name: Pack packages
run: yarn packages:pack --out ./%s.tgz
- name: Zip built tarballed packages
run: zip -r ./pr_built_packages.zip ./packages/**/*.tgz
- name: Upload build output as artifact
uses: actions/upload-artifact@v3
@@ -52,14 +58,18 @@ jobs:
steps:
- uses: actions/checkout@v3
with:
with:
path: './base'
ref: ${{ github.event.pull_request.base.ref }}
- uses: actions/setup-node@v3
with:
node-version: 16.16.0
- name: Get yarn cache directory path
id: yarn-cache-dir-path
run: echo "::set-output name=dir::$(yarn config get cacheFolder)"
- name: Restore yarn cache
uses: actions/cache@v2
id: yarn-cache
@@ -68,15 +78,18 @@ jobs:
key: yarn-cache-folder-${{ hashFiles('**/yarn.lock', '.yarnrc.yml') }}
restore-keys: |
yarn-cache-folder-
- name: Install dependencies
run: yarn install --immutable
- name: Build packages
run: yarn packages:build
- name: Zip built packages
run: zip -r ./base_built_packages.zip ./packages/**/dist
- name: Pack packages
run: yarn packages:pack --out ./%s.tgz
- name: Zip built tarballed packages
run: zip -r ./base_built_packages.zip ./packages/**/*.tgz
- name: Upload build output as artifact
uses: actions/upload-artifact@v3
@@ -103,12 +116,12 @@ jobs:
uses: actions/download-artifact@v3
with:
name: buildBase
- name: Unzip artifact from pr
run: unzip pr_built_packages.zip -d ./pr && rm pr_built_packages.zip
run: unzip -j pr_built_packages.zip -d ./pr && rm pr_built_packages.zip
- name: Unzip artifact from base
run: unzip base_built_packages.zip -d ./base && rm base_built_packages.zip
run: unzip -j base_built_packages.zip -d ./base && rm base_built_packages.zip
- name: Get link for the Github Action job
id: job
@@ -120,7 +133,7 @@ jobs:
- name: Detect breaking changes
id: breaking-changes
run: ./scripts/check-breaking-changes.sh
run: ./scripts/check-breaking-changes.sh
env:
FORCE_COLOR: 3
GITHUB_JOB_LINK: ${{ steps.job.outputs.link }}
@@ -135,7 +148,7 @@ jobs:
with:
name: levitate
path: levitate/
- name: Exit
run: exit ${{ steps.breaking-changes.outputs.is_breaking }}
shell: bash

16
.github/workflows/doc-validator.yml vendored Normal file
View File

@@ -0,0 +1,16 @@
name: "doc-validator"
on:
pull_request:
paths: ["docs/sources/**"]
workflow_dispatch:
jobs:
doc-validator:
runs-on: "ubuntu-latest"
container:
image: "grafana/doc-validator:latest"
steps:
- name: "Checkout code"
uses: "actions/checkout@v3"
- name: "Run doc-validator tool"
# Ensure that the CI always passes until all errors are resolved.
run: "doc-validator ./docs/sources || true"

View File

@@ -14,23 +14,37 @@ jobs:
- name: "Determine which team to notify"
run: |
# Default to null values.
BOARD="null"
CHANNEL="null"
echo "${{ github.event.label.name }} label added"
export CURRENT_LABEL="${{ github.event.label.name }}" # Enable the use of the label in yq evaluations
# yq is installed by default in ubuntu-latest
if [[ $(yq e 'keys | .[] | select(. == env(CURRENT_LABEL))' teams.yml ) ]]; then
# Check if we have a board set to use.
if [[ $(yq '.[env(CURRENT_LABEL)] | has("github-board")' teams.yml ) == true ]]; then
BOARD=$(yq '.[env(CURRENT_LABEL)].github-board' teams.yml)
echo "Ready to add issue to Grafana board ${BOARD}"
fi
# Check if we have a channel set to notify on comments.
if [[ $(yq '.[env(CURRENT_LABEL)] | has("channel-label")' teams.yml ) == true ]]; then
CHANNEL=$(yq '.[env(CURRENT_LABEL)].channel-label' teams.yml)
echo "Ready to send issue to channel ID ${CHANNEL}"
fi
fi
# set environment for next step
echo "BOARD=${BOARD}" >> $GITHUB_ENV
echo "CHANNEL=${CHANNEL}" >> $GITHUB_ENV
# Debug logging
echo "Ready to send issue to channel ID ${CHANNEL}"
- name: "Add to GitHub board"
if: ${{ env.BOARD != 'null' }}
uses: leonsteinhaeuser/project-beta-automations@v1.3.0
with:
project_id: ${{ env.BOARD }}
organization: grafana
resource_node_id: ${{ github.event.issue.node_id }}
gh_token: ${{ secrets.GITHUB_TOKEN }}
- name: "Prepare payload"
uses: frabert/replace-string-action@v2.0
@@ -43,6 +57,7 @@ jobs:
flags: 'g'
- name: "Send Slack notification"
if: ${{ env.CHANNEL != 'null' }}
uses: slackapi/slack-github-action@v1.14.0
with:
payload: >

17
.github/workflows/ox-code-coverage.yml vendored Normal file
View File

@@ -0,0 +1,17 @@
name: Observability Experience test code coverage
on:
pull_request:
paths:
- 'pkg/services/queryhistory/**'
- 'public/app/features/explore/**'
- 'public/app/features/correlations/**'
branches-ignore:
- dependabot/**
- backport-*
jobs:
workflow-call:
uses: grafana/code-coverage/.github/workflows/code-coverage.yml@v0.1.12
with:
frontend-path-regexp: public\/app\/features\/(explore|correlations)
backend-path-regexp: pkg\/services\/(queryhistory)

View File

@@ -1,6 +1,7 @@
name: "CodeQL for PR / go"
on:
workflow_dispatch:
pull_request:
branches: [main]
paths:
@@ -19,11 +20,21 @@ jobs:
# a pull request then we can checkout the head.
fetch-depth: 2
- name: Set go version
uses: actions/setup-go@v3
with:
go-version: '1.19.2'
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v2
with:
languages: "go"
- name: Build go files
run: |
go mod verify
make build-go
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2

View File

@@ -1,6 +1,7 @@
name: "CodeQL for PR / javascript"
on:
workflow_dispatch:
pull_request:
branches: [main]
paths:

View File

@@ -1,6 +1,7 @@
name: "CodeQL for PR / python"
on:
workflow_dispatch:
pull_request:
branches: [main]
paths:

View File

@@ -1,23 +0,0 @@
name: Prepare release
on:
workflow_dispatch:
inputs:
version_input:
description: 'The version to be released please respect: major.minor.patch or major.minor.patch-beta<number> format. example: 7.4.3 or 7.4.3-beta1'
required: true
jobs:
call-bump-version:
uses: grafana/grafana/.github/workflows/bump-version.yml@main
with:
version_call: ${{ github.event.inputs.version_input }}
secrets:
token: ${{ secrets.GH_BOT_ACCESS_TOKEN }}
metricsWriteAPIKey: ${{ secrets.GRAFANA_MISC_STATS_API_KEY }}
call-update-changelog:
uses: grafana/grafana/.github/workflows/update-changelog.yml@main
with:
version_call: ${{ github.event.inputs.version_input }}
secrets:
token: ${{ secrets.GH_BOT_ACCESS_TOKEN }}
metricsWriteAPIKey: ${{ secrets.GRAFANA_MISC_STATS_API_KEY }}
needs: call-bump-version

View File

@@ -0,0 +1,31 @@
name: "publish-technical-documentation-next"
on:
push:
branches:
- "main"
paths:
- "docs/sources/**"
- "packages/grafana-*/**"
workflow_dispatch:
jobs:
sync:
if: "github.repository == 'grafana/grafana'"
runs-on: "ubuntu-latest"
steps:
- name: "Checkout Grafana repo"
uses: "actions/checkout@v3"
- name: "Clone website-sync Action"
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"
- name: "Publish to website repository (next)"
uses: "./.github/actions/website-sync"
id: "publish-next"
with:
repository: "grafana/website"
branch: "master"
host: "github.com"
github_pat: "${{ secrets.GH_BOT_ACCESS_TOKEN }}"
source_folder: "docs/sources"
target_folder: "content/docs/grafana/next"

View File

@@ -0,0 +1,61 @@
name: "publish-technical-documentation-release"
on:
push:
branches:
- v[0-9]+.[0-9]+.x
tags:
- v[0-9]+.[0-9]+.[0-9]+
paths:
- "docs/sources/**"
- "packages/grafana-*/**"
workflow_dispatch:
jobs:
sync:
if: "github.repository == 'grafana/grafana'"
runs-on: "ubuntu-latest"
steps:
- name: "Checkout Grafana repo"
uses: "actions/checkout@v3"
with:
fetch-depth: 0
- name: "Checkout Actions library"
uses: "actions/checkout@v3"
with:
repository: "grafana/grafana-github-actions"
path: "./actions"
- name: "Install Actions from library"
run: "npm install --production --prefix ./actions"
- name: "Determine if there is a matching release tag"
id: "has-matching-release-tag"
uses: "./actions/has-matching-release-tag"
with:
ref_name: "${{ github.ref_name }}"
release_tag_regexp: "^v(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$"
release_branch_regexp: "^v(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.x$"
- name: "Determine technical documentation version"
if: "steps.has-matching-release-tag.outputs.bool == 'true'"
uses: "./actions/docs-target"
id: "target"
with:
ref_name: "${{ github.ref_name }}"
- name: "Clone website-sync Action"
if: "steps.has-matching-release-tag.outputs.bool == 'true'"
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"
- name: "Publish to website repository (release)"
if: "steps.has-matching-release-tag.outputs.bool == 'true'"
uses: "./.github/actions/website-sync"
id: "publish-release"
with:
repository: "grafana/website"
branch: "master"
host: "github.com"
github_pat: "${{ secrets.GH_BOT_ACCESS_TOKEN }}"
source_folder: "docs/sources"
target_folder: "content/docs/grafana/${{ steps.target.outputs.target }}"

View File

@@ -1,49 +0,0 @@
name: publish_docs
on:
push:
branches:
- main
paths:
- 'docs/sources/**'
- 'packages/grafana-*/**'
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- 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
- name: generate-packages-docs
uses: actions/setup-node@v3.3.0
id: generate-docs
with:
node-version: '16'
- 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.7
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
id: publish
with:
repository: grafana/website
branch: master
host: github.com
github_pat: '${{ secrets.GH_BOT_ACCESS_TOKEN }}'
source_folder: docs/sources
target_folder: content/docs/grafana/next
allow_no_changes: 'true'
- shell: bash
run: |
test -n "${{ steps.publish.outputs.commit_hash }}"
test -n "${{ steps.publish.outputs.working_directory }}"

20
.github/workflows/sbom-report.yml vendored Normal file
View File

@@ -0,0 +1,20 @@
name: syft-sbom-ci
on:
release:
types: [created]
jobs:
syft-sbom:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Anchore SBOM Action
uses: anchore/sbom-action@v0.12.0
with:
artifact-name: ${{ github.event.repository.name }}-spdx.json

View File

@@ -4,11 +4,11 @@ on:
inputs:
version:
required: true
description: Needs to match, exactly, the name of a milestone
description: 'Needs to match, exactly, the name of a milestone. The version to be released please respect: major.minor.patch or major.minor.patch-beta<number> format. example: 7.4.3 or 7.4.3-beta1'
workflow_call:
inputs:
version_call:
description: Needs to match, exactly, the name of a milestone
description: 'Needs to match, exactly, the name of a milestone. The version to be released please respect: major.minor.patch or major.minor.patch-beta<number> format. example: 7.4.3 or 7.4.3-beta1'
required: true
type: string
secrets:
@@ -35,9 +35,9 @@ jobs:
token: ${{ secrets.GH_BOT_ACCESS_TOKEN }}
metricsWriteAPIKey: ${{ secrets.GRAFANA_MISC_STATS_API_KEY }}
- name: Run update changelog (workflow invoked)
if: ${{ inputs.version_call != '' }}
if: ${{ inputs.version != '' }}
uses: ./actions/update-changelog
with:
version_call: ${{ inputs.version_call }}
version_call: ${{ inputs.version }}
token: ${{ secrets.token }}
metricsWriteAPIKey: ${{ secrets.metricsWriteAPIKey }}

17
.gitignore vendored
View File

@@ -40,6 +40,8 @@ tsconfig.tsbuildinfo
# Enterprise devenv
/devenv/docker/blocks/grafana-enterprise
/devenv/docker/blocks/saml-enterprise
# This is the new place of the block, but I leave the previous here for a while
/devenv/docker/blocks/auth/saml-enterprise
/tmp
tools/phantomjs/phantomjs
@@ -59,6 +61,7 @@ public/css/*.min.css
*.sublime-workspace
*.swp
.idea/
.fleet/
*.iml
*.tmp
.DS_Store
@@ -73,7 +76,9 @@ public/css/*.min.css
# devenv
/devenv/docker-compose.yaml
/devenv/docker-compose.override.yaml
/devenv/.env
/devenv/docker/blocks/tempo/tempo-data/
conf/custom.ini
/conf/provisioning/**/custom.yaml
@@ -118,12 +123,20 @@ pkg/cmd/grafana-server/__debug_bin
/scripts/build/release_publisher/release_publisher
*.patch
!.yarn/patches/*.patch
# Ignoring frontend packages specifics
/packages/**/dist
/packages/**/compiled
/packages/**/.rpt2_cache
/packages/**/tsdoc-metadata.json
/packages/**/package.tgz
/packages/grafana-toolkit/sass
## CI places the packages in a different location
/npm-artifacts/*.tgz
# Ignore frontend build manifest
manifest.json
# Ignore go local build dependencies
/scripts/go/bin/**
@@ -161,8 +174,10 @@ compilation-stats.json
!pkg/services/featuremgmt/toggles_gen.go
!pkg/coremodel/**/*_gen.go
!pkg/framework/**/*_gen.go
!pkg/plugins/pfs/**/*_gen.go
!public/app/plugins/**/*_gen.go
# Auto-generated localisation files
# Auto-generated internationalization files
public/locales/_build/
public/locales/**/*.js

145
.golangci.toml Normal file
View File

@@ -0,0 +1,145 @@
[run]
timeout = "10m"
[linters-settings.goconst]
min-len = 5
min-occurrences = 5
[linters-settings.exhaustive]
default-signifies-exhaustive = true
[linters-settings.revive]
ignore-generated-header = false
severity = "warning"
confidence = 3
[linters-settings.depguard]
list-type = "blacklist"
include-go-root = true
packages = ["io/ioutil"]
[[linters-settings.depguard.packages-with-error-message]]
"io/ioutil" = "Deprecated: As of Go 1.16, the same functionality is now provided by package io or package os, and those implementations should be preferred in new code. See the specific function documentation for details."
[linters-settings.gocritic]
enabled-checks = ["ruleguard"]
[linters-settings.gocritic.settings.ruleguard]
rules = "pkg/ruleguard.rules.go"
[linters]
disable-all = true
enable = [
"bodyclose",
"depguard",
"dogsled",
"errcheck",
# "gochecknoinits",
"goconst",
# "gocritic", # Temporarily disabled on 2022-09-09, running into weird bug "ruleguard: execution error: used Run() with an empty rule set; forgot to call Load() first?"
"goimports",
"goprintffuncname",
"gosec",
"gosimple",
"govet",
"ineffassign",
"misspell",
"nakedret",
"rowserrcheck",
"exportloopref",
"staticcheck",
"stylecheck",
"typecheck",
"unconvert",
"unused",
"whitespace",
"gocyclo",
"exhaustive",
"typecheck",
"asciicheck",
"errorlint",
"sqlclosecheck",
"revive",
]
# Disabled linters (might want them later)
# "unparam"
[issues]
exclude-use-default = false
# Enable when appropriate
# Poorly chosen identifier
[[issues.exclude-rules]]
linters = ["stylecheck"]
text = "ST1003"
# Enable when appropriate
# Dot imports that aren't in external test packages are discouraged.
[[issues.exclude-rules]]
linters = ["stylecheck"]
text = "ST1001"
# Enable when appropriate
# strings.Title has been deprecated since Go 1.18 and an alternative has been available since Go 1.0: The rule Title uses for word boundaries does not handle Unicode punctuation properly.
# Use golang.org/x/text/cases instead.
[[issues.exclude-rules]]
linters = ["staticcheck"]
text = "SA1019"
[[issues.exclude-rules]]
linters = ["gosec"]
text = "G108"
[[issues.exclude-rules]]
linters = ["gosec"]
text = "G110"
[[issues.exclude-rules]]
linters = ["gosec"]
text = "G201"
[[issues.exclude-rules]]
linters = ["gosec"]
text = "G202"
[[issues.exclude-rules]]
linters = ["gosec"]
text = "G306"
[[issues.exclude-rules]]
linters = ["gosec"]
text = "401"
[[issues.exclude-rules]]
linters = ["gosec"]
text = "402"
[[issues.exclude-rules]]
linters = ["gosec"]
text = "501"
[[issues.exclude-rules]]
linters = ["gosec"]
text = "404"
[[issues.exclude-rules]]
linters = ["misspell"]
text = "Unknwon` is a misspelling of `Unknown"
[[issues.exclude-rules]]
linters = ["errorlint"]
text = "non-wrapping format verb for fmt.Errorf"
# TODO: Enable
[[issues.exclude-rules]]
linters = ["stylecheck"]
text = "ST1000"
# TODO: Enable
[[issues.exclude-rules]]
linters = ["stylecheck"]
text = "ST1020"
# TODO: Enable
[[issues.exclude-rules]]
linters = ["stylecheck"]
text = "ST1021"

View File

@@ -1,8 +1,8 @@
{
"locales": [
"en",
"fr",
"es",
"en-US",
"fr-FR",
"es-ES",
"pseudo-LOCALE"
],
"catalogs": [
@@ -20,11 +20,11 @@
}
],
"fallbackLocales": {
"pseudo-LOCALE": "en",
"default": "en"
"pseudo-LOCALE": "en-US",
"default": "en-US"
},
"pseudoLocale": "pseudo-LOCALE",
"sourceLocale": "en",
"sourceLocale": "en-US",
"format": "po",
"formatOptions": {
"lineNumbers": false

View File

@@ -1,8 +1,54 @@
var dashboardSettings = [
{
url: '${HOST}/d/O6f11TZWk/panel-tests-bar-gauge?orgId=1&editview=settings',
wait: 500,
rootElement: '.main-view',
threshold: 0,
},
{
url: '${HOST}/d/O6f11TZWk/panel-tests-bar-gauge?orgId=1&editview=annotations',
wait: 500,
rootElement: '.main-view',
threshold: 0,
},
{
url: '${HOST}/d/O6f11TZWk/panel-tests-bar-gauge?orgId=1&editview=templating',
wait: 500,
rootElement: '.main-view',
threshold: 0,
},
{
url: '${HOST}/d/O6f11TZWk/panel-tests-bar-gauge?orgId=1&editview=links',
wait: 500,
rootElement: '.main-view',
threshold: 0,
},
{
url: '${HOST}/d/O6f11TZWk/panel-tests-bar-gauge?orgId=1&editview=versions',
wait: 500,
rootElement: '.main-view',
threshold: 0,
},
{
url: '${HOST}/d/O6f11TZWk/panel-tests-bar-gauge?orgId=1&editview=permissions',
wait: 500,
rootElement: '.main-view',
threshold: 9,
},
{
url: '${HOST}/d/O6f11TZWk/panel-tests-bar-gauge?orgId=1&editview=dashboard_json',
wait: 500,
rootElement: '.main-view',
threshold: 2,
},
];
var config = {
defaults: {
concurrency: 1,
runners: ['axe'],
useIncognitoBrowserContext: false,
standard: 'WCAG2AA',
chromeLaunchConfig: {
args: ['--no-sandbox'],
},
@@ -16,7 +62,7 @@ var config = {
url: '${HOST}/login',
wait: 500,
rootElement: '.main-view',
threshold: 12,
threshold: 13,
},
{
url: '${HOST}/login',
@@ -28,7 +74,7 @@ var config = {
"click element button[aria-label='Login button']",
"wait for element [aria-label='Skip change password button'] to be visible",
],
threshold: 13,
threshold: 14,
rootElement: '.main-view',
},
{
@@ -42,12 +88,7 @@ var config = {
rootElement: '.main-view',
threshold: 0,
},
{
url: '${HOST}/d/O6f11TZWk/panel-tests-bar-gauge?orgId=1&editview=settings',
wait: 500,
rootElement: '.main-view',
threshold: 0,
},
...dashboardSettings,
{
url: '${HOST}/?orgId=1&search=open',
wait: 500,
@@ -60,49 +101,49 @@ var config = {
rootElement: '.main-view',
// the unified alerting promotion alert's content contrast is too low
// see https://github.com/grafana/grafana/pull/41829
threshold: 5,
threshold: 6,
},
{
url: '${HOST}/datasources',
wait: 500,
rootElement: '.main-view',
threshold: 0,
threshold: 1,
},
{
url: '${HOST}/org/users',
wait: 500,
rootElement: '.main-view',
threshold: 0,
threshold: 1,
},
{
url: '${HOST}/org/teams',
wait: 500,
rootElement: '.main-view',
threshold: 0,
threshold: 1,
},
{
url: '${HOST}/plugins',
wait: 500,
rootElement: '.main-view',
threshold: 0,
threshold: 1,
},
{
url: '${HOST}/org',
wait: 500,
rootElement: '.main-view',
threshold: 0,
threshold: 1,
},
{
url: '${HOST}/org/apikeys',
wait: 500,
rootElement: '.main-view',
threshold: 0,
threshold: 4,
},
{
url: '${HOST}/dashboards',
wait: 500,
rootElement: '.main-view',
threshold: 0,
threshold: 1,
},
],
};

View File

@@ -1,8 +1,46 @@
var dashboardSettings = [
{
url: '${HOST}/d/O6f11TZWk/panel-tests-bar-gauge?orgId=1&editview=settings',
wait: 500,
rootElement: '.main-view',
},
{
url: '${HOST}/d/O6f11TZWk/panel-tests-bar-gauge?orgId=1&editview=annotations',
wait: 500,
rootElement: '.main-view',
},
{
url: '${HOST}/d/O6f11TZWk/panel-tests-bar-gauge?orgId=1&editview=templating',
wait: 500,
rootElement: '.main-view',
},
{
url: '${HOST}/d/O6f11TZWk/panel-tests-bar-gauge?orgId=1&editview=links',
wait: 500,
rootElement: '.main-view',
},
{
url: '${HOST}/d/O6f11TZWk/panel-tests-bar-gauge?orgId=1&editview=versions',
wait: 500,
rootElement: '.main-view',
},
{
url: '${HOST}/d/O6f11TZWk/panel-tests-bar-gauge?orgId=1&editview=permissions',
wait: 500,
rootElement: '.main-view',
},
{
url: '${HOST}/d/O6f11TZWk/panel-tests-bar-gauge?orgId=1&editview=dashboard_json',
wait: 500,
rootElement: '.main-view',
},
];
var config = {
defaults: {
concurrency: 1,
runners: ['axe'],
useIncognitoBrowserContext: false,
standard: 'WCAG2AA',
chromeLaunchConfig: {
args: ['--no-sandbox'],
},
@@ -38,11 +76,7 @@ var config = {
wait: 500,
rootElement: '.main-view',
},
{
url: '${HOST}/d/O6f11TZWk/panel-tests-bar-gauge?orgId=1&editview=settings',
wait: 500,
rootElement: '.main-view',
},
...dashboardSettings,
{
url: '${HOST}/?orgId=1&search=open',
wait: 500,

View File

@@ -18,10 +18,15 @@ vendor
# TS generate from cue by cuetsy
**/*.gen.ts
# Auto-generated localisation files
# Auto-generated internationalization files
public/locales/_build/
public/locales/**/*.js
# Auto-generated theme files
theme.light.generated.json
theme.dark.generated.json
# Generated Swagger API specs
public/api-spec.json
public/api-merged.json
public/openapi3.json

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

783
.yarn/releases/yarn-3.2.3.cjs vendored Executable file

File diff suppressed because one or more lines are too long

View File

@@ -1,13 +1,13 @@
#!/usr/bin/env node
const {existsSync} = require(`fs`);
const {createRequire, createRequireFromPath} = require(`module`);
const {createRequire} = require(`module`);
const {resolve} = require(`path`);
const relPnpApiPath = "../../../../.pnp.cjs";
const absPnpApiPath = resolve(__dirname, relPnpApiPath);
const absRequire = (createRequire || createRequireFromPath)(absPnpApiPath);
const absRequire = createRequire(absPnpApiPath);
if (existsSync(absPnpApiPath)) {
if (!process.versions.pnp) {

View File

@@ -1,13 +1,13 @@
#!/usr/bin/env node
const {existsSync} = require(`fs`);
const {createRequire, createRequireFromPath} = require(`module`);
const {createRequire} = require(`module`);
const {resolve} = require(`path`);
const relPnpApiPath = "../../../../.pnp.cjs";
const absPnpApiPath = resolve(__dirname, relPnpApiPath);
const absRequire = (createRequire || createRequireFromPath)(absPnpApiPath);
const absRequire = createRequire(absPnpApiPath);
if (existsSync(absPnpApiPath)) {
if (!process.versions.pnp) {

View File

@@ -1,6 +1,6 @@
{
"name": "eslint",
"version": "8.17.0-sdk",
"version": "8.23.0-sdk",
"main": "./lib/api.js",
"type": "commonjs"
}

View File

@@ -2,5 +2,5 @@
# Manual changes might be lost!
integrations:
- vscode
- vim
- vscode

View File

@@ -1,13 +1,13 @@
#!/usr/bin/env node
const {existsSync} = require(`fs`);
const {createRequire, createRequireFromPath} = require(`module`);
const {createRequire} = require(`module`);
const {resolve} = require(`path`);
const relPnpApiPath = "../../../.pnp.cjs";
const absPnpApiPath = resolve(__dirname, relPnpApiPath);
const absRequire = (createRequire || createRequireFromPath)(absPnpApiPath);
const absRequire = createRequire(absPnpApiPath);
if (existsSync(absPnpApiPath)) {
if (!process.versions.pnp) {

View File

@@ -1,6 +1,6 @@
{
"name": "prettier",
"version": "2.6.2-sdk",
"version": "2.7.1-sdk",
"main": "./index.js",
"type": "commonjs"
}

View File

@@ -1,13 +1,13 @@
#!/usr/bin/env node
const {existsSync} = require(`fs`);
const {createRequire, createRequireFromPath} = require(`module`);
const {createRequire} = require(`module`);
const {resolve} = require(`path`);
const relPnpApiPath = "../../../../.pnp.cjs";
const absPnpApiPath = resolve(__dirname, relPnpApiPath);
const absRequire = (createRequire || createRequireFromPath)(absPnpApiPath);
const absRequire = createRequire(absPnpApiPath);
if (existsSync(absPnpApiPath)) {
if (!process.versions.pnp) {

View File

@@ -1,13 +1,13 @@
#!/usr/bin/env node
const {existsSync} = require(`fs`);
const {createRequire, createRequireFromPath} = require(`module`);
const {createRequire} = require(`module`);
const {resolve} = require(`path`);
const relPnpApiPath = "../../../../.pnp.cjs";
const absPnpApiPath = resolve(__dirname, relPnpApiPath);
const absRequire = (createRequire || createRequireFromPath)(absPnpApiPath);
const absRequire = createRequire(absPnpApiPath);
if (existsSync(absPnpApiPath)) {
if (!process.versions.pnp) {

View File

@@ -1,13 +1,13 @@
#!/usr/bin/env node
const {existsSync} = require(`fs`);
const {createRequire, createRequireFromPath} = require(`module`);
const {createRequire} = require(`module`);
const {resolve} = require(`path`);
const relPnpApiPath = "../../../../.pnp.cjs";
const absPnpApiPath = resolve(__dirname, relPnpApiPath);
const absRequire = (createRequire || createRequireFromPath)(absPnpApiPath);
const absRequire = createRequire(absPnpApiPath);
if (existsSync(absPnpApiPath)) {
if (!process.versions.pnp) {

View File

@@ -1,13 +1,13 @@
#!/usr/bin/env node
const {existsSync} = require(`fs`);
const {createRequire, createRequireFromPath} = require(`module`);
const {createRequire} = require(`module`);
const {resolve} = require(`path`);
const relPnpApiPath = "../../../../.pnp.cjs";
const absPnpApiPath = resolve(__dirname, relPnpApiPath);
const absRequire = (createRequire || createRequireFromPath)(absPnpApiPath);
const absRequire = createRequire(absPnpApiPath);
const moduleWrapper = tsserver => {
if (!process.versions.pnp) {

View File

@@ -1,13 +1,13 @@
#!/usr/bin/env node
const {existsSync} = require(`fs`);
const {createRequire, createRequireFromPath} = require(`module`);
const {createRequire} = require(`module`);
const {resolve} = require(`path`);
const relPnpApiPath = "../../../../.pnp.cjs";
const absPnpApiPath = resolve(__dirname, relPnpApiPath);
const absRequire = (createRequire || createRequireFromPath)(absPnpApiPath);
const absRequire = createRequire(absPnpApiPath);
const moduleWrapper = tsserver => {
if (!process.versions.pnp) {

View File

@@ -1,13 +1,13 @@
#!/usr/bin/env node
const {existsSync} = require(`fs`);
const {createRequire, createRequireFromPath} = require(`module`);
const {createRequire} = require(`module`);
const {resolve} = require(`path`);
const relPnpApiPath = "../../../../.pnp.cjs";
const absPnpApiPath = resolve(__dirname, relPnpApiPath);
const absRequire = (createRequire || createRequireFromPath)(absPnpApiPath);
const absRequire = createRequire(absPnpApiPath);
if (existsSync(absPnpApiPath)) {
if (!process.versions.pnp) {

View File

@@ -1,6 +1,6 @@
{
"name": "typescript",
"version": "4.6.4-sdk",
"version": "4.8.2-sdk",
"main": "./lib/typescript.js",
"type": "commonjs"
}

View File

@@ -3,12 +3,12 @@ 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
"@npmcli/run-script@4.1.3":
dependencies:
which: ^2.0.2
"@storybook/addon-docs@6.4.21":
peerDependencies:
"@storybook/manager-webpack5": 6.4.21
@@ -60,18 +60,12 @@ packageExtensions:
react-simple-compat: 1.2.2
peerDependencies:
framework-utils: ^1.1.0
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
"@npmcli/run-script@4.1.3":
dependencies:
which: ^2.0.2
plugins:
- path: .yarn/plugins/@yarnpkg/plugin-typescript.cjs
@@ -81,4 +75,4 @@ plugins:
- path: .yarn/plugins/@yarnpkg/plugin-outdated.cjs
spec: "https://mskelton.dev/yarn-outdated/v2"
yarnPath: .yarn/releases/yarn-3.2.1.cjs
yarnPath: .yarn/releases/yarn-3.2.3.cjs

File diff suppressed because it is too large Load Diff

View File

@@ -20,14 +20,13 @@ COPY emails emails
ENV NODE_ENV production
RUN yarn build
FROM golang:1.17.11-alpine3.15 as go-builder
FROM golang:1.19.3-alpine3.15 as go-builder
RUN apk add --no-cache gcc g++ make
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 public/api-spec.json public/api-spec.json
@@ -40,7 +39,7 @@ RUN go mod verify
RUN make build-go
# Final stage
FROM alpine:3.15
FROM alpine:3.15.6
LABEL maintainer="Grafana team <hello@grafana.com>"
@@ -58,8 +57,6 @@ ENV PATH="/usr/share/grafana/bin:$PATH" \
WORKDIR $GF_PATHS_HOME
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
@@ -76,6 +73,7 @@ RUN export GF_GID_NAME=$(getent group $GF_GID | cut -d':' -f1) && \
"$GF_PATHS_PROVISIONING/notifiers" \
"$GF_PATHS_PROVISIONING/plugins" \
"$GF_PATHS_PROVISIONING/access-control" \
"$GF_PATHS_PROVISIONING/alerting" \
"$GF_PATHS_LOGS" \
"$GF_PATHS_PLUGINS" \
"$GF_PATHS_DATA" && \

View File

@@ -21,7 +21,7 @@ COPY emails emails
ENV NODE_ENV production
RUN yarn build
FROM golang:1.17.11 AS go-builder
FROM golang:1.19.3 AS go-builder
WORKDIR /src/grafana
@@ -29,7 +29,6 @@ COPY go.mod go.sum embed.go ./
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/
@@ -69,6 +68,7 @@ RUN mkdir -p "$GF_PATHS_HOME/.aws" && \
"$GF_PATHS_PROVISIONING/notifiers" \
"$GF_PATHS_PROVISIONING/plugins" \
"$GF_PATHS_PROVISIONING/access-control" \
"$GF_PATHS_PROVISIONING/alerting" \
"$GF_PATHS_LOGS" \
"$GF_PATHS_PLUGINS" \
"$GF_PATHS_DATA" && \

View File

@@ -21,6 +21,8 @@ pkg/coremodel/
pkg/framework/coremodel/
grafana-mixin/
cue/
public/img/icons/solid/
public/img/icons/unicons/
```
The following directories and their subdirectories are licensed under their original upstream licenses:

View File

@@ -12,7 +12,6 @@ include .bingo/Variables.mk
GO = go
GO_FILES ?= ./pkg/...
SH_FILES ?= $(shell find ./scripts -name *.sh)
API_DEFINITION_FILES = $(shell find ./pkg/api/docs/definitions -name '*.go' -print)
GO_BUILD_FLAGS += $(if $(GO_BUILD_DEV),-dev)
GO_BUILD_FLAGS += $(if $(GO_BUILD_TAGS),-build-tags=$(GO_BUILD_TAGS))
@@ -39,25 +38,31 @@ NGALERT_SPEC_TARGET = pkg/services/ngalert/api/tooling/api.json
$(NGALERT_SPEC_TARGET):
+$(MAKE) -C pkg/services/ngalert/api/tooling api.json
$(MERGED_SPEC_TARGET): $(SPEC_TARGET) $(NGALERT_SPEC_TARGET) ## Merge generated and ngalert API specs
go run pkg/api/docs/merge/merge_specs.go -o=$(MERGED_SPEC_TARGET) $(<) $(NGALERT_SPEC_TARGET)
$(MERGED_SPEC_TARGET): $(SPEC_TARGET) $(NGALERT_SPEC_TARGET) $(SWAGGER) ## Merge generated and ngalert API specs
# known conflicts DsPermissionType, AddApiKeyCommand, Json, Duration (identical models referenced by both specs)
$(SWAGGER) mixin $(SPEC_TARGET) $(NGALERT_SPEC_TARGET) --ignore-conflicts -o $(MERGED_SPEC_TARGET)
--swagger-api-spec: $(API_DEFINITION_FILES) $(SWAGGER) ## Generate API Swagger specification
SWAGGER_GENERATE_EXTENSION=false $(SWAGGER) generate spec -m -w pkg/server -o public/api-spec.json \
$(SPEC_TARGET): $(SWAGGER) ## Generate API Swagger specification
SWAGGER_GENERATE_EXTENSION=false $(SWAGGER) generate spec -m -w pkg/server -o $(SPEC_TARGET) \
-x "github.com/grafana/grafana/pkg/services/ngalert/api/tooling/definitions" \
-x "github.com/prometheus/alertmanager" \
-i pkg/api/docs/tags.json
-i pkg/api/swagger_tags.json
swagger-api-spec: gen-go --swagger-api-spec $(MERGED_SPEC_TARGET) validate-api-spec
swagger-api-spec: gen-go $(SPEC_TARGET) $(MERGED_SPEC_TARGET) validate-api-spec
validate-api-spec: $(MERGED_SPEC_TARGET) $(SWAGGER) ## Validate API spec
$(SWAGGER) validate $(<)
clean-api-spec:
rm $(SPEC_TARGET) $(MERGED_SPEC_TARGET)
rm $(SPEC_TARGET) $(MERGED_SPEC_TARGET) $(OAPI_SPEC_TARGET)
##@ OpenAPI 3
OAPI_SPEC_TARGET = public/openapi3.json
openapi3-gen: swagger-api-spec ## Generates OpenApi 3 specs from the Swagger 2 already generated
$(GO) run scripts/openapi3/openapi3conv.go $(MERGED_SPEC_TARGET) $(OAPI_SPEC_TARGET)
##@ Building
gen-cue: ## Do all CUE/Thema code generation
@echo "generate code from .cue files"
go generate ./pkg/framework/coremodel
@@ -94,9 +99,30 @@ run-frontend: deps-js ## Fetch js dependencies and watch frontend for rebuild
##@ Testing
test-go: ## Run tests for backend.
@echo "test backend"
$(GO) test -v ./pkg/...
.PHONY: test-go
test-go: test-go-unit test-go-integration
.PHONY: test-go-unit
test-go-unit: ## Run unit tests for backend with flags.
@echo "test backend unit tests"
$(GO) test -short -covermode=atomic -timeout=30m ./pkg/...
.PHONY: test-go-integration
test-go-integration: ## Run integration tests for backend with flags.
@echo "test backend integration tests"
$(GO) test -run Integration -covermode=atomic -timeout=30m ./pkg/...
.PHONY: test-go-integration-postgres
test-go-integration-postgres: devenv-postgres ## Run integration tests for postgres backend with flags.
@echo "test backend integration postgres tests"
$(GO) clean -testcache
$(GO) list './pkg/...' | xargs -I {} sh -c 'GRAFANA_TEST_DB=postgres go test -run Integration -covermode=atomic -timeout=30m {}'
.PHONY: test-go-integration-mysql
test-go-integration-mysql: devenv-mysql ## Run integration tests for mysql backend with flags.
@echo "test backend integration mysql tests"
$(GO) clean -testcache
$(GO) list './pkg/...' | xargs -I {} sh -c 'GRAFANA_TEST_DB=mysql go test -run Integration -covermode=atomic -timeout=30m {}'
test-js: ## Run tests for frontend.
@echo "test frontend"
@@ -108,7 +134,7 @@ test: test-go test-js ## Run all tests.
golangci-lint: $(GOLANGCI_LINT)
@echo "lint via golangci-lint"
$(GOLANGCI_LINT) run \
--config ./conf/.golangci.toml \
--config .golangci.toml \
$(GO_FILES)
lint-go: golangci-lint ## Run all code checks for backend. You can use GO_FILES to specify exact files to check
@@ -132,7 +158,7 @@ build-docker-full-ubuntu: ## Build Docker image based on Ubuntu for development.
##@ Services
# create docker-compose file with provided sources and start them
# example: make devenv sources=postgres,openldap
# example: make devenv sources=postgres,auth/openldap
ifeq ($(sources),)
devenv:
@printf 'You have to define sources for this command \nexample: make devenv sources=postgres,openldap\n'
@@ -153,6 +179,14 @@ devenv-down: ## Stop optional services.
test -f docker-compose.yaml && \
docker-compose down || exit 0;
devenv-postgres:
@cd devenv; \
sources=postgres_tests
devenv-mysql:
@cd devenv; \
sources=mysql_tests
##@ Helpers
# We separate the protobuf generation because most development tasks on

View File

@@ -1,38 +0,0 @@
{
"$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json",
"mainEntryPointFilePath": "<projectFolder>/dist/index.d.ts",
"bundledPackages": [],
"compiler": {},
"apiReport": {
"enabled": false
},
"docModel": {
"enabled": true,
"apiJsonFilePath": "<projectFolder>/../../reports/docs/<unscopedPackageName>.api.json"
},
"dtsRollup": {
"enabled": false
},
"tsdocMetadata": {},
"messages": {
"compilerMessageReporting": {
"default": {
"logLevel": "warning"
}
},
"extractorMessageReporting": {
"default": {
"logLevel": "warning"
},
"ae-internal-missing-underscore": {
"logLevel": "none",
"addToApiReportFile": false
}
},
"tsdocMessageReporting": {
"default": {
"logLevel": "warning"
}
}
}
}

View File

@@ -1,134 +0,0 @@
[run]
timeout = "10m"
[linters-settings.goconst]
min-len = 5
min-occurrences = 5
[linters-settings.exhaustive]
default-signifies-exhaustive = true
[linters-settings.revive]
ignore-generated-header = false
severity = "warning"
confidence = 3
[linters-settings.gocritic]
enabled-checks = ["ruleguard"]
[linters-settings.gocritic.settings.ruleguard]
rules = "pkg/ruleguard.rules.go"
[linters]
disable-all = true
enable = [
"bodyclose",
"deadcode",
"depguard",
"dogsled",
"errcheck",
# "gochecknoinits",
"goconst",
"gocritic",
"goimports",
"goprintffuncname",
"gosec",
"gosimple",
"govet",
"ineffassign",
"misspell",
"nakedret",
"rowserrcheck",
"exportloopref",
"staticcheck",
"structcheck",
"stylecheck",
"typecheck",
"unconvert",
"unused",
"varcheck",
"whitespace",
"gocyclo",
"exhaustive",
"typecheck",
"asciicheck",
"errorlint",
"sqlclosecheck",
"revive",
]
# Disabled linters (might want them later)
# "unparam"
[issues]
exclude-use-default = false
# Enable when appropriate
# Poorly chosen identifier
[[issues.exclude-rules]]
linters = ["stylecheck"]
text = "ST1003"
# Enable when appropriate
# Dot imports that aren't in external test packages are discouraged.
[[issues.exclude-rules]]
linters = ["stylecheck"]
text = "ST1001"
[[issues.exclude-rules]]
linters = ["gosec"]
text = "G108"
[[issues.exclude-rules]]
linters = ["gosec"]
text = "G110"
[[issues.exclude-rules]]
linters = ["gosec"]
text = "G201"
[[issues.exclude-rules]]
linters = ["gosec"]
text = "G202"
[[issues.exclude-rules]]
linters = ["gosec"]
text = "G306"
[[issues.exclude-rules]]
linters = ["gosec"]
text = "401"
[[issues.exclude-rules]]
linters = ["gosec"]
text = "402"
[[issues.exclude-rules]]
linters = ["gosec"]
text = "501"
[[issues.exclude-rules]]
linters = ["gosec"]
text = "404"
[[issues.exclude-rules]]
linters = ["misspell"]
text = "Unknwon` is a misspelling of `Unknown"
[[issues.exclude-rules]]
linters = ["errorlint"]
text = "non-wrapping format verb for fmt.Errorf"
# TODO: Enable
[[issues.exclude-rules]]
linters = ["stylecheck"]
text = "ST1000"
# TODO: Enable
[[issues.exclude-rules]]
linters = ["stylecheck"]
text = "ST1020"
# TODO: Enable
[[issues.exclude-rules]]
linters = ["stylecheck"]
text = "ST1021"

View File

@@ -125,7 +125,7 @@ path = grafana.db
# For "sqlite3" only. cache mode setting used for connecting to the database
cache_mode = private
# For "mysql" only if lockingMigration feature toggle is set. How many seconds to wait before failing to lock the database for the migrations, default is 0.
# For "mysql" only if migrationLocking feature toggle is set. How many seconds to wait before failing to lock the database for the migrations, default is 0.
locking_attempt_timeout_sec = 0
#################################### Cache server #############################
@@ -139,6 +139,12 @@ type = database
# memcache: 127.0.0.1:11211
connstr =
# prefix prepended to all the keys in the remote cache
prefix =
# This enables encryption of values stored in the remote cache
encryption =
#################################### Data proxy ###########################
[dataproxy]
@@ -212,6 +218,9 @@ check_for_plugin_updates = true
# Google Analytics universal tracking code, only enabled if you specify an id here
google_analytics_ua_id =
# Google Analytics 4 tracking code, only enabled if you specify an id here
google_analytics_4_id =
# Google Tag Manager ID, only enabled if you specify an id here
google_tag_manager_id =
@@ -247,6 +256,9 @@ admin_user = admin
# default admin password, can be changed before first start of grafana, or in profile settings
admin_password = admin
# default admin email, created on startup
admin_email = admin@localhost
# used for signing
secret_key = SW2YcwTIb9zpOOhoPsMm
@@ -440,6 +452,9 @@ sigv4_auth_enabled = false
# Set to true to enable verbose logging of SigV4 request signing
sigv4_verbose_logging = false
# Set to true to enable Azure authentication option for HTTP-based datasources
azure_auth_enabled = false
#################################### Anonymous Auth ######################
[auth.anonymous]
# enable anonymous access
@@ -467,6 +482,9 @@ api_url = https://api.github.com/user
allowed_domains =
team_ids =
allowed_organizations =
role_attribute_path =
role_attribute_strict = false
allow_assign_grafana_admin = false
#################################### GitLab Auth #########################
[auth.gitlab]
@@ -482,6 +500,7 @@ allowed_domains =
allowed_groups =
role_attribute_path =
role_attribute_strict = false
allow_assign_grafana_admin = false
#################################### Google Auth #########################
[auth.google]
@@ -527,6 +546,8 @@ token_url = https://login.microsoftonline.com/<tenant-id>/oauth2/v2.0/token
allowed_domains =
allowed_groups =
role_attribute_strict = false
allow_assign_grafana_admin = false
force_use_graph_api = false
#################################### Okta OAuth #######################
[auth.okta]
@@ -544,6 +565,7 @@ allowed_domains =
allowed_groups =
role_attribute_path =
role_attribute_strict = false
allow_assign_grafana_admin = false
#################################### Generic OAuth #######################
[auth.generic_oauth]
@@ -576,7 +598,8 @@ tls_client_cert =
tls_client_key =
tls_client_ca =
use_pkce = false
auth_style =
auth_style =
allow_assign_grafana_admin = false
#################################### Basic Auth ##########################
[auth.basic]
@@ -597,6 +620,7 @@ enable_login_token = false
#################################### Auth JWT ##########################
[auth.jwt]
enabled = false
enable_login_token = false
header_name =
email_claim =
username_claim =
@@ -605,13 +629,18 @@ jwk_set_file =
cache_ttl = 60m
expected_claims = {}
key_file =
role_attribute_path =
role_attribute_strict = false
auto_sign_up = false
url_login = false
allow_assign_grafana_admin = false
#################################### Auth LDAP ###########################
[auth.ldap]
enabled = false
config_file = /etc/grafana/ldap.toml
allow_sign_up = true
skip_org_role_sync = false
# LDAP background sync (Enterprise only)
# At 1 am every day
@@ -649,8 +678,7 @@ managed_identity_client_id =
#################################### Role-based Access Control ###########
[rbac]
enabled = true
# If enabled, cache permissions in a in memory cache (Enterprise only)
# If enabled, cache permissions in a in memory cache
permission_cache = true
#################################### SMTP / Emailing #####################
@@ -762,7 +790,7 @@ instrumentations_console_enabled = false
instrumentations_webvitals_enabled = false
# Api Key, only applies to Grafana Javascript Agent provider
api_key =
api_key =
#################################### Usage Quotas ########################
[quota]
@@ -805,6 +833,9 @@ global_session = -1
# global limit of alerts
global_alert_rule = -1
# global limit of files uploaded to the SQL DB
global_file = 1000
#################################### 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.
@@ -861,8 +892,8 @@ max_attempts = 3
min_interval = 10s
[unified_alerting.screenshots]
# Enable screenshots in notifications. This option requires a remote HTTP image rendering service. Please
# see [rendering] for further configuration options.
# Enable screenshots in notifications. This option requires the Grafana Image Renderer plugin.
# For more information on configuration options, refer to [rendering].
capture = false
# The maximum number of screenshots that can be taken at the same time. This option is different from
@@ -876,6 +907,11 @@ max_concurrent_screenshots = 5
# screenshots will be persisted to disk for up to temp_data_lifetime.
upload_external_image_storage = false
[unified_alerting.reserved_labels]
# Comma-separated list of reserved labels added by the Grafana Alerting engine that should be disabled.
# For example: `disabled_labels=grafana_folder`
disabled_labels =
#################################### Alerting ############################
[alerting]
# 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.
@@ -918,6 +954,10 @@ max_annotations_to_keep =
# Configures the batch size for the annotation clean-up job. This setting is used for dashboard, API, and alert annotations.
cleanupjob_batchsize = 100
# Enforces the maximum allowed length of the tags for any newly introduced annotations. It can be between 500 and 4096 inclusive (which is the respective's column length). Default value is 500.
# Setting it to a higher value would impact performance therefore is not recommended.
tags_length = 500
[annotations.dashboard]
# Dashboard annotations means that annotations are associated with the dashboard they are created on.
@@ -1015,6 +1055,11 @@ zipkin_propagation = false
# Not disabling is the most common setting when using Zipkin elsewhere in your infrastructure.
disable_shared_zipkin_spans = false
[tracing.opentelemetry]
# attributes that will always be included in when creating new spans. ex (key1:value1,key2:value2)
custom_attributes =
[tracing.opentelemetry.jaeger]
# jaeger destination (ex http://localhost:14268/api/traces)
address =
@@ -1071,6 +1116,8 @@ container_name =
server_url =
# If the remote HTTP image renderer service runs on a different server than the Grafana server you may have to configure this to a URL where Grafana is reachable, e.g. http://grafana.domain/.
callback_url =
# An auth token that will be sent to and verified by the renderer. The renderer will deny any request without an auth token matching the one configured on the renderer side.
renderer_token = -
# Concurrent render request limit affects when the /render HTTP endpoint is used. Rendering many images at the same time can overload the server,
# which this setting can help protect against by only allowing a certain amount of concurrent requests.
concurrent_render_request_limit = 30
@@ -1197,7 +1244,7 @@ lokiQueryBuilder = true
# Experimental Explore to Dashboard workflow
explore2Dashboard = true
# Experimental Command Palette
# Command Palette
commandPalette = true
# Use dynamic labels in CloudWatch datasource
@@ -1255,3 +1302,26 @@ max_crawl_duration =
# Minimum interval between two subsequent scheduler runs. Default is 12h.
# This setting should be expressed as a duration. Examples: 10s (seconds), 1m (minutes).
scheduler_interval =
#################################### Storage ################################################
[storage]
# Allow uploading SVG files without sanitization.
allow_unsanitized_svg_upload = false
#################################### Search ################################################
[search]
# Defines the number of dashboards loaded at once in a batch during a full reindex.
# This is a temporary settings that might be removed in the future.
dashboard_loading_batch_size = 200
# Defines the frequency of a full search reindex.
# This is a temporary settings that might be removed in the future.
full_reindex_interval = 5m
# Defines the frequency of partial index updates based on recent changes such as dashboard updates.
# This is a temporary settings that might be removed in the future.
index_update_interval = 10s

View File

@@ -25,6 +25,9 @@ bind_dn = "cn=admin,dc=grafana,dc=org"
# If the password contains # or ; you have to wrap it with triple quotes. Ex """#password;"""
bind_password = 'grafana'
# Timeout in seconds (applies to each host specified in the 'host' entry (space separated))
timeout = 10
# User search filter, for example "(cn=%s)" or "(sAMAccountName=%s)" or "(uid=%s)"
search_filter = "(cn=%s)"

View File

@@ -19,9 +19,9 @@
# # <string, required> action allowed.
# - action: 'users:read'
# #<string> scope it applies to.
# scope: 'users:*'
# scope: 'global.users:*'
# - action: 'users:write'
# scope: 'users:*'
# scope: 'global.users:*'
# - action: 'users:create'
# - name: 'custom:global:users:reader'
# # <bool> overwrite org id and creates a global role.
@@ -42,9 +42,9 @@
# # <list> list of the permissions to add/remove on top of the copied ones.
# permissions:
# - action: 'users:read'
# scope: 'users:*'
# scope: 'global.users:*'
# - action: 'users:write'
# scope: 'users:*'
# scope: 'global.users:*'
# # <string> state of the permission. Defaults to 'present'. If 'absent', the permission will be removed.
# state: absent

View File

@@ -0,0 +1,187 @@
# # config file version
apiVersion: 1
# # List of rule groups to import or update
# groups:
# # <int> organization ID, default = 1
# - orgId: 1
# # <string, required> name of the rule group
# name: my_rule_group
# # <string, required> name of the folder the rule group will be stored in
# folder: my_first_folder
# # <duration, required> interval of the rule group evaluation
# interval: 60s
# # <list, required> list of rules that are part of the rule group
# rules:
# # <string, required> unique identifier for the rule
# - uid: my_id_1
# # <string, required> title of the rule, will be displayed in the UI
# title: my_first_rule
# # <string, required> query used for the condition
# condition: A
# # <list, required> list of query objects that should be executed on each
# # evaluation - should be obtained via the API
# data:
# - refId: A
# datasourceUid: "-100"
# model:
# conditions:
# - evaluator:
# params:
# - 3
# type: gt
# operator:
# type: and
# query:
# params:
# - A
# reducer:
# type: last
# type: query
# datasource:
# type: __expr__
# uid: "-100"
# expression: 1==0
# intervalMs: 1000
# maxDataPoints: 43200
# refId: A
# type: math
# # <string> UID of a dashboard that the alert rule should be linked to
# dashboardUid: my_dashboard
# # <int> ID of the panel that the alert rule should be linked to
# panelId: 123
# # <string> state of the alert rule when no data is returned
# # possible values: "NoData", "Alerting", "OK", default = NoData
# noDataState: Alerting
# # <string> state of the alert rule when the query execution
# # fails - possible values: "Error", "Alerting", "OK"
# # default = Alerting
# executionErrorState: Alerting
# # <duration, required> how long the alert condition should be breached before Firing. Before this time has elapsed, the alert is considered to be Pending
# for: 60s
# # <map<string, string>> map of strings to attach arbitrary custom data
# annotations:
# some_key: some_value
# # <map<string, string> map of strings to filter and
# # route alerts
# labels:
# team: sre_team_1
# # List of alert rule UIDs that should be deleted
# deleteRules:
# # <int> organization ID, default = 1
# - orgId: 1
# # <string, required> unique identifier for the rule
# uid: my_id_1
# # List of contact points to import or update
# contactPoints:
# # <int> organization ID, default = 1
# - orgId: 1
# # <string, required> name of the contact point
# name: cp_1
# receivers:
# # <string, required> unique identifier for the receiver
# - uid: first_uid
# # <string, required> type of the receiver
# type: prometheus-alertmanager
# # <object, required> settings for the specific receiver type
# settings:
# url: http://test:9000
# # List of receivers that should be deleted
# deleteContactPoints:
# - orgId: 1
# uid: first_uid
# # List of notification policies to import or update
# policies:
# # <int> organization ID, default = 1
# - orgId: 1
# # <string> name of the receiver that should be used for this route
# receiver: grafana-default-email
# # <list<string>> The labels by which incoming alerts are grouped together. For example,
# # multiple alerts coming in for cluster=A and alertname=LatencyHigh would
# # be batched into a single group.
# #
# # To aggregate by all possible labels, use the special value '...' as
# # the sole label name, for example:
# # group_by: ['...']
# # This effectively disables aggregation entirely, passing through all
# # alerts as-is. This is unlikely to be what you want, unless you have
# # a very low alert volume or your upstream notification system performs
# # its own grouping.
# group_by:
# - grafana_folder
# - alertname
# # <list> a list of matchers that an alert has to fulfill to match the node
# matchers:
# - alertname = Watchdog
# - severity =~ "warning|critical"
# # <list> Times when the route should be muted. These must match the name of a
# # mute time interval.
# # Additionally, the root node cannot have any mute times.
# # When a route is muted it will not send any notifications, but
# # otherwise acts normally (including ending the route-matching process
# # if the `continue` option is not set)
# mute_time_intervals:
# - abc
# # <duration> How long to initially wait to send a notification for a group
# # of alerts. Allows to collect more initial alerts for the same group.
# # (Usually ~0s to few minutes), default = 30s
# group_wait: 30s
# # <duration> How long to wait before sending a notification about new alerts that
# # are added to a group of alerts for which an initial notification has
# # already been sent. (Usually ~5m or more), default = 5m
# group_internval: 5m
# # <duration> How long to wait before sending a notification again if it has already
# # been sent successfully for an alert. (Usually ~3h or more), default = 4h
# repeat_interval: 4h
# # <list> Zero or more child routes
# routes:
# ...
# # List of orgIds that should be reset to the default policy
# resetPolicies:
# - 1
# # List of templates to import or update
# templates:
# # <int> organization ID, default = 1
# - orgID: 1
# # <string, required> name of the template, must be unique
# name: my_first_template
# # <string, required> content of the the template
# template: Alerting with a custome text template
# # List of templates that should be deleted
# deleteTemplates:
# # <int> organization ID, default = 1
# - orgId: 1
# # <string, required> name of the template, must be unique
# name: my_first_template
# # List of mute time intervals to import or update
# muteTimes:
# # <int> organization ID, default = 1
# - orgId: 1
# # <string, required> name of the mute time interval, must be unique
# name: mti_1
# # <list> time intervals that should trigger the muting
# refer to https://prometheus.io/docs/alerting/latest/configuration/#time_interval-0
# time_intervals:
# - times:
# - start_time: '06:00'
# end_time: '23:59'
# weekdays: ['monday:wednesday','saturday', 'sunday']
# months: ['1:3', 'may:august', 'december']
# years: ['2020:2022', '2030']
# days_of_month: ['1:5', '-3:-1']
# # List of mute time intervals that should be deleted
# deleteMuteTimes:
# # <int> organization ID, default = 1
# - orgId: 1
# # <string, required> name of the mute time interval, must be unique
# name: mti_1

View File

@@ -126,7 +126,7 @@
# For "sqlite3" only. cache mode setting used for connecting to the database. (private, shared)
;cache_mode = private
# For "mysql" only if lockingMigration feature toggle is set. How many seconds to wait before failing to lock the database for the migrations, default is 0.
# For "mysql" only if migrationLocking feature toggle is set. How many seconds to wait before failing to lock the database for the migrations, default is 0.
;locking_attempt_timeout_sec = 0
################################### Data sources #########################
@@ -145,6 +145,12 @@
# memcache: 127.0.0.1:11211
;connstr =
# prefix prepended to all the keys in the remote cache
; prefix =
# This enables encryption of values stored in the remote cache
;encryption =
#################################### Data proxy ###########################
[dataproxy]
@@ -218,6 +224,9 @@
# Google Analytics universal tracking code, only enabled if you specify an id here
;google_analytics_ua_id =
# Google Analytics 4 tracking code, only enabled if you specify an id here
;google_analytics_4_id =
# Google Tag Manager ID, only enabled if you specify an id here
;google_tag_manager_id =
@@ -247,6 +256,9 @@
# default admin password, can be changed before first start of grafana, or in profile settings
;admin_password = admin
# default admin email, created on startup
;admin_email = admin@localhost
# used for signing
;secret_key = SW2YcwTIb9zpOOhoPsMm
@@ -440,6 +452,9 @@
# Set to true to enable verbose logging of SigV4 request signing
;sigv4_verbose_logging = false
# Set to true to enable Azure authentication option for HTTP-based datasources.
;azure_auth_enabled = false
#################################### Anonymous Auth ######################
[auth.anonymous]
# enable anonymous access
@@ -467,6 +482,9 @@
;allowed_domains =
;team_ids =
;allowed_organizations =
;role_attribute_path =
;role_attribute_strict = false
;allow_assign_grafana_admin = false
#################################### GitLab Auth #########################
[auth.gitlab]
@@ -480,6 +498,9 @@
;api_url = https://gitlab.com/api/v4
;allowed_domains =
;allowed_groups =
;role_attribute_path =
;role_attribute_strict = false
;allow_assign_grafana_admin = false
#################################### Google Auth ##########################
[auth.google]
@@ -516,6 +537,7 @@
;allowed_domains =
;allowed_groups =
;role_attribute_strict = false
;allow_assign_grafana_admin = false
#################################### Okta OAuth #######################
[auth.okta]
@@ -532,6 +554,7 @@
;allowed_groups =
;role_attribute_path =
;role_attribute_strict = false
;allow_assign_grafana_admin = false
#################################### Generic OAuth ##########################
[auth.generic_oauth]
@@ -564,6 +587,7 @@
;tls_client_ca =
;use_pkce = false
;auth_style =
;allow_assign_grafana_admin = false
#################################### Basic Auth ##########################
[auth.basic]
@@ -594,13 +618,19 @@
;cache_ttl = 60m
;expected_claims = {"aud": ["foo", "bar"]}
;key_file = /path/to/key/file
;role_attribute_path =
;role_attribute_strict = false
;auto_sign_up = false
;url_login = false
;allow_assign_grafana_admin = false
#################################### Auth LDAP ##########################
[auth.ldap]
;enabled = false
;config_file = /etc/grafana/ldap.toml
;allow_sign_up = true
# prevent synchronizing ldap users organization roles
;skip_org_role_sync = false
# LDAP background sync (Enterprise only)
# At 1 am every day
@@ -635,8 +665,6 @@
#################################### Role-based Access Control ###########
[rbac]
;enabled = true
# If enabled, cache permissions in a in memory cache (Enterprise only)
;permission_cache = true
#################################### SMTP / Emailing ##########################
[smtp]
@@ -847,6 +875,11 @@
# 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
[unified_alerting.reserved_labels]
# Comma-separated list of reserved labels added by the Grafana Alerting engine that should be disabled.
# For example: `disabled_labels=grafana_folder`
;disabled_labels =
#################################### Alerting ############################
[alerting]
# Disable legacy alerting engine & UI features
@@ -889,6 +922,10 @@
# Configures the batch size for the annotation clean-up job. This setting is used for dashboard, API, and alert annotations.
;cleanupjob_batchsize = 100
# Enforces the maximum allowed length of the tags for any newly introduced annotations. It can be between 500 and 4096 inclusive (which is the respective's column length). Default value is 500.
# Setting it to a higher value would impact performance therefore is not recommended.
;tags_length = 500
[annotations.dashboard]
# Dashboard annotations means that annotations are associated with the dashboard they are created on.
@@ -986,6 +1023,10 @@
# Not disabling is the most common setting when using Zipkin elsewhere in your infrastructure.
;disable_shared_zipkin_spans = false
[tracing.opentelemetry]
# attributes that will always be included in when creating new spans. ex (key1:value1,key2:value2)
;custom_attributes = key1:value1,key2:value2
[tracing.opentelemetry.jaeger]
# jaeger destination (ex http://localhost:14268/api/traces)
; address = http://localhost:14268/api/traces
@@ -1039,6 +1080,8 @@
;server_url =
# If the remote HTTP image renderer service runs on a different server than the Grafana server you may have to configure this to a URL where Grafana is reachable, e.g. http://grafana.domain/.
;callback_url =
# An auth token that will be sent to and verified by the renderer. The renderer will deny any request without an auth token matching the one configured on the renderer side.
;renderer_token = -
# Concurrent render request limit affects when the /render HTTP endpoint is used. Rendering many images at the same time can overload the server,
# which this setting can help protect against by only allowing a certain amount of concurrent requests.
;concurrent_render_request_limit = 30

View File

@@ -1,6 +1,6 @@
# Data requests
[BackendSrv](https://grafana.com/docs/grafana/latest/packages_api/runtime/backendsrv) handles all outgoing HTTP requests from Grafana. This document explains the high-level concepts used by `BackendSrv`.
[BackendSrv](https://github.com/grafana/grafana/blob/main/packages/grafana-runtime/src/services/backendSrv.ts) handles all outgoing HTTP requests from Grafana. This document explains the high-level concepts used by `BackendSrv`.
## Canceling requests
@@ -14,7 +14,7 @@ Grafana uses a concept called _request cancellation_ to cancel any ongoing reque
#### 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).
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/packages/grafana-runtime/src/services/backendSrv.ts#L47) when you use [BackendSrv](https://github.com/grafana/grafana/blob/main/packages/grafana-runtime/src/services/backendSrv.ts).
The cancellation logic is as follows:
@@ -23,7 +23,7 @@ The cancellation logic is as follows:
#### 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).
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://github.com/grafana/grafana/blob/main/packages/grafana-runtime/src/services/backendSrv.ts).
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)

View File

@@ -55,16 +55,9 @@ 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:
### Accessibility-specific guidelines
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.
Pull requests that introduce accessibility(a11y) errors - please refer to the [accessibility guidelines](/contribute/style-guides/accessibility.md).
### Betterer

View File

@@ -0,0 +1,276 @@
# Instrumenting Grafana
Guidance, conventions and best practices for instrumenting Grafana using logs, metrics and traces.
## Logs
Logs are files that record events, warnings and errors as they occur within a software environment. Most logs include contextual information, such as the time an event occurred and which user or endpoint was associated with it.
### Usage
Use the _pkg/infra/log_ package to create a named structured logger. Example:
```go
import (
"fmt"
"github.com/grafana/grafana/pkg/infra/log"
)
logger := log.New("my-logger")
logger.Debug("Debug msg")
logger.Info("Info msg")
logger.Warning("Warning msg")
logger.Error("Error msg", "error", fmt.Errorf("BOOM"))
```
### Naming conventions
Name the logger using lowercase characters, e.g. `log.New("my-logger")` using snake_case or kebab-case styling.
Prefix the logger name with an area name when using different loggers across a feature or related packages, e.g. `log.New("plugin.loader")` and `log.New("plugin.client")`.
Start the log message with a capital letter, e.g. `logger.Info("Hello world")` instead of `logger.Info("hello world")`. The log message should be an identifier for the log entry, avoid parameterization in favor of key-value pairs for additional data.
Prefer using camelCase style when naming log keys, e.g. _remoteAddr_, to be consistent with Go identifiers.
Use the key _error_ when logging Go errors, e.g. `logger.Error("Something failed", "error", fmt.Errorf("BOOM"))`.
### Validate and sanitize input coming from user input
If log messages or key/value pairs originates from user input they **should** be validated and sanitized.
Be **careful** to not expose any sensitive information in log messages e.g. secrets, credentials etc. It's especially easy to do by mistake when including a struct as value.
### Log levels
When to use which log level?
- **Debug:** Informational messages of high frequency and/or less-important messages during normal operations.
- **Info:** Informational messages of low frequency and/or important messages.
- **Warning:** Should in normal cases not be used/needed. If used should be actionable.
- **Error:** Error messages indicating some operation failed (with an error) and the program didn't have a way of handle the error.
### Contextual logging
Use a contextual logger to include additional key/value pairs attached to `context.Context`, e.g. `traceID`, to allow correlating logs with traces and/or correlate logs with a common identifier.
Example:
```go
import (
"context"
"fmt"
"github.com/grafana/grafana/pkg/infra/log"
)
var logger = log.New("my-logger")
func doSomething(ctx context.Context) {
ctxLogger := logger.FromContext(ctx)
ctxLogger.Debug("Debug msg")
ctxLogger.Info("Info msg")
ctxLogger.Warning("Warning msg")
ctxLogger.Error("Error msg", "error", fmt.Errorf("BOOM"))
}
```
### Enable certain log levels for certain loggers
During development it's convenient to enable certain log level, e.g. debug, for certain loggers to minimize the generated log output and make it easier to find things. See [[log.filters]](https://grafana.com/docs/grafana/latest/setup-grafana/configure-grafana/#filters) for information how to configure this.
It's also possible to configure multiple loggers:
```ini
[log]
filters = rendering:debug \
; alerting.notifier:debug \
oauth.generic_oauth:debug \
; oauth.okta:debug \
; tsdb.postgres:debug \
; tsdb.mssql:debug \
; provisioning.plugins:debug \
; provisioning:debug \
; provisioning.dashboard:debug \
; provisioning.datasources:debug \
datasources:debug \
data-proxy-log:debug
```
## Metrics
Metrics are quantifiable measurements that reflect the health and performance of applications or infrastructure.
Consider using metrics to provide real-time insight into the state of resources. If you want to know how responsive your application is or identify anomalies that could be early signs of a performance issue, metrics are a key source of visibility.
### Metric types
See [Prometheus metric types](https://prometheus.io/docs/concepts/metric_types/) for a list and description of the different metric types you can use and when to use them.
There are many possible types of metrics that can be tracked. One popular method for defining metrics is the [RED method](https://grafana.com/blog/2018/08/02/the-red-method-how-to-instrument-your-services/).
### Naming conventions
Use the namespace _grafana_ as that would prefix any defined metric names with `grafana_`. This will make it clear for operators that any metric named `grafana_*` belongs to Grafana.
Use snake*case style when naming metrics, e.g. \_http_request_duration_seconds* instead of _httpRequestDurationSeconds_.
Use snake*case style when naming labels, e.g. \_status_code* instead of _statusCode_.
If metric type is a _counter_, name it with a `_total` suffix, e.g. _http_requests_total_.
If metric type is a _histogram_ and you're measuring duration, name it with a `_<unit>` suffix, e.g. _http_request_duration_seconds_.
If metric type is a _gauge_, name it to denote it's a value that can increase and decrease , e.g. _http_request_in_flight_.
### Label values and high cardinality
Be careful with what label values you add/accept. Using/allowing too many label values could result in [high cardinality problems](https://grafana.com/blog/2022/02/15/what-are-cardinality-spikes-and-why-do-they-matter/).
If label values originates from user input they **should** be validated. Use `metricutil.SanitizeLabelName(<label value>`) from _pkg/infra/metrics/metricutil_ package to sanitize label names. Very **important** to only allow a pre-defined set of labels to minimize the risk of high cardinality problems.
Be **careful** to not expose any sensitive information in label values, e.g. secrets, credentials etc.
### Guarantee the existence of metrics
If you want to guarantee the existence of metrics before any observations has happened there's a couple of helper methods available in the _pkg/infra/metrics/metricutil_ package.
### How to collect and visualize metrics locally
1. Start Prometheus
```bash
make devenv sources=prometheus
```
2. Use Grafana Explore or dashboards to query any exported Grafana metrics
## Traces
A distributed trace is data that tracks an application request as it flows through the various parts of an application. The trace records how long it takes each application component to process the request and pass the result to the next component. Traces can also identify which parts of the application trigger an error.
### Usage
Grafana currently supports two tracing implementations, [OpenTelemetry](https://opentelemetry.io/) and [OpenTracing](https://opentracing.io/). OpenTracing is deprecated, but still supported until we remove it. The two different implementations implements the `Tracer` and `Span` interfaces, defined in the _pkg/infra/tracing_ package, which you can use to create traces and spans. To get a hold of a `Tracer` you would need to get it injected as dependency into your service, see [Services](../../architecture/backend/services.md) for more details.
Example:
```go
import (
"fmt"
"github.com/grafana/grafana/pkg/infra/tracing"
"go.opentelemetry.io/otel/attribute"
)
type MyService struct {
tracer tracing.Tracer
}
func ProvideService(tracer tracing.Tracer) *MyService {
return &MyService{
tracer: tracer,
}
}
func (s *MyService) Hello(ctx context.Context, name string) (string, error) {
ctx, span := s.tracer.Start(ctx, "MyService.Hello")
// this make sure the span is marked as finished when this
// method ends to allow the span to be flushed and sent to
// storage backend.
defer span.End()
// Add some event to show Events usage
span.AddEvents(
[]string{"message"},
[]tracing.EventValue{
{Str: "checking name..."},
})
if name == "" {
err := fmt.Errorf("name cannot be empty")
// record err as an exception span event for this span
span.RecordError(err)
return "", err
}
// Add some other event to show Events usage
span.AddEvents(
[]string{"message"},
[]tracing.EventValue{
{Str: "name checked"},
})
// Add attribute to show Attributes usage
span.SetAttributes("my_service.name", name, attribute.Key("my_service.name").String(name))
return fmt.Sprintf("Hello %s", name), nil
}
```
### Naming conventions
Span names should follow the [guidelines from OpenTelemetry](https://opentelemetry.io/docs/reference/specification/trace/api/#span).
| Span Name | Guidance |
| ----------------------- | -------------------------------------------------------- |
| get | Too general |
| get_account/42 | Too specific |
| get_account | Good, and account_id=42 would make a nice Span attribute |
| get_account/{accountId} | Also good (using the “HTTP route”) |
Span attribute and span event attributes should follow the [Attribute naming specification from OpenTelemetry](https://opentelemetry.io/docs/reference/specification/common/attribute-naming/). Good attribute key examples:
- service.version
- http.status_code
See [Trace semantic conventions from OpenTelemetry](https://opentelemetry.io/docs/reference/specification/trace/semantic_conventions/) for additional conventions regarding well-known protocols and operations.
### Span names and high cardinality
Be careful with what span names you add/accept. Using/allowing too many span names could result in high cardinality problems.
### Validate and sanitize input coming from user input
If span names, attribute or event values originates from user input they **should** be validated and sanitized. It's very **important** to only allow a pre-defined set of span names to minimize the risk of high cardinality problems.
Be **careful** to not expose any sensitive information in span names, attribute or event values, e.g. secrets, credentials etc.
### How to collect, visualize and query traces (and correlate logs with traces) locally
1. Start Jaeger
```bash
make devenv sources=jaeger
```
2. Enable tracing in Grafana
opentelemetry tracing (recommended):
```ini
[tracing.opentelemetry.jaeger]
address = http://localhost:14268/api/traces
```
opentracing tracing (deprecated/not recommended):
```ini
[tracing.jaeger]
address = localhost:6831
```
3. Search/browse collected logs and traces in Grafana Explore
You need provisioned gdev-jaeger and gdev-loki datasources, see [developer dashboard and data sources](https://github.com/grafana/grafana/tree/main/devenv#developer-dashboards-and-data-sources) for setup instructions.
Open Grafana explore and select gdev-loki datasource and use the query `{filename="/var/log/grafana/grafana.log"} | logfmt`.
You can then inspect any log message that includes a `traceID` and from there click on `gdev-jaeger` to split view and inspect the trace in question.
4. Search/browse collected traces in Jaeger UI
You can open http://localhost:16686 to use the Jaeger UI for browsing and searching traces.

View File

@@ -0,0 +1,194 @@
# Internationalization
Grafana uses the [LinguiJS](https://github.com/lingui/js-lingui) framework for managing translating phrases in the Grafana frontend.
## tl;dr
- Use `<Trans id="search-results.panel-link">Go to {panel.title}</Trans>` in code to add a translatable phrase
- Translations are stored in .po files in `public/locales/{locale}/messages.po`
- If a particular phrase is not available in the a language then it will fall back to English
## How to add a new translation phrase
1. Use one of `@lingui/macro`'s React components with the `id`, ensuring it conforms to the guidelines below, with the default english translation. e.g.
```jsx
import { Trans } from @lingui/macro
const SearchTitle = ({term}) => (
<Trans id="search-page.results-title">
Results for {term}
</Trans>
);
```
Prefer using the JSX components (compared to the plain javascript functions, see below) where possible for phrases. Many props can (and probably should) be changed to accept the `React.ReactNode` instead of `string` for phrases put into the DOM.
Note that Lingui must be able to statically analyse the code to extract the phrase, so the `id` can not be dynamic. e.g. the following will not work:
```jsx
const ErrorMessage = ({ id, message }) => <Trans id={`errors.${id}`}>There was an error: {message}</Trans>;
```
2. Upon reload, the default English phrase will appear on the page.
3. Before submitting your PR, run the `yarn i18n:extract` command to extract the messages you added into the `messages.po` file and make them available for translation.
## How translations work in Grafana
Grafana uses the [LinguiJS](https://github.com/lingui/js-lingui) framework for managing translating phrases in the Grafana frontend. It:
- Marks up phrases within our code for extraction
- Extracts phrases into messages catalogues for translating in external systems
- "Compiles" the catalogues to a format that can be used in the website
- Manages the user's locale and putting the translated phrases in the UI
### Phrase ID naming convention
We set explicit IDs for phrases to make it easier to identify phrases out of context, and to track where they're used. IDs follow a naming scheme that includes _where_ the phrase is used. The exception is the rare case of single reoccuring words like "Cancel", but default to using a feature/phrase specific phrase.
Message IDs are made of _up to_ three segments in the format `feature.area.phrase`. For example:
- `dashboard.header.refresh-label`
- `explore.toolbar.share-tooltip`
For components used all over the site, use just two segments:
- `footer.update`
- `navigation.home`
### Top-level provider
In [AppWrapper.tsx](/public/app/AppWrapper.tsx) the app is wrapped with `I18nProvider` from `public/app/core/internationalization/index.tsx` where the Lingui instance is created with the user's preferred locale. This sets the appropriate context and allows any component from `@lingui/macro` to use the translations for the user's preferred locale.
### Message format
Lingui uses the [ICU MessageFormat](https://unicode-org.github.io/icu/userguide/format_parse/messages/) for the phrases in the .po catalogues. ICU has special syntax especially for describing plurals across multiple languages. For more details see the [Lingui docs](https://lingui.js.org/ref/message-format.html).
### Plain JS usage
See [Lingui Docs](https://lingui.js.org/ref/macro.html#t) for more details.
Sometimes you may need to translate a string cannot be represented in JSX, such as `placeholder` props. Use the `t` macro for this.
```jsx
import { t } from "@lingui/macro"
const placeholder = t({
id: 'form.username-placeholder',
message: `Username`
});
return <input type="value" placeholder={placeholder}>
```
While the `t` macro can technically be used outside of React functions (e.g, in actions/reducers), aim to keep all UI phrases within the React UI functions.
## Examples
See the [Lingui docs](https://lingui.js.org/ref/macro.html#usage) for more details.
### Basic usage
For fixed phrases:
```jsx
import { Trans } from '@lingui/macro';
<Trans id="page.greeting">Hello user!</Trans>;
```
You can include variables, just like regular JSX. Prefer using "simple" variables to make the extracted phrase easier to read for translators
```jsx
import { Trans } from '@lingui/macro';
// Bad - translators will see: Hello {0}
<Trans id="page.greeting">Hello {user.name}!</Trans>;
// Good - translators will see: Hello {userName}
const userName = user.name;
<Trans id="page.greeting">Hello {userName}!</Trans>;
```
Variables must be strings (or, must support calling `.toString()`, which we almost never want).
```jsx
import { Trans } from '@lingui/macro';
// This will not work
const userName = <strong>user.name</strong>;
<Trans id="page.greeting">Hello {userName}!</Trans>;
// Instead, put the JSX inside the phrase directly
const userName = user.name;
<Trans id="page.greeting">
Hello <strong>{userName}</strong>!
</Trans>;
```
### React components and HTML tags
Both HTML tags and React components can be included in a phase. The Lingui macro will replace them with placeholder tags for the translators
```js
import { Trans } from "@lingui/macro"
const randomVariable = "variable"
<Trans id="page.explainer">
Click <button>here</button> to <a href="https://grafana.com">learn more.</a>
</Trans>
// ↓ is transformed by macros into ↓
<Trans
id="page.explainer"
defaults="Click <0>here</0> to <1>learn more</1>"
components={[
<button />,
<Text />
]}
/>
// ↓ is in the messages.po file like ↓
msgid "page.explainer"
msgstr "Click <0>here</0> to <1>learn more</1>"
```
### Plurals
See the [Lingui docs](https://lingui.js.org/ref/macro.html#id1) for more details.
Plurals require special handling to make sure they can be translating according to the rules of each locale (which may be more complex that you think!). Use the `<Plural />` component and specify the plural forms for the default language (English). The message will be extracted into a form where translators can extend it with rules for other locales.
```js
import { Plural } from "@lingui/macro"
<Plural
id="sharing.shared-with"
value={sharedCount}
none="Not shared with anyone"
one="Shared with one person"
other="Shared with # people"
/>
// ↓ is transformed by macros into ↓
<Trans
id="example.plurals"
values={{ sharedCount }}
defaults="{sharedCount, plural, none {Not shared with anyone}, one {Shared with one person}, other {Shared with # people}"
/>
// sharedCount = 0 -> Not shared with anyone
// sharedCount = 1 -> Shared with one person
// sharedCount = 3 -> Shared with # people
```
### Date and time
[Lingui has functions](https://lingui.js.org/ref/core.html#I18n.date) to format dates and times according to the convention to the user's preferred locale, based on the browser [Intl.DateTimeFormat](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat) API. However, as displaying dates and times is fundamental to Grafana, guidelines have not been established for this yet.
## Documentation
[Grafana's documentation](https://grafana.com/docs/grafana/latest/) is not yet open for translation and should be authored in American English only.

View File

@@ -1,194 +0,0 @@
# Localisation
Grafana uses the [LinguiJS](https://github.com/lingui/js-lingui) framework for managing translating phrases in the Grafana frontend.
## tl;dr
- Use `<Trans id="search-results.panel-link">Go to {panel.title}</Trans>` in code to add a translatable phrase
- Translations are stored in .po files in `public/locales/{locale}/messages.po`
- If a particular phrase is not available in the a language then it will fall back to English
## How to add a new translation phrase
1. Use one of `@lingui/macro`'s React components with the `id`, ensuring it conforms to the guidelines below, with the default english translation. e.g.
```jsx
import { Trans } from @lingui/macro
const SearchTitle = ({term}) => (
<Trans id="search-page.results-title">
Results for {term}
</Trans>
);
```
Prefer using the JSX components (compared to the plain javascript functions, see below) where possible for phrases. Many props can (and probably should) be changed to accept the `React.ReactNode` instead of `string` for phrases put into the DOM.
Note that Lingui must be able to statically analyse the code to extract the phrase, so the `id` can not be dynamic. e.g. the following will not work:
```jsx
const ErrorMessage = ({ id, message }) => <Trans id={`errors.${id}`}>There was an error: {message}</Trans>;
```
2. Upon reload, the default English phrase will appear on the page.
3. Before submitting your PR, run the `yarn i18n:extract` command to extract the messages you added into the `messages.po` file and make them available for translation.
## How translations work in Grafana
Grafana uses the [LinguiJS](https://github.com/lingui/js-lingui) framework for managing translating phrases in the Grafana frontend. It:
- Marks up phrases within our code for extraction
- Extracts phrases into messages catalogues for translating in external systems
- "Compiles" the catalogues to a format that can be used in the website
- Manages the user's locale and putting the translated phrases in the UI
### Phrase ID naming convention
We set explicit IDs for phrases to make it easier to identify phrases out of context, and to track where they're used. IDs follow a naming scheme that includes _where_ the phrase is used. The exception is the rare case of single reoccuring words like "Cancel", but default to using a feature/phrase specific phrase.
Message IDs are made of _up to_ three segments in the format `feature.area.phrase`. For example:
- `dashboard.header.refresh-label`
- `explore.toolbar.share-tooltip`
For components used all over the site, use just two segments:
- `footer.update`
- `navigation.home`
### Top-level provider
In [AppWrapper.tsx](/public/app/AppWrapper.tsx) the app is wrapped with `I18nProvider` from `public/app/core/localisation.tsx` where the Lingui instance is created with the user's preferred locale. This sets the appropriate context and allows any component from `@lingui/macro` to use the translations for the user's preferred locale.
### Message format
Lingui uses the [ICU MessageFormat](https://unicode-org.github.io/icu/userguide/format_parse/messages/) for the phrases in the .po catalogues. ICU has special syntax especially for describing plurals across multiple languages. For more details see the [Lingui docs](https://lingui.js.org/ref/message-format.html).
### Plain JS usage
See [Lingui Docs](https://lingui.js.org/ref/macro.html#t) for more details.
Sometimes you may need to translate a string cannot be represented in JSX, such as `placeholder` props. Use the `t` macro for this.
```jsx
import { t } from "@lingui/macro"
const placeholder = t({
id: 'form.username-placeholder',
message: `Username`
});
return <input type="value" placeholder={placeholder}>
```
While the `t` macro can technically be used outside of React functions (e.g, in actions/reducers), aim to keep all UI phrases within the React UI functions.
## Examples
See the [Lingui docs](https://lingui.js.org/ref/macro.html#usage) for more details.
### Basic usage
For fixed phrases:
```jsx
import { Trans } from '@lingui/macro';
<Trans id="page.greeting">Hello user!</Trans>;
```
You can include variables, just like regular JSX. Prefer using "simple" variables to make the extracted phrase easier to read for translators
```jsx
import { Trans } from '@lingui/macro';
// Bad - translators will see: Hello {0}
<Trans id="page.greeting">Hello {user.name}!</Trans>;
// Good - translators will see: Hello {userName}
const userName = user.name;
<Trans id="page.greeting">Hello {userName}!</Trans>;
```
Variables must be strings (or, must support calling `.toString()`, which we almost never want).
```jsx
import { Trans } from '@lingui/macro';
// This will not work
const userName = <strong>user.name</strong>;
<Trans id="page.greeting">Hello {userName}!</Trans>;
// Instead, put the JSX inside the phrase directly
const userName = user.name;
<Trans id="page.greeting">
Hello <strong>{userName}</strong>!
</Trans>;
```
### React components and HTML tags
Both HTML tags and React components can be included in a phase. The Lingui macro will replace them with placeholder tags for the translators
```js
import { Trans } from "@lingui/macro"
const randomVariable = "variable"
<Trans id="page.explainer">
Click <button>here</button> to <a href="https://grafana.com">learn more.</a>
</Trans>
// ↓ is transformed by macros into ↓
<Trans
id="page.explainer"
defaults="Click <0>here</0> to <1>learn more</1>"
components={[
<button />,
<Text />
]}
/>
// ↓ is in the messages.po file like ↓
msgid "page.explainer"
msgstr "Click <0>here</0> to <1>learn more</1>"
```
### Plurals
See the [Lingui docs](https://lingui.js.org/ref/macro.html#id1) for more details.
Plurals require special handling to make sure they can be translating according to the rules of each locale (which may be more complex that you think!). Use the `<Plural />` component and specify the plural forms for the default language (English). The message will be extracted into a form where translators can extend it with rules for other locales.
```js
import { Plural } from "@lingui/macro"
<Plural
id="sharing.shared-with"
value={sharedCount}
none="Not shared with anyone"
one="Shared with one person"
other="Shared with # people"
/>
// ↓ is transformed by macros into ↓
<Trans
id="example.plurals"
values={{ sharedCount }}
defaults="{sharedCount, plural, none {Not shared with anyone}, one {Shared with one person}, other {Shared with # people}"
/>
// sharedCount = 0 -> Not shared with anyone
// sharedCount = 1 -> Shared with one person
// sharedCount = 3 -> Shared with # people
```
### Date and time
[Lingui has functions](https://lingui.js.org/ref/core.html#I18n.date) to format dates and times according to the convention to the user's preferred locale, based on the browser [Intl.DateTimeFormat](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat) API. However, as displaying dates and times is fundamental to Grafana, guidelines have not been established for this yet.
## Documentation
[Grafana's documentation](https://grafana.com/docs/grafana/latest/) is not yet open for translation and should be authored in English only.

View File

@@ -0,0 +1,77 @@
# Accessibility at Grafana
At Grafana we pay special attention to accessibility and that's why it's important that all components are written with it in
mind.
The goal of this document is to list best practices and recommendations when it comes to writing accessible components.
### grafana/ui components
Some grafana/ui components have specific mechanisms built-in that make it easier to write accessible components.
#### Form elements
One of the important accessibility considerations when working with form elements is to make sure form controls are
properly labelled. For that a `label` element has to be associated with the respective form control. One way to
do that is to provide `for` attribute to the label that matches the `id` attribute of the form control.
The form components from grafana/ui provide an easier way to achieve that. The form elements, used inside `Field`
components, will get the `label` properly associated with them given that the element has `id` (in case of `Select` the prop is `inputId`) specified.
As an example, this code
```tsx
<Field label="Name">
<Input id="name" placeholder="Enter a name" />
</Field>
```
will be rendered as (simplified)
```html
<div>
<label for="name"> Name </label>
<input name="name" type="text" id="name" placeholder="Enter a name" value="" />
</div>
```
As long as the form element has a unique `id` attribute specified, it will be automatically accessible when rendered.
### Writing tests with accessibility in mind
We use [React Testing Library](https://testing-library.com/docs/react-testing-library/intro) (RTL) for writing unit tests.
The library is built with accessibility in mind and makes it easier to ensure the written code is accessible to all users.
When querying DOM elements with RTL prefer using `*ByRole` queries as they resemble closely how the users interact
with the page - both using mouse/visual display and assistive technologies.
As a rule of thumb, if code is written with the accessibility concerns in
mind, `*ByRole` queries will be sufficient in most of the cases. There are certainly exceptions here, as not all the elements have defined [ARIA role](https://www.w3.org/TR/html-aria/#docconformance).
As an example, for this code
```tsx
<Field label="Username">
<Input id="username" placeholder="Enter a name" value={'Test'} />
</Field>
```
the test could case be as follows
```tsx
it('has username set', () => {
expect(screen.getByRole('textbox', { name: 'Username' })).toHaveValue('Test');
});
```
Input with type `text` (default type value) has a role of `textbox` and the `name` option is not the name attribute
given to the input elements but their [accessible name](https://www.tpgi.com/what-is-an-accessible-name/), which in this case is the text content of the associated with input label.
### Pull requests that introduce accessibility(a11y) errors:
We use [pa11y-ci](https://github.com/pa11y/pa11y-ci) to collect accessibility errors on [some URLs in 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 to 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.

View File

@@ -26,10 +26,10 @@ Let's start with a simple [JSX](https://reactjs.org/docs/introducing-jsx.html) e
<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):
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 `data-testid` attributes as our preferred way of defining selectors. See [Aria-Labels vs data-testid](#aria-labels-vs-data-testid) for more details.
```jsx
<input aria-label="Username input field" className="gf-form-input login-form-input" type="text" />
<input data-testid="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:
@@ -39,10 +39,12 @@ export const Login = {
// Called via `Login.visit()`
url: '/login',
// Called via `Login.username()`
username: 'Username input field',
username: 'data-testid Username input field',
};
```
Note that the selector is prefixed with `data-testid` - this is a signal to the framework to look for the selector in the `data-testid` attribute.
The next step is to add the `Login` page to the `Pages` export within [_\<repo-root>/packages/grafana-e2e-selectors/src/selectors/pages.ts_](../../packages/grafana-e2e-selectors/src/selectors/pages.ts) so that it appears when we type `e2e.pages` in our IDE.
```typescript
@@ -59,7 +61,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 data-testid={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.
@@ -100,7 +102,7 @@ Just as before in the basic example we'll start by creating a page abstraction u
```typescript
export const DataSources = {
url: '/datasources',
dataSources: (dataSourceName: string) => `Data source list item ${dataSourceName}`,
dataSources: (dataSourceName: string) => `data-testid Data source list item ${dataSourceName}`,
};
```
@@ -115,7 +117,7 @@ The next step is to use the `dataSources` selector function as in our example be
{dataSources.map(({ id, name }) => (
<li className="card-item-wrapper" key={id}>
<a className="card-item" href={`datasources/edit/${id}`}>
<div className="card-item-name" aria-label={selectors.pages.DataSources.dataSources(name)}>
<div className="card-item-name" data-testid={selectors.pages.DataSources.dataSources(name)}>
{name}
</div>
</a>
@@ -127,9 +129,9 @@ The next step is to use the `dataSources` selector function as in our example be
When this list is rendered with the data sources with names `A`, `B` and `C` ,the resulting HTML would look like:
```html
<div class="card-item-name" aria-label="Data source list item A">A</div>
<div class="card-item-name" aria-label="Data source list item B">B</div>
<div class="card-item-name" aria-label="Data source list item C">C</div>
<div class="card-item-name" data-testid="data-testid Data source list item A">A</div>
<div class="card-item-name" data-testid="data-testid Data source list item B">B</div>
<div class="card-item-name" data-testid="data-testid Data source list item C">C</div>
```
Now we can write our test. The one thing that differs from the [basic example](#basic-example) above is that we pass in which data source we want to click on as an argument to the selector function:

View File

@@ -166,17 +166,22 @@ interface ModalState {
##### Emotion class names
```typescript
const getStyles = = () => ({
const getStyles = (theme: GrafanaTheme2) => ({
// bad
ElementWrapper: css`...`,
// bad
["element-wrapper"]: css`...`,
['element-wrapper']: css`...`,
// good
elementWrapper: css`...`,
elementWrapper: css({
padding: theme.spacing(1, 2),
background: theme.colors.background.secondary,
}),
});
```
Use hook useStyles2(getStyles) to memoize the styles generation and try to avoid passing props to the the getStyles function and instead compose classes using emotion cx function.
#### Use `ALL_CAPS` for constants.
```typescript
@@ -351,7 +356,7 @@ static defaultProps: Partial<Props> = { ... }
We recommend using named regular functions when creating a new react functional component.
```typescript
export function Component(props: Props): ReactElement { ... }
export function Component(props: Props) { ... }
```
## State management

View File

@@ -4,26 +4,9 @@
## Usage
### Basic styling
For styling components, use [Emotion's `css` function](https://emotion.sh/docs/emotion#css).
```tsx
import React from 'react';
import { css } from '@emotion/css';
const ComponentA = () => (
<div
className={css`
background: red;
`}
>
As red as you can get
</div>
);
```
### Styling with theme
### Basic styling
To access the theme in your styles, use the `useStyles` hook. It provides basic memoization and access to the theme object.
@@ -31,33 +14,35 @@ To access the theme in your styles, use the `useStyles` hook. It provides basic
```tsx
import React, { FC } from 'react';
import { GrafanaTheme } from '@grafana/data';
import { useStyles } from '@grafana/ui';
import { GrafanaTheme2 } from '@grafana/data';
import { useStyles2 } from '@grafana/ui';
import { css } from '@emotion/css';
const Foo: FC<FooProps> = () => {
const styles = useStyles(getStyles);
const styles = useStyles2(getStyles);
// Use styles with classNames
return <div className={styles}>...</div>;
};
const getStyles = (theme: GrafanaTheme) => css`
padding: ${theme.spacing.md};
`;
const getStyles = (theme: GrafanaTheme2) =>
css({
padding: theme.spacing(1, 2), // will result in 8px 16px padding
});
```
### Styling complex components
In more complex cases, especially when you need to style multiple DOM elements in one component, or when using styles that depend on properties and/or state, you should create a helper function that returns an object of styles. This function should also be wrapped in the `stylesFactory` helper function, which will provide basic memoization.
In more complex cases, especially when you need to style multiple DOM elements in one component, or when using styles that depend on properties and/or state you
can have your getStyles function return an object with many class names and use [Emotion's `cx` function](https://emotion.sh/docs/emotion#cx) to compose them.
Let's say you need to style a component that has a different background depending on the `isActive` property :
```tsx
import React from 'react';
import { css } from '@emotion/css';
import { GrafanaTheme } from '@grafana/data';
import { selectThemeVariant, stylesFactory, useTheme } from '@grafana/ui';
import { css, cx } from '@emotion/css';
import { GrafanaTheme2 } from '@grafana/data';
import { useStyles2 } from '@grafana/ui';
interface ComponentAProps {
isActive: boolean;
@@ -65,10 +50,10 @@ interface ComponentAProps {
const ComponentA: React.FC<ComponentAProps> = ({ isActive }) => {
const theme = useTheme();
const styles = getStyles(theme, isActive);
const styles = useStyles2(theme);
return (
<div className={styles.wrapper}>
<div className={cx(styles.wrapper, isActive && styles.active)}>
As red as you can get
<i className={styles.icon} />
</div>
@@ -76,42 +61,20 @@ const ComponentA: React.FC<ComponentAProps> = ({ isActive }) => {
};
// Mind, that you can pass multiple arguments, theme included
const getStyles = stylesFactory((theme: GrafanaTheme, isActive: boolean) => {
const backgroundColor = isActive ? theme.colors.red : theme.colors.blue;
const getStyles = (theme: GrafanaTheme2) => {
return {
wrapper: css`
background: ${backgroundColor};
`,
icon: css`
font-size: ${theme.typography.size.sm};
`,
wrapper: css({
background: theme.colors.background.secondary;
}),
active: css({
background: theme.colors.primary.main,
text: theme.colors.primary.contrastText,
},
icon: css({
fontSize: theme.typography.bodySmall.fontSize;
})
};
});
};
```
For more information about themes at Grafana please see the [themes guide](./themes.md).
### Composing class names
For class composition, use [Emotion's `cx` function](https://emotion.sh/docs/emotion#cx).
```tsx
import React from 'react';
import { css, cx } from '@emotion/css';
interface Props {
className?: string;
}
const ComponentA: React.FC<Props> = ({ className }) => {
const finalClassName = cx(
className,
css`
background: red;
`
);
return <div className={finalClassName}>As red as you can ge</div>;
};
```

10
crowdin.yml Normal file
View File

@@ -0,0 +1,10 @@
files:
- source: /public/locales/en-US/messages.po
translation: /public/locales/%locale%/%original_file_name%
export_only_approved: true
pull_request_title: 'I18n: Crowdin sync'
pull_request_labels:
- area/internationalization
- no-changelog
- no-backport

View File

@@ -35,7 +35,7 @@ make devenv sources=influxdb,prometheus,elastic5
Some of the blocks support dynamic change of the image version used in the Docker file. The signature looks like this:
```bash
make devenv sources=postgres,openldap,grafana postgres_version=9.2 grafana_version=6.7.0-beta1
make devenv sources=postgres,auth/openldap,grafana postgres_version=9.2 grafana_version=6.7.0-beta1
```

View File

@@ -1,4 +0,0 @@
#!/bin/bash
ab -n 20000 -c 100 -H "Authorization: Bearer vEustw23NSOZ27y3zlj28ZL3B7BpBk5kqR85DOfT5AwiS3nCi33dnsk6nhvXhZdn" \
http://localhost:3000/api/dashboards/db/dash1

View File

@@ -54,6 +54,8 @@ datasources:
jsonData:
manageAlerts: true
alertmanagerUid: gdev-alertmanager
prometheusType: Prometheus #Cortex | Mimir | Prometheus | Thanos
prometheusVersion: 2.40.0
- name: gdev-slow-prometheus
type: prometheus
@@ -247,6 +249,13 @@ datasources:
access: proxy
url: http://localhost:3100
editable: false
correlations:
- targetUID: gdev-jaeger
label: "Jaeger traces"
description: "Related traces stored in Jaeger"
- targetUID: gdev-zipkin
label: "Zipkin traces"
description: "Related traces stored in Zipkin"
jsonData:
manageAlerts: false
derivedFields:
@@ -277,5 +286,5 @@ datasources:
type: tempo
uid: gdev-tempo
access: proxy
url: http://localhost:3101
url: http://localhost:3200
editable: false

View File

@@ -61,96 +61,6 @@ datasources:
tsdbResolution: 1
tsdbVersion: 1
- name: gdev-elasticsearch-v2-metrics
type: elasticsearch
access: proxy
database: "[metrics-]YYYY.MM.DD"
url: http://elasticsearch:9200
jsonData:
interval: Daily
timeField: "@timestamp"
esVersion: 2
- name: gdev-elasticsearch-v2-logs
type: elasticsearch
access: proxy
database: "[logs-]YYYY.MM.DD"
url: http://elasticsearch:9200
jsonData:
interval: Daily
timeField: "@timestamp"
esVersion: 2
- name: gdev-elasticsearch-v5-metrics
type: elasticsearch
access: proxy
database: "[metrics-]YYYY.MM.DD"
url: http://elasticsearch5:9200
jsonData:
interval: Daily
timeField: "@timestamp"
esVersion: 5
- name: gdev-elasticsearch-v5-logs
type: elasticsearch
access: proxy
database: "[logs-]YYYY.MM.DD"
url: http://elasticsearch5:9200
jsonData:
interval: Daily
timeField: "@timestamp"
esVersion: 5
- name: gdev-elasticsearch-v56-metrics
type: elasticsearch
access: proxy
database: "[metrics-]YYYY.MM.DD"
url: http://elasticsearch5:9200
jsonData:
interval: Daily
timeField: "@timestamp"
esVersion: 56
- name: gdev-elasticsearch-v56-logs
type: elasticsearch
access: proxy
database: "[logs-]YYYY.MM.DD"
url: http://elasticsearch5:9200
jsonData:
interval: Daily
timeField: "@timestamp"
esVersion: 56
- name: gdev-elasticsearch-v6-metrics
type: elasticsearch
access: proxy
database: "[metrics-]YYYY.MM.DD"
url: http://elasticsearch6:9200
jsonData:
interval: Daily
timeField: "@timestamp"
esVersion: 60
- name: gdev-elasticsearch-v6-logs
type: elasticsearch
access: proxy
database: "[logs-]YYYY.MM.DD"
url: http://elasticsearch6:9200
jsonData:
interval: Daily
timeField: "@timestamp"
esVersion: 60
- name: gdev-elasticsearch-v6-filebeat
type: elasticsearch
access: proxy
database: "[filebeat-]YYYY.MM.DD"
url: http://elasticsearch6:9200
jsonData:
interval: Daily
timeField: "@timestamp"
esVersion: 60
- name: gdev-elasticsearch-v7-metrics
type: elasticsearch
access: proxy

View File

@@ -25,7 +25,6 @@
"fiscalYearStartMonth": 0,
"graphTooltip": 0,
"id": 95,
"iteration": 1652465568602,
"links": [],
"liveNow": false,
"panels": [

View File

@@ -25,7 +25,6 @@
"fiscalYearStartMonth": 0,
"graphTooltip": 0,
"id": 85,
"iteration": 1652465607869,
"links": [],
"liveNow": false,
"panels": [

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,360 @@
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": {
"type": "grafana",
"uid": "-- 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,
"fiscalYearStartMonth": 0,
"graphTooltip": 0,
"links": [],
"liveNow": false,
"panels": [
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 17,
"w": 9,
"x": 0,
"y": 0
},
"id": 2,
"options": {
"basemap": {
"config": {
"server": "ocean"
},
"name": "Layer 0",
"type": "esri-xyz"
},
"controls": {
"mouseWheelZoom": true,
"showAttribution": true,
"showDebug": false,
"showMeasure": false,
"showScale": false,
"showZoom": true
},
"layers": [
{
"config": {
"server": "usa-topo"
},
"name": "Topographic map",
"opacity": 0.8,
"tooltip": true,
"type": "esri-xyz"
}
],
"tooltip": {
"mode": "details"
},
"view": {
"id": "coords",
"lat": 26.076593,
"lon": 113.075128,
"zoom": 3.76
}
},
"pluginVersion": "9.2.0-pre",
"targets": [
{
"csvFileName": "flight_info_by_state.csv",
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"refId": "A",
"scenarioId": "csv_file"
},
{
"csvFileName": "population_by_state.csv",
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"refId": "B",
"scenarioId": "csv_file"
}
],
"title": "Multiple map layers",
"type": "geomap"
},
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 17,
"w": 15,
"x": 9,
"y": 0
},
"id": 4,
"options": {
"basemap": {
"config": {
"server": "world-imagery"
},
"name": "Layer 0",
"type": "esri-xyz"
},
"controls": {
"mouseWheelZoom": true,
"showAttribution": true,
"showDebug": false,
"showMeasure": false,
"showScale": false,
"showZoom": true
},
"layers": [
{
"config": {
"nightColor": "#000000",
"show": "to",
"sun": true
},
"location": {
"mode": "auto"
},
"name": "Day / night",
"opacity": 0.5,
"tooltip": true,
"type": "dayNight"
}
],
"tooltip": {
"mode": "details"
},
"view": {
"id": "coords",
"lat": 29.633972,
"lon": -17.661858,
"zoom": 2.39
}
},
"pluginVersion": "9.2.0-pre",
"title": "Day / night layer",
"type": "geomap"
},
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 16,
"w": 14,
"x": 5,
"y": 17
},
"id": 6,
"options": {
"basemap": {
"config": {},
"name": "Layer 0",
"type": "default"
},
"controls": {
"mouseWheelZoom": true,
"showAttribution": true,
"showDebug": false,
"showMeasure": true,
"showScale": false,
"showZoom": true
},
"layers": [
{
"config": {
"style": {
"color": {
"fixed": "dark-green"
},
"lineWidth": 2,
"opacity": 1,
"rotation": {
"fixed": 0,
"max": 360,
"min": -360,
"mode": "mod"
},
"size": {
"fixed": 5,
"max": 15,
"min": 2
},
"symbol": {
"fixed": "img/icons/marker/circle.svg",
"mode": "fixed"
},
"textConfig": {
"fontSize": 12,
"offsetX": 0,
"offsetY": 0,
"textAlign": "center",
"textBaseline": "middle"
}
}
},
"name": "Flight path",
"tooltip": true,
"type": "route"
}
],
"tooltip": {
"mode": "details"
},
"view": {
"id": "coords",
"lat": 37.829114,
"lon": -122.439462,
"zoom": 11.92
}
},
"pluginVersion": "9.2.0-pre",
"targets": [
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"refId": "A",
"scenarioId": "simulation",
"sim": {
"key": {
"tick": 10,
"type": "flight"
}
}
}
],
"title": "Route layer",
"type": "geomap"
}
],
"schemaVersion": 37,
"style": "dark",
"tags": [
"gdev",
"panel-tests",
"geomap"
],
"templating": {
"list": []
},
"time": {
"from": "now-5m",
"to": "now"
},
"timepicker": {},
"timezone": "",
"title": "Panel Tests - Geomap 9.1",
"uid": "KVxZKdmVz",
"version": 10,
"weekStart": ""
}

View File

@@ -0,0 +1,503 @@
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": {
"type": "grafana",
"uid": "-- 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,
"fiscalYearStartMonth": 0,
"graphTooltip": 0,
"links": [],
"liveNow": false,
"panels": [
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "continuous-BlYlRd"
},
"custom": {
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 15,
"w": 10,
"x": 0,
"y": 0
},
"id": 2,
"options": {
"basemap": {
"config": {},
"name": "Layer 0",
"type": "default"
},
"controls": {
"mouseWheelZoom": true,
"showAttribution": true,
"showDebug": false,
"showMeasure": false,
"showScale": false,
"showZoom": true
},
"layers": [
{
"config": {
"showLegend": true,
"style": {
"color": {
"field": "Count",
"fixed": "dark-green"
},
"opacity": 0.4,
"rotation": {
"fixed": 0,
"max": 360,
"min": -360,
"mode": "mod"
},
"size": {
"fixed": 5,
"max": 15,
"min": 2
},
"symbol": {
"fixed": "img/icons/marker/circle.svg",
"mode": "fixed"
},
"textConfig": {
"fontSize": 12,
"offsetX": 0,
"offsetY": 0,
"textAlign": "center",
"textBaseline": "middle"
}
}
},
"location": {
"mode": "auto"
},
"name": "Layer 1",
"tooltip": true,
"type": "markers"
}
],
"tooltip": {
"mode": "details"
},
"view": {
"id": "zero",
"lat": 0,
"lon": 0,
"zoom": 1
}
},
"pluginVersion": "9.2.0-pre",
"targets": [
{
"csvFileName": "flight_info_by_state.csv",
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"refId": "A",
"scenarioId": "csv_file"
}
],
"title": "Geomap - auto min/max",
"type": "geomap"
},
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "continuous-BlYlRd"
},
"custom": {
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
}
},
"mappings": [],
"max": 15,
"min": 1,
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 15,
"w": 10,
"x": 10,
"y": 0
},
"id": 7,
"options": {
"basemap": {
"config": {},
"name": "Layer 0",
"type": "default"
},
"controls": {
"mouseWheelZoom": true,
"showAttribution": true,
"showDebug": false,
"showMeasure": false,
"showScale": false,
"showZoom": true
},
"layers": [
{
"config": {
"showLegend": true,
"style": {
"color": {
"field": "Count",
"fixed": "dark-green"
},
"opacity": 0.4,
"rotation": {
"fixed": 0,
"max": 360,
"min": -360,
"mode": "mod"
},
"size": {
"fixed": 5,
"max": 15,
"min": 2
},
"symbol": {
"fixed": "img/icons/marker/circle.svg",
"mode": "fixed"
},
"textConfig": {
"fontSize": 12,
"offsetX": 0,
"offsetY": 0,
"textAlign": "center",
"textBaseline": "middle"
}
}
},
"location": {
"mode": "auto"
},
"name": "Layer 1",
"tooltip": true,
"type": "markers"
}
],
"tooltip": {
"mode": "details"
},
"view": {
"id": "zero",
"lat": 0,
"lon": 0,
"zoom": 1
}
},
"pluginVersion": "9.2.0-pre",
"targets": [
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"panelId": 2,
"refId": "A"
}
],
"title": "Geomap - min/max",
"type": "geomap"
},
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "continuous-BlYlRd"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 15,
"w": 2,
"x": 20,
"y": 0
},
"id": 6,
"options": {
"colorMode": "value",
"graphMode": "area",
"justifyMode": "auto",
"orientation": "auto",
"reduceOptions": {
"calcs": [
"min"
],
"fields": "",
"values": false
},
"textMode": "auto"
},
"pluginVersion": "9.2.0-pre",
"targets": [
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"panelId": 2,
"refId": "A"
}
],
"title": "Min values",
"type": "stat"
},
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "continuous-BlYlRd"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 15,
"w": 2,
"x": 22,
"y": 0
},
"id": 5,
"options": {
"colorMode": "value",
"graphMode": "area",
"justifyMode": "auto",
"orientation": "auto",
"reduceOptions": {
"calcs": [
"max"
],
"fields": "",
"values": false
},
"textMode": "auto"
},
"pluginVersion": "9.2.0-pre",
"targets": [
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"panelId": 2,
"refId": "A"
}
],
"title": "Max values",
"type": "stat"
},
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "continuous-BlYlRd"
},
"custom": {
"align": "auto",
"displayMode": "auto",
"inspect": false
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": [
{
"matcher": {
"id": "byName",
"options": "Count"
},
"properties": [
{
"id": "custom.displayMode",
"value": "color-background"
}
]
},
{
"matcher": {
"id": "byName",
"options": "Price"
},
"properties": [
{
"id": "custom.displayMode",
"value": "color-background"
}
]
}
]
},
"gridPos": {
"h": 11,
"w": 24,
"x": 0,
"y": 15
},
"id": 4,
"options": {
"footer": {
"fields": "",
"reducer": [
"max"
],
"show": true
},
"showHeader": true
},
"pluginVersion": "9.2.0-pre",
"targets": [
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"panelId": 2,
"refId": "A"
}
],
"title": "Panel Title",
"type": "table"
}
],
"schemaVersion": 37,
"style": "dark",
"tags": [
"gdev",
"panel-tests",
"geomap"
],
"templating": {
"list": []
},
"time": {
"from": "now-6h",
"to": "now"
},
"timepicker": {},
"timezone": "",
"title": "Geomap - color field Copy",
"uid": "XMuLlpZ4k",
"version": 1,
"weekStart": ""
}

View File

@@ -0,0 +1,125 @@
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": {
"type": "grafana",
"uid": "-- 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,
"fiscalYearStartMonth": 0,
"graphTooltip": 0,
"links": [],
"liveNow": false,
"panels": [
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 9,
"w": 12,
"x": 0,
"y": 0
},
"id": 1,
"options": {
"controls": {
"mouseWheelZoom": true,
"showAttribution": false,
"showDebug": false,
"showMeasure": false,
"showScale": false,
"showZoom": false
},
"tooltip": {
"mode": "details"
},
"view": {
"id": "zero",
"lat": 0,
"lon": 0,
"zoom": 1
}
},
"pluginVersion": "9.2.0-pre",
"targets": [
{
"csvFileName": "flight_info_by_state.csv",
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"refId": "A",
"scenarioId": "csv_file"
}
],
"title": "Geomap/Geohash",
"type": "geomap"
}
],
"schemaVersion": 37,
"style": "dark",
"tags": [
"gdev",
"panel-tests",
"geomap"
],
"templating": {
"list": []
},
"time": {
"from": "now-5m",
"to": "now"
},
"timepicker": {},
"timezone": "",
"title": "Panel Tests - Geomap geohash transformer",
"uid": "P2jR04WVk",
"version": 10,
"weekStart": ""
}

View File

@@ -440,8 +440,8 @@
"style": "dark",
"tags": [
"gdev",
"geomap",
"panel-tests"
"panel-tests",
"geomap"
],
"templating": {
"list": []

View File

@@ -24,7 +24,6 @@
"editable": true,
"fiscalYearStartMonth": 0,
"graphTooltip": 0,
"id": 83,
"links": [],
"liveNow": false,
"panels": [
@@ -78,6 +77,7 @@
"mouseWheelZoom": true,
"showAttribution": true,
"showDebug": false,
"showMeasure": false,
"showScale": false,
"showZoom": true
},
@@ -107,6 +107,9 @@
"type": "markers"
}
],
"tooltip": {
"mode": "details"
},
"view": {
"id": "coords",
"lat": 38.297683,
@@ -115,7 +118,7 @@
"zoom": 3.98
}
},
"pluginVersion": "9.0.0-pre",
"pluginVersion": "9.2.0-pre",
"targets": [
{
"csvFileName": "flight_info_by_state.csv",
@@ -180,6 +183,7 @@
"mouseWheelZoom": true,
"showAttribution": true,
"showDebug": false,
"showMeasure": false,
"showScale": false,
"showZoom": true
},
@@ -209,6 +213,9 @@
"type": "markers"
}
],
"tooltip": {
"mode": "details"
},
"view": {
"id": "coords",
"lat": 38.297683,
@@ -217,7 +224,7 @@
"zoom": 3.98
}
},
"pluginVersion": "9.0.0-pre",
"pluginVersion": "9.2.0-pre",
"targets": [
{
"csvFileName": "flight_info_by_state.csv",
@@ -278,6 +285,7 @@
"mouseWheelZoom": true,
"showAttribution": true,
"showDebug": false,
"showMeasure": false,
"showScale": false,
"showZoom": true
},
@@ -302,6 +310,9 @@
"type": "heatmap"
}
],
"tooltip": {
"mode": "details"
},
"view": {
"id": "coords",
"lat": 38.251497,
@@ -310,7 +321,7 @@
"zoom": 4.15
}
},
"pluginVersion": "9.0.0-pre",
"pluginVersion": "9.2.0-pre",
"targets": [
{
"csvFileName": "flight_info_by_state.csv",
@@ -374,6 +385,7 @@
"mouseWheelZoom": true,
"showAttribution": true,
"showDebug": false,
"showMeasure": false,
"showScale": false,
"showZoom": true
},
@@ -402,6 +414,9 @@
"type": "markers"
}
],
"tooltip": {
"mode": "details"
},
"view": {
"id": "coords",
"lat": 40.159084,
@@ -410,7 +425,7 @@
"zoom": 3.83
}
},
"pluginVersion": "9.0.0-pre",
"pluginVersion": "9.2.0-pre",
"targets": [
{
"csvFileName": "flight_info_by_state.csv",
@@ -423,11 +438,12 @@
}
],
"refresh": "",
"schemaVersion": 36,
"schemaVersion": 37,
"style": "dark",
"tags": [
"gdev",
"panel-tests"
"panel-tests",
"geomap"
],
"templating": {
"list": []
@@ -452,6 +468,6 @@
"timezone": "",
"title": "Panel Tests - Geomap",
"uid": "2xuwrgV7z",
"version": 2,
"version": 4,
"weekStart": ""
}

View File

@@ -3414,8 +3414,7 @@
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
"color": "green"
},
{
"color": "red",
@@ -3489,4 +3488,4 @@
"uid": "1KxMUdE7k",
"version": 5,
"weekStart": ""
}
}

View File

@@ -0,0 +1,846 @@
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": {
"type": "grafana",
"uid": "-- 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,
"fiscalYearStartMonth": 0,
"graphTooltip": 0,
"id": 339,
"links": [],
"liveNow": false,
"panels": [
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisCenteredZero": false,
"axisColorMode": "text",
"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": 32,
"w": 4,
"x": 0,
"y": 0
},
"id": 2,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom",
"showLegend": true
},
"tooltip": {
"mode": "single",
"sort": "none"
}
},
"targets": [
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"refId": "A",
"scenarioId": "csv_metric_values",
"stringInput": "1,2.3"
}
],
"title": "Panel Title",
"type": "timeseries"
},
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisCenteredZero": false,
"axisColorMode": "text",
"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"
}
},
"decimals": 0,
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 32,
"w": 4,
"x": 4,
"y": 0
},
"id": 5,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom",
"showLegend": true
},
"tooltip": {
"mode": "single",
"sort": "none"
}
},
"targets": [
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"refId": "A",
"scenarioId": "csv_metric_values",
"stringInput": "1,2.3"
}
],
"title": "Panel Title",
"type": "timeseries"
},
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisCenteredZero": false,
"axisColorMode": "text",
"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": 17,
"w": 4,
"x": 8,
"y": 0
},
"id": 6,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom",
"showLegend": true
},
"tooltip": {
"mode": "single",
"sort": "none"
}
},
"targets": [
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"refId": "A",
"scenarioId": "csv_metric_values",
"stringInput": "1,2.3"
}
],
"title": "Panel Title",
"type": "timeseries"
},
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisCenteredZero": false,
"axisColorMode": "text",
"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"
}
},
"decimals": 0,
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 17,
"w": 4,
"x": 12,
"y": 0
},
"id": 3,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom",
"showLegend": true
},
"tooltip": {
"mode": "single",
"sort": "none"
}
},
"targets": [
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"refId": "A",
"scenarioId": "csv_metric_values",
"stringInput": "1,2.3"
}
],
"title": "Panel Title",
"type": "timeseries"
},
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisCenteredZero": false,
"axisColorMode": "text",
"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": 10,
"w": 4,
"x": 16,
"y": 0
},
"id": 7,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom",
"showLegend": true
},
"tooltip": {
"mode": "single",
"sort": "none"
}
},
"targets": [
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"refId": "A",
"scenarioId": "csv_metric_values",
"stringInput": "1,2.3"
}
],
"title": "Panel Title",
"type": "timeseries"
},
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisCenteredZero": false,
"axisColorMode": "text",
"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"
}
},
"decimals": 0,
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 10,
"w": 4,
"x": 20,
"y": 0
},
"id": 4,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom",
"showLegend": true
},
"tooltip": {
"mode": "single",
"sort": "none"
}
},
"targets": [
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"refId": "A",
"scenarioId": "csv_metric_values",
"stringInput": "1,2.3"
}
],
"title": "Panel Title",
"type": "timeseries"
},
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisCenteredZero": false,
"axisColorMode": "text",
"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
}
]
},
"unit": "s"
},
"overrides": []
},
"gridPos": {
"h": 22,
"w": 4,
"x": 16,
"y": 10
},
"id": 8,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom",
"showLegend": true
},
"tooltip": {
"mode": "single",
"sort": "none"
}
},
"targets": [
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"refId": "A",
"scenarioId": "csv_metric_values",
"stringInput": "1,2.3"
}
],
"title": "Panel Title",
"type": "timeseries"
},
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisCenteredZero": false,
"axisColorMode": "text",
"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"
}
},
"decimals": 0,
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
},
"unit": "s"
},
"overrides": []
},
"gridPos": {
"h": 22,
"w": 4,
"x": 20,
"y": 10
},
"id": 9,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom",
"showLegend": true
},
"tooltip": {
"mode": "single",
"sort": "none"
}
},
"targets": [
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"refId": "A",
"scenarioId": "csv_metric_values",
"stringInput": "1,2.3"
}
],
"title": "Panel Title",
"type": "timeseries"
},
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisCenteredZero": false,
"axisColorMode": "text",
"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"
}
},
"decimals": 0,
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 15,
"w": 8,
"x": 8,
"y": 17
},
"id": 11,
"maxDataPoints": 100,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom",
"showLegend": true
},
"tooltip": {
"mode": "single",
"sort": "none"
}
},
"title": "Panel Title",
"type": "timeseries"
}
],
"schemaVersion": 37,
"style": "dark",
"tags": ["gdev", "panel-tests", "graph-ng"],
"templating": {
"list": []
},
"time": {
"from": "now-6h",
"to": "now"
},
"timepicker": {},
"timezone": "",
"title": "Zero Decimals Y Ticks",
"uid": "kGvJCmGVz",
"version": 7,
"weekStart": ""
}

View File

@@ -0,0 +1,322 @@
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": {
"type": "datasource",
"uid": "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,
"fiscalYearStartMonth": 0,
"graphTooltip": 0,
"id": 1348,
"links": [],
"liveNow": false,
"panels": [
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"gridPos": {
"h": 9,
"w": 12,
"x": 0,
"y": 0
},
"id": 4,
"options": {
"code": {
"language": "plaintext",
"showLineNumbers": false,
"showMiniMap": false
},
"content": "## Data center = $datacenter\n\n### server = $server\n\n#### pod = $pod\n\n---\ntext = $Text",
"mode": "markdown"
},
"pluginVersion": "9.2.0-pre",
"targets": [
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"refId": "A",
"scenarioId": "random_walk"
}
],
"title": "Markdown (with variables)",
"type": "text"
},
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"gridPos": {
"h": 9,
"w": 12,
"x": 12,
"y": 0
},
"id": 5,
"options": {
"code": {
"language": "json",
"showLineNumbers": true,
"showMiniMap": false
},
"content": "{\n \"datacenter\": $datacenter,\n \"server\": $server,\n \"pod\": $pod\n \"text\": $Text\n}\n",
"mode": "code"
},
"pluginVersion": "9.2.0-pre",
"targets": [
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"refId": "A",
"scenarioId": "random_walk"
}
],
"title": "JSON (with variables)",
"type": "text"
},
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"gridPos": {
"h": 9,
"w": 12,
"x": 0,
"y": 9
},
"id": 6,
"options": {
"code": {
"language": "plaintext",
"showLineNumbers": false,
"showMiniMap": false
},
"content": "<h3>Data center</h3>\n<p>$datacenter</p>\n\n<h3>server</h3>\n<p>$server</p>\n\n<h3>pod</h3>\n<p>$pod</p>\n\n<h3>Text</h3>\n<p>$Text</p>",
"mode": "html"
},
"pluginVersion": "9.2.0-pre",
"targets": [
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"refId": "A",
"scenarioId": "random_walk"
}
],
"title": "HTML (with variables)",
"type": "text"
},
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"gridPos": {
"h": 9,
"w": 12,
"x": 12,
"y": 9
},
"id": 7,
"options": {
"code": {
"language": "markdown",
"showLineNumbers": true,
"showMiniMap": true
},
"content": "## Data center\n$datacenter\n\n### server\n$server\n\n#### pod = \n$pod\n",
"mode": "code"
},
"pluginVersion": "9.2.0-pre",
"targets": [
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"refId": "A",
"scenarioId": "random_walk"
}
],
"title": "Markdown (code w/ with variables)",
"type": "text"
}
],
"refresh": false,
"schemaVersion": 37,
"style": "dark",
"tags": [],
"templating": {
"list": [
{
"current": {
"selected": false,
"text": [
"All"
],
"value": [
"$__all"
]
},
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"definition": "*",
"hide": 0,
"includeAll": true,
"multi": true,
"name": "datacenter",
"options": [],
"query": {
"query": "*",
"refId": "gdev-testdata-datacenter-Variable-Query"
},
"refresh": 1,
"regex": "",
"skipUrlSync": false,
"sort": 0,
"tagValuesQuery": "",
"tagsQuery": "",
"type": "query",
"useTags": false
},
{
"current": {
"selected": false,
"text": [
"All"
],
"value": [
"$__all"
]
},
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"definition": "$datacenter.*",
"hide": 0,
"includeAll": true,
"multi": true,
"name": "server",
"options": [],
"query": {
"query": "$datacenter.*",
"refId": "gdev-testdata-server-Variable-Query"
},
"refresh": 1,
"regex": "",
"skipUrlSync": false,
"sort": 0,
"tagValuesQuery": "",
"tagsQuery": "",
"type": "query",
"useTags": false
},
{
"current": {
"selected": false,
"text": [
"AAA",
"ACB"
],
"value": [
"AAA",
"ACB"
]
},
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"definition": "$datacenter.$server.*",
"hide": 0,
"includeAll": true,
"multi": true,
"name": "pod",
"options": [],
"query": {
"query": "$datacenter.$server.*",
"refId": "gdev-testdata-pod-Variable-Query"
},
"refresh": 1,
"regex": "",
"skipUrlSync": false,
"sort": 0,
"tagValuesQuery": "",
"tagsQuery": "",
"type": "query",
"useTags": false
},
{
"current": {
"selected": false,
"text": "temp",
"value": "temp"
},
"hide": 0,
"name": "Text",
"options": [
{
"selected": true,
"text": "temp",
"value": "temp"
}
],
"query": "temp",
"skipUrlSync": false,
"type": "textbox"
}
]
},
"time": {
"from": "now-1h",
"to": "now"
},
"timepicker": {
"refresh_intervals": [
"10s",
"30s",
"1m",
"5m",
"15m",
"30m",
"1h",
"2h",
"1d"
]
},
"timezone": "",
"title": "Text options",
"uid": "WZ7AhQiVz",
"version": 1,
"weekStart": ""
}

View File

@@ -0,0 +1,631 @@
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": {
"type": "grafana",
"uid": "-- 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,
"fiscalYearStartMonth": 0,
"graphTooltip": 0,
"id": 1351,
"links": [],
"liveNow": false,
"panels": [
{
"collapsed": false,
"gridPos": {
"h": 1,
"w": 24,
"x": 0,
"y": 0
},
"id": 9,
"panels": [],
"title": "Join by time",
"type": "row"
},
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisCenteredZero": false,
"axisColorMode": "text",
"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": 8,
"w": 12,
"x": 0,
"y": 1
},
"id": 11,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom",
"showLegend": true
},
"tooltip": {
"mode": "single",
"sort": "none"
}
},
"targets": [
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"refId": "A",
"scenarioId": "random_walk",
"seriesCount": 4
}
],
"title": "Timeseries data",
"type": "timeseries"
},
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"align": "auto",
"displayMode": "auto",
"inspect": false
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 8,
"w": 12,
"x": 12,
"y": 1
},
"id": 13,
"options": {
"footer": {
"fields": "",
"reducer": [
"sum"
],
"show": false
},
"showHeader": true
},
"pluginVersion": "9.2.0-pre",
"targets": [
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"panelId": 11,
"refId": "A"
}
],
"title": "Same data (as a table)",
"type": "table"
},
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"align": "auto",
"displayMode": "auto",
"inspect": false
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 5,
"w": 24,
"x": 0,
"y": 9
},
"id": 16,
"options": {
"footer": {
"fields": "",
"reducer": [
"sum"
],
"show": false
},
"showHeader": true
},
"pluginVersion": "9.2.0-pre",
"targets": [
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"panelId": 11,
"refId": "A"
}
],
"title": "OUTER join on time (default)",
"transformations": [
{
"id": "joinByField",
"options": {}
}
],
"type": "table"
},
{
"collapsed": false,
"gridPos": {
"h": 1,
"w": 24,
"x": 0,
"y": 14
},
"id": 5,
"panels": [],
"title": "Join by string field",
"type": "row"
},
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"align": "auto",
"displayMode": "auto",
"inspect": false
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 8,
"w": 12,
"x": 0,
"y": 15
},
"id": 2,
"options": {
"footer": {
"fields": "",
"reducer": [
"sum"
],
"show": false
},
"frameIndex": 0,
"showHeader": true
},
"pluginVersion": "9.2.0-pre",
"targets": [
{
"csvContent": "OrderID,CustomerID,Time\n100,A,10000\n101,B,20000\n102,C,30000",
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"refId": "Orders",
"scenarioId": "csv_content"
},
{
"csvContent": "CustomerID,Name,Country\nA,Customer A,USA\nB,Customer B,Germany\nC,Customer C,Spain\nD,Customer D,Canada",
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"hide": false,
"refId": "Customers",
"scenarioId": "csv_content"
}
],
"title": "Orders",
"transformations": [],
"type": "table"
},
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"align": "auto",
"displayMode": "auto",
"inspect": false
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 8,
"w": 12,
"x": 12,
"y": 15
},
"id": 3,
"options": {
"footer": {
"fields": "",
"reducer": [
"sum"
],
"show": false
},
"frameIndex": 1,
"showHeader": true
},
"pluginVersion": "9.2.0-pre",
"targets": [
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"panelId": 2,
"refId": "A"
}
],
"title": "Customers",
"transformations": [],
"type": "table"
},
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"align": "auto",
"displayMode": "auto",
"inspect": false
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": [
{
"matcher": {
"id": "byName",
"options": "CustomerID"
},
"properties": [
{
"id": "custom.width",
"value": 101
}
]
},
{
"matcher": {
"id": "byName",
"options": "OrderID"
},
"properties": [
{
"id": "custom.width",
"value": 89
}
]
}
]
},
"gridPos": {
"h": 8,
"w": 12,
"x": 0,
"y": 23
},
"id": 6,
"options": {
"footer": {
"fields": "",
"reducer": [
"sum"
],
"show": false
},
"frameIndex": 0,
"showHeader": true,
"sortBy": []
},
"pluginVersion": "9.2.0-pre",
"targets": [
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"panelId": 2,
"refId": "A"
}
],
"title": "OUTER join on CustomerID (keeps missing values)",
"transformations": [
{
"id": "joinByField",
"options": {
"byField": "CustomerID",
"mode": "outer"
}
}
],
"type": "table"
},
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"align": "auto",
"displayMode": "auto",
"inspect": false
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": [
{
"matcher": {
"id": "byName",
"options": "CustomerID"
},
"properties": [
{
"id": "custom.width",
"value": 101
}
]
},
{
"matcher": {
"id": "byName",
"options": "OrderID"
},
"properties": [
{
"id": "custom.width",
"value": 89
}
]
}
]
},
"gridPos": {
"h": 8,
"w": 12,
"x": 12,
"y": 23
},
"id": 7,
"options": {
"footer": {
"fields": "",
"reducer": [
"sum"
],
"show": false
},
"frameIndex": 0,
"showHeader": true,
"sortBy": []
},
"pluginVersion": "9.2.0-pre",
"targets": [
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"panelId": 2,
"refId": "A"
}
],
"title": "INNER join on CustomerID ",
"transformations": [
{
"id": "joinByField",
"options": {
"byField": "CustomerID",
"mode": "inner"
}
}
],
"type": "table"
}
],
"schemaVersion": 37,
"style": "dark",
"tags": [
"gdev",
"transform"
],
"templating": {
"list": []
},
"time": {
"from": "now-6h",
"to": "now"
},
"timepicker": {},
"timezone": "",
"title": "Join by field",
"uid": "gw0K4rmVz",
"version": 6,
"weekStart": ""
}

View File

@@ -0,0 +1,354 @@
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": {
"type": "grafana",
"uid": "-- 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,
"fiscalYearStartMonth": 0,
"graphTooltip": 0,
"id": 1342,
"links": [],
"liveNow": false,
"panels": [
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 10,
"w": 12,
"x": 0,
"y": 0
},
"id": 2,
"maxDataPoints": 1,
"options": {
"colorMode": "none",
"graphMode": "none",
"justifyMode": "auto",
"orientation": "auto",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"textMode": "auto"
},
"pluginVersion": "9.2.0-pre",
"targets": [
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"labels": "site=A,measure=speed,state=CA",
"refId": "A",
"scenarioId": "random_walk"
},
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"hide": false,
"labels": "site=B,measure=speed,state=OR",
"refId": "B",
"scenarioId": "random_walk"
},
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"hide": false,
"labels": "site=B,measure=temp",
"refId": "C",
"scenarioId": "random_walk"
},
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"hide": false,
"labels": "site=A,measure=temp",
"refId": "D",
"scenarioId": "random_walk"
}
],
"title": "Labeled values",
"type": "stat"
},
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"align": "auto",
"displayMode": "auto",
"inspect": false
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 10,
"w": 12,
"x": 12,
"y": 0
},
"id": 5,
"maxDataPoints": 1,
"options": {
"footer": {
"fields": "",
"reducer": [
"sum"
],
"show": false
},
"frameIndex": 2,
"showHeader": true
},
"pluginVersion": "9.2.0-pre",
"targets": [
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"panelId": 2,
"refId": "A"
}
],
"title": "Same values... in a table",
"transformations": [],
"type": "table"
},
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"align": "auto",
"displayMode": "auto",
"inspect": false
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 8,
"w": 12,
"x": 0,
"y": 10
},
"id": 4,
"maxDataPoints": 1,
"options": {
"footer": {
"fields": "",
"reducer": [
"sum"
],
"show": false
},
"showHeader": true
},
"pluginVersion": "9.2.0-pre",
"targets": [
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"panelId": 2,
"refId": "A"
}
],
"title": "Join by site",
"transformations": [
{
"id": "joinByLabels",
"options": {
"join": [
"site"
],
"value": "measure"
}
}
],
"type": "table"
},
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"align": "auto",
"displayMode": "auto",
"inspect": false
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 8,
"w": 12,
"x": 12,
"y": 10
},
"id": 6,
"maxDataPoints": 1,
"options": {
"footer": {
"fields": "",
"reducer": [
"sum"
],
"show": false
},
"showHeader": true
},
"pluginVersion": "9.2.0-pre",
"targets": [
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"panelId": 2,
"refId": "A"
}
],
"title": "Join on all labels",
"transformations": [
{
"id": "joinByLabels",
"options": {
"value": "measure"
}
}
],
"type": "table"
}
],
"schemaVersion": 37,
"style": "dark",
"tags": [
"gdev",
"transform"
],
"templating": {
"list": []
},
"time": {
"from": "now-6h",
"to": "now"
},
"timepicker": {},
"timezone": "",
"title": "Join by labels",
"uid": "FVl-9CR4z",
"version": 10,
"weekStart": ""
}

View File

@@ -0,0 +1,536 @@
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": {
"type": "grafana",
"uid": "-- 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,
"fiscalYearStartMonth": 0,
"graphTooltip": 0,
"id": 1394,
"links": [],
"liveNow": false,
"panels": [
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"gridPos": {
"h": 3,
"w": 24,
"x": 0,
"y": 0
},
"id": 9,
"options": {
"content": "Dashboard queries allow re-using the same results from one panel in another panel context.\n\nThis dashboard shows a single panel that makes a real query and applies transformations. The other panels, all use the same results rather than make their own query requests.",
"mode": "markdown"
},
"pluginVersion": "9.2.0-pre",
"type": "text"
},
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"align": "auto",
"displayMode": "auto",
"inspect": false
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 18,
"w": 7,
"x": 0,
"y": 3
},
"id": 2,
"options": {
"footer": {
"fields": "",
"reducer": [
"sum"
],
"show": false
},
"showHeader": true
},
"pluginVersion": "9.2.0-pre",
"targets": [
{
"csvFileName": "flight_info_by_state.csv",
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"refId": "A",
"scenarioId": "csv_file"
},
{
"csvFileName": "population_by_state.csv",
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"refId": "B",
"scenarioId": "csv_file"
}
],
"title": "Raw data -- with outer join",
"transformations": [
{
"id": "seriesToColumns",
"options": {
"byField": "State",
"mode": "outer"
}
},
{
"id": "organize",
"options": {
"excludeByName": {
"1980 population_by_state.csv": true,
"2000 population_by_state.csv": true,
"DestLocation flight_info_by_state.csv": true,
"Lat flight_info_by_state.csv": true,
"Lng flight_info_by_state.csv": true,
"Price flight_info_by_state.csv": true
},
"indexByName": {},
"renameByName": {
"2020 population_by_state.csv": "2020 population",
"Count flight_info_by_state.csv": "Flight count",
"Price flight_info_by_state.csv": ""
}
}
}
],
"type": "table"
},
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"align": "auto",
"displayMode": "auto",
"inspect": false
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 9,
"w": 11,
"x": 7,
"y": 3
},
"id": 4,
"options": {
"footer": {
"fields": "",
"reducer": [
"sum"
],
"show": false
},
"showHeader": true
},
"pluginVersion": "9.2.0-pre",
"targets": [
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"panelId": 2,
"refId": "A"
}
],
"title": "Reused data (without transform)",
"type": "table"
},
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 9,
"w": 6,
"x": 18,
"y": 3
},
"id": 5,
"options": {
"basemap": {
"config": {},
"name": "Layer 0",
"type": "default"
},
"controls": {
"mouseWheelZoom": true,
"showAttribution": true,
"showDebug": false,
"showMeasure": false,
"showScale": false,
"showZoom": true
},
"layers": [
{
"config": {
"showLegend": true,
"style": {
"color": {
"fixed": "dark-green"
},
"opacity": 0.4,
"rotation": {
"fixed": 0,
"max": 360,
"min": -360,
"mode": "mod"
},
"size": {
"field": "Flight count",
"fixed": 5,
"max": 15,
"min": 2
},
"symbol": {
"fixed": "img/icons/marker/circle.svg",
"mode": "fixed"
},
"textConfig": {
"fontSize": 12,
"offsetX": 0,
"offsetY": 0,
"textAlign": "center",
"textBaseline": "middle"
}
}
},
"location": {
"gazetteer": "public/gazetteer/usa-states.json",
"lookup": "State",
"mode": "lookup"
},
"name": "Flight count",
"tooltip": true,
"type": "markers"
}
],
"tooltip": {
"mode": "details"
},
"view": {
"id": "coords",
"lat": 35.70008,
"lon": -93.558296,
"zoom": 3.09
}
},
"pluginVersion": "9.2.0-pre",
"targets": [
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"panelId": 2,
"refId": "A",
"withTransforms": true
}
],
"title": "Reused data (without transform)",
"type": "geomap"
},
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"align": "auto",
"displayMode": "auto",
"inspect": false
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 9,
"w": 11,
"x": 7,
"y": 12
},
"id": 6,
"options": {
"footer": {
"fields": "",
"reducer": [
"sum"
],
"show": false
},
"showHeader": true
},
"pluginVersion": "9.2.0-pre",
"targets": [
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"panelId": 2,
"refId": "A",
"withTransforms": true
}
],
"title": "Reused data (with transform)",
"type": "table"
},
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 9,
"w": 6,
"x": 18,
"y": 12
},
"id": 7,
"options": {
"basemap": {
"config": {},
"name": "Layer 0",
"type": "default"
},
"controls": {
"mouseWheelZoom": true,
"showAttribution": true,
"showDebug": false,
"showMeasure": false,
"showScale": false,
"showZoom": true
},
"layers": [
{
"config": {
"showLegend": true,
"style": {
"color": {
"fixed": "dark-green"
},
"opacity": 0.4,
"rotation": {
"fixed": 0,
"max": 360,
"min": -360,
"mode": "mod"
},
"size": {
"field": "2020 population",
"fixed": 5,
"max": 15,
"min": 2
},
"symbol": {
"fixed": "img/icons/marker/circle.svg",
"mode": "fixed"
},
"textConfig": {
"fontSize": 12,
"offsetX": 0,
"offsetY": 0,
"textAlign": "center",
"textBaseline": "middle"
}
}
},
"location": {
"gazetteer": "public/gazetteer/usa-states.json",
"lookup": "State",
"mode": "lookup"
},
"name": "2022 Population",
"tooltip": true,
"type": "markers"
}
],
"tooltip": {
"mode": "details"
},
"view": {
"id": "coords",
"lat": 35.70008,
"lon": -93.558296,
"zoom": 3.09
}
},
"pluginVersion": "9.2.0-pre",
"targets": [
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"panelId": 2,
"refId": "A",
"withTransforms": true
}
],
"title": "Reused data (with transform)",
"type": "geomap"
}
],
"schemaVersion": 37,
"style": "dark",
"tags": ["devenv"],
"templating": {
"list": []
},
"time": {
"from": "now-6h",
"to": "now"
},
"timepicker": {},
"timezone": "",
"title": "Reuse dashboard queries",
"uid": "fYGWTVW4k"
}

View File

@@ -3,14 +3,13 @@ package main
import (
"fmt"
"io"
"io/ioutil"
"log"
"net/http"
"strings"
)
func hello(w http.ResponseWriter, r *http.Request) {
body, err := ioutil.ReadAll(r.Body)
body, err := io.ReadAll(r.Body)
if err != nil {
return
}

View File

@@ -1,9 +0,0 @@
# This will proxy all requests for http://localhost:10081/grafana/ to
# http://localhost:3000 (Grafana running locally)
#
# Please note that you'll need to change the root_url in the Grafana configuration:
# root_url = %(protocol)s://%(domain)s:10081/grafana/
apacheproxy:
build: docker/blocks/apache_proxy
network_mode: host

View File

@@ -1,10 +0,0 @@
# This will proxy all requests for http://localhost:10081/grafana/ to
# http://localhost:3000 (Grafana running locally)
#
# Please note that you'll need to change the root_url in the Grafana configuration:
# root_url = %(protocol)s://%(domain)s:10081/grafana/
apacheproxy:
build: docker/blocks/apache_proxy_mac
ports:
- "10081:10081"

View File

@@ -0,0 +1,32 @@
# Auth Docker blocks
This collection of Docker images will help create a developer environment to
interact with different Authentication Providers.
## Usage
Spin up a service with the following command from the base directory of this
repository.
```bash
make devenv=oauth
```
This will add the `oauth/docker-compose` block to the `docker-compose` file used
by the `devenv` target.
## Available Authentication Providers
- [apache_proxy](./apache_proxy)
- [apache_proxy_mac](./apache_proxy_mac)
- [freeipa](./freeipa)
- [jwt_proxy](./jwt_proxy)
- [oauth](./oauth)
- [nginx_proxy](./nginx_proxy)
- [nginx_proxy_mac](./nginx_proxy_mac)
- [oauth](./oauth)
- [openldap](./openldap)
- [openldap-mac](./openldap-mac)
- [openldap-multiple](./openldap-multiple)
- [prometheus_basic_auth_proxy](./prometheus_basic_auth_proxy)
- [saml](./saml)

Some files were not shown because too many files have changed in this diff Show More