Commit Graph
17878 Commits
Author SHA1 Message Date
Yuri Tseretyan 6603abc873 Alerting: Support for imported receivers in API (#112138)
* add support for converting Mimir integrations to Integration
* implement imported config revision
* update service to load staged receivers if configured
* make sure non-Grafana origin cannot be mutated
* set access control metadata for imported origin
* set includeImported from feature flag. Disabled for service used by provisioning
* add tests for new functionality
* add snapshot-based integration test
2025-11-13 15:35:21 +00:00
Will Browne f041563df3 Plugins: Prevent passing host environment variables to plugin processes by default (#113412)
* remove pluginsSkipHostEnvVars toggle

* fix tests
2025-11-13 15:31:57 +00:00
Alexander Akhmetov 44a92d252b Alerting: Support rule title search on the backend (#113738) 2025-11-13 15:52:14 +01:00
Alexander Zobnin b550750a9b Zanzana: Rename namespace to req_namespace label (#113822) 2025-11-13 12:08:10 +00:00
Jean-Philippe Quéméner e92a976de2 fix(unified-storage): process list items concurrently (#113801) 2025-11-13 12:08:14 +01:00
Gabriel MABILLE 97a6ab7b1c AuthZ: Remove outdated comments (#113817) 2025-11-13 11:06:02 +01:00
Roberto Jiménez Sánchez 73657be5e7 Provisioning: Fix history write for expired jobs (#113764)
* refactor: Move job cleanup to separate controller and fix history write

- Created JobCleanupController in apps/provisioning/pkg/controller
- Separated cleanup logic from ConcurrentJobDriver
- Fixed bug where expired jobs were not written to history
- Added comprehensive tests with 93.8% coverage
- Removed cleanup interval parameter from ConcurrentJobDriver
- Cleanup now properly follows Complete + WriteJob pattern

Fixes expired jobs being lost instead of archived

* refactor: Update lease renewal interval to use jobExpiry variable

- Changed the lease renewal interval in the GetPostStartHooks method to utilize the jobExpiry variable for improved clarity and maintainability.

* Format code

* Fix Unix milliseconds

* fix: correct Unix timestamp assertions and remove duplicate test expectations

- Changed Unix() to UnixMilli() for correct millisecond timestamp validation
- Removed duplicate store.AssertExpectations(t) calls throughout tests
2025-11-13 10:54:07 +01:00
Gabriel MABILLE b4b410f5be grafana-iam: Register a flag to configure dualwrite modes (#113610)
* `grafana-iam`: Register a flag to configure dualwrite modes

* Streamline helper code

* Launch sync job only with mode 1 to 3
2025-11-13 10:34:55 +01:00
Mustafa Sencer Özcan 6eac95f860 fix: inject index min update interval into resource server (#113816) 2025-11-13 09:27:54 +00:00
Ihor Yeromin 5091c946b5 Correlations: Remove correlations feature toggle (#113752)
* Remove correlations feature toggle

The correlations feature toggle has been removed from the registry and all
usages throughout the codebase have been cleaned up. Correlations are now
always available.
2025-11-13 10:21:46 +01:00
Ashley Harrison 3563388d4d Frontend Service: Client side redirect to custom domain (#113717)
* handle redirect in frontend service

* add comments
2025-11-13 03:32:14 +00:00
Ashley Harrison 6c8c4c32b5 Chore: Cleanup FEP feature toggles (#113772)
* reassign some feature toggles

* remove templateVariablesUsesCombobox toggle as it's unused
2025-11-13 03:31:18 +00:00
Charandas cbd794d0b8 Provisioning: fix regression with webhook authz failing in MT (#113793) 2025-11-12 13:21:28 -08:00
Adela Almasan a194219365 VizSuggestions: Add new feature toggle (#113549) 2025-11-12 13:26:29 -06:00
Isabella Siu ec9f39d54a AWS Datasources: add toggle for http proxy (#113777) 2025-11-12 13:51:23 -05:00
Alexander Zobnin 4bca10195e Zanzana: Fix shadow client metric (#113771) 2025-11-12 16:48:48 +00:00
Andres Torres 5162988fa1 feat(semconv): Add grafana namespace name attribute (#113767) 2025-11-12 16:33:26 +00:00
Dana Axinte 06954b7b0a Caching: Remove tsl memcached feature toggle (#113715)
* Remove tsl memcached feature toggle

* Remove feature flag from docs
2025-11-12 15:49:28 +00:00
Torkel Ödegaard 1f558b1e06 PanelChrome: Feature toggle increased panel header height and padding (#112613)
* PanelChrome: Feature toggle for increase header and content panel padding

* Update

* Update to panel menu

* Fix lint

* Revert theme feature ttoggle changes

Signed-off-by: Torkel Ödegaard <torkel@grafana.com>

* Update

* fix storybook

* Update

---------

Signed-off-by: Torkel Ödegaard <torkel@grafana.com>
2025-11-12 16:40:46 +01:00
Paul Marbach 4b1fbcbd04 Cleanup: Remove CSV drag-and-drop snapshot query feature (#113645)
* Chore: Remove editPanelCSVDragAndDrop feature

* update i18n

* fix issues from PR
2025-11-12 09:47:44 -05:00
Andres Martinez Gotor d83c35fd71 Advisor: App installer setup (#113525) 2025-11-12 15:32:21 +01:00
MikeandMatheus Macabu 6c512dabdc Secrets: Fix MariaDB syntax error due to unsupported CTE syntax (#111610) (#113690)
* Secrets: fix MariaDB syntax error due to unsupported CTE syntax (#111610)

* parametrize guid/created columns and re-generate test fixtures

---------

Co-authored-by: Matheus Macabu <macabu.matheus@gmail.com>
2025-11-12 15:15:43 +01:00
Mustafa Sencer Özcan 735b776edc fix: cleanup legacy resource if it is created in legacy during dual update (#113753) 2025-11-12 15:02:36 +01:00
Roberto Jiménez SánchezandCopilot cdc6a6114c Provisioning: Improve logging and tracing in job processing (#113454)
* Provisioning: Improve logging and tracing in job processing

- Add comprehensive tracing with OpenTelemetry spans across all job operations
- Enhance logging with consistent style: lowercase, concise messages, appropriate log levels
- Use past tense for completed lifecycle events (e.g., 'stopped' vs 'stop')
- Add structured logging with contextual attributes for better searchability
- Handle graceful shutdowns without throwing errors on context cancellation
- Refactor Cleanup method into listExpiredJobs and cleanUpExpiredJob for better code quality
- Avoid double logging by only logging errors when handled locally
- Add tracing and logging to historyjob controller cleanup operations

Files modified:
- pkg/registry/apis/provisioning/jobs/driver.go: Add tracing spans and improve error handling for graceful shutdown
- pkg/registry/apis/provisioning/jobs/concurrent_driver.go: Add tracing and consistent logging
- pkg/registry/apis/provisioning/jobs/persistentstore.go: Add comprehensive tracing and logging to all public methods, refactor cleanup
- apps/provisioning/pkg/controller/historyjob.go: Add tracing and improve logging consistency

* Update pkg/registry/apis/provisioning/jobs/persistentstore.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Refactor logging in persistentstore.go

- Remove debug log statements at the start of job operations for cleaner output
- Maintain structured logging with contextual attributes for improved traceability

Files modified:
- pkg/registry/apis/provisioning/jobs/persistentstore.go: Clean up logging for job operations

* Enhance logging and tracing in provisioning job operations

- Introduce OpenTelemetry spans for better observability in job processing and webhook handling
- Improve structured logging with contextual attributes for key operations
- Remove unnecessary tracing spans in long-running functions to streamline performance
- Update error handling to record errors in spans for better traceability

Files modified:
- pkg/registry/apis/provisioning/controller/repository.go: Add tracing and structured logging to sync job operations
- pkg/registry/apis/provisioning/jobs/concurrent_driver.go: Remove tracing span from long-running function
- pkg/registry/apis/provisioning/jobs/driver.go: Enhance logging and tracing in job processing
- pkg/registry/apis/provisioning/webhooks/webhook.go: Implement tracing and structured logging for webhook connections

* Update pkg/registry/apis/provisioning/jobs/driver.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Improve error handling in ConcurrentJobDriver to differentiate between graceful shutdown and unexpected stops

* Remove unused import in driver.go to clean up code

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-11-12 14:59:27 +01:00
beejeebus 6d64c373ce Allow FlagQueryServiceWithConnections to enable datasource config CRUD
The FlagGrafanaAPIServerWithExperimentalAPIs is only available when
`app_mode=development`. We have a more specific flag that is usable in
production, so use that.

Also, there was some old code constraining these APIs to a static list
of datasources. We don't need that anymore, so this PR removes it.

The FlagQueryServiceWithConnections is left as is, because there are
multiple existing tests that rely on this development-only, experimental
flag. I don't want to understand why that is.
2025-11-12 08:48:46 -05:00
Jean-Philippe Quéméner b9e39cdfcc chore(unified-storage): add debug log for read after write (#113747) 2025-11-12 14:39:03 +01:00
Gareth 4e050267c7 decouple the opentsdb data source from core (#113588)
* enable linting rules for opentsdb

* remove core imports

* update plugin.json

* write backend standalone files

* remove frontend core imports

* add yarn workspace

* remove core import for the plugin

* update grafana dependency

* update package.json

* add jest config
2025-11-12 22:33:17 +09:00
e463781077 Schema: convert dashboards from v1beta1 to v2beta1 (#109037)
- Implement full conversion pipeline from v1beta1 → v2beta1
- Ensure frontend–backend parity for all dashboard serialization paths
- Add automatic data loss detection for conversions (panels, queries, annotations, links, variables)
- Extract atomic conversion functions for v0 → v1beta1 → v2alpha1 → v2beta1
- Introduce conversion metrics and detailed logging for loss tracking
- Normalize datasource resolution, defaults, and annotation processing
- Improve panel layout serialization and y-coordinate normalization
- Fix inconsistencies in nested panels and collapsed row behavior
- Refine variable handling:
  - Filter refId from variable query specs
  - Default variable refresh to 'never' (matches frontend)
  - Fix constant and interval variable handling for missing queries
- Unify schema defaults (enable, hide, iconColor, editable, liveNow)
- Fix pluginId usage (UID vs type) and datasource references
- Fix metrics.go bug swallowing errors (return nil → return err)
- Add tests for version-specific conversion error handling
- Add data loss detection tests using source/target version comparison
- Clean up lint issues, legacy code, and redundant files
- Update OpenAPI snapshots and migrated dashboards
- Improve backend migrator to reuse datasource provider and match frontend logic

Co-authored-by: Haris Rozajac <haris.rozajac12@gmail.com>
Co-authored-by: Oscar Kilhed <oscar.kilhed@grafana.com>
Co-authored-by: Stephanie Hingtgen <stephanie.hingtgen@grafana.com>
2025-11-12 11:43:46 +01:00
Sam Jewell 09942c08db Transforms: Extract Fields: Remove Deduplication feature toggle (#113709)
Remove extractFieldsNameDeduplication feature toggle

The extractFieldsNameDeduplication feature has reached GA (General Availability),
so the feature toggle is no longer needed. The name deduplication behavior is
now permanently enabled.

Changes:
- Removed feature toggle definition from registry.go
- Removed feature toggle check in extractFields.ts (always deduplicate now)
- Updated tests to remove feature toggle manipulation
- Regenerated feature toggle files
2025-11-12 10:08:13 +00:00
Sam Jewell f0d18beaf3 AdHoc Filters in Tooltips: Remove feature toggle (#113695)
* Remove `dashboardDsAdHocFiltering` feature toggle

From our feature toggles machinery only.
Removing from our application code next.

* Remove feature toggle from application code
2025-11-12 10:05:30 +00:00
Alexander Zobnin 48438f49e7 grafana-iam: refactor resource permissions write to zanzana (#113700)
* grafana-iam: refactor resource permissions write to zanzana

* Fix linter

* fix linter
2025-11-12 10:23:15 +01:00
Jean-Philippe Quéméner 76ab09a6a2 feat(unified-storage): add tracing to apistore (#113714) 2025-11-12 09:48:56 +01:00
Moustafa Baiou 559dab8b1b Alerting: Fix error when updating Alertmanager config with autogenerated receivers (#113710)
If an alert rule with an invalid receiver is created it breaks the entire alertmanager configuration rather than preventing the save.

This fixes the issue by erroring on save and apply, and logging invalid receivers only when applying the config after an update.

Introduced in #111838
2025-11-11 16:53:36 +00:00
Josh Hunt 96f34f8f56 EchoSrv: Enable auto route tracking for Azure App Insights (#113354)
* Echo: Enable auto route tracking with Azure App Insights

* Add server config option to disable auto route tracking

* fix not using minified js
2025-11-11 16:33:46 +00:00
Ashley Harrison 562e7ba043 Frontend Service: Ensure the favicon/appletouchicon/loadinglogo are using the CDN url (#113699)
* ensure the favicon, appletouchicon and loadinglogo are using the CDN url

* add nosec comments since we control the cdn url
2025-11-11 13:47:21 +00:00
Rafael Bortolon Paulovic 194f7cb4f0 fix: detect circular references in GetDescendants (#113672)
* fix: detect circular references in GetDescendants

* chore: use map[string]bool and instantiate at the beginning of the function
2025-11-11 12:46:35 +01:00
62eef87208 Dashboard Library: Integrate community dashboards on Suggested Dashboards Flow (#112808)
* Extend interpolate endpoint to support community dashboard json interpolation
Added unit tests

* Implement Frontend Side
- Show tabs
- Fetch Community dashboads
- Use DashboardCard component
- Search grafana dashboard in the community tab
- Make Tabs and pagination sticky
- Adjust titles to be scoped by datasource name/type
- Add skeleton loading for community tabs and pagination
- Add dashboard details tooltip
- Bring old datasource-provisioned box back and rely on new feature toggle for community dashboards
- update i18n
- update swagger
---------

Co-authored-by: Juan Cabanas <juan.cabanas@grafana.com>
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2025-11-11 10:40:39 +01:00
Gábor Farkas 34e85113d2 datasources: apiserver: removed unnecessary code (#113384)
* datasources: apiserver: removed unnecessary code

* workspace fixes
2025-11-11 09:25:22 +01:00
Stephanie Hingtgen 2d4e432239 Dashboard provisioning: Add support for v2 schema (#113620) 2025-11-10 17:45:37 -06:00
Adam Simpson fcc243886c chore: change ownership of disableSSEDataplane and sseGroupByDatasource (#113640) 2025-11-10 20:50:29 +00:00
Brendan O'HandleyandTania B. 43de885aad Feature toggles: remove unused recordedQueriesMulti feature toggle (#113616)
remove recordedQueriesMulti feature toggle

Co-authored-by: Tania B. <10127682+undef1nd@users.noreply.github.com>
2025-11-10 14:31:43 -06:00
Moustafa Baiou dd0a2d4cff Alerting: Add validation to check updates on rule groups (#113669)
This moves some of the validation logic for rule groups from the legacy storage layer to the validator.
2025-11-10 14:40:35 -05:00
Jean-Philippe Quéméner 142340e0ff refactor(folders): use set to detect circular references (#113665) 2025-11-10 20:37:02 +01:00
Sam Jewell c49caead25 [--Dashboard-- data source] AdHoc filtering: Remove feature toggle (#113674)
* Remove dashboardDsAdHocFiltering feature toggle

The dashboardDsAdHocFiltering feature toggle has been enabled by default
and is now in General Availability stage. This commit removes the feature
toggle and makes the AdHoc filtering functionality for the dashboard
datasource permanently available.

Changes:
- Remove feature toggle from registry.go
- Regenerate feature toggle files
- Remove conditional checks in frontend code
- Update tests to reflect permanent enablement
- Always show AdHoc Filters toggle in dashboard query editor
- Always enable dashboard datasource in DataSourcePicker for variables

* Remove unused imports

* Fix Prettier formatting issues
2025-11-10 17:17:49 +00:00
ismail simsek ac9259d6a4 Chore: Update pyroscope error sources logging (#113175)
* remove loggers

* more downstream errors

* more downstream errors 2

* uber nit
2025-11-10 16:47:29 +00:00
Moustafa Baiou 70e30df6ce Alerting: Fix support for converted Prometheus rules in app-platform apis (#113648)
* Alerting: Fix support for converted Prometheus rules in app-platform apis

Retrieving converted Prometheus retrieval rules was not supported in the app-platform apis and was throwing a 500 error due to the provenance not being handled properly.

Also adds a test to cover converted Prometheus rules when getting rules.

Closes https://github.com/grafana/alerting-squad/issues/1200

* add test to confirm provenance compatibility
2025-11-10 16:43:38 +00:00
Paul Marbach fb20d7311e Chore: Change ownership of some Dataviz feature flags to Datapro (#113528)
* Chore: Change ownership of some Dataviz feature flags

* retain ownership of csv drag n drop
2025-11-10 15:26:38 +00:00
Bruno f094a9d5e5 Caching: Add flag to disable clean cache button (#113598)
Caching: add flag to disable clean cache button
2025-11-10 12:08:56 -03:00
Gábor Farkas 2dc48c0b98 datasources: querier: add mode-info (#113592)
* datasources: querier: add mode-info

* fixed unit test
2025-11-10 15:48:59 +01:00
Andres Martinez Gotor 1a2beae38a Preinstall: Replace auto update feature flag with a permanent one (#113586) 2025-11-10 15:06:30 +01:00