Commit Graph

1451 Commits

Author SHA1 Message Date
Leon Sorokin
d601acac3a
VizTooltips: Remove old tooltips and annotations (#84420)
Co-authored-by: Adela Almasan <adela.almasan@grafana.com>
2024-04-02 15:32:46 -05:00
Torkel Ödegaard
e90b87589f
ModalsContext: Unify modals context and manager (#84916)
* ModalsContext: Unify modals context and manager

* Clear on location change

* fixes

* Update

* use generics to avoid anys

---------

Co-authored-by: joshhunt <josh@trtr.co>
2024-03-28 13:26:57 +01:00
Gilles De Mey
a574db6f64
Alerting: Fix removing nested policy (#85242) 2024-03-27 13:58:59 +02:00
Gilles De Mey
90a1e8a82f
Alerting: Make hovercard accessible (#85195) 2024-03-27 10:05:30 +01:00
Torkel Ödegaard
b20da139ad
DashboardScene: Show insights icon (#84877)
* DashboardScene: Show insights icon

* Update

* Create separate group for precence indicators

* fix

* Update

* fix tests
2024-03-22 09:46:29 +01:00
Gilles De Mey
8c9ba97642
Alerting: Support PromQL-style matchers (#84672) 2024-03-21 14:11:18 +01:00
Gilles De Mey
4c247f959b
Alerting: Fix broken panelId links (#84839) 2024-03-21 13:58:34 +01:00
Erik Sundell
29d4f6a217
Datasource: Change query filtering (#84656)
* call filterQuery from queryrunner

* test query hide filtering

* fix more broken tests

* lint errrors

* remove redundant filterQuery call

* skip filter in variable queries

* fix broken cypress test

* change tooltip text

* fix translations

* fix comments

* do not execute query is targets are empty

* add more tests

* remove unsued import

* update translations

* revert id change

* change header text

* update comment for hide prop

* rename hide query prop

* change tooltip and introduce different toggle state text

* update tests

* update comment and regenerate types

* run extract again

* fix broken e2e test

* track event

* fix build issues

* revert changes in wire file
2024-03-21 13:39:39 +01:00
Alex Khomenko
b41ad688f2
Alerting: Remove deprecated InputControl (#84793) 2024-03-21 12:59:41 +02:00
Laura Benz
d8a116e696
ReturnToPrevious: Add e2e test (#83115)
* feat: add incomplete unit test

* refactor: add idea for unit test

* feat: create new e2e test

* feat: add some steps

* feat: add comment

* feat: complete prep work

* feat: complete clean up

* rebase

* feat: add more steps to test flow

* refactor: remove unit test

* refactor: clean up

* refactor: create a provisioned alert rule

* refactor: change location and content

* refactor: e2e test

* refactor: betterer

* refactor: move provisioned alert rule

* refactor: make provisioning file available remote

* refactor: clean up test

* refactor: move provisioned alert rule

* refactor: remove wait()

* feat: restructure first test and add more tests

* feat: add another provisioned alert rule

* feat: add a new test

* feat: complete new test

* refactor: replace data-testid in alert rules

* refactor: replace data-testid

* refactor: fix tests for drone

* refactor: fix third test after review

* refactor: fix last test

* temp

* refactor: improve some things

* refactor: adjust unit tests

* refactor: remove assertions for alert rule details view

* refactor: remove assertions

* refactor: add check for button text

* refactor: remove session storage

* refactor: apply changes from code review

* refactor: add codeowner

* refactor

* refactor

* refactor: clean up

* refactor: clean up

* refactor: clean up

* refactor: increase pa11y threshold for /alerting/list
2024-03-21 09:05:51 +01:00
Gilles De Mey
5a57ff1307
Alerting: Preserve newlines and whitespace for Prometheus and Loki queries (#84755) 2024-03-19 19:38:04 +02:00
Sonia Aguilar
b38436eeb0
Alerting: Fix used badge in contact points list (#84714)
Fix used badge in contact points list
2024-03-19 13:30:06 +01:00
Ashley Harrison
15194b41b4
Dropdown: Fix keyboard accessibility (#84683)
* fix dropdown keyboard a11y

* remove unnecessary css

* restore tabIndex to keep linting happy

* use Box in Menu

* fix unit test
2024-03-19 10:22:17 +00:00
Tom Ratcliffe
296f4219f8 Add missing external link for TextLink 2024-03-18 16:50:30 +00:00
Tom Ratcliffe
8f50ccbb7c Fix display of Alert diagram in Safari 2024-03-18 16:50:30 +00:00
Tom Ratcliffe
b3e9a6d0b3 Use Text component more consistently in GettingStarted 2024-03-18 16:50:30 +00:00
Tom Ratcliffe
fb2ba574c6 Convert getting started styles to object syntax 2024-03-18 16:50:30 +00:00
Tom Ratcliffe
30a791d77a Tidy up styling for Getting Started page and use @grafana/ui components 2024-03-18 16:50:30 +00:00
Tom Ratcliffe
2e2a5bca11 Remove unused showWelcomeHeader prop 2024-03-18 16:50:30 +00:00
Tom Ratcliffe
83464781be Remove video from Alert Getting Started page 2024-03-18 16:50:30 +00:00
Chris Bedwell
9c7a5ed506
Alerting: Fix infinite re-render when linking to alert redirect page (#84305)
fix: move where the fallback array is initialized so not to create an infinite re-render
2024-03-15 22:57:31 +00:00
Gilles De Mey
1ce2ae427f
Alerting: Query and conditions improvements (#83426) 2024-03-15 18:37:11 +02:00
Gilles De Mey
85bd116a10
Alerting: Fix optional fields requiring validation rule (#84584)
fixes #84296
2024-03-15 15:49:05 +01:00
Sonia Aguilar
1f13a14815
Alerting: Fix wrong use of empty list in times field in the UI (#84179)
* Fix wrong use of empty list in times field in the UI

* Add tooltip for disable switch

* Show disabled badge in mute timings

* Disable time ranges when disabling time interval in the UI

* PR review comments

* remove tooltip for the field as it does not register it correctly

* remove wrong code line

* Add comment

* Address PR review comments
2024-03-15 15:48:16 +01:00
Sonia Aguilar
fa9f692707
Alerting: Fix AlertsFolderView not showing rules when using nested folders (#84465)
* Fix AlertsFolderView not showing rules when using nested folders

* Fix tests
2024-03-15 14:08:09 +01:00
Gilles De Mey
8765c48389
Alerting: Remove legacy alerting (#83671)
Removes legacy alerting, so long and thanks for all the fish! 🐟

---------

Co-authored-by: Matthew Jacobson <matthew.jacobson@grafana.com>
Co-authored-by: Sonia Aguilar <soniaAguilarPeiron@users.noreply.github.com>
Co-authored-by: Armand Grillet <armandgrillet@users.noreply.github.com>
Co-authored-by: William Wernert <rwwiv@users.noreply.github.com>
Co-authored-by: Yuri Tseretyan <yuriy.tseretyan@grafana.com>
2024-03-14 15:36:35 +01:00
Gilles De Mey
336acaf0bf
Alerting: Promote new alerting detail view (#84277) 2024-03-14 15:18:01 +01:00
Gilles De Mey
e6150a792a
Alerting: Always omit IDs from all routes when updating notification policy tree (#84304) 2024-03-12 18:04:49 +02:00
William Wernert
10dc6c6d75
Alerting: Add "Keep Last State" backend functionality (#83940)
* Implement keep last state for state transitions

* Respect For duration when keeping state

* Only keep transition from recording an annotation

* Add keep last state option for nodata/error in UI
2024-03-12 10:00:43 -04:00
Gilles De Mey
388e0c27f2
Alerting: Allow inserting before or after existing policy (#83704) 2024-03-12 13:28:37 +01:00
Sonia Aguilar
0e7c0d25fe
Alerting: Add test for creating an alert rule with simplified routing. (#80610)
* Add test for creating an alert rule with simplified routing

* Fix mocking folders after merging from main (folder uid change)
2024-03-11 08:47:56 +01:00
Sonia Aguilar
7a741a31bd
Alerting: Track when switching from simplified routing to policies routing or vice versa (#83108)
Track when switching from simplified routing to policies routing or vice versa
2024-03-11 08:47:22 +01:00
Gilles De Mey
f5dab6b5a5
Alerting: Refactor analytics to use pushMeasurements (#83850) 2024-03-07 16:41:38 +01:00
Pepe Cano
9c520acf9c
Alerting: Minor changes to UI help text and descriptions (#84023) 2024-03-07 12:33:16 +01:00
Konrad Lalik
a4acd9d204
Alerting: Improve alert list panel and alert rules toolbar permissions handling (#83954)
* Improve alert list panel and alert rules toolbar permissions handling

* Refactor permission checking, add tests

* Remove unneccessary act wrapper

* Fix test error
2024-03-07 12:30:37 +01:00
Konrad Lalik
708aeb0682
Alerting: Pass queryType parameter to the query model in recording rules preview (#83950) 2024-03-06 11:42:28 +01:00
Gilles De Mey
582fd53fac
Alerting: Implement correct RBAC checks for creating new notification templates (#83767) 2024-03-01 18:09:14 +01:00
Gilles De Mey
fc10600ca5
Alerting: Fix editing Grafana folder via alert rule editor (#83771) 2024-03-01 18:08:42 +01:00
Gilles De Mey
675b7debe7
Alerting: Assume rule not found when everything is undefined (#83774) 2024-03-01 18:08:17 +01:00
Santiago
2964901ea6
Chore: Fix typo in template not found error message (#83778) 2024-03-01 18:04:20 +01:00
Konrad Lalik
11d341d2bb
Alerting: Add escape and quote support to the matcher name (#83601)
Add escape and quote support to the matcher name
2024-03-01 11:34:58 +01:00
Leon Sorokin
42b55aedbc
DataLinks: Handle getLinks() regen during data updates and frame joining (#83654) 2024-02-29 21:46:53 +02:00
Laura Fernández
f0822e0aef
ReturnToPrevious: Add this functionality to the "Go to panel" button on Alert rules (#83630)
Add RTP to the 'Go to panel' button
2024-02-29 12:19:59 +01:00
Konrad Lalik
183a42b7f6
Alerting: Improve alert rule and search interaction tracking (#83217)
* Fix alert rule interaction tracking

* Add search component interaction tracking

* Add fine-grained search input analytics
2024-02-28 16:52:56 +01:00
Sonia Aguilar
ed3c36bb46
Alerting: Use time_intervals instead of the deprecated mute_time_intervals in a… (#83147)
* Use time_intervals instead of the deprecated mute_time_intervals in alert manager config

* don't send mute_time_intervals in the payload

* Add and update tests

* Fix usecase when having both fields in response from getting alert manager config

* Use mute_timings for grafana data source and both for cloud data source when deleting mute timing

* Use mute_timings for grafana data source and both for cloud data source when saving a new or existing alert rule

* Address first code review

* Address more review comments
2024-02-28 15:21:00 +01:00
Scott Lepper
70009201d4
Expressions: Sql expressions with Duckdb (#81666)
duckdb temp storage of dataframes using parquet and querying from sql expressions
---------

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2024-02-27 16:16:00 -05:00
Takashi Idobe
f209a5a8b8
fix typos (#83414) 2024-02-26 10:52:44 -07:00
Ashley Harrison
49e18a3e7a
Chore: replace react-popper with floating-ui in Popover (#82922)
* replace react-popper with floating-ui in Popover

* update HoverCard

* fix unit tests

* mock useTransitionStyles to ensure consistent unit test results
2024-02-23 15:00:24 +00:00
Konrad Lalik
cc9ff3f8c9
Alerting: Add Loki ASH tests checking proper rendering of timeline chart component (#83235)
Add Loki ASH tests checking proper rendering of timeline chart component
2024-02-23 09:19:16 +01:00
Sonia Aguilar
2a1873f038
Alerting: Fix saving evaluation group. (#83188)
fix saving evaluation group
2024-02-22 14:29:57 +01:00
Jack Westbrook
0dcdfc261b
Monaco Editor: Load via ESM (#78261)
* chore(monaco): bump monaco-editor to latest version

* feat(codeeditor): use esm to load monaco editor

* revert(monaco): put back previous version

* feat(monaco): setup MonacoEnvironment when bootstrapping app

* feat(monaco): load monaco languages from registry as workers

* feat(webpack): clean up warnings, remove need to copy monaco into lib

* fix(plugins): wip - remove amd loader workaround in systemjs hooks

* chore(azure): clean up so QueryField passes typecheck

* test(jest): update config to fix failing tests due to missing monaco-editor

* test(jest): update config to work with monaco-editor and kusto

* test(jest): prevent message eventlistener in nodeGraph/layout.worker tripping up monaco tests

* test(plugins): wip - remove amd related tests from systemjs hooks

* test(alerting): prefer clearAllMocks to prevent monaco editor failing due to missing matchMedia

* test(parca): fix failing test due to undefined backendSrv

* chore: move monacoEnv to app/core

* test: increase testing-lib timeout to 2secs, fix parca test to assert dom element

* feat(plugins): share kusto via systemjs

* test(e2e): increase timeout for checking monaco editor in exemplars spec

* test(e2e): assert monaco has loaded by checking the spinner is gone and window.monaco exists

* test(e2e): check for monaco editor textarea

* test(e2e): check monaco editor is loaded before assertions

* test(e2e): add waitForMonacoToLoad util to reduce duplication

* test(e2e): fix failing mysql spec

* chore(jest): add comment to setupTests explaining need to incresae default timeout

* chore(nodegraph): improve comment in layout.worker.utils to better explain the need for file
2024-02-22 12:31:40 +01:00
Konrad Lalik
b02183e9ac
Alerting: Fix dashboard nav drawers disappearing (#82890)
Add DashNav modal renderer to handle modals rendered from Toolbar buttons
2024-02-22 10:16:27 +01:00
Alex Khomenko
5132828a2b
Chore: Remove Form usage from notification policies (#81758)
* Chore: Replace Form component usage in EditDefaultPolicyForm.tsx

* Chore: Replace Form component usage in EditNotificationPolicyForm.tsx

* Remove ts-ignore
2024-02-21 18:14:49 +02:00
Laura Fernández
c237a39020
ReturnToPrevious: Check the state of the RTP feature toggle in the hook (#83087) 2024-02-20 15:05:12 +01:00
Gilles De Mey
f71f54c872
Alerting: Updates to recording rules (#82329) 2024-02-16 17:13:43 +01:00
Sonia Aguilar
5de17432f5
Alerting: Add pagination and improved search for notification policies (#81535) 2024-02-16 17:11:03 +01:00
Ashley Harrison
ffb9a4de4a
Chore: some test type fixes (#82889)
* some test type fixes

* ignore table-old since it's an angular panel that will be removed
2024-02-16 14:35:26 +00:00
Sonia Aguilar
7b415cf79e
Alerting: Skip fetching receivers status in the alert rule form (#82892) 2024-02-16 15:15:02 +01:00
Gilles De Mey
248031d007
Alerting: Show legacy provisioned alert rules warning (#81902) 2024-02-16 14:47:03 +01:00
Matthew Jacobson
118e4a50b7
Alerting: Remove start page of legacy upgrade preview (#82010)
Alerting: Remove start page of upgrade preview

Alerting upgrade page will now always show the summary table even before
upgrading any alerts or notification channels. There a few reasons for this:

- The information on the start page is redundant as it's now contained in the
documentation.
- Previously, if some unexpected issue prevented performing a full upgrade, a
user would have limited to no means to using the preview tool to help fix the
problem. This is because you could not see the summary table until the full
upgrade was performed at least once. Now, you can upgrade individual alerts and
notification channels from the beginning.
2024-02-15 17:34:00 -05:00
Konrad Lalik
44ecb26ea1
Alerting: Clarify provisioning export types (#82420)
Add provisioning type export Alert
2024-02-14 15:04:15 +01:00
Sonia Aguilar
8dc1cd6d59
Alerting: Fix reading props from undefined in settings (#82418)
* Fix reading props from undefined in settings

* Make settings optional in GrafanaManagedReceiverConfig type
2024-02-15 00:38:20 +11:00
Ashley Harrison
cf65d91ee9
Chore: upgrade to msw v2 (#82270)
* Update dependency msw to v2

* close

* minor fixes

* fetch import changes

* fix some alerting tests

* fix another alerting test

* fix systemjs tests

* don't return undefined in json mocks

* don't return undefined in json response

* add type

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-14 13:16:44 +00:00
Gilles De Mey
70aa8fe6b3
Alerting: Fix slack double pound and email summary (#82333) 2024-02-14 13:12:04 +01:00
Gilles De Mey
f6ea39ff00
Alerting: Prevent state badge from wrapping (#82330) 2024-02-14 12:12:05 +01:00
Sonia Aguilar
92eb2c900e
Alerting: Use VirtualizedSelect for ContactPointSelector (#82345)
* Use VirtualizedSelect for ContactPointSelector

* Conditionally use virtualized to keep description when having less than 500 contact points
2024-02-14 12:43:46 +02:00
Alex Khomenko
55d17c7fcb
Chore: Remove Form usage from alerting config components (#81681)
* Chore: Replace InputControl in BaseSettings

* Chore: Replace InputControl and FormAPI in OptionElement.tsx

* Update ConfigEditor.tsx
2024-02-13 12:51:54 +02:00
Sonia Aguilar
730e1d2485
Alerting: Fix folder and rule name in groupBy for simplified routing (#82148)
* Fix folder and rule name in groupBy for simplified routing

* Review suggestions

* Use proper type for MultiValueRemove props

* hoist getting groupBy count

* Use watch instead of getValues

* Bring back validation for required fields
2024-02-12 12:45:29 +01:00
Gilles De Mey
70fc603d26
Alerting: Improve 404 and other HTTP request error handling (#82249) 2024-02-12 12:17:19 +01:00
Konrad Lalik
fbdd27c237
Alerting: Add support for UTF-8 characters in notification policies and silences (#81455)
* Add label matcher validation to support UTF-8 characters

* Add double quotes wrapping and escaping on displating matcher form inputs

* Apply matchers encoding and decoding on the RTKQ layer

* Fix unescaping order

* Revert "Apply matchers encoding and decoding on the RTKQ layer"

This reverts commit 4d963c43b5.

* Add matchers formatter

* Fix code organization to prevent breaking worker

* Add matcher formatter to Policy and Modal components

* Unquote matchers when finding matching policy instances

* Add tests for quoting and unquoting

* Rename cloud matcher formatter

* Revert unintended change

* Allow empty matcher values

* fix test
2024-02-09 15:46:28 +01:00
Sonia Aguilar
beca6a08b0
Alerting: defaults for simplified routing (#82050)
* Expand route settings by default when alert rule has values in these fields

* Default to manual routing option if FF is enabled and local storage is not set to false

* Add test for getDefautManualRouting function

* Update seting local storage item to false in case of policy routing

* Only save to local storage when creating a new alert rule
2024-02-09 12:16:28 +01:00
Sonia Aguilar
3e93a0991f
Alerting: Use new readonly permission endpoints for getting contact points and mute timings (#82132)
* use new read only contact points list endpoint in simplified routing section

* Dont use alertmanager endpoint to get groupby defaults

* Use the new read only endpoint for mute timings in route settings

* review suggestions

* Rename hook

* Use options in params for useContactPointsWithStatus hook

* Refactor useContactPointsWithStatus

* second part of the enhanceContactPointsWithMetadata refactor
2024-02-09 12:13:37 +01:00
Ashley Harrison
765a1f8533
Chore: fix some bad uses of userEvent (#82191)
* fix some bad uses of userEvent

* wrap advance call in act

* don't use act

* remove skip

* need act here (see https://kentcdodds.com/blog/fix-the-not-wrapped-in-act-warning#1-when-using-jestusefaketimers)

* remove test that isn't correct anymore

* implement same change in grafana-prometheus
2024-02-09 10:04:35 +00:00
Gilles De Mey
19b07fbbfc
Alerting: Fix editing group of nested folder (#81665) 2024-02-08 13:18:20 +01:00
Matthew Jacobson
4b609f1121
Alerting: upgrade preview enable folder alert tab and dashboard alert panel (#81992)
* Alerting: upgrade preview enable folder alert tab and dashboard alert panel

Enable the folder alert tab and the dashboard alert panel when the
alertingPreviewUpgrade feature flag is enabled

* Link directly to folder alerts in upgrade page
2024-02-07 23:14:56 +02:00
Gilles De Mey
791ead7806
Alerting: Detail view part 3 (#81286) 2024-02-07 18:02:20 +01:00
Oscar Kilhed
1f2f85004d
Scenes: Add alerts from panel edit (#81588)
* Display alerts in scenes dashboard

* sort of working adding alerts

* move alert button to own component

* First fixes

* Generate link/url on click

* some cleanup

* making sure all links from scene go back to scene dashboard/panel; add rule button when there are rules; styling

* remove unused import

* add &scenes to url for alert instance annotations

* Add tests from old alert tab

* Revert addition of &scenes to dashboard urls

* Refactor to simplify NewAlertRuleButton interface

* update test

* Use the raw range to calculate the relative range

---------

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2024-02-07 12:59:18 +01:00
Sonia Aguilar
f59e76d54b
Alerting: Use mute_time_intervals as field name in dto ,for simplified routing (#82045)
Use mute_time_intervals as field name in dto ,for simplified routing
2024-02-07 09:54:31 +01:00
paulJonesCalian
3942d67f89
chore: Fix typo in GraphTresholdsStyleMode enum (#81960) 2024-02-06 08:20:42 -08:00
Sergej-Vlasov
3605d85c4c
Dashboards: Remove advancedDataSourcePicker feature toggle (#81790)
* remove advancedDataSourcePicker feature toggle from DataSourcePickerWithPrompt

* remove advancedDataSourcePicker toggle from DataSourcePicker and adjust tests that relied on old picker

* adjust failing tests in QueryVariableEditorForm

* move DataSourceDropdown to DataSourcePicker file

* covert style declaration syntax to object style in DataSourcePicker

* remove advancedDataSourcePicker  feature flag from registry

* remove .only from test

* adjust QueryVariableEditor test to avoid console.error
2024-02-06 09:20:07 +00:00
Torkel Ödegaard
61c7fcc270
DashboardScene: Action toolbar progress (#81664)
* DashboardScene: Action toolbar progress

* Add discard confirmation modal

* minor fix

* Update

* tweaked

* Updating

* Progress

* Update

* Update

* Added some unit tests

* fix test

* Change name to Exit edit

* Tweaks

* fix test

* Minor margin fix

* Move share to left of edit
2024-02-05 16:08:12 +01:00
Sonia Aguilar
8f65e36b06
Alerting: Show warning when cp does not exist and invalidate the form (#81621)
* Show warning when cp does not exist and invalidate the form

* Set error in contact selectedContactPoint form field manually

* use RHF validate and trigger

* Fix defaultvalue not being set in contact point and update the error message text

* Simplify refetchReceivers prop definition in ContactPointSelectorProps

---------

Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2024-02-05 15:14:08 +01:00
renovate[bot]
d65df0191b
Update dependency react-hook-form to v7.50.0 (#81796)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-02 19:30:27 +02:00
Ryan McKinley
ed925c81d4
Chore: deprecate/remove folderId from more typescript (#81194) 2024-02-02 18:42:43 +02:00
Ashley Harrison
a30f8645d1
Chore: Migrate frontend platform code to use data-testid for selectors (#81787)
* migrate some stuff from aria-label to data-testid

* convert styles to objects

* fix unit tests

* empty commit to kick drone now enterprise branch is there
2024-02-02 13:26:37 +00:00
Laura Fernández
42cd4266b4
ReturnToPrevious: make href optional (#81691) 2024-02-02 13:14:58 +01:00
Gilles De Mey
e1197641f3
Alerting: Fixes for pending period (#81718) 2024-02-02 12:58:04 +01:00
Sonia Aguilar
cd0f299297
Alerting: Update logic for checking if contact point is being used (#81713)
Don't count autorgenerated policy in receiver level when checking if contact point is used
2024-02-01 17:04:41 +01:00
Gilles De Mey
7f1138dfe6
Alerting: Fix selecting empty contact point value for notification policy inheritance (#81482) 2024-02-01 16:11:23 +01:00
Piotr Jamróz
572c182a81
Unify frontend monitoring (#80075)
* Unify frontend monitoring

* Add missing mock

* Add missing mock

* Keep source:sandbox

* Create separate logger for plugins/sql package

* chore: rename "logAlertingError" to "logError"

* Use internal Faro logging for debugging instead of redundant browser logging

* Post-merge fix

* Add more docs about debug levels

* Unify logger names

* Update packages/grafana-runtime/src/utils/logging.ts

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

* Update packages/grafana-runtime/src/utils/logging.ts

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

---------

Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
Co-authored-by: Ivan Ortega Alba <ivanortegaalba@gmail.com>
2024-02-01 15:08:40 +01:00
Gilles De Mey
7f6806e220
Alerting: Refactor useExternalDataSourceAlertmanagers (#81081) 2024-02-01 14:18:43 +01:00
Gilles De Mey
eb889c41ee
Alerting: Fix support check for export with modifications (#81602) 2024-02-01 14:17:48 +01:00
Konrad Lalik
ab891d92fb
Alerting: Fix missing pagination param in the oncall request (#81620)
Add skip_pagination param to the oncall request
2024-01-31 12:09:11 +01:00
Laura Fernández
8ee7b1e00c
ReturnToPrevious : Add logic to show the new component in AppChrome behind the new toggle (#81035) 2024-01-30 13:34:59 +01:00
Josh Hunt
147bee4831
Fix alerting i18n keys (#81555) 2024-01-30 13:41:20 +02:00
Oscar Kilhed
d12493d654
Dashboard scenes: Display alerts in scenes dashboard (#81260)
Display alerts in scenes dashboard
2024-01-30 10:30:35 +01:00
Sonia Aguilar
da1538ba82
Alerting: Update docs after moving action buttons im the alert list, and move t… (#81375)
Update docs after moving action buttons im the alert list, and move the loading spinner
2024-01-29 16:52:34 +01:00
Konrad Lalik
26e71953a4
Alerting: Improve integration with dashboards (#80201)
* Add filtering by dashboard UID annotation

* Update the inline doc for search

* Add AlertRulesDrawer to the dashboards toolbar

* Use DashboardPicker as a filter on the alert rules page

* Fix accessibility errors

* Update drawer subtitle

* Display Alerting toolbar button only if there are linked alert rules

* Change toolbar rendering method, prevent displaying when no linked rules

* Improve text

* Use React.lazy to load the Alert rule toolbar button and drawer when needed
2024-01-29 16:09:10 +01:00
Konrad Lalik
2ab832e025
Alerting: Use only the alert condition query as the graph threshold (#81228)
Use only the alert condition query as the graph threshold
2024-01-29 13:02:04 +01:00
Sonia Aguilar
2e1229b908
Alerting: Fix child provisioned polices not being rendered as provisioned (#81449)
Fix child provisioned polices not being rendered as provisioned
2024-01-29 10:51:00 +01:00
Matthew Jacobson
ad936b6c83
Alerting: Fix group by and timing override fields in simplfied routing section (#81321)
Fixes the group by custom labels and timings override logic in the simplified routing section of the edit rule page.

Previously:
    - Custom labels would fail on first attempt at adding them to the group by.
    - Timings fields required all timings to be overridden instead of any of them.
2024-01-26 10:17:14 -05:00
Sonia Aguilar
f042ca5b12
Alerting: Move action buttons in the alert list view (#81341)
Move action buttons in the alert list view
2024-01-26 14:56:00 +01:00
Sonia Aguilar
0bcc60f437
Alerting: Swap order between Annotations and Labels step in the alert rule form. (#81060)
* Swap order between Annotations and Labels and notifications step, and update some texts

* Update routing preview label size

* Fix dashboard and panel label when are selected

* Swap order in modify export form
2024-01-25 09:57:10 +01:00
Sonia Aguilar
6218e28ee9
Alerting: Add refresh button to contact points selector in simplified routing section. (#80748)
* Add refresh button for contact points selector in simplified routing section

* Clear timeout when unmounting component

* Fix timeout not being correclty removed when component unmounts

* Update css field name

* Kepp loading spinner if refetching receivers takes more than one second

* Fix test snapshot in useContactPointsWithStatus hook

* refactor how we wait for the request response and the timeout to finish
2024-01-25 09:53:54 +02:00
Gilles De Mey
d84d0c8889
Alerting: Detail v2 part 2 (#80577) 2024-01-23 15:04:12 +01:00
renovate[bot]
86cb412b1d
Update dependency prettier to v3.2.4 (#81047)
* Update dependency prettier to v3.2.4

* update sdk + run prettier

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2024-01-23 11:41:24 +00:00
Sonia Aguilar
51f5e1af39
Alerting: Fix preview getting the correct queries from the form (#80458)
* fix preview getting the correct queries from the form

* Remove setting queries in onChangeQueries handler as it only contains data queries and not expressions

* Keep setValue('queries') but also adding expressions
2024-01-23 09:23:59 +01:00
Sonia Aguilar
a07d2120f8
Alerting: Update text, link and aria-label in contact points link for simplified routing. (#80950)
Update link to contact points using TextLink component, and fix its alignment
2024-01-22 12:17:54 +01:00
Sonia Aguilar
171ba185d3
Alerting: Allow selecting only ... in groupBy (#80857)
Allow selecting only ... in groupBy
2024-01-19 11:17:21 +02:00
Matthew Jacobson
94c3be3b49
Alerting: Fix incorrect render during long legacy upgrade cancel (#80339)
When using the legacy migration dry-run, if a cancel takes a long time (long
enough for the page to poll) the page will incorrectly render the previous
data.

This change stops the polling while the upgrading or cancelling.
2024-01-18 13:30:50 -05:00
Gilles De Mey
8a4bd85efd
Alerting: Fix Graphite subqueries (#80744) 2024-01-18 15:15:21 +01:00
Sonia Aguilar
3d353a1b5f
Alerting: Fix using required groupBy options validation in simplified routing settings (#80780)
Fix using required groupBy options validation in simplified routing settings
2024-01-18 09:00:48 +01:00
renovate[bot]
f8056a3e56
Update dependency react-virtualized-auto-sizer to v1.0.20 (#80596)
* Update dependency react-virtualized-auto-sizer to v1.0.20

* Update dependency react-virtualized-auto-sizer to v1.0.20

* update types

* mock in a few more tests

* fix InspectDataTab test

* fix test

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2024-01-17 12:13:14 +00:00
Sofia Papagiannaki
d1dab5828d
Alerting: Update rule API to address folders by UID (#74600)
* Change ruler API to expect the folder UID as namespace

* Update example requests

* Fix tests

* Update swagger

* Modify FIle field in /api/prometheus/grafana/api/v1/rules

* Fix ruler export

* Modify folder in responses to be formatted as <parent UID>/<title>

* Add alerting test with nested folders

* Apply suggestion from code review

* Alerting: use folder UID instead of title in rule API (#77166)

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

* Drop a few more latent uses of namespace_id

* move getNamespaceKey to models package

* switch GetAlertRulesForScheduling to use folder table

* update GetAlertRulesForScheduling to return folder titles in format `parent_uid/title`.

* fi tests

* add tests for GetAlertRulesForScheduling when parent uid

* fix integration tests after merge

* fix test after merge

* change format of the namespace to JSON array

this is needed for forward compatibility, when we migrate to full paths

* update EF code to decode nested folder

---------

Co-authored-by: Yuri Tseretyan <yuriy.tseretyan@grafana.com>
Co-authored-by: Virginia Cepeda <virginia.cepeda@grafana.com>
Co-authored-by: Sonia Aguilar <soniaaguilarpeiron@gmail.com>
Co-authored-by: Alex Weaver <weaver.alex.d@gmail.com>
Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2024-01-17 11:07:39 +02:00
Gilles De Mey
ea4bfc23ca
Alerting: Improve notification policies view performance (#80209) 2024-01-16 16:30:25 +02:00
Sonia Aguilar
ae23cd7cf7
Alerting: Fix validation of selected contact point being required in the alert form when simplified routing (#80565)
Fix validation of selected contact point being required in the alert rule form
2024-01-15 17:45:01 +01:00
Sonia Aguilar
10f0d094ad
Alerting: Visualize autogenerated policy tree for simplified routing. (#79509)
* WIP

* WIP: disable some actions when is autogenerated policy

* WIP

* Wip: add checks for group by in auto-generated policy

* Make autogenerated policy readOnly and enable Readonly modal for it

* Use real check for autogenerated root

* Fix test

* Refactor: rename consts

* Add test for policy form being read only

* Add tests

* Update some code comments

* Fix Switch component not being styled as disabled

* Rename isAutogeneratedChunkOpen property to isBranchOpen and fix test

* Revert fix for Switch as it has moved to another separate PR

* Split Policy component in smaller sub components

* use useAlertmanagerAbility form for checking autogenerated tree visibility and fix container for autogenerated policy being rendered when it's not supported

* Update useAbilities test and dont use toAbility for ViewAutogeneratedPolicyTree

* Fix Policy being unmounted every 10 secs and move the collapsed/expanded state to each Policy component

* remove permissions from createDropdownMenuActions method parameters and convert the method to a hook

* Revert using PolicyItem

* Add test for createDropdownMenuActions

* Revert having a read only view form for the policy

* Remove readonly from default policy form

* Only show collapsible when node has children

* Split DefaultPolicyIndicator

* use hidehideCurrentPolicy instead of showCurrentPolicy

* Address some review suggestions
2024-01-15 13:36:26 +01:00
Armand Grillet
77ae1a5f6f
Alerting: Rename min interval field to interval in alert query editor (#80453) 2024-01-12 18:35:31 +01:00
Sonia Aguilar
4ea997b595
Alerting: Fix firing alerts title when showing active in Insights panel (#80414)
* Fix firing alerts title when showing active alerts in Insights panel

* Update red to green and change the component name to Active.tsx instead of Firing.tsx
2024-01-12 16:47:27 +01:00
Sonia Aguilar
e1af9bcecc
Alerting: Fix group filter (#80358)
* Fix group filter

* Fix Warning: Receivedfor a non-boolean attribute

* remove defaultQueryString.length > 3 from the logic to check if input is invalid
2024-01-11 17:28:12 +02:00
Konrad Lalik
282a3f9a66
Alerting: Allow copying error messages from query badges (#80078)
* Add interactive mode to the Badge component

* Add expression errors as Alert components instead of badges

* Revert "Add interactive mode to the Badge component"

This reverts commit 9558743fc7.
2024-01-10 10:17:57 +01:00
Konrad Lalik
229c1f417f
Alerting: Disable export all rules button when no GMA rules (#80126)
Disable export button when no GMA rules
2024-01-09 11:08:28 +01:00
Sonia Aguilar
6f8ddac4eb
Alerting: Simplified routing part3 (#79941)
* Update alert rule model in FE following BE design doc

* Remove unnecessary conditional rendering

* Update styles for optional route settings: add indentation

* Update test

* Add validation for  grouBy to include grafana_folder and alertname

* Split conversions between FEdataModel/ DTO, in separate functions

* Update texts following Brenda's suggestions

* Update text
2024-01-09 08:39:43 +01:00
Gilles De Mey
d2b023076b
Alerting: Add support for TTL for pushover for Mimir Alertmanager (#78687) 2024-01-08 15:48:36 +01:00
Konrad Lalik
6fd0ae0474
Alerting: Fix alertmanager query param when returning to silences list (#80021)
* Add alertmanager query param when returning to silences list. Sync query and storage alertmanager param

* Remove unused imports
2024-01-08 10:16:37 +01:00
Matthew Jacobson
aa03b8f8a7
Alerting: Guided legacy alerting upgrade dry-run (#80071)
This PR has two steps that together create a functional dry-run capability for the migration.

By enabling the feature flag alertingPreviewUpgrade when on legacy alerting it will:
    a. Allow all Grafana Alerting background services except for the scheduler to start (multiorg alertmanager, state manager, routes, …).
    b. Allow the UI to show Grafana Alerting pages alongside legacy ones (with appropriate in-app warnings that UA is not actually running).
    c. Show a new “Alerting Upgrade” page and register associated /api/v1/upgrade endpoints that will allow the user to upgrade their organization live without restart and present a summary of the upgrade in a table.
2024-01-05 18:19:12 -05:00
Alex Khomenko
99f7110e39
React Hook Form: Update to v 7.49.2 (#79493)
* Update RHF to latest

* Update Form types

* Fix alerting types

* Fix correlations types

* Update tests

* Fix tests

* Update LabelsField.tsx to use InputControl

* Update RuleEditorGrafanaRules.test.tsx

* Update RuleEditorCloudRules.test.tsx

* Only require one label

* Update RuleEditorRecordingRule.test.tsx

* Fix labels rules

* Revert

* Remove RHF from ignore rules

* Revert

* update form validation for overriding group timings

* Fix changes to correlations

* Fix auth type errors

---------

Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
Co-authored-by: Kristina Durivage <kristina.durivage@grafana.com>
2024-01-05 12:41:49 +02:00
Matthew Jacobson
c18da48e50
Alerting: Separate overlapping legacy and UA alerting routes (#76517)
* Separate overlapping legacy and UA alerting routes

api/alert-notifiers, alerting/list, and alerting/notifications existed in both
legacy and UA.
Rename legacy route paths and nav ids to be independent of UA ones.
2024-01-04 18:01:57 -05:00
Yuri Tseretyan
f6a46744a6
Alerting: Support hysteresis command expression (#75189)
Backend: 

* Update the Grafana Alerting engine to provide feedback to HysteresisCommand. The feedback information is stored in state.Manager as a fingerprint of each state. The fingerprint is persisted to the database. Only fingerprints that belong to Pending and Alerting states are considered as "loaded" and provided back to the command.
   - add ResultFingerprint to state.State. It's different from other fingerprints we store in the state because it is calculated from the result labels.
  -  add rule_fingerprint column to alert_instance
   - update alerting evaluator to accept AlertingResultsReader via context, and update scheduler to provide it.
   - add AlertingResultsFromRuleState that implements the new interface in eval package
   - update getExprRequest to patch the hysteresis command.

* Only one "Recovery Threshold" query is allowed to be used in the alert rule and it must be the Condition.


Frontend:

* Add hysteresis option to Threshold in UI. It's called "Recovery Threshold"
* Add test for getUnloadEvaluatorTypeFromCondition
* Hide hysteresis in panel expressions

* Refactor isInvalid and add test for it
* Remove unnecesary React.memo
* Add tests for updateEvaluatorConditions

---------

Co-authored-by: Sonia Aguilar <soniaaguilarpeiron@gmail.com>
2024-01-04 11:47:13 -05:00
Sonia Aguilar
1654df24da
Alerting: Fix reusing last url in tab when reopening a new tab in rule detail a… (#79801)
Fix reusing last url in tab when reopening a new tab in rule detail action buttons
2024-01-02 10:51:34 +01:00
Gilles De Mey
e5227550c4
Alerting: Detail view v2 (#77795) 2024-01-02 10:05:58 +01:00
Sonia Aguilar
f6f259f0b5
Alerting: Simplified routing part2 (#78671)
* wip

* WIP: Added some actions, timings and grouping

* WIP: remove reducer and use form fields instead

* Show defaults when using override in route settings

* Update alert rule model for simplified routing

* Use defaults in placeholders when overriding timings

* Add validation for contact point

* Add selected contact point details

* Refactor: extract components to separate files and reorg in subfolders

* Fix test

* Update revalidate mode in form

* Extract RuleEditorSectionBody outside NotificationStep component to avoid unmounting any time this one renders

* Remove reValidateMode option in form

* Fix after merging

* Address PR review comments part1

* Address PR review comments part2

* Create routeTimingsFields constant to reuse labels, descriptions and arial labels for the mute timing fields

* Move conditional rendering to the parent in AutomaticRooting and ManualAndAutomaticRouting

* Simplify AlertManagerManualRouting properties
2024-01-02 08:43:31 +01:00
Gilles De Mey
324f7d7534
Alerting: Allow linking to library panels (#79693) 2023-12-19 18:41:49 +02:00
Gilles De Mey
d0714a5303
Alerting: Small cleanup to remove mute timing as inheritable property (#79680) 2023-12-19 14:39:31 +02:00
Alexander Weaver
cf8e8852c3
Alerting: Drop NamespaceID from responses on unstable ngalert API endpoints in favor of NamespaceUID (#79359)
* Drop from API response

* Drop from swagger docs

* Drop from integration tests

* regenerate public swagger docs

* Drop from frontend

* Drop asserts for namespaceID field
2023-12-15 11:06:53 -06:00
Virginia Cepeda
3e4abdeb18
Alerting: Display "Show all" button for cloud rules (#79512)
* Fix counting totals for cloud rules

* Address PR review
2023-12-15 12:08:16 -03:00
Sonia Aguilar
6fffbe4e1c
Alerting: Fix queries and expressions in rule view details. (#79497)
* fix queries and expressions in rule-view details

* Add test
2023-12-14 13:28:10 +01:00
Sonia Aguilar
106903b549
Alerting: Add export mute timings feature to the UI. (#79395)
* Add export for all muteTimings and a single muteTiming

* Add test

* Fix snapshot

* Fix test

* Add mute timing name in file name when exporting single mute timing
2023-12-13 09:53:44 +02:00
Sonia Aguilar
1d53d71ba9
Alerting: Fix max data points placeholder rendering decimals (#78946)
Fix max data points placeholder rendering decimals
2023-12-12 15:45:56 +01:00
Sonia Aguilar
e6f2de51a3
Alerting: Fix for data source filter on cloud rules. (#79327)
* fix data source filter not worling for cloud rules

* Add test
2023-12-11 17:14:46 +01:00
Sonia Aguilar
fdb4626847
Alerting: Fix UI inheriting mute timings from parent when calculating the polic… (#79295)
* Fix UI inheriting mute timings from parent when calculating the policy tree properties

* Add test for this use case
2023-12-11 15:49:35 +01:00
Virginia Cepeda
c995e5e839
Alerting: Fix the "Run queries" button to preview queries (#79252)
Fix the "Run queries" button to preview queries
2023-12-07 18:21:46 -03:00
Josh Hunt
42ce9bd9f0
BrowseDashboards: Fix alerts folder view cards not stacking correctly (#79162) 2023-12-07 10:32:43 +00:00
Yuri Tseretyan
7e331c8507
Alerting: Support for condition field in /api/v1/eval (#79032)
Co-authored-by: Sonia Aguilar <soniaaguilarpeiron@gmail.com>
2023-12-06 11:28:43 -05:00
Gilles De Mey
58d0c51cf4
Alerting: Add note to the docs that GMA rules are evaluated concurrently (#78902) 2023-12-01 18:32:48 +01:00
Gilles De Mey
69e1046ed3
Alerting: Hide error messages for failing HTTP calls to Grafana OnCall (#78919) 2023-11-30 22:30:24 +01:00
Virginia Cepeda
148e1c1588
Alerting: Change create/update permissions for silences (#78920)
* Change create/update permissions for silences

* Add comment
2023-11-30 20:28:37 +02:00
Gilles De Mey
7ccdea6f67
Alerting: Fixes combination of multiple predicates for rule search (#78910) 2023-11-30 16:13:05 +01:00
Virginia Cepeda
588f87ef1e
Alerting: Filter insights panels (grafanacloud-usage ds) by instance_id (#78657)
* Filter grafana-managed panels by instance_id

* Filter grafana alertmanager panels by instance_id

* Filter mimir managed panels by instance_id

* Filter mimir managed per group by instance id

* Filter mimir alertmanager panels by instance id

* Fix typos in queries
2023-11-30 10:42:53 -03:00
Gilles De Mey
7cbf5ae78d
Alerting: Remove old contact points view (#78704) 2023-11-30 13:37:14 +01:00