Commit Graph

9472 Commits

Author SHA1 Message Date
Alexander Akhmetov 169bf2ce73 Alerting: Add feature toggle to use the old simplified routing hash generation (#111900)
* Revert "Alerting: Generate simplified routing routes with old fingerprint function (#111893)"

This reverts commit 0da9d49896.

* Add alertingUseNewSimplifiedRoutingHashAlgorithm flag

* Alerting: Add feature toggle to use the old simplified routing hash generation
2025-10-01 15:21:33 -04:00
Alexander Akhmetov 0da9d49896 Alerting: Generate simplified routing routes with old fingerprint function (#111893) 2025-10-01 18:45:36 +02:00
linoman f01b1131e7 SCIM - Allow groups to be deleted if SCIM group sync is disabled (#111888)
* Load SCIM configuration before running changes in teams

* Update tests

* Allow to delete groups if SCIM group sync is disabled

* Update docs
2025-10-01 16:07:18 +00:00
Will Assis 9bde3267bb unified-storage: dont index -- Grafana -- datasource dashboard fields (#111774)
* unified-storage: dont index -- Grafana -- datasource dashboard fields
2025-10-01 11:32:56 -04:00
Ryan McKinley 2f2289f226 Chore: Update authlib (foder as top level argument) (#111800) 2025-10-01 14:40:28 +00:00
Shirley 03326f9ffd Navigation: rename database observability app (#111369) 2025-10-01 05:32:06 -07:00
Mustafa Sencer Özcan aeb62b7acc fix: improve api error handling for dashboards and folders (#111831) 2025-10-01 09:54:14 +02:00
Serge Zaitsev 174e924e15 Chore: Disable cgo by default for local builds (#111807)
* disable cgo by default for local builds, also set cgo variable in either case

* actually do not set the default value

* disable cgo for darwin, display sqlite driver in logs

* fix linter warning, although I do not fully agree with it
2025-09-30 23:06:40 +02:00
Tobias Skarhed 5639ecf711 Scopes: Get parent nodes for command palette search results (#111820)
* Add feature flag for multiple scopes endpoint usage

* Add method to API client for fetching multiple ScopeNodes at the same time

* Add parent title to tree

* Get nodes from cache too

* Update test with new functionality

* Update test

* Fix linting issue

* Remove unapplied scope parents
2025-09-30 21:46:06 +02:00
Will Browne cc72599321 Revert "Plugins: Move store init to dskit service" (#111806)
Revert "Plugins: Move store init to dskit service (#111206)"

This reverts commit 4cff7237d0.
2025-09-30 12:48:27 +01:00
Alexander Zobnin 5457cc5d4f Authz: Fix zookie nil pointer dereference (#111758) 2025-09-30 09:56:08 +02:00
Todd Treece 4cff7237d0 Plugins: Move store init to dskit service (#111206) 2025-09-29 15:32:15 -04:00
Ryan McKinley 0a06183d84 Stars: support running stars in mode 5 (#111754) 2025-09-29 22:28:48 +03:00
Tania c952de773d FeatureToggles: Removed deprecated code (#111750) 2025-09-29 20:05:44 +03:00
Costa Alexoglou 1b766b9c9f Provisioning finalisers fix 2 (#111679)
* adding some logs to better understand what might be happening

* only focus this PR on improve logging in finalizer handling

* debug log before calling finalizers

* working on finalizers

* removing last todos, adding unit tests

* better use SupportedFinalizers name

* addressing comments

* wip: fix tests and add delete error in status

* chore: codegen

* chore: codegen openapi

* Merge remote-tracking branch 'origin/main' into provisioning-finalisers-fix-2

* update frontend client

* fix: errors in testing

* fix: breaking test

---------

Co-authored-by: Daniele Ferru <daniele.ferru@grafana.com>
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2025-09-29 15:21:12 +02:00
Ryan McKinley c4a2bb5540 Search: Include managedBy in DashboardHit result (#111600) 2025-09-29 14:28:26 +03:00
Seunghun Shin 512c292e04 Alerting: Add jitter support for periodic alert state storage to reduce database load spikes (#111357)
What is this feature?

This PR implements a jitter mechanism for periodic alert state storage to distribute database load over time instead of processing all alert instances simultaneously. When enabled via the state_periodic_save_jitter_enabled configuration option, the system spreads batch write operations across 85% of the save interval window, preventing database load spikes in high-cardinality alerting environments.

Why do we need this feature?

In production environments with high alert cardinality, the current periodic batch storage can cause database performance issues by processing all alert instances simultaneously at fixed intervals. Even when using periodic batch storage to improve performance, concentrating all database operations at a single point in time can overwhelm database resources, especially in resource-constrained environments.

Rather than performing all INSERT operations at once during the periodic save, distributing these operations across the time window until the next save cycle can maintain more stable service operation within limited database resources. This approach prevents resource saturation by spreading the database load over the available time interval, allowing the system to operate more gracefully within existing resource constraints.

For example, with 200,000 alert instances using a 5-minute interval and 4,000 batch size, instead of executing 50 batch operations simultaneously, the jitter mechanism distributes these operations across approximately 4.25 minutes (85% of 5 minutes), with each batch executed roughly every 5.2 seconds.

This PR provides system-level protection against such load spikes by distributing operations across time, reducing peak resource usage while maintaining the benefits of periodic batch storage. The jitter mechanism is particularly valuable in resource-constrained environments where maintaining consistent database performance is more critical than precise timing of state updates.
2025-09-29 11:22:36 +02:00
Alexa Vargas 85534ae143 Chore: Add new dashboardLibrary feature toggle (#111680)
* Chore: Add new `dashboardLibrary` feature toggle
2025-09-29 06:55:46 +00:00
Todd Treece a333e8a8da Background Services: Remove dskitBackgroundServices toggle (#111255) 2025-09-26 15:16:06 -04:00
Eric Leijonmarck 052b6e3dfd LBAC rules: Change to query all teams before looping for better performance (#111689)
performance nit for querying all teams existance before looping through lbac rules
2025-09-26 18:08:56 +00:00
Eric Leijonmarck e7ca0fdf7b LBAC for datasources: Adds cleanup of lbac rules added for teams that have been deleted (#111405)
add cleanup of lbac rules for teams that have been deleted
2025-09-26 17:55:00 +01:00
Will Browne 8fe2925c47 Plugins: Add toggle for prioritizing loading plugins from CDN (#111671)
add toggle for loading cdn plugins first
2025-09-26 17:12:44 +01:00
Yuri Tseretyan b8f23eacd4 Alerting: Migrate to integration schema (#111643)
* update tests to assert against snapshot
* remove channel_config package replaced by schemas from alerting module
* update  references to use new schema
2025-09-26 09:31:50 -04:00
Jo f2eab5c3ea AccessControl: Increase limit of LBAC for Datasources rules (#111560)
increase json_data in mysql from TEXT to MEDIUMTEXT (16MB)
2025-09-26 12:12:26 +01:00
Ezequiel Victorero 6c4be6d1ea Saved Queries: Remove unused feature toggle (#111321)
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2025-09-25 21:48:29 +00:00
Yuri Tseretyan 24c10b4fb9 Alerting: Remove usages of ReceiverType (#111508)
* remove usages of ReceiverType
2025-09-25 16:09:54 -04:00
mohammad-hamid b85aa5f681 Introduce kubernetesAuthZHandlerRedirect toggle (#111582)
* introduce kubernetesAuthzEndpoints toggle

* rename to kubernetesAuthZHandlerRedirect
2025-09-25 13:42:52 -04:00
Santiago dab39c873f Remote Alertmanager: Use the correct OrgID when creating the store (#111634)
* Remote Alertmanager: Use the correct OrgID when creating the store

* fix test
2025-09-25 16:53:07 +00:00
Matej Kubinec 6629021f36 Navigation: Add missing subpaths for navtree items (#111202)
Navigation: Add missing subpaths
2025-09-25 19:26:05 +03:00
Ryan McKinley a4dabc31ed Folders: let unified storage handle authorization (#110825) 2025-09-24 16:26:47 +03:00
Ryan McKinley 305dab3a54 Annotations: Exclude internal dashboard id when saved via UID (#111535) 2025-09-24 12:51:20 +00:00
Matheus Macabu 6c8ca56651 Plugins: Identify plugin ID when provisioning fails for any reason (#111543) 2025-09-24 14:05:43 +02:00
Gabriel MABILLE a98870f8f9 Extsvcacc: Split permission scope (#111491)
* Extsvcacc: Split permission scope

* Fix integration test

* Trigger CI/CD pipeline

* Change extsvc permission comparing

* Recreate unsplit permissions
2025-09-24 13:25:44 +02:00
Gabriel MABILLE b63ba0269f AuthZ: Recover from missing split scope (#111492)
* AuthZ: Recover from missing split scope

* Follow up changes

* Add test

* better log

* Add a comment to getScopeMap

* Punctuation
2025-09-24 13:24:21 +02:00
owensmallwood 98fd3e8fe9 Unified Storage - Fix bug when cleaning up legacy on create (#111511)
fix bug - we should be calling s.store.Get() instead of s.Get(). Adds regression test.
2025-09-24 11:09:20 +01:00
Misi 54a347463e IAM: Use the new authorizer for the User resource (#111479)
* Use the new authorizer for the User resource

* Use accessClient

* Update pkg/services/authz/rbac/mapper.go

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

---------

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
2025-09-24 11:32:29 +02:00
Will Assis 33ff6dbb9e unified-storage: add feature flag to use ngram for indexing (#111265)
* unified-storage: add feature flag to use ngram instead of edge-ngram for indexing
2025-09-24 10:36:50 +02:00
Santiago 345b72227f Alert State History: Remove redundant JSON serialization when merging Loki streams (#111443) 2025-09-23 20:56:37 +02:00
Austin Pond bc0f746eed apiserver: Allow AppInstaller to Handle Custom Resource Routes (#111381)
[apiserver] Fix appinstaller.serverWrapper.RegisteredWebServices() to return the RegisteredWebServices from the underlying apiserver's Handler's GoRestfulContainer, matching the logic in grafana-app-sdk's apiserver.KubernetesGenericAPIServer
2025-09-23 10:32:03 -04:00
Ryan McKinley 94b82b0e5e Stars: Manage from apiserver (#111368) 2025-09-23 17:13:05 +03:00
Sven Grossmann afcb6ac309 feat(investigations): add "Investigations" menu if loop enabled (#111462)
* feat(investigations): add "Investigations" menu if loop enabled

* feat(investigations): move to `shouldIncludeInvestigations`

* feat(investigations): add issue link
2025-09-23 13:24:10 +02:00
Ryan McKinley 172e040065 Live: remove annotations.Repository (#111433) 2025-09-22 21:59:34 +03:00
Santiago 04bc71fa6d Alert State History: Skip invalid entries when merging streams (#111387) 2025-09-22 12:29:39 +02:00
colin-stuart 1ef27e9749 Auth: Add SCIM settings permission to auth config writer role (#111326)
* Auth: add SCIM settings permission to authentication config writer role

* make update-workspace
2025-09-19 09:55:18 -05:00
Yuri Tseretyan f166968357 Alerting: Refactoring ConfigRevision methods (#111192)
* make validateReceiver private

* make functions and type alias private

* move EncryptedReceivers and DecryptedReceivers to notifier package

to reduce exposure of definitions package via legacy_storage

* return receivers with Grafana origin after create\update

* add tests for ConfigRevision methods
2025-09-19 09:46:35 -04:00
Alexander Zobnin 72d212c5f9 Authlib: Update authz client to use zookies (#111291)
* Authlib: Update authz client to use zookies

* fix zookie return

* fix linter
2025-09-18 16:24:22 +02:00
Bruno acd9838701 caching middleware: handle req.PluginContext.DataSourceInstanceSettings being nil (#111258)
* caching middleware: handle req.PluginContext.DataSourceInstanceSettings being nil

* add test case
2025-09-18 09:40:04 -03:00
maicon 975ba0bf8b Annotations: avoid IN on getAccessControlFilter if dashboardUID is present (#111213)
Annotations: avoid IN on getAccessControlFilter

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>
2025-09-18 07:47:54 -03:00
Santiago 8f9d8f1154 Remote Alertmanager: Fix log line in the Mimir client (#111293) 2025-09-18 10:07:16 +00:00
Ryan McKinley 14b6e60f31 Folders: Add better integration tests (#111241) 2025-09-17 20:19:50 +03:00