Commit Graph

1401 Commits

Author SHA1 Message Date
Gilles De Mey
7dbbdc16a3
Alerting: useAbility hook for alert rules (#78231) 2023-11-28 11:48:42 +02:00
Khushi Jain
b7c74a1af6
Alerting: Migrate from aria-label e2e selectors to data-testid (#78437)
Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2023-11-27 16:24:31 +01:00
Ashley Harrison
5355131aed
Tab: Only make Tab an anchor if a href is passed (#78540)
* initial work

* only make the tab an anchor if it has a href

* move things around for smaller diff

* use content()

* eslint-disable the type assertions

* extract props into common object and add missing return statement
2023-11-23 10:51:07 +00:00
Sonia Aguilar
2acf153a26
Alerting: Simplify routing in alert form - part1 (#78040)
* Add routing option tabs

* Use alertingSimplifiedRouting feature toggle

* Move simplified routing tab to a separate component:SimplifiedRouting

* Populate contact point selector with the right values

* Show alert manager icons

* Fix descriptions

* Remove clear button on ContactPointSelector and save updated reducer state in the form

* Load contact points and manual option from rule data in RuleFormValues

* make contact point selector not clearable

* Refactor

* Add link to contact points view

* Move ContactPointSelector to a separate file

* Refactor: move hoook useReceiversMetadataMapByName to a separate file

* Update Need more info texts

* Address some PR review comments

* Use useContactPointsWithStatus hook and wrap each ContacPointSelector with AlertmanagerProvider

* use getAlertManagerDataSourcesByPermission instead of useGetAlertManagersMetadata in NotificationPreview

* Update enum

* Remove css style

* remove console

* update contact point selector

* file cleanup

* adds summary as description

* Update text in manual tab

* Fix preview routing not checking if alert manager can handle grafana alerts

* Fix typo

* remove unused location form field

* fix prettier

* fix test

* Remove unused location form field from AlertRuleNameInput

* Only use internal AlertManager for now

---------

Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2023-11-22 10:15:33 +01:00
Ben Sully
35b1e49024
Alerting: Add actions extension point to alert instances table view (#77900)
This PR adds a new [extension point][] to each row of the
alert instances table. This allows plugins to add actions
to a dropdown menu in the rightmost column of the table.
Those actions are passed the alert instance so can use it
for contextual handling.

See https://github.com/grafana/machine-learning/pull/3461
for an example of how this can be used (e.g. by Grafana Sift
here).
2023-11-20 17:43:36 +01:00
Josh Hunt
2f2be24e01
Chore: Remove unnecessary type assertions (#78009)
* Chore: Remove unnecessary type assertions

* betterer
2023-11-14 09:17:29 +00:00
Josh Hunt
4a3c148298
Chore: Stricter typing in type guards (#77809)
* Stricter typing in type guards

* create utility isObject fn

* better isAlertStateWithReason

* better name

* restore "data !== undefined"
2023-11-13 16:11:54 +00:00
Gilles De Mey
323ee7c38c
Alerting: Remove react-enable (#77955) 2023-11-09 18:35:03 +01:00
Gilles De Mey
30f2ab07f5
Alerting: Attempt to fix flakey selector (#77780) 2023-11-07 17:02:32 +01:00
Esteban Beltran
0b03344baa
Chore: Update to typescript 5 (#76511)
* Update dependency typescript to v5

* Update yarn.lock

* Fix typescript errors

* Update typescript version sdk

* Revert useDescription.ts

* Fix ts errors

* Fix Typescript errors after Symbol.unscopables type change

* Fix colormanipulator errors

* Update packages/grafana-data/src/vector/FunctionalVector.ts

* Fix ts errors in dashboardmigrator

* Fix sandbox component typescript error

* Update yarn

* Update to typescript 5.2

* Fix typescript error

* update typescript/vscode patch/sdk/whatever

* fix ts errors in elasticsearch

* Fix two errors in alerting

* Fix error in dashboard-scene

* Fix errors in dashboard tests

* Fix errors in explore tests

* Fix error in plugins sandbox

* fix error in DashboardQueryRunner

* fix errors in grafana-data

* fix errors in PanelChrome story

* update betterer

* better fix for cloud monitoring

* fix error in reducer tester

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
Co-authored-by: Josh Hunt <joshhunt@users.noreply.github.com>
Co-authored-by: joshhunt <josh@trtr.co>
2023-11-07 13:20:20 +00:00
Gilles De Mey
be436ec6f6
Alerting: Adds contact point sorting and searching (#77390) 2023-11-07 11:05:12 +01:00
Alex Khomenko
25779bb6e5
Stack: Use the component from grafana/ui (#77543)
* grafana/ui: Move Stack out of unstable

* grafana/ui: Replace imports

* Replace the import from experimental

* Cleanup

* Remove invalid prop

* Add flexGrow

* Remove Stack used in Field

* Remove import
2023-11-06 18:15:52 +02:00
Gilles De Mey
e61ebd4b06
Alerting: Do not show missing integration while loading oncall plugin status (#77710) 2023-11-06 15:51:36 +01:00
Gilles De Mey
901a6bfa69
Alerting: Use correct URL for modify export (#77714) 2023-11-06 15:50:29 +01:00
Sonia Aguilar
df7b760f37
Alerting: Disable cache in rktq when fetching export data. (#77678)
* Disable cache in rktq when fecthing export rules group

* Fix export rules data being cached

* Disable cache for the rest of export endpoints
2023-11-06 15:15:53 +01:00
Gilles De Mey
3dac37380d
Alerting: Fix export with modifications URL when mounted on subpath (#77622) 2023-11-03 16:36:53 +01:00
Sonia Aguilar
0abfc3b6be
Alerting: Update 'Create alert' to 'New alert rule' in the panel and docs (#76950)
* Update 'Create alert' to 'New alert rule' in the panel and docs

* Fix test
2023-11-02 17:33:53 +01:00
Ashley Harrison
13c0268d6b
Chore: Upgrade react-redux (#77296)
* try upgrading react-redux

* memoize getNavModel selector, don't return a new object in command palette selector

* use createSelector to memoize some alert manager selectors correctly

* memoize selectors correctly in appNotifications

* memoize some datasource selectors

* use fake timers to avoid the debounce causing flakiness

* remove duplicate import

* just use memoize-one
2023-10-31 16:24:34 +00:00
Ieva
ed88289984
Chore: remove legacy dashboard and folder permission pages (#77143)
remove legacy dashboard and folder permission pages
2023-10-31 14:23:37 +00:00
Virginia Cepeda
165a76a12b
Alerting: Fix GetStarted container width for big screens (#77397)
Fix GetStarted container width for big screens
2023-10-31 09:23:07 -03:00
Konrad Lalik
ba7a8fb75f
Alerting: Use notifications:read permission for contact points and policies export (#76954) 2023-10-31 11:51:20 +01:00
Konrad Lalik
3c915d0502
Alerting: Fix Alert rule form editing when associated panel has no id (#77209) 2023-10-31 08:38:25 +01:00
Gilles De Mey
05b6f7f396
Alerting: Apply negative matchers for route matching (#77292) 2023-10-30 18:24:21 +01:00
George Robinson
5118ac9abd
Update documentation for timezones in mute timings (#77370) 2023-10-30 17:28:01 +01:00
Gilles De Mey
06873f1be3
Alerting: Update message templates to notification templates nomenclature (#77374) 2023-10-30 16:23:14 +02:00
Konrad Lalik
214535c1a9
Alerting: Memoize labels suggestions calculation (#76972) 2023-10-27 14:38:52 +02:00
Sonia Aguilar
61f056fe15
Alerting: Show receiver in groups view to avoid duplication in the list (#77109) 2023-10-26 13:04:26 +02:00
Virginia Cepeda
8d7dfbc7b9
Alerting: changes on Insights section titles (#77163)
Minor changes on texts
2023-10-25 16:12:05 -03:00
Josh Hunt
333c858bc6
GrafanaUI: Prevent code editors from 'trapping' scroll (#77125)
* GrafanaUI: Prevent CodeEditor from 'trapping' scroll

* fix test

* fix lint for unused import
2023-10-25 19:21:54 +03:00
Konrad Lalik
4fc0294aab
Add logging prometheus and ruler rules totals (#76812) 2023-10-25 16:47:32 +02:00
Ashley Harrison
5f2fd8935d
Spinner: Fix so that the size property is correctly applied (#77135)
* correctly apply spinner sizes, refactor to have standard sizes

* better prop definitions so constant values show in IDEs

* 12 is xs, not sm
2023-10-25 15:39:32 +01:00
Gilles De Mey
e12e40fc24
Alerting: Contact Points v2 part IV (#76063) 2023-10-25 15:57:53 +02:00
Sonia Aguilar
f1ce73dc2c
Alerting: Fix NoRulesSplash being rendered for some seconds, fater creating a rule (#77048)
* Fix NoRulesSplash being rendered for some seconds, fater creating a rule

* Add ruler response/loading,dispatched,error to the logic in hasNoAlertRulesCreatedYet expression
2023-10-25 09:32:28 +02:00
Sonia Aguilar
ed54239a9f
Alerting: Dont show 1 firing series when no data in Expressions PreviewSummary (#76981)
* Dont show 1 firing series when no data in Expressions PreviewSummary

* Add comment to make clear we need to filter out undefineds for firing count

* Move logic to a new getGroupedByStateAndSeriesCount method and added test to it
2023-10-24 15:50:50 +02:00
Ashley Harrison
07cc7504ee
Icon: Simplify and remove wrapping <div> (#76819)
* remove wrapping div

* update tests, just gotta figure out how to handle fontawesome :(

* add spinner.svg which matches the font-awesome spinner

* add mock for react-inlinesvg

* update mock and fix some tests

* fix FormField test

* fix CorrelationsPage tests

* increase timeout
2023-10-24 12:16:32 +01:00
Gilles De Mey
390408b1ce
Alerting: Fix incorrect decoding for alert rules with % characters (#76148)
* fixes incorrect decoding for alert rules with % characters

* Patch history package to stop decoding path

* Rename rule id extraction function, update tests

* Fix patch file

* Fix copyFrom parameter encoding

* Fix conflict commit

* Fix test

---------

Co-authored-by: Konrad Lalik <konrad.lalik@grafana.com>
Co-authored-by: Sonia Aguilar <soniaaguilarpeiron@gmail.com>
2023-10-19 11:51:52 +02:00
Sonia Aguilar
1de65bb384
Alerting: Add Alerting menu in getPanelMenu (#76618)
* Add Alerting menu in getPanelMenu

* Add translations

* Allow alert tab, heart icon in all panel types, and not show warning in DashobardPicker panels

* Fix tests

* Move alerting submenu under 'More...' item

* Move create alert menu item to More... without submenu

* Update translations

* Revert "Allow alert tab, heart icon in all panel types, and not show warning in DashobardPicker panels"

This reverts commit 225da3f60e.

* Revert allowing alert tab and health icon for all panel types

* use onCreateAlert method name in onClick instead of new function

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

* Move getAlertingMenuAvailability method to a /features/alerting folder and rename it to getCreateAlertInMenuAvailability

* Use onCreate direclty instead of a new method

* Make getCreateAlertInMenuAvailability to return a boolean

---------

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2023-10-18 15:13:38 +03:00
Alexander Weaver
0592fe7edb
Alerting: Add support for msteams contact point in external Alertmanagers (#76392)
* Add support for msteams contact point in external AMs

* Update docs
2023-10-13 10:43:42 -05:00
Torkel Ödegaard
b01cbc7aef
Dashboard: Fixes save drawer always comparing changes against first loaded version (#76506)
* Dashboard: Fixes save changes diff after first save

* Lots of type issues

* better fix

* Update some more places to use new function

* Fix

* Update

* Update

* remove console.log

* Update
2023-10-13 16:23:23 +02:00
George Robinson
09a4fcd0fe
Alerting: Add docs for Repeat interval (#76303) 2023-10-13 10:30:13 +01:00
Yuri Tseretyan
372082d254
Alerting: Export of contact points to HCL (#75849)
* add compat layer to convert from Export model to "new" API models
2023-10-12 22:33:57 +01:00
Konrad Lalik
42f4244026
Alerting: Add rules export on a folder level (#76016) 2023-10-12 20:17:32 +03:00
Yuri Tseretyan
c4ac4eb41b
Alerting: Export of notification policies to HCL (#76411) 2023-10-12 12:10:08 -04:00
Virginia Cepeda
358b395c2b
Alerting: text updates / replace panel (#76407)
* Change text to remove "week" reference

* Add alertsByState for grafana alertmanager
2023-10-12 13:26:05 +01:00
Sonia Aguilar
fbbf9b1a8f
Alerting: Use new endpoints in the Modify Export (#75796)
Co-authored-by: Konrad Lalik <konrad.lalik@grafana.com>
2023-10-12 09:04:59 +02:00
Virginia Cepeda
ea50695cfe
Alerting: add help texts to insights (#76366)
* Change texts and add spacing between sections

* Minor text changes

* Display timeseries with 0 values if result is empty
2023-10-11 23:10:23 +01:00
Torkel Ödegaard
72a1de855c
Schema: Clean up / correct panel schema (#76346)
* Schema: Clean up / correct panel schema

* fixes
2023-10-11 15:56:42 +02:00
Ieva
5e14d93530
Chore: remove hasAccess and hasAcessInMetadata (#76237)
* remove hasAccess and hasAcessInMetadata in favour of hasPermission and hasPermissionInMetadata

* test fixes

* more test fixes
2023-10-10 12:04:07 +01:00
Jo
28c0fb1cfd
AccessControl: Remove legacy frontend AC checks (#76187)
* remove legacy ac checks

* fix RBAC disabled tests

* add permissions for tests to work

* fix unifiedalertstatesworker test
2023-10-09 18:10:06 +02:00
Josh Hunt
07266aa983
Rewrite old useStyles2 pattern to use new pattern (#76136)
* Rewrite old useStyles2 pattern to use new pattern

* fix lint from used imports
2023-10-09 10:49:08 +01:00
Torkel Ödegaard
fc0933d5f4
Schema: Clean up dashboard variables schema (#76121)
* Cleanup variable schema model

* minor fix

* remove type ignores that are no longer type errors
2023-10-09 09:10:52 +02:00
Virginia Cepeda
095749b131
Alerting: display datasource information under each section (#76070)
* display datasource information under each section

* Minor - change legend to multi in some panels that were missing it

* Don't show ds info to grafana sections

* Remove unused classname

* Remove unused import

* Fix pickers styling by placing it to the right
2023-10-06 14:36:26 -03:00
Virginia Cepeda
4d1f8f21bf
Alerting: Add timepicker and autorefresh picker to Insights (#76045)
Add timepicker and autorefresh picker
2023-10-06 09:24:45 -03:00
Ashley Harrison
171e2c1adb
Chore: Improve typings and ignore Graph (#75742)
* fix some types, ignore graph plugin as it'll be gone soon

* update comments

* more more more

* undo renderer change

* use Partial in the editor
2023-10-06 11:48:15 +01:00
Virginia Cepeda
68c25080e6
Alerting: Allow users to give feedback on each insights panel (#75990)
* Add menu to track user feedback on each pane;

* Add RatingModal component

* Open modal with panel header actions

* Fix lint
2023-10-05 09:02:18 -03:00
Virginia Cepeda
1d2bdb8f75
Alerting: improve insights UX (#75320)
* Fix legend for grafana missed iterations panel

* Change panel titles capitalization

* Change tooltip mode to "multi" for timeseries panels

* Add panel tooltips

* Change colors of series (red for firing, blue for neutral)

* Remove unneeded import

* Change panel title and firing alert colors

* Change constant timeseries panels to stat

* Avoid showing legend in panels with just one metric

* Add eval duration / interval ratio panel

* Fix legend

* Fix lint

* Rename panel titles

* Make firing instances table entries have link styling

* Fix betterer

* Add section subheaders

* Override colors and tooltip mode

* Address latest feedback

* Rename table to reflect we're showing rules data and not instances

* Rework most fired rules panel to show numbers instead of trend

* Improve legends and colors

* Fix most fired rules panel

* Missed Iterations: Override legend to display it in a more user friendly way

* Change tab names

* Position grafana-managed scenes under collapsible row

* Show breakdown of alert instances state panels

* Addressing UX feedback

- Making stat panels display area
- Change layout for grafana-managed panels
- Refactor Duration/Interval ratio scene (make calculation directly in PromQL)

* set no value as 0 in stats panels

* Refactor color overriding to use a common function

* fix missing legend for status panels (needed to override color)

* Fix legends for Grafana alertmanager Notifications scene
2023-10-04 17:29:05 -03:00
Domas
aaaef71337
Alerting: Make shareable alert rule link work if rule name contains forward slashes (#75362) 2023-10-04 13:48:55 +02:00
Gilles De Mey
d0592fce2f
Alerting: Fix incorrect field description (#75947) 2023-10-04 13:36:53 +02:00
Sonia Aguilar
1456b26075
Alerting: Fix being redirected to list view when clicking Save rule button (#75510)
* Fix: dont allow 'Save rule' button and let 'Save rule and exit' in case of new rule

* Fix tests
2023-10-03 14:55:42 +02:00
Virginia Cepeda
9076904173
Alerting: Show Insights only for cloud users (#75676)
* Add functions to detect build edition and env

* Prevent showing insights for OSS

* Use common functions for Declare Incident button

* Address review comments
2023-10-02 13:06:30 -03:00
Armand Grillet
43d0193ea6
Mention that we only list firing alert instances (#75615) 2023-09-29 15:23:51 +02:00
Sonia Aguilar
169c5262a5
Alerting: Add Modify export feature for Grafana-managed alert rules (#75114)
* Initial POC for modified rule expor

* Add rule and group export options to modified export

* Add feature toggle for modifier export

* Rename GrafanaRuleDesigner to ModifyExportRuleForm to identify it easily as a rule form

* Refactor naming and folder for RuleDesigner => ModifyExport

* Don't render more action drop-down button when no more actions are allowed

* Redirect cancel button to alert list view

* Fix modify export page being reloaded correctly without errors

* Fix test

* Protect modify-export route when toggle-feature is not enabled

* Fix css betterer error

* Address pr review coments

---------

Co-authored-by: Konrad Lalik <konrad.lalik@grafana.com>
2023-09-28 16:07:45 +02:00
Virginia Cepeda
14e94d663f
Alerting: Show panels within collapsed rows in dashboard picker (#75490)
* Show panels within collapsed rows in dashboard picker

* Fix lint

* fix lint
2023-09-27 09:15:42 -03:00
Gilles De Mey
5a1580c659
Alerting: Contact points v2 part 3 (#72444) 2023-09-26 11:44:18 +03:00
William Wernert
925f12d0ea
Alerting: Add support for keep_firing_for field from external rulers (#75163)
* Add support for `keep_firing_for` in ruler proxy

* Don't delete `keep_firing_for` when editing a rule with the field set

Co-Authored-By: Sonia Aguilar <33540275+soniaAguilarPeiron@users.noreply.github.com>

---------

Co-authored-by: Sonia Aguilar <33540275+soniaAguilarPeiron@users.noreply.github.com>
2023-09-21 16:02:53 -04:00
Virginia Cepeda
7896df7513
Alerting: Add missing scenes for grafana managed alerts (#75100)
* Add new scenes for grafana managed alerts

* Remove unused import

* Fix lint

* Remove width property from SceneFlexItem

* Add missing scenes for GMA section

* Improve scenes layout

* Add Grafana Alertmanager panels

* Fix lint

* Fix lint

* Refactor expression variables

* Apply shared styles to scenes
2023-09-21 12:07:04 -03:00
Gilles De Mey
3b2dcecbda
Alerting: Fix non-applicable error checks for cloud and recording rules (#75233) 2023-09-21 16:01:34 +02:00
Sonia Aguilar
b38454d81b
Alerting: Remove export button in alert form when editing grafana-managed alert (#75153) 2023-09-20 16:19:12 +02:00
Virginia Cepeda
0d3c47da99
[Alerting] - Display scenes using SceneAppPage for caching (#74767)
* Display scenes using SceneAppPage for caching

Also, reorganizing them in different tabs per Torkel's suggestion

* Fix lint

* Alerting home app poc

* Fix imports

* fix routing

* remove width

* Apply feature flags back

* Add comment regarding enabling the rule group query variable

* Upgrade scenes lib

* Add query variables back

---------

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2023-09-19 09:17:56 -03:00
Sonia Aguilar
7209e84cd2
Alerting: Fix returnTo expression being empty when no queryParam found (#75086)
Fix returnTo expression being empty when no queryParam found
2023-09-19 14:27:01 +03:00
Sonia Aguilar
942c4779b9
Alerting: Add export drawer when exporting all Grafana managed alerts (#74846)
* Add export formats drawer when exporting contact points

* Add 'export by format' drawer in policies (root policy)

* Add test for showing export policies button

* Add tests for Policy.tsx

* Add tests for export functionality in receivers

* Add exporter drawer for receivers

* Fix prettier warnings

* Allow HCL only for alert rules exports

* Add tests for Policies

* Fix tests

* Refactor: Update ExportProviders types for limiting the avaliable export formats when using GrafanaExportDrawer

* Delete unused shouldShowExportOption method and tests

* Add exporter drawer when clicking export all Grafana managed alerts

* Fix test

* fix prettier

* lint

---------

Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2023-09-18 10:31:19 +02:00
Sonia Aguilar
5484e0a2d5
Alerting: Add export drawer with yaml and json formats, in policies and contact points view. (#74613)
* Add export formats drawer when exporting contact points

* Add 'export by format' drawer in policies (root policy)

* Add test for showing export policies button

* Add tests for Policy.tsx

* Add tests for export functionality in receivers

* Add exporter drawer for receivers

* Fix prettier warnings

* Allow HCL only for alert rules exports

* Add tests for Policies

* Fix tests

* Refactor: Update ExportProviders types for limiting the avaliable export formats when using GrafanaExportDrawer

* Delete unused shouldShowExportOption method and tests

* Use useAlertmanagerAbility hook to check if canReadSecrets

* Update snapshot for useAbilities test

* Fix prettier

* Convert decrypt to boolean

* Fix prettier

* Rename CanReadSecrets action to DecryptSecrets

* Update the string value for DecryptSecrets

* Fix snapshor for useAbilities after renaming the can-read-secrets
2023-09-18 08:36:50 +02:00
Virginia Cepeda
db2295bea2
Alerting: Prevent showing "Permissions denied" alert when not accurate (#74887)
* Change way of obtaining external datasources info

* Remove unneeded import

* Create function to getExternalDsAlertManagers in datasource srv

* Remove unused import
2023-09-14 11:43:46 -03:00
Gilles De Mey
af392c5886
Alerting: Always show expression warnings and errors (#74839) 2023-09-14 15:05:28 +02:00
Virginia Cepeda
5d88b8a4f5
[Alerting Insights] - Use Grafana feature flag system (#74749)
Use Grafana feature flag system
2023-09-14 09:58:04 -03:00
Kyle Brandt
35e488b22b
SSE: Localize/Contain Errors within an Expression (#73163)
Changes SSE to not always fail all queries when one fails. Now only the query itself, and nodes that depend on it will error.
---------

Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2023-09-13 13:58:16 -04:00
Gilles De Mey
999aa416db
Alerting: Indicate panels without identifier (#74746) 2023-09-13 12:35:23 +02:00
Ashley Harrison
0c44a6f9bb
Chore: Improve typings 🧹 (#74599)
* various type fixes

* candlestick panel type fixes

* few more fixes

* some fixes

* more :)

* moar!

* undo change to SilencesFilter

* undo change to configureStore
2023-09-13 09:17:07 +01:00
Nutmos
ad9f0b9e4e
Alerting: Add message options for Telegram contact point (#74635)
Co-authored-by: Santiago <santiagohernandez.1997@gmail.com>
2023-09-12 10:45:57 -04:00
Gilles De Mey
bd23d48660
Alerting: useAbilities hook (#72626) 2023-09-12 15:20:39 +02:00
Gilles De Mey
6a4ba13b44
Alerting: Fix default policy timing summary (#74549) 2023-09-11 18:06:08 +02:00
Yuri Tseretyan
dce492642a
Alerting: Export of alert rules in HCL format (#73166)
* import hashicopr/hcl/v2
* add hcl package and export to HCL
* annotate export structs
---------

Co-authored-by: Konrad Lalik <konrad.lalik@grafana.com>
2023-09-11 11:48:23 -04:00
Gilles De Mey
3487e89492
Alerting: Update query options layout (#74660) 2023-09-11 15:45:46 +03:00
Gilles De Mey
1fa6623e1c
Alerting: Fix flakey test for rule group export (#74665) 2023-09-11 14:35:23 +02:00
Konrad Lalik
e7a2c95586
Alerting: Add Grafana-managed groups and rules export (#74522) 2023-09-08 16:26:54 +02:00
Sonia Aguilar
cad39b7397
Alerting: Revert "Alerting: Show annotations markers in TimeSeries panel when u… (#74576)
Revert "Alerting: Show annotations markers in TimeSeries panel when using Loki as … (#72084)"

This reverts commit de6ef53c8a.
2023-09-08 10:57:31 +02:00
Konrad Lalik
8b00d7d7af
Alerting: Fix contact points url field validation (#74510) 2023-09-07 10:58:47 +02:00
Ieva
f52936a604
Chore: remove legacy ac fallback from the route registration (#74464)
remove legacy ac fallback from the routes
2023-09-06 16:57:22 +01:00
Ieva
d46208b28a
Chore: remove legacy AC fallback from frontend access control checks (#74385)
* don't use legacy AC fallback for frontend access control checks

* extend tests

* more test fixes

* more test fixes

* more test fixes

* final test fix

* team test fix

* finally fix tests
2023-09-06 16:07:49 +01:00
Gilles De Mey
a2c93bb8bc
Alerting: Alert creation UI changes (#73835) 2023-09-06 13:24:48 +02:00
Konrad Lalik
7baf9cc033
Alerting: Custom contact point for OnCall in Grafana AM (#72021) 2023-09-06 12:33:35 +02:00
Ryan McKinley
f7522b6322
Plugins: Move filter back to DataSourceWithBackend (#74147) 2023-09-06 01:34:23 +03:00
Sonia Aguilar
d8d2f890b5
Alerting: Change export label (#74277)
Change export label
2023-09-01 16:28:23 +02:00
Gilles De Mey
94dd17a936
Alerting: Adds additional pagination to several views (#74268) 2023-09-01 14:39:47 +03:00
Virginia Cepeda
6755be66f9
Alerting: Add Insights tab (#72407)
* Add tabs for Insights/Getting Started in home page

* Display panels using the scenes framework

* Hide Insights page under a feature flag

* Add a new panel and improve ASH queries

* Improve panels layout

* Add more panels

* Change datasource UID

* Rename most fired alerts table title

* Show navigation cards on top

* Improve panels

* Add transformation to display link to view alert rule

* Restructure panels

* Fix panels layout

* Fix grid layout in landing tab

* Add transformation to most fired rules table

* Move grafana-specific scenes under dedicated folder

* Add scene with custom datasource that queries an API

* Add scenes panels for more datasources

Not just ASH but including grafanacloud-usage and grafanacloud-prom metrics

* Changes to grafana panels

* Add per rule group scenes with query variables

Also improve existing panels legends/formatting

* Fix lint

* Fix legends for some panels

* Fix lint

* Move files under new alerting home directory

* Refactor transformation in MostFiredInstancesTable scene

* fix lint

* Display panels in collapsable sections

* Improvements to data displayed in several panels
2023-08-31 17:01:47 -03:00
Sonia Aguilar
2a2689a7c2
Alerting: Refactor AlertRuleForm and fix annotations step description for cloud rules (#74168)
Refactor AlertRuleForm and fix annotations step description for cloud rules
2023-08-31 16:51:06 +02:00
Gilles De Mey
f1079b0a05
Alerting: Paginate silences table(s) (#74041) 2023-08-29 18:07:05 +02:00
Konrad Lalik
45a8ca3111
Alerting: Fix labels suggestions Grafana-managed rules (#73983) 2023-08-29 14:05:03 +02:00
Gilles De Mey
c761f2e4d9
Alerting: Fix flakey test in CloneRuleEditor (#73997) 2023-08-29 14:12:37 +03:00
Ashley Harrison
0853819ff7
Chore: friday typings 5 (#73844)
* fix some event.target as stuff

* segment async story

* segmentinput story

* SegmentSelect

* fixing some tests

* more test fixes

* undo change to SilencesFilter
2023-08-29 09:14:15 +01:00
Gilles De Mey
39077769a8
Alerting: Fix data source copy when switching alert rule types (#73854) 2023-08-25 20:24:50 +02:00
Gilles De Mey
70dc5610c0
Alerting: Fix delete cloud rule from detail page (#73850) 2023-08-25 17:39:35 +02:00
Konrad Lalik
e7a2c86af8
Alerting: Fix secure settings migration (#73749)
Fix secure settings migration
2023-08-24 14:46:19 +01:00
jvmdc
7bcb3597fe
Alerting: Fix auto-completion snippets for KV properties (#73394) 2023-08-24 11:23:08 +02:00
Gilles De Mey
a01a903492
Alerting: Fix incorrect timing meta information for policy (#73675) 2023-08-23 17:12:24 +02:00
Virginia Cepeda
27fb922f9b
Alerting: Add new Recording Rule button when the list is empty (#73502)
* Add button to create RR when there are no alerts

* Remove unneeded import

* Change cards to be shown vertically
2023-08-22 13:05:22 -03:00
Virginia Cepeda
2c9b74b651
Alerting: Fix Recording Rule QueryEditor builder view (#73348)
* Add missing props when changing recording rule query

* Use optional chaining for model prop
2023-08-22 10:13:55 -03:00
Konrad Lalik
7631b0cf3f
Alerting: Improve tests setup (#73316) 2023-08-22 13:50:41 +02:00
Yuri Tseretyan
90e3f516ff
Alerting: Update Discord settings to treat 'url' as a secure setting (#69588)
* make discord url secure

* support migrating unsecure settings to secure settings

* Update public/app/features/alerting/unified/utils/receiver-form.ts

Co-authored-by: William Wernert <william.wernert@grafana.com>

---------

Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
Co-authored-by: William Wernert <william.wernert@grafana.com>
2023-08-16 09:03:56 +02:00
Ashley Harrison
963fffeef1
Chore: fix some more types (#72726)
fix some more types
2023-08-14 16:04:04 +01:00
Virginia Cepeda
6c007641e0
Alerting: Remove dump wrapper for yaml config (#73169)
Remove dump wrapper for yaml config
2023-08-13 11:12:28 +02:00
Gilles De Mey
51a67b99f2
Alerting: Always invalidate the AM config after mutation (#73162) 2023-08-11 08:36:49 +02:00
Gilles De Mey
d9695eb507
Alerting: Add "no-rules" to redirect to rule viewer (#73111) 2023-08-09 17:17:41 +02:00
Konrad Lalik
df3d10606d
Alerting: Optimize rule details page data fetching (#72977) 2023-08-08 20:36:38 +02:00
Yuri Tseretyan
6b4a9d73d7
Alerting: Export contact points to check access control action instead legacy role (#71990)
* introduce a new action "alert.provisioning.secrets:read" and role "fixed:alerting.provisioning.secrets:reader"
* update alerting API authorization layer to let the user read provisioning with the new action
* let new action use decrypt flag
* add action and role to docs
2023-08-08 19:29:34 +03:00
Gilles De Mey
ddc3784213
Alerting: Fix "see graph button" for cloud rules (#72980)
Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2023-08-07 17:19:29 +02:00
Konrad Lalik
4b73e96d93
Alerting: Fix cloud rules editing (#72927) 2023-08-04 16:46:58 +02:00
Laura Fernández
7ec9a0c9da
GLDS: Move Text component from the unstable package to grafana-ui (#72660) 2023-08-02 14:58:00 +02:00
Ashley Harrison
e0587dfb30
Chore: Replace deprecated usage of shape.borderRadius() (#72672)
* properly mark borderRadius() as deprecated, replace borderRadius() with default

* undo a couple of changes

* use radius.pill in FilterPill
2023-08-01 14:46:07 +01:00
Sonia Aguilar
de6ef53c8a
Alerting: Show annotations markers in TimeSeries panel when using Loki as … (#72084)
* WIP: Show annotations markers in TimeSeries panel when using Loki as alert state history

* WIP changes

* Fix converting log records to data frame for panel

* Move fetching alert state history with Loki to the PannelQueryRunner to keep the panel flow

* use dasboardUID and panelUID for requesting Loki ash

* fix wrong prettier change

* Only request loki ash when having alertstate

* Use panelID as param in history query

* Refactor: move getRuleHistoryRecordsForPanel and remove filtering code as is not used

* Adress PR review comments

* Add try catch for ash request

* Add tests for updatePanelDataWithASHFromLoki method

* Address PR review suggestions

* review suggestion

* Add test for logRecordsToDataFrameForPanel method

* pr Review nit suggestion

* Dont show toast messages from Loki request
2023-08-01 12:00:39 +02:00
Gilles De Mey
f10527cfe3
Alerting: Contact points v2 part 2 (#71135) 2023-07-27 13:28:00 +02:00
Ivan Ortega Alba
8415dd40d7
DSPicker: Use new DS picker everywhere in Grafana (#70609) 2023-07-26 18:40:51 +02:00
Sonia Aguilar
19b239fba0
Alerting: Fix inconsistencies in alert rule form depending on alert type (#72287)
* Fix inconsistencies in alert rule form depending on alert type

* Fix default annotations when comming from dashboard panel

* Update texts following pr review comments

* Fix texts

---------

Co-authored-by: Virginia Cepeda <virginia.cepeda@grafana.com>
2023-07-25 17:34:14 -03:00
Virginia Cepeda
fe77d039e6
Alerting: Prevent showing View YAML button on new rules (#72278) 2023-07-25 10:59:08 -03:00
jakuzure
b503434bd3
Alerting: Fix typo when no rules exist (#72250) 2023-07-25 11:46:38 +02:00
Matthew Jacobson
cfb1656968
Alerting: Add notification policy provisioning file export (#70009)
* Alerting: Add notification policy provisioning file export

- Add provisioning API endpoint for exporting notification policies.
- Add option in notification policy view ellipsis dropdown for exporting.
- Update various provisioning documentation.
2023-07-24 17:56:53 -04:00
Matthew Jacobson
8ffd2a71d3
Alerting: Add min interval option to alert rule query creation (#71986)
This features adds a configuration option when creating an alert rule query. This option already exists as part of the alert query model but is not currently configurable through the UI.
2023-07-24 11:20:55 -04:00
Virginia Cepeda
45b5b81db6
Alerting: Add View YAML button for Grafana/provisioned rules (#71983)
* Add View YAML button for grafana/provisioned rules

* Address PR comments
2023-07-24 11:35:26 -03:00
Josh Hunt
f3235ba959
NestedFolders: Rename FolderPicker to OldFolderPicker (#72098)
* Rename FolderPicker to OldFolderPicker

* fix jest mock

* fix jest mock
2023-07-21 13:24:43 +00:00
Matthew Jacobson
13121d3234
Alerting: Add contact point provisioning file export (#71692)
* Add contact point provisioning file export apis

* Regenerate api

* docs

* frontend

* add mock to tests

* Fix missing row-level export button on viewer role w/ prov. read

* Address review comments

---------

Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2023-07-20 14:35:56 -04:00
Laura Fernández
47f70bdb00
GLDS: Text component (#71439) 2023-07-20 12:59:42 +02:00
Gilles De Mey
6d1ff7f416
Alerting: Fix edit / view of webhook contact point when no authorization is set (#71965) 2023-07-19 19:24:14 +02:00
Sonia Aguilar
4a59022fe8
Alerting: Update texts in alert rule form (#71831)
* Update texts in alert rule form

* Update default policy text
2023-07-18 16:58:45 +02:00
Gilles De Mey
ba470fb34d
Alerting: Fix renaming queries and rewiring expressions (#71657) 2023-07-18 16:44:36 +02:00
Virginia Cepeda
5faf5e48ea
Alerting: Changes to evaluation group step (#71251)
* Initial changes to evaluation group step

* Add separate buttons for folder and eval group creation

* Implement folder creation from a modal

* Reset group upon folder creation

* Implement creation of evaluation group in modal

* Changes to evaluation group edit modal

* Fix tests

* Address review comments

* Fix tests

* Refactor to avoid passing AsyncRequestState as prop

* Refactor to avoid passing AsyncRequestState as prop
2023-07-18 10:56:02 -03:00
Sonia Aguilar
ec479b8d88
Alerting: Save and restore condition reference while switching type (#71629)
Save and restore condition reference while switching type
2023-07-18 10:06:47 +02:00
Ashley Harrison
9852b24d61
Chore: Upgrade prettier to v3 (#71764)
* Update dependency prettier to v3 (#71586)

* Update dependency prettier to v3

* run prettier

* ignore prettier update in legacy select scss

* update command line arg

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>

* unplug prettier

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-07-17 15:58:22 +01:00
Ashley Harrison
5ca382c88a
Revert "Update dependency prettier to v3 (#71586)" (#71755)
This reverts commit 2e8cd1c021.
2023-07-17 14:46:15 +01:00
renovate[bot]
2e8cd1c021
Update dependency prettier to v3 (#71586)
* Update dependency prettier to v3

* run prettier

* ignore prettier update in legacy select scss

* update command line arg

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2023-07-17 09:19:27 +01:00
Gilles De Mey
fc5d43e1bf
Alerting: refactor fetchAlertManagerConfigAction to use RTK Query (#71261) 2023-07-14 16:53:50 +02:00
renovate[bot]
cbc44751b2
Update dependency immer to v10 (#71583)
* Update dependency immer to v10

* use named export now that the default has been removed

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2023-07-13 18:52:59 +03:00
Sonia Aguilar
718401d250
Alerting: Add smart type selection when creating a new alert rule (#71071)
* Add smart type selection when creating a new alert rule

* Auto switch when switch button has not been clicked yet

* remove unnecessay code after the last refacgtor

* Refactor

* Remove unneeded prop

* Move SmartAlertTypeDetector to its own file

* Fix tests

* Refactor: new useSetExpressionAndDataSource hook

* Fix expressions not been propagated when switching from one type to another

* Change texts

* Update tests

* Update text in switch button

* Update texts and tests

* Refactor: move code to getCanSwitch new method

* Move smart alert after queries and remove auto-switch

* Remove expressions and restore them when switching between grafana and cloud type

* Rename previous expression state

* Fix tests

* Add data source name for data source-managed alert selection

* Update reducer when changing cloud data source

* PR review suggestions

* PR review suggestions 2nd part

* PR review suggestions 3th part

* Fix canSwitch

* Update texts on smart alert

---------

Co-authored-by: Virginia Cepeda <virginia.cepeda@grafana.com>
2023-07-13 17:02:47 +02:00
Gilles De Mey
0be9658064
Alerting: Adds support for toggling common labels (#71497) 2023-07-13 17:00:49 +03:00
Gilles De Mey
bd9b0d6d82
Alerting: Support spaces in alert names for creating silence links (#71280) 2023-07-13 14:24:25 +02:00
Sonia Aguilar
82a5770376
Alerting: Fix state in expressions footer (#71441)
Fix state in expressions footer
2023-07-12 13:44:39 +02:00
Gilles De Mey
82f0ef6871
Alerting: Add support for additional colors in MetaText (#71299)
add support for additional colors in MetaText
2023-07-11 11:11:25 +02:00
Matthew Jacobson
e3787de470
Alerting: Fix Alertmanager change detection for receivers with secure settings (#71307)
* Alerting: Make ApplyAlertmanagerConfiguration only decrypt/encrypt new/changed secure settings

Previously, ApplyAlertmanagerConfiguration would decrypt and re-encrypt all secure settings. However, this caused re-encrypted secure settings to be included in the raw configuration when applied to the embedded alertmanager, resulting in changes to the hash. Consequently, even if no actual modifications were made, saving any alertmanager configuration triggered an apply/restart and created a new historical entry in the database.

To address the issue, this modifies ApplyAlertmanagerConfiguration, which is called by POST `api/alertmanager/grafana/config/api/v1/alerts`, to decrypt and re-encrypt only new and updated secure settings. Unchanged secure settings are loaded directly from the database without alteration.

We determine whether secure settings have changed based on the following (already in-use) assumption: Only new or updated secure settings are provided via the POST `api/alertmanager/grafana/config/api/v1/alerts` request, while existing unchanged settings are omitted.

* Ensure saving a grafana-managed contact point will only send new/changed secure settings

Previously, when saving a grafana-managed contact point, empty string values were transmitted for all unset secure settings. This led to potential backend issues, as it assumed that only newly added or updated secure settings would be provided.

To address this, we now exclude empty ('', null, undefined) secure settings, unless there was a pre-existing entry in secureFields for that specific setting. In essence, this means we only transmit an empty secure setting if a previously configured value was cleared.

* Fix linting

* refactor omitEmptyUnlessExisting

* fixup

---------

Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2023-07-11 08:23:07 +02:00
Gilles De Mey
1945f2b64e
Alerting: Use new "Label" components for alert instance labels (#70997) 2023-07-10 13:03:35 +02:00
Gilles De Mey
089305e399
Alerting: improve provisioning indicator for notification policies (#71160) 2023-07-07 14:00:53 +03:00
Sonia Aguilar
00e9185b1a
Alerting: Add legend for mixed in Loki alert history and use highlight instead of scroll (#71131)
* Add legend for mixed in Loki alert history

* Highlight row in the log list while hovering in the timeline instead of srcolling into it

* update some of the styles

---------

Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2023-07-07 09:10:10 +02:00
Gilles De Mey
441660b7b4
Alerting: Details page v2 feature flag (#69326) 2023-07-06 13:16:47 +02:00
Virginia Cepeda
549e04a8f1
Alerting: Keep rule form buttons always on top (#71056)
* Keep form buttons always on top

* Fix tests
2023-07-05 13:47:15 +02:00
Virginia Cepeda
db2770d992
Alerting: Improve time range and max data points info in QueryEditor (#70867)
* Add component to display QueryOptions in editor

* Display QueryOptions in QueryWrapper

* Display real data for time range and max data points

* Improve QueryOptions styling

* Remove Portal from RelativeTimeRangePicker

* Prevent RefID from hiding on small screens

Fixes https://github.com/grafana/grafana/issues/70900

* Address review comments

* Fix lint
2023-07-04 11:17:14 -03:00
Gilles De Mey
368afc211c
Alerting: Contact points v2 – part 1 (#70643) 2023-07-04 12:47:19 +02:00
Gilles De Mey
df3888ba60
Alerting: Refactor Alertmanager picker (#70720) 2023-07-04 13:07:05 +03:00
Ashley Harrison
7a2a5dde8b
Chore: Enable remaining jsx-a11y rules (#70990)
enabling remaining a11y rules + ignore existing violations
2023-06-30 16:58:16 +01:00
Sonia Aguilar
97420119e1
Alerting: Reduce number of unnecessary request in the alert list panel in case … (#70583)
* Reduce number of unnecessary request in the alert list panel in case we have data source filter selected

* use fetchPromAndRulerRulesAction instead of fetchAllPromAndRulerRulesAction in case of having datasource selected in options

* remove unnecessary useEffect

* Reduce number of requests in GroupBy component if data source is selected

* use redux utils for asyncmapslice

* lint

* Address review comments

* Skip fetching grafana rules if datasource is not Grafana rules source name

---------

Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2023-06-30 15:16:14 +02:00
Ashley Harrison
9ee2cc742a
Chore: Use theme.shape.radius.circle everywhere (#70896)
* use theme.shape.radius.circle everywhere

* add useTheme2 import
2023-06-29 13:56:05 +01:00
Alexander Weaver
f94fb765b5
Alerting: Add limit query parameter to Loki-based ASH api, drop default limit from 5000 to 1000, extend visible time range for new ASH UI (#70769)
* Add limit query parameter

* Drop copy paste comment

* Extend history query limit to 30 days and 250 entries

* Fix history log entries ordering

* Update no history message, add empty history test

---------

Co-authored-by: Konrad Lalik <konrad.lalik@grafana.com>
2023-06-28 13:32:28 -05:00
Sonia Aguilar
c7ddf29cdf
Alerting: Add NeedHelpInfo component in notifications step. (#70740)
Add NeedHelpInfo component in notifications step and use it in annotations step (instead of HoverCard) for consistency
2023-06-27 16:46:56 +02:00
Sonia Aguilar
b0ac49926d
Alerting: Expression card improvements (#70395)
* Show description for each expression type in the body and change widht depending on the type

* Move condition indicator to the header

* Make order of fields in expressions to be consistent for each expression type

* Add tooltip for expression type menu

* Update styles depending on the expression type

* Update styles and move add query button under queries

* Add NeedHelpInfo component

* Adress PR review comments

* Apply description updates from #70540

* Rename gelTypes to expressionTypes

* Update layout for expressions according to the real usecases

* Update footer to include series count in all expressions

---------

Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2023-06-27 11:35:56 +02:00
Virginia Cepeda
e03f61fe26
Alerting: don't copy original rule uid when cloning (#70645)
* Prevent using original rule uid when cloning

* Use uid from url instead of a new param in the alert rule form

* Add function to clone rule and tests for it

* Fix lint & tests

---------

Co-authored-by: Sonia Aguilar <soniaaguilarpeiron@gmail.com>
2023-06-26 17:44:26 -03:00
Gilles De Mey
9e0f6ceb57
Alerting: small typescript fix for Policy (#70655) 2023-06-26 13:19:33 +02:00
Konrad Lalik
9ebede1e18
Alerting: Display a warning when a contact point is not in use (#70506) 2023-06-26 11:05:44 +02:00
Virginia Cepeda
f17c49e632
Alerting: Display correct results when using different filters on alerting panels (#70482)
* Trigger separate rules request for each alerting panel in a dashboard

* Add RTK method to fetch prom rules

* Use RTKQuery to get prom rules in UnifiedAlertList

* Fix lint

* Mock promRules call

* Address PR comments

* Fix tests
2023-06-23 14:15:24 -03:00
Gilles De Mey
dc7e967cd4
Alerting: Fixes clone url for instances hosted on sub path (#70543) 2023-06-23 14:29:47 +02:00
Virginia Cepeda
929d9eaa91
Alerting: Change how we display annotations in the rule form (#69338)
* Change how we display annotations in the rule form

* Allow to add custom annotations using a free text input

* Get dashboard and panel titles to display in the annotations section

* Add component to display dashboard and panel annotations as links

* Add styling to help tooltip

* Fix styling on annotations controls

* Fix tests

* Fix tests

* Remove unused imports

* Add component for custom annotations

* Display default annotations even if editing and they're empty

* Adjust tests

* Make conditional rendering more clear

* Fix tests

* Move annotation header to separate component

* Fix lint

* Show annotation fields in the right order

* Prevent showing custom annotation fields by default

* Don't display links to dashboard/panel if response fails

* Rename custom annotation header component

* Fix after rebase
2023-06-21 11:15:12 -03:00
Sonia Aguilar
e6243f72fd
Alerting: Add file and rule_group query params in request for filtering the res… (#70379)
* Add file and rule_group query params in request for filtering the response when loading rule in view mode

* Fix test
2023-06-21 09:08:20 +02:00
Piotr Jamróz
a94ba7784a
Explore: Remove storing derived "loading" property (#70324)
* Remove storing derived state (loading property) and use a selector instead

* Remove redundant tests

There's no way to change the interval while live streaming

* Remove check for isLive when deriving waiting for data

It was introduced in #18804

* Remove unused props
2023-06-20 17:38:05 +02:00
Matias Chomicki
fd6836e326
Cloud rules: fix hardcoded conditional (#70387) 2023-06-20 16:39:48 +02:00
Gilles De Mey
5c4571f231
Alerting: Align notification policies design (#70345) 2023-06-20 15:49:54 +03:00
Gilles De Mey
87884f4d41
Alerting: Allow selecting the same custom group when swapping folders (#70337) 2023-06-20 11:28:24 +02:00
Sonia Aguilar
9a252c763a
Alerting: Add notification policies preview in alert creation (#68839)
* Add notification policies preview in alert rule form
Co-authored-by: Konrad Lalik <konrad.lalik@grafana.com>

* Refactor using new useGetPotentialInstances hook and apply some style changes

* Add notification policy detail modal

* Use backtesting api for simulating  potential alert instances

* Fix logic to travserse all the children from the root route

* Split notification preview by alert manager

* Add instance count to matching policy header and fix some styles

* Move some logic to a new hook useGetAlertManagersSourceNames to make the code more clean

* Fix some tests

* Add initial test for NotificationPreview

* Use button to preview potential instances

* Add link to contact point details

* Add route matching result details

* Show AlertManager image in the routing preview list

* Add tests setup, add single AM preview test

* Handle no matchers and no labels use case

* Update some style in collapse component and fix policy path in modal

* Update modal styles

* Update styles

* Update collapse header styling

* Normalize tree nodes should happen before findMatchingRoutes call

* Fix findMatchingRoutes and findMatchingAlertGroups methods after reabasing

* Move instances matching to the web worker code

* Fix config fetching for vanilla prometheus AMs

* Add tests

* Add tests mocks

* Fix tests after adding web worker

* Display matching labels for each matching alert instance

* Add minor css improvements

* Revert changes added in Collapse component as we don't use it anymore

* Move the route details modal to a separate file

* Move NotificationRoute and preview hook into separate files

* Fix Alertmanager preview tests

* Fix tests

* Move matcher code to a separate file, improve matcher mock

* Add permissions control for contact point edit view link

* Fix from and to for the temporal use of backtesting api

* Fix tests, add lazy loading of the preview component

Co-authored-by: Sonia Aguilar <soniaaguilarpeiron@gmail.com>

* Fix preview test

* Add onclick on the header div so it collapse and expands when clicking on it, and update styles to be consistent with the rest of tables

* Adapt the code to the new rule testing endpoint definition

* Fix tests

* small changes after reviewing the final code

* compute entire inherited tree before computing the routes map

* Throw error in case of not having receiver in routesByIdMap and add test for the use case of inheriting receiver from parent to check UI throws no errors

* Add list of labels in the policy route path that produces the policy matchers to match potential instances

* Use color determined by the key, in label tags when hovering matchers in the policy tree

* Remove labels in modal and handle empty string as receiver to inherit from parent as we do with undefined

* Revert "Add list of labels in the policy route path that produces the policy matchers to match potential instances"

This reverts commit ee73ae9cf9.

* fix inheritance for computeInheritedTree

* Fix message shown when preview has not been executed yet

* First round for adressing PR review comments

* Adress the rest of PR review commments

* Update texts and rename id prop in NotificaitonStep to alertUid

---------

Co-authored-by: Konrad Lalik <konrad.lalik@grafana.com>
Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2023-06-19 13:32:17 +02:00
Virginia Cepeda
160ff360c4
Alerting: Make QueryEditor not collapsable (#70112)
* Add option to make QueryEditor not collapsable

* Make QueryEditor not collapsable in Alerting

* Change query editor border to weak

The medium border is really only for inputs, everything else should use weak border

* Add tests
2023-06-16 15:14:00 -03:00
Gilles De Mey
69b1153205
Alerting: Contact Points v2 feature flag (#70165) 2023-06-16 16:19:44 +02:00
Gilles De Mey
7952907e48
Alerting: Allow executing "hidden" queries (#70064) 2023-06-16 13:14:46 +02:00
Gilles De Mey
a00d7770bc
Alerting: Show disabled provisioned evaluation group (#69932) 2023-06-13 11:26:01 +02:00
Ashley Harrison
266751b96d
NestedFolders: stay in the modal whilst actions complete (#69730)
* stay in the modal whilst actions complete

* don't return anything here to fix types

* ensure we're always resetting button state
2023-06-12 16:53:17 +01:00
Gilles De Mey
f94e07f5a4
Alerting: Fix notification policies inheritance algorithm (#69304) 2023-06-08 13:01:40 +02:00
Laura Benz
24502c4c4a
Add tooltip to instances of IconButton (#68880)
* refactor: tooltip is required

* refactor: add tooltips

* refactor: add tooltips

* refactor: add tooltips

* refactor: add tooltips

* refactor: add tooltips

* refactor: add tooltips

* refactor: adjust tests

* refactor: apply changes from code review

* refactor: adjust component for e2e test

* refactor: adjust fallback

* refactor: apply changes from code review

* refactor: apply changes from code review

* refactor: set IconButton default as type=button and remove from use cases

* refactor:  remove aria-labels when duplicated and type=button from use cases

* refactor: clean up

* refactor: fix tests

* refactor: fix type errors

* refactor: remove changes in order in order to add them to a separate PR

* refactor: set IconButton default as type=button

* refactor: remove tooltip

* refactor: apply changes requested in review
2023-06-08 10:23:28 +02:00
Gilles De Mey
8a8b5da1ee
Alerting: Use monaco editor for admin page (#69514) 2023-06-07 16:21:36 +02:00
Gilles De Mey
a91de30f99
Alerting: Support newer http_config struct (#69452) 2023-06-07 16:21:22 +02:00
Sonia Aguilar
848eb01a89
Alerting: Fix broken UI because of query being optional for some ExpressionQuer… (#69650)
* Fix broken UI because of query being optional for some ExpressionQuery coditions field

* Delete query field from conditions in utils.test.ts
2023-06-07 10:58:08 +02:00
Virginia Cepeda
e6e88aa528
Alerting: Display error if repeat interval is lower than group interval (#69413)
* Display error if repeat interval is lower than group interval

* Small change

* Update tests
2023-06-02 11:18:26 -03:00
Virginia Cepeda
fb7993d021
Alerting: Fix matching labels with spaces in their values (#68909)
Fix matching labels with spaces in their values
2023-05-31 17:10:00 -03:00
Virginia Cepeda
e796063a1e
Alerting: Reorder new alert and export buttons (#68418)
* Add component for rule creation and dropdown

* Make each route type have a different path

* Remove unneeded import

* Fix tests

* Rename CreateRuleButton to MoreActionRuleButtons

* Remove Recording Rule option from new rule form

* Use alerting and recording for path params on new rules

* Fix tests

* Only show new button if permissions are granted

* Fix tests
2023-05-31 10:56:54 -03:00
Gilles De Mey
deb13ef611
Alerting: Add more context to delete modals (#69244) 2023-05-31 12:47:17 +03:00
Gilles De Mey
7e924e0d74
Alerting: Smaller fixes for long namespace / group names (#69095) 2023-05-31 11:43:06 +02:00
Virginia Cepeda
ce0c1f0b0b
Alerting: Prevent assigning duplicated query/expression names (#68664)
Prevent assigning duplicate query/expression names
2023-05-30 10:52:21 -03:00
Konrad Lalik
2f0728ac67
Alerting: Matching instances preview for notification policies (#68882)
* Basic implementation in web worker

* Move instances discovery to the worker

* Remove filtering from the worker

* Use normalized routes, use rtk query for alert groups fetching

* Reorganize matchers utilities to be available for web workers

* Move object matchers to the machers util file, rename worker

* Move worker code to a separate hook, add perf logging

* Add a mock for the web worker code, fix tests

* Fix tests warnings

* Remove notification policy feature flag

* Add normalizeRoute tests, change the regex match to test for label matching

* Move worker init to the file scope

* Simplify useAsyncFn hook

* Use CorsWorker as a workaround for web workers loading from CDN

* Use a feature flag to enable/disable worker-based preview, add worker error handling

* Add POC for react-enable working with grafana feature toggles

* Code cleanup

* Remove console error, add useRouteGroupsMatcher tests

* Fix tests mock
2023-05-30 15:15:22 +02:00
Gilles De Mey
721d51a497
Alerting: Adds support for timezones in mute timings (#68813) 2023-05-25 16:19:33 +02:00
Gilles De Mey
73681a251e
Alerting: Add support for Alert State History Loki primary (#69065)
add support for multiple ash targets with loki as primary
2023-05-25 16:09:44 +03:00
Virginia Cepeda
1763b82b5d
Alerting: fix moment when rule list navigation is tracked (#68663)
* Track rule list navigation only on page load

* update tests

* Fix lint

---------

Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2023-05-22 14:26:20 -03:00
Konrad Lalik
b37a6e9d4c
Alerting: Fix stale query preview error (#68619)
* Use mutable ref to keep queries to be previewed to prevent stale state

* Extract code related to AlertQueryRunner to a separate hook

* Use hooks form state to keep fresh queries, fix recording rules preview

* Remove unused import

* Update query update explanation
2023-05-22 16:23:30 +02:00
Gilles De Mey
a44ac0ed63
Alerting: Add additional contact points for external AM (#67920) 2023-05-22 11:43:12 +02:00
Konrad Lalik
fcc649dc39
Revert "Alerting: Enable alerts preview on notification policies page" (#68671)
Revert "Alerting: Enable alerts preview on notification policies page (#68291)"

This reverts commit f7b8a666f4.
2023-05-18 09:39:50 +02:00
Ashley Harrison
82114cb316
NestedFolders: Show Dashboard and Folder full breadcrumb hierarchy (#68308)
* update FolderDTO to match backend struct

* hacky way to get folder page breadcrumbs working

* hacky way to get dashboard nested breadcrumbs working

* undo route changes, get url from folder

* fix breadcrumbs in dashboard settings

* add parent pages to navIndex

* adjust getRootSectionForNode to just return the parent of a leaf node

* undo changes to generated files

* undo changes to toggles_gen.go

* feature toggle dashboardInit code

* remove unnecessary code in home dashboard

* build navModel directly, don't use getNavModel

* don't need fallback here

* remove getLoadingNav since it's not used anymore

* don't need to hide tabs from breadcrumbs anymore

* use id to find dashboards tab
2023-05-16 13:54:44 +01:00
Konrad Lalik
f7b8a666f4
Alerting: Enable alerts preview on notification policies page (#68291)
* Basic implementation in web worker

* Move instances discovery to the worker

* Remove filtering from the worker

* Use normalized routes, use rtk query for alert groups fetching

* Reorganize matchers utilities to be available for web workers

* Move object matchers to the machers util file, rename worker

* Move worker code to a separate hook, add perf logging

* Add a mock for the web worker code, fix tests

* Fix tests warnings

* Remove notification policy feature flag

* Add normalizeRoute tests, change the regex match to test for label matching

* Move worker init to the file scope

* Simplify useAsyncFn hook
2023-05-15 16:53:03 +02:00
Laura Benz
e7dc3575d1
Design System: Refactor IconButton and update documentation (#66774)
* refactor: remove unnecessary styling and adjust to button styling

* refactor: improve story

* refactor: use new default styling for border radius

* refactor: add missing pseudo classes and clean up

* refactor: repair disabled styling and add to story

* refactor: clean up and apply styles defined in figma

* refactor: set hover background in a pseudo-element

* refactor: unify large sizes

* refactor: add information for further use

* refactor: add comment

* refactor: comments and clean up import

* refactor: add changes after code review

* refactor: replace some bad example code in documentation

* refactor: update comment

Co-authored-by: Joao Silva <100691367+JoaoSilvaGrafana@users.noreply.github.com>

* refactor: add changes requested in review

* refactor: move deprecation warning

* refactor: replace padding

* refactor: remove local styling

* refactor: create separate stories for different examples

* refactor: change style of story

* refactor: replace absolute value by variable

* Update toggles_gen.go

---------

Co-authored-by: Joao Silva <100691367+JoaoSilvaGrafana@users.noreply.github.com>
2023-05-15 13:57:18 +02:00
Torkel Ödegaard
debf04eb2c
Modals: Be more consistent with Modal cancel button styling (#68302)
* Modals: Be more consistent with Modal cancel button styling

* Update docs

* Fix tests

* fixing tests
2023-05-12 09:21:07 +02:00
Virginia Cepeda
c67bafbd5a
Alerting: Survey changes (#68043)
* Track alert rule list navigation

* Change min user creation date to 7 days

* Fix tests
2023-05-10 13:26:57 -03:00
Virginia Cepeda
e1ff434917
Alerting: Change text on cloud AM email addresses for contact points (#68143) 2023-05-10 10:44:17 +02:00
Gilles De Mey
5d047160e9
Alerting: Update contact point state semantics (#67994) 2023-05-09 17:58:15 +02:00
Virginia Cepeda
29801a5ec0
Alerting: Fix condition on invalid interval dropdown (#68024)
Fix condiiton on invalid interval dropdown
2023-05-08 14:24:57 -03:00
Virginia Cepeda
e7f11f2456
Alerting: Show export button for org admins (#67939)
Show export button for org admins
2023-05-08 09:28:09 -03:00
Sonia Aguilar
97802e44a6
Alerting: Make two boxes in template form adaptative to the screen (#67967)
Make two boxes in template form adaptative to the screen width to be align in the same line when possible
2023-05-08 11:32:46 +02:00
Armand Grillet
6b51f9e06d
Update error message when Alertmanager configuration override (#67895) 2023-05-05 11:38:35 +02:00
Sonia Aguilar
49ff85ef54
Alerting: Fix action buttons label and placement in several views following standard and being consistent with the rest of the ui (#67799)
* Fix action buttons label and placement in several views following standard and being consistent with the rest of the ui

* Update public/app/features/alerting/unified/components/mute-timings/MuteTimingForm.tsx

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

* Fix secondary buttons to not have outline

---------

Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2023-05-04 17:05:26 +02:00
Gilles De Mey
dafd202bb2
Alerting: Fix "show all instances" (#67833) 2023-05-04 16:26:30 +03:00
Sonia Aguilar
d10ee8263c
Alerting: Change order of buttons bellow payload data editor (#67830)
Change order of buttons bellow payload data editor
2023-05-04 15:23:08 +02:00
Ashley Harrison
37378c4dd8
Navigation: more nav interface cleanup (#67708)
more nav interface cleanup
2023-05-04 14:17:44 +01:00
Virginia Cepeda
3c42dea10b
Alerting: Use standard validation/error pattern on group selection (#67787) 2023-05-04 14:30:25 +02:00
Oleg Zaytsev
c378dbb01b
AlertRuleForm: s/Edit yaml/Edit YAML/ (#67714)
YAML is an acronym and should be uppercased when used in texts.

Signed-off-by: Oleg Zaytsev <mail@olegzaytsev.com>
Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2023-05-03 18:57:18 +03:00
Virginia Cepeda
049029b6a2
Alerting: Fix banner button variant (#67750)
Fix banner button variant
2023-05-03 12:43:45 -03:00
Sonia Aguilar
8166453f9f
Alerting: Fix export button variant (#67742)
Fix export button variant
2023-05-03 17:01:20 +02:00
Virginia Cepeda
471a03328b
Alerting: Allow to tab onto elements for a11y (#67684)
* Make search popover be tabbed onto

Co-Authored-By: Sonia Aguilar <33540275+soniaAguilarPeiron@users.noreply.github.com>

* Allow tokens in rule description to be tabbed onto

Co-Authored-By: Sonia Aguilar <33540275+soniaAguilarPeiron@users.noreply.github.com>

---------

Co-authored-by: Sonia Aguilar <33540275+soniaAguilarPeiron@users.noreply.github.com>
2023-05-03 09:37:42 -03:00
Domas
15d4169813
Frontend logging: Remove Sentry javascript agent support (#67493)
* remove Sentry

* fix sourcemap resolve
2023-05-02 12:10:56 +03:00
Virginia Cepeda
7338164612
Alerting: Add alert instance picker (#67138)
* Add Preview template and payload editor to templates form

* Add TemplatePreview test and update css

* Preview errors for each template that is wrong

* Enable preview templating only for Grafana Alert Manager

* Use harcoded default payload instead of requesting it to the backend

* Update error response in the api definition

* Add spinner when loading result for preview

* Update api request followind DD changes

* Use pre instead of TextArea to render the preview

* Fix tests

* Add alert list editor

* Add start and end time for alert generator

* Add preview for data list added in the modal

* Update copies and move submit button in alert generator to the bottom

* Copy updates

* Refactor

* Use tab instead of button to preview

* Move payload editor next to the content

* Copy update

* Refactor

* Adress PR review comments

* Fix wrong json format throwing an exception when adding more data

* Use monaco editor for payload

* Only show text 'Preview for...'  when we have more than one define

* Fix some errors

* Update CollapseSection style

* Add tooltip for the Payload info icon explaining the available list of alert data fields in preview

* Set payload as invalid if it's not an array

* Fix test

* Update text in AlertTemplateDataTable

* Add separators to distinguish lines that belong to the preview

* Use harcoded default payload instead of requesting it to the backend

* Add alert instance picker

* Add rule search capability and cleanup

* Display alert instance extra information on hover

* Rebase and integrate with existing view

* Display folder under rule name

* Display unique labels for alert instances

* Remove unneeded interface

* Reset state after closing the modal

* Refactor useEffect and useMemo

* Move common code to variable

* Refactor to avoid setting filtered rules as state

* Disable instance selector button when there are errors in the payload

* Validate payload on button click

* Change warning text

* Add support for state filters in alertmanager alerts request

* Use RTK Query to fetch alert instances

* Address review comments

* Fix lint

---------

Co-authored-by: Sonia Aguilar <soniaaguilarpeiron@gmail.com>
2023-04-28 12:58:15 -03:00
Sonia Aguilar
3854be1fcb
Alerting: Implement template preview for Grafana AlertManager (#65530)
* Add Preview template and payload editor to templates form

* Add TemplatePreview test and update css

* Preview errors for each template that is wrong

* Enable preview templating only for Grafana Alert Manager

* Use harcoded default payload instead of requesting it to the backend

* Update error response in the api definition

* Add spinner when loading result for preview

* Update api request followind DD changes

* Use pre instead of TextArea to render the preview

* Fix tests

* Add alert list editor

* Add start and end time for alert generator

* Add preview for data list added in the modal

* Update copies and move submit button in alert generator to the bottom

* Copy updates

* Refactor

* Use tab instead of button to preview

* Move payload editor next to the content

* Copy update

* Refactor

* Adress PR review comments

* Fix wrong json format throwing an exception when adding more data

* Use monaco editor for payload

* Only show text 'Preview for...'  when we have more than one define

* Fix some errors

* Update CollapseSection style

* Add tooltip for the Payload info icon explaining the available list of alert data fields in preview

* Set payload as invalid if it's not an array

* Fix test

* Update text in AlertTemplateDataTable

* Add separators to distinguish lines that belong to the preview

* Fix text

* Use subDays instead of addDays for substracting days
2023-04-28 17:05:45 +02:00
Gilles De Mey
b94fceddad
Alerting: Make Loki & Prometheus instant vector by default (#66797)
Co-authored-by: Konrad Lalik <konrad.lalik@grafana.com>
2023-04-27 17:38:22 +03:00
Konrad Lalik
c41c638b52
Alerting: Fix silences preview (#66000)
* Use alertmanager /alerts endpoint to show preview of instances affected by silence

* Fix debounce dependency, add no instances warning

* Rename silences preview component

* Fix the preview file name, use IsNulLDate to check the date

* Fix valid matchers condition

* Cleanup

* Remove unused code
2023-04-26 10:27:37 +02:00
Ashley Harrison
e6e741546f
Nested folders: Create basic Move/Delete modals (#67140)
* add modal scaffolding

* add some unit tests

* remove dummy api, add some TODO comments

* small test refactor

* another small test refactor

* fix unit tests due to aria-label/data-testid change
2023-04-25 17:08:40 +01:00
Sonia Aguilar
64ee42d01e
Alerting: Add limits and move state and label matching filters to the BE (#66267)
* WIP

* Add instance totals to combined rule. Use totals to display instances stats in the UI

* WIP

* add global summaries, fix TS errors

* fix useCombined test

* fix test

* use activeAt from rule when available

* Fix NaN in global stats

* Add no data total to global summary

* Add totals recalculation for filtered rules

* Fix instances totals, remove instances filtering from alert list view

* Update tests

* Fetch alerts considering filtering label matchers

* WIP - Fetch alerts appending state filter to endpoint

* Fix multiple values for state in request being applyied

* fix test

* Calculate hidden by for grafana managed alerts

* Use INSTANCES_DISPLAY_LIMIT constant for limiting alert instances instead of 1

* Rename matchers parameter according to API changes

* Fix calculating total number of grafana instances

* Rename matcher prop after previous change

* Display button to remove max instances limit

* Change matcher query param to be an array of strings

* Add test for paramsWithMatcherAndState method

* Refactor matcher to be an string array to be consistent with state

* Use matcher query string as matcher object type (encoded JSON)

* Avoind encoding matcher parameters twice

* fix tests

* Enable toggle for the limit/show all button and restore limit and filters when we come back from custom view

* Move getMatcherListFromString method to utils/alertmanager.ts

* Fix limit toggle button being shown when it's not necessary

* Use filteredTotals from be response to calculate hidden by count

* Fix variables not being replaced correctly

* Fix total shown to be all the instances filtered without limits

* Adress some PR review comments

* Move paramsWithMatcherAndState inside prometheusUrlBuilder method

---------

Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
Co-authored-by: Konrad Lalik <konrad.lalik@grafana.com>
Co-authored-by: Virginia Cepeda <virginia.cepeda@grafana.com>
2023-04-25 11:19:20 +02:00
Konrad Lalik
91704cf7de
Alerting: Loki-based alert state history modal (#66595)
* adds alertstatehistory backend config to grafanaBootData

* add alertStateHistory api

* show different ASH modal when using loki implementation

* group log lines by instance (unique set of labels)
Co-Authored-By: Konrad Lalik <konrad.lalik@grafana.com>

* render log lines for each instance
Co-Authored-By: Konrad Lalik <konrad.lalik@grafana.com>

* Add visual improvements to the log record of state changes

* Add values to log records

* compute common labels and show unique labels

* Add state changes visualization

* fix common labels extraction

* Code cleanup

* Add timespan-based log record view

* WIP

* scroll to timestamp - poc

* Use SortedVector for timestamp field

* add conditional accessor for frames

* update some of the log formats and styles

* Timestamp-based visualization with scrolling

* minor improvements

* Split Loki's state history viewer into multiple files

* Add memoization to prevent graph rerender on filter updates

* make chart size shrink when fewer instances

* style updates

* show warning when instances are hidden

* Add basic label-based filtering

* Improve label-based filtering

* Add regex validation

* Improve no instances message when everything was filtered out

* Update warning message

* Move timeline viewer to a separate file, refactor handling timeline pointer changes

* Remove unused component, add comments

* Fix test snapshot, fix type error

* adds tests for common.ts

* Add tests for converting log records into data frames

* Add basic component test, fix type guards

* Use a constant for timeseries limit

* Improve a11y, update component test

* Memoize AlertStateTag, migrate from deprecated ArrayVector

* Update public/app/features/alerting/unified/components/rules/state-history/common.ts

* Move helper hook into a separate file. Add Search input component

* Change the limit of visible time series on the timeline

* Add LogRecordViewer perf improvements, refactor timeline cursor events tracking

* Use callback to pass timeline refs

* Add grouping tests for the log record viewer

---------

Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2023-04-24 09:28:11 +02:00
Virginia Cepeda
329d940448
Alerting: fix condition to distinguish multiple datasources type in dropdown (#67065)
* Add function to check if a datasource is managing alerts

* Use helper function to get datasources that manage alerts
2023-04-21 14:27:39 -03:00
Ieva
5d7433d820
RBAC: Make access control metadata for folders work with nested folders (#66464)
* remove metadata for single folder listing

* extendTests

* remove ac metadata from dash and folder search results

* remove test

* remove one more test

* put ac metadata back for single folder API responses

* extend tests

* remove ac metadata from folder frontend object

* undo unneeded change

* PR feedback

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

---------

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
2023-04-21 15:05:11 +01:00
Sonia Aguilar
400fae3bd6
Alerting: Change tooltip error text in collapsed contact point table (#67022)
Change tooltip error message in collapsed contact point table
2023-04-21 09:37:31 +02:00
Ryan McKinley
607b94aaa2
FieldValues: Use standard array functions (#67012) 2023-04-20 22:03:38 -07:00
Leon Sorokin
b24ba7b7ae
FieldValues: Use plain arrays instead of Vector (part 3 of 2) (#66612)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2023-04-20 17:59:18 +03:00
Gilles De Mey
2cec402647
Alerting: Fix share URL for Prometheus rules on subpath (#66752) 2023-04-18 15:47:57 +02:00
Sonia Aguilar
8485deb2c0
Alerting: Split silences view expired/not-expired (#66562)
Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2023-04-17 16:30:41 +02:00
Armand Grillet
075070db3e
Alerting: Update legacy alerting warning (#66269)
* Update legacy alerting warning

* Apply suggestions from code review

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

* Update DeprecationNotice.tsx

* silly linter

* Clarify alerting deprecation

---------

Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2023-04-17 11:02:29 +03:00
Ryan McKinley
e65163ba4e
FieldValues: Use plain arrays instead of Vector (part 2 of 2) (#66224)
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2023-04-14 09:03:45 -05:00
Ashley Harrison
4abe0249ba
Chore: Clean up old navigation (#66287)
* remove code outside of the topnav feature flag

* delete NavBar folder

* remove topnav toggle from backend

* restructure AppChrome folder

* fix utils mock

* fix applinks tests

* remove tests since they're covered in e2e

* fix 1 of the approotpage tests

* Fix another dashboardpage test

* remove reverse portalling + test for plugins using deprecated onNavChanged method

* kick drone

* handle correlations
2023-04-14 09:43:11 +01:00
Torkel Ödegaard
7d1b61e033
AlertRules: Update design to align it with recent changes to lists and tables (#66461)
* AlertRules: Update design to be less boxy

* tag alignment fix

* Minor tweak
2023-04-13 16:00:03 +02:00
Gilles De Mey
03f95d6e98
Alerting: Hide mute timing actions when dealing with vanilla prometheus (#66457) 2023-04-13 15:03:57 +03:00
Virginia Cepeda
2991d4c213
Alerting: Fix creating a recording rule when having multiple datasources (#66415)
Fix creating recording rules when having multiple datasources
2023-04-13 11:58:59 +02:00
Ashley Harrison
1261345b81
Chore: Upgrade to react 18 (#64428)
* update react 18 related deps

* fix some types

* make sure we're on react-router-dom >= 5.3.3

* Use new root API

* Remove StrictMode for now - react 18 double rendering causes issues

* fix + ignore some @grafana/ui types

* fix some more types

* use renderHook from @testing-library/react in almost all cases

* fix storybook types

* rewrite useDashboardSave to not use useEffect

* make props optional

* only render if props are provided

* add correct type for useCallback

* make resourcepicker tests more robust

* fix ModalManager rendering

* fix some more unit tests

* store the click coordinates in a ref as setState is NOT synchronous

* fix remaining e2e tests

* rewrite dashboardpage tests to avoid act warnings

* undo lint ignores

* fix ExpanderCell types

* set SymbolCell type correctly

* fix QueryAndExpressionsStep

* looks like the types were actually wrong instead :D

* undo this for now...

* remove spinner waits

* more robust tests

* rewrite errorboundary test to not explicitly count the number of renders

* make urlParam expect async

* increase timeout in waitFor

* revert ExplorePage test changes

* Update public/app/features/dashboard/containers/DashboardPage.test.tsx

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

* Update public/app/features/dashboard/containers/PublicDashboardPage.test.tsx

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

* Update public/app/features/dashboard/containers/PublicDashboardPage.test.tsx

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

* Update public/app/features/dashboard/containers/PublicDashboardPage.test.tsx

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

* skip fakeTimer test, ignore table types for now + other review comments

* update package peerDeps

* small tweak to resourcepicker test

* update lockfile...

* increase timeout in sharepublicdashboard tests

* ensure ExplorePaneContainer passes correct queries to initializeExplore

* fix LokiContextUI test

* fix unit tests

* make importDashboard flow more consistent

* wait for dashboard name before continuing

* more test fixes

* readd dashboard name to variable e2e tests

* wait for switches to be enabled before clicking

* fix modal rendering

* don't use @testing-library/dom directly

* quick fix for rendering of panels in firefox

* make PromQueryField test more robust

* don't wait for chartData - in react 18 this can happen before the wait code even gets executed

---------

Co-authored-by: kay delaney <kay@grafana.com>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2023-04-11 10:51:54 +01:00
Gilles De Mey
cb8a5b2c96
Alerting: Fix explore link in alert detail view (#66106) 2023-04-07 14:48:46 +03:00
George Robinson
3e12b72f58
Alerting: Fix docs link when creating or editing rules (#66019) 2023-04-07 11:31:18 +00:00
Virginia Cepeda
f27326f7d9
Alerting: Choose a previous valid AM configuration in case of error (#65746)
* Add new property to AlertmanagerConfig type

* Implement fetching successfully applied configurations

Added method to fetch them from the API and its corresponding action and reducer

* Extract ConfigEditor as component to avoid code duplication

* Display dropdown with valid configs upon error and allow to save them

* Fix tests

* Refactor to call new endpoint using RTK

* Improve texts

* Apply suggested refactor

* Change constant casing

* Only show config selector for Grafana AM

* Remove ts-ignore

* Move code together for simplicity

* Remove invalid mock

* Update endpoint and types based on backend changes

* Rename property

* Rename alermanager config property from backend changes

* Disable editing old configurations

Due to the latest backend changes, we no longer will provide the option to edit previous AM configurations in a textearea.
Instead users will only be allowed to reset to a specific one with the same content. For this reason the textearea for old conf
igurations is disabled and a different form action (not submit) is executed on the "reset config" button. The updateAlertManage
rConfigAction is reset to its old functionality due to these changes.

* Add id to AlertManagerCortexConfig type

We'll need it to pass as a parameter to the new reset endpoint

* Add new endpoint for resetting AM configs to an old version

* Move the "Reset to selected configuration" button next to the drop-down

* Add relative offset to configurations
2023-04-05 15:13:33 -03:00
Gilles De Mey
402649bae0
Alerting: skip flakey test (#65858)
this one was unskipped but seems to still be flakey
2023-04-03 18:30:54 +03:00
Sonia Aguilar
008bf143ac
Alerting: Add label filters to the logic of showing hidden instances (#65674)
* Add label filters to the logic of showing hidden instances

Co-authored-by: Virginia Cepeda <virginia.cepeda@grafana.com>

* Add tests

Co-Authored-By: Sonia Aguilar <33540275+soniaAguilarPeiron@users.noreply.github.com>

---------

Co-authored-by: Virginia Cepeda <virginia.cepeda@grafana.com>
2023-04-03 15:39:06 +02:00
Konrad Lalik
bde77e4f79
Alerting: Disable alerting incompatible panels in the dashboard picker (#65341)
* Hide dashboard hint when dashboard already selected

* Disable panels of types other than graph and timeseries

* Add a test checking disabled panels

* Make all panels selectable

* Fix tests
2023-04-03 10:01:30 +02:00
Ashley Harrison
98e66654d6
Chore: Some type fixes needed for react 18 (#65600)
some type fixes needed for react 18
2023-03-30 13:40:18 +01:00
Virginia Cepeda
2b59d1abb6
Alerting: Improve query types usage to prevent ts-errors (#65238)
* Improve query types usage to prevent ts errors

* Detect whether a query's model is Prom or Loki using helper function

* Fix lint errors
2023-03-29 15:42:47 -03:00
Gilles De Mey
f68fd83951
Alerting: Use displayNameFromDS if available in preview (#65342) 2023-03-28 13:58:21 +02:00
Sonia Aguilar
54d7e95be1
Alerting: Fix wrong text in step4 (#65279)
* Fix wrong text in step4

* Add link to documentation for annotations in grafana alerts and cloud alerts
2023-03-27 15:28:20 +02:00
Gilles De Mey
409bd33a8f
Alerting: Paginate result previews (#65257)
Co-authored-by: konrad147 <konradlalik@gmail.com>
Co-authored-by: Sonia Aguilar <soniaaguilarpeiron@gmail.com>
2023-03-23 15:17:33 +01:00
Josh Hunt
d13488a435
NestedFolders: Show nested folders in Browse folder view (#63746)
* dirty dirty code for showing nested folders in folder view

refactor to NestedFolderItem

Update dashboard grid view to new types

update tests

REBASE OUT OF THIS BRANCH - joshhunt/star-by-uid merged into this

Squashed commit of the following:

commit d0f046ccd3
Author: joshhunt <josh@trtr.co>
Date:   Wed Feb 8 18:35:56 2023 +0000

    undo async

commit abe2777a1f
Author: joshhunt <josh@trtr.co>
Date:   Wed Feb 8 18:34:11 2023 +0000

    Dashboards: Star dashboards by UID

add type for dashboard search dto

clean DashboardSearchItem type

simplify DashboardSearchHit type

remove unused properties from DashboardSearchHit

make uid non-optional

rename + move NestedFolderItem type to DashboardViewItem

clean up

* wip

* fix checkbox selection of nested folders

* show folder's parent correctly

* Add dashboard result kind

* don't render folder empty view in SearchView

* call nested folders api only if feature flag enabled

* remove unused import

* un-rename variable to reduce PR diff

* fix typo in comment

* fix order of pseudoFolders

* Fix General folder not showing in browse

* rename folder view tests

---------

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2023-03-23 13:28:45 +00:00