Commit Graph

14721 Commits

Author SHA1 Message Date
Jeff Levin
d076bedb5e public dashboards: finalize db schema & v1 feature complete (#50467)
This PR completes public dashboards v1 functionality and simplifies public dashboard conventions. It exists as a large PR so that we are not making constant changes to the database schema.

models.PublicDashboardConfig model replaced with models.PublicDashboard directly
dashboard_public_config table renamed to dashboard_public
models.Dashboard.IsPublic removed from the dashboard and replaced with models.PublicDashboard.isEnabled
Routing now uses a uuid v4 as an access token for viewing a public dashboard anonymously, PublicDashboard.Uid only used as database identifier
Frontend utilizes uuid for auth'd operations and access token for anonymous access
Default to time range defined on dashboard when viewing public dashboard
Add audit fields to public dashboard

Co-authored-by: Owen Smallwood <owen.smallwood@grafana.com>, Ezequiel Victorero <ezequiel.victorero@grafana.com>, Jesse Weaver <jesse.weaver@grafana.com>
2022-06-22 13:58:52 -08:00
Ryan McKinley
773c269084 OptionsUI: UnitPicker now supports isClearable setting (#51064) 2022-06-22 13:49:44 -07:00
Ryan McKinley
3b1c7cc359 Annotations: do not show fields mappings for -- grafana -- datasource (#51256) 2022-06-22 13:05:16 -07:00
Joao Silva
cbefbd3ff7 Search: Adds tests to SearchView (#51248) 2022-06-22 17:20:57 +01:00
Yuriy Tseretyan
4d02f73e5f Alerting: Persist rule position in the group (#50051)
Migrations:
* add a new column alert_group_idx to alert_rule table
* add a new column alert_group_idx to alert_rule_version table
* re-index existing rules during migration

API:
* set group index on update. Use the natural order of items in  the array as group index
* sort rules in the group on GET
* update the version of all rules of all affected groups. This will make optimistic lock work in the case of multiple concurrent request touching the same groups.

UI:
* update UI to keep the order of alerts in a group
2022-06-22 10:52:46 -04:00
Leon Sorokin
ef53a49896 HeatmapNG: skip y <= 0 values when log y axis (#51221) 2022-06-22 07:12:22 -07:00
Ashley Harrison
be6a878fd6 Annotations: Fixes a problem where annotation autocomplete would crash the panel (#51164)
* use custom formatCreateLabel in AnnotationEditorForm

* give `TagFilter` it's own formatCreateLabel

* only show TagBadge if the label is a string
2022-06-22 14:54:42 +01:00
Karl Persson
8b82bebdc5 RolePicker: Only select roles that is delegatable when selecting a group (#51246) 2022-06-22 15:49:32 +02:00
Karl Persson
454f65cd88 RolePicker: Only update org role if the value has changed (#51239) 2022-06-22 14:47:47 +02:00
Kevin Yu
f9becc2d4f Cloud Monitoring: Update Metrics to use experimental UI components (#51134)
* update metrics component

* separate state variables

* add additonal tests
2022-06-22 05:39:08 -07:00
Josh Hunt
7cee620fbb Chore: Use @types/webpack-env to type require.context (#51196) 2022-06-22 12:38:47 +01:00
Konrad Lalik
765b995b1b Alerting: Alert rules pagination (#50612) 2022-06-22 11:33:39 +02:00
Karl Persson
2698e37291 RBAC: Add access control metadata to folder dtos (#51158)
* RBAC: Add access control metadata to Folder dto

* Add access control metadata to folder dto response

* Add test to verify that access control metadata is attached

* Attach access control metadata to multiple folders

* Add access control metadata to frontend folder dto
2022-06-22 10:29:26 +02:00
Josh Hunt
8fa951df04 Type window.nonce (#51200) 2022-06-22 09:28:05 +01:00
Josh Hunt
26f6b91fd9 Chore: Type GA and Rudderstack analytics config (#51197)
* Chore: Type GA and Rudderstack analytics config

* rely on implicit unknown
2022-06-22 09:27:55 +01:00
Josh Hunt
24bdda72fb Barchart: Fix warning not showing (#51190) 2022-06-21 17:45:37 -05:00
Josh Hunt
357b859fa7 Remove any generics from configureMockStore in tests (#51179) 2022-06-21 17:48:52 +01:00
Josh Hunt
98132fc7dc Remove as any from requireActual usage (#51182) 2022-06-21 17:48:38 +01:00
Seyaji
0bfd48c164 Chore: Convert DataLinks tests to RTL (#51137)
* Convert DataLinks tests to RTL

* Convert DataLinks test to RTL

* Convert DataLinks test to RTL

* Convert DataLinks test to RTL
2022-06-21 15:55:10 +01:00
Seyaji
bab017799e Chore: Convert QueryOperationAction test to RTL (#51139)
* Convert QueryOperationAction test to RTL

* Convert QueryOperationAction to RTL

* Convert QueryOperationAction test to RTL
2022-06-21 15:53:10 +01:00
polibb
665da5d063 Template Variable: Datasource variable can be used when MIXED option is selected in panel query (#51170)
* user essentials mob! 🔱

* user essentials mob! 🔱

lastFile:public/app/features/query/components/QueryEditorRowHeader.test.tsx

* user essentials mob! 🔱

* test variables showing in data source picker dropdown on MIXED

* clean up unused imports

* remove comment

* remove unused mock

Co-authored-by: Alexandra Vargas <alexa1866@gmail.com>
Co-authored-by: Joao Silva <joao.silva@grafana.com>
Co-authored-by: joshhunt <josh@trtr.co>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-06-21 17:46:52 +03:00
Josh Hunt
bc7ed4baab Chore: use jest.mocked in favor of type assertions/any (#51156)
* use jest.mocked instead of yucky any

* remove more anys in favor of jest.mocked

* fix stray unused variables
2022-06-21 13:47:33 +01:00
Maria Alexandra
395623b0a2 SearchV2: Add unit test for ManageActions (#51131) 2022-06-21 13:44:46 +02:00
Seyaji
3710c9a7c8 Chore: Convert DataSourcesListPage test to RTL (#51138)
* Convert DataSourceListPage test to RTL

* Convert DataSourceListPage test to RTL
2022-06-21 11:47:54 +01:00
renovate[bot]
a0ffb9093c Update dependency react-dropzone to v14 (#49243)
* Update dependency react-dropzone to v14

* Changes needed for react-dropzone v13

* feat(FileDropzone): update props to be backward compatible

* refactor(filedropzone): clean up component story

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
2022-06-21 11:10:00 +02:00
Josh Hunt
47abf44224 Chore: SharedPreferences tests (#51132)
* Add a test assertion function to make testing a little bit easier

* Add tests for SharedPreferences

* Remove some tests from UserProfileEditPage because we're testing SharedPreferences directly now
2022-06-21 09:36:34 +01:00
Ashley Harrison
05fbfdaa13 Search: add unit tests for FolderView (#51114)
* add unit tests for FolderView

* add basic unit test for Alert component

* prevent flicker of `No results found`
2022-06-21 09:35:03 +01:00
Leon Sorokin
f4f31b40fd HeatmapNG: consolidate frame types & fix color ranging (#51089)
* rename yZeroDisplay -> yMinDisplay
* remove heatmap-cells-sparse frame type
* parse x bucket size to millis
* take into account hideLE & hideGE filters to auto-range color scale
* extract cell value range scanning to heatmapData
2022-06-20 15:38:13 -05:00
Ryan McKinley
c2aee2b6da Geomap: Add alpha day/night layer (#50201)
Co-authored-by: drew08t <drew08@gmail.com>
2022-06-20 19:35:03 +02:00
Gilles De Mey
a37b868da7 Alerting: Provisioning UI (#50776)
Co-authored-by: Konrad Lalik <konrad.lalik@grafana.com>
2022-06-20 10:55:12 -04:00
Torkel Ödegaard
3c3293df78 TopNav: Adds new feature toggle for upcoming nav~ (#51115) 2022-06-20 16:25:43 +02:00
Kevin Yu
d8d1ca8151 add query header (#51072) 2022-06-20 07:06:14 -07:00
Gilles De Mey
6a1b8693e0 Alerting: Fix alert rule page crashing when datasource contained URL unsafe characters (#51105)
Any Prometheus datasources that contained URL unsafe characters would crash the application since it fails to find the datasource from the Grafana bootData.
2022-06-20 15:37:22 +02:00
Konrad Lalik
87bf0f4315 Alerting: Fix alert instances filtering for prom rules (#50850) 2022-06-20 15:37:05 +02:00
Kevin Yu
e889dfdc5c Cloud Monitoring: Update GroupBy fields to use experimental UI components (#50541)
* Cloud Monitoring: Update GroupBy fields to use experimental UI components

* let group by field grow horizontally

* remove fixed width constants from inputs

* add test

* Cloud Monitoring: Update GraphPeriod to use experimental UI components (#50545)

* Cloud Monitoring: Update GraphPeriod to use experimental UI components

* Cloud Monitoring: Update Preprocessing to use experimental UI components (#50548)

* Cloud Monitoring: Update Preprocessing to use experimental UI components

* add tests

* make overrides optional

* move preprocessor back into its own row
2022-06-20 06:28:29 -07:00
Seyaji
902101c524 Chore: Convert PanelHeaderCorner test to RTL (#51074)
* export props

* Convert PanelHeaderCorner test to RTL

* Update public/app/features/dashboard/dashgrid/PanelHeader/PanelHeaderCorner.test.tsx

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

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2022-06-20 14:54:13 +02:00
Gilles De Mey
ab89fa0853 Alerting: Fix automatically select newly created folder option (#50949) 2022-06-20 14:48:57 +02:00
Seyaji
606732dd5e Chore: Converts ButtonRow tests to RTL (#51068) 2022-06-20 15:46:11 +03:00
Seyaji
e4f4cc4a32 Chore: Convert pageActionBar test to RTL (#51073)
* Convert pageActionBar test to RTL

* add test for conditional render of button
2022-06-20 15:42:56 +03:00
Torkel Ödegaard
3a586a6053 PanelRenderer: Improves PanelRenderer performance (#51092)
* PanelRenderer: Improves PanelRenderer performance

* Minor refactor

* remove old func
2022-06-20 14:41:39 +02:00
Gilles De Mey
81a5436c1e Alerting: Adds Mimir to Alertmanager data source implementation (#50943) 2022-06-20 12:56:38 +02:00
Andreas Christou
ecaa1dcbfd AzureMonitor: Migrate to backend checkHealth API (#50448)
* Add check health functions for each datasource and generic checkHealth function

* Log backend errors

* Update testDatasource function

- Remove unused testDatasource functions from pseudo datasources

* Switch datasource to extend DataSourceWithBackend

* Improve errors and responses from health endpoint

* Fix backend lint issues

* Remove unneeded frontend tests

* Remove unused/unnecessary datasource methods

* Update types

* Improve message construction

* Stubbing out checkHealth tests

* Update tests

- Remove comments
- Simplify structure

* Update log analytics health check to query data rather than retrieve workspace metadata

* Fix lint issue

* Fix frontend lint issues

* Update pkg/tsdb/azuremonitor/azuremonitor.go

Co-authored-by: Andres Martinez Gotor <andres.martinez@grafana.com>

* Updates based on PR comments

- Don't use deprecated default workspace field
- Handle situation if no workspace is found by notifying user
- Correctly handle health responses

* Remove debug line

* Make use of defined api versions

* Remove field validation functions

* Expose errors in frontend

* Update errors and tests

* Remove instanceSettings

* Update error handling

* Improve error handling and presentation

* Update tests and correctly check error type

* Refactor AzureHealthCheckError and update tests

* Fix lint errors

Co-authored-by: Andres Martinez Gotor <andres.martinez@grafana.com>
2022-06-20 11:33:13 +01:00
Gábor Farkas
48a258f515 loki: no histogram for instant queries (#50711) 2022-06-20 11:31:36 +02:00
Joey Tawadrous
5d65d4ce03 Traces: APM table improvements (#50969)
* Update rate and error rate query link

* Update tests for new rate and error rate links

* Update duration query

* Update tests for new duration query
2022-06-20 09:56:45 +01:00
Connor Lindsey
bd30e85031 Explore: Update service graph metrics and links (#50897) 2022-06-19 19:11:59 -06:00
Seyaji
244650835e Refactor 'Basic Settings' test to RTL from Enzyme (#51059)
* Refactor 'Basic Settings' test to RTL from Enzyme

* Update public/app/features/datasources/settings/BasicSettings.test.tsx

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

* Refactor 'Basic Settings' test to RTL from Enzyme

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2022-06-18 13:13:51 +03:00
Ryan McKinley
caa92320d7 Heatmap: use y axis settings for units (#50998)
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2022-06-17 23:30:26 +02:00
Kyle Cunningham
86b785d039 Time Series Panel: Add Null Filling and "No Value" Support (#50907)
* Use nullInsertThreshold and nullToValue in time series

* Allow for undefined timeRange to support certain candlestick uses of prepareGraphableFields

* Make sure null to value doesn't modify initial data

* Do a shallow values copy and avoid Array.push()

* Clean up null to value transformation.

* Add basic tests

* Remove redunant null threshold application flagging

* set nullThresholdApplied flag even when no null inserts were done

* Include nullThresholdApplied in test snapshot

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2022-06-17 14:38:59 -05:00
Ryan McKinley
c6f7e53e38 Heatmap: do not dim the values in the color scale legend (#50976) 2022-06-17 16:24:53 +02:00
Torkel Ödegaard
c6ab87008a Dashboard: Remove super old prop that has not been used in years (#50826) 2022-06-17 14:55:35 +02:00