Commit Graph

9044 Commits

Author SHA1 Message Date
Ezequiel Victorero d6a8470e67 Query Library: Promote query library to private preview (#107211) 2025-06-25 16:10:51 -03:00
Adam Yeats 3503fc209e InfluxDB: Config page refresh (#103060) 2025-06-25 10:39:54 -06:00
Nathan Marrs 5abc5997ae Feature Toggles: Update ownership of feature toggles related to features being handed off to operator experience from sharing (#107162) 2025-06-25 14:57:09 +00:00
Andrey Karpov a7152174b6 ServiceAccounts: return 404 when deleting a non‑existent service account (#106618)
ServiceAccounts: return `404` when deleting a non‑existent service account
2025-06-25 11:20:10 +01:00
maicon 8a05378ef3 apiserver/folders: use exact match on GetFolderByTitle in legacy (#106867)
* apiserver/folders: use exact match on GetFolderByTitle in legacy

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>


---------

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>
2025-06-24 17:42:08 -03:00
Alexander Akhmetov 478f9bf597 Alerting: Emit metrics from prometheus state history backend (#107121)
Alerting: Emit metrics from prometheus historian backend
2025-06-24 18:27:52 +02:00
Jo 06278615fb Fix: Increase login_attempt.ip_address column length for IPv6 support (#107035)
* fix: increase login_attempt.ip_address column length for IPv6 support

- Expand ip_address column from VARCHAR(30) to VARCHAR(50) to accommodate IPv6 addresses
- Add database migration with support for PostgreSQL, MySQL, and SQLite
- Add comprehensive integration tests for various IPv6 address formats
- Resolves 500 errors when login fails over IPv6, now returns proper 401 errors

Fixes #106362

* test: add missing test skip to TestIntegrationIPv6AddressSupport

Skip integration test when running with -short flag to separate unit and integration tests

* Update pkg/services/sqlstore/migrations/login_attempt_mig.go

Co-authored-by: Victor Cinaglia <victor@grafana.com>

* fix missing bracket

* fix: resolve PostgreSQL timestamp overflow in IPv6 test

- Use controlled time mock instead of time.Now() to avoid timestamp conversion issues
- Follow existing test patterns with xormStore and mock time functions
- Add proper Since parameter to GetIPLoginAttemptCount query
- Fixes PostgreSQL error: 'pq: value "-62135596800" is out of range for type integer'

* fix: resolve PostgreSQL UTF-8 encoding error in IPv6 test

Replace string(rune(i)) with fmt.Sprintf to avoid null bytes (0x00)
when i=0, which caused 'invalid byte sequence for encoding UTF8' error

---------

Co-authored-by: Victor Cinaglia <victor@grafana.com>
2025-06-24 16:11:45 +02:00
Josh Hunt bdb1891431 UI: Use tabular-numbers globally (#107036)
* UI: Use tabular-numbers globally with feature toggle

* Enable toggle by default
2025-06-24 11:52:03 +00:00
Alexander Akhmetov 3b45f7daa5 Alerting: Fix flaky test (#107090) 2025-06-24 11:25:51 +02:00
Peter Štibraný 6e5056e1be Add tracing to bulk process. (#107047)
Add logging to bulk process.
2025-06-24 09:45:32 +01:00
mohammad-hamid 55cc6c120a Zanzana: incorrect folder tree bug (#106478)
use pagination to get all folders
2025-06-23 11:07:16 -04:00
Stephanie Hingtgen 63bc65fa4c Dashboards: Fix history list for dashboard uids that end in - (#107073) 2025-06-22 06:56:45 -06:00
alerting-team[bot] c4c2510a04 Alerting: Update alerting module to 863b09716e600ae15235b0fe2f996a389becd850 (#107027)
* [create-pull-request] automated change

* Fix TestRemoveSecretsForContactPoint test

---------

Co-authored-by: alexander-akhmetov <1875873+alexander-akhmetov@users.noreply.github.com>
Co-authored-by: Alexander Akhmetov <me@alx.cx>
2025-06-21 00:01:12 +02:00
Stephanie Hingtgen ef6e28b955 K8s: Make v0alpha1 opt-in (#107056) 2025-06-20 16:37:17 -05:00
Matthew Jacobson 5520f48153 Alerting: Use new receiver models for encrypt/decrypt in remote AM (#107042)
Several niche bugs have surfaced as a result of the decrypt code Grafana uses in receivers API being different than what is used to decrypt secrets before sending to remote AM. Example:
- Dingding notifier not abiding by new Patching added to local AM, thus causing missing url errors.

* noop refactor to simplify decryptConfiguration

* Move compat function package

* Use new receiver models to encrypt/decrypt in remote AM
2025-06-20 11:45:01 -04:00
Alexander Akhmetov ac832c157e Alerting: Maintain endsAt for missing alert instances that are not stale yet (#107011) 2025-06-20 14:31:21 +02:00
Ivana Huckova f0fab90072 Loki: Remove lokiSendDashboardPanelNames toggle (#106991) 2025-06-20 10:06:15 +02:00
Domas 06f091c806 NavTree: Update Observability landing page description (#106971)
Update observability landing page description
2025-06-20 10:05:50 +03:00
Peter Štibraný 156acd1744 Add tracing to live calls. (#106980)
* Add tracing to live calls.

Clients using /api/live/ws use long-running request and post various commands via the request. This PR adds tracing span to each client-initiated action like subscribing/unsubscribing to/from channel, RPC call, publishing an event.

Server-initiated messages are not included in the trace yet.
2025-06-19 16:38:12 +02:00
Will Browne 3d37f969e7 Plugins: Move discovery logic to plugin sources (#106911)
* move finder behaviour to source

* tidy

* undo go.mod changes

* fix comment

* tidy unsafe local source
2025-06-19 10:28:23 +01:00
Alexander Akhmetov 700c9a857c Alerting: Return extra alertmanager config as a string for mimirtool (#106959) 2025-06-19 01:12:26 +02:00
Todd Treece f3b545a903 K8s: Add cluster scope support in app runner (#106914) 2025-06-18 13:15:32 -04:00
mohammad-hamid 936dd05eac ext jwt client: map k8s-style to rbac permissions (#106279)
* initial commit

* Proposal
Co-Authored-By: mohammad-hamid <mohammad.hamid@grafana.com>

* extend k8s-style mapper
- add tests

* address comments

* cleanup

* address comments

---------

Co-authored-by: Gabriel Mabille <gabriel.mabille@grafana.com>
2025-06-18 11:51:35 -04:00
Ivana Huckova 67f50478d9 Loki: Refactor getting of panel/dashboard title headers as part of decoupling (#106829)
* Loki: Refactor getting of panel/dashboard title headers as part of decoupling

* Add headers to be passed to api server

* Address review comments
2025-06-18 17:41:31 +02:00
Will Browne 05b458741e DataSources: Add mutex to provisioning step (#106921)
add mutex to ds provisioning
2025-06-18 16:34:40 +01:00
Alexander Akhmetov 4b46da9214 Alerting: Hide extra Prometheus configuration secrets (#106916) 2025-06-18 17:01:19 +02:00
Alexander Akhmetov 426c334973 Alerting: API to create extra Alertmanager configurations (#106904)
What is this feature?

Implements the POST endpoint for deleting imported Mimir Alertmanager configurations:

    POST /api/convert/api/v1/alerts

The API endpoint creates the extra Alertmanager configuration with the provided identifier and matchers.
2025-06-18 15:05:06 +02:00
Alexander Zobnin 0270152e35 Zanzana: Improve server side tracing (#106804) 2025-06-18 12:53:39 +02:00
Alexander Akhmetov def5d889d0 Alerting: API to delete extra Alertmanager configurations (#106892) 2025-06-18 12:37:56 +02:00
Alexander Akhmetov 8c6df8b449 Alerting: Add support for retrieving imported Prometheus Alertmanager configurations (#106864) 2025-06-18 10:49:40 +02:00
Gabriel MABILLE 56c9dbf6e5 AuthZ: Add a feature toggle for the k8s apis (#106795) 2025-06-18 09:43:01 +02:00
Ryan McKinley 945bc53b4c DualWrite: Manage values from KV store (not file) (#106772) 2025-06-18 10:37:44 +03:00
Alexander Akhmetov 78bec77ca1 Alerting: Fix NewDatasourceWriter initialization (#106869)
Fix NewDatasourceWriter initialization
2025-06-18 07:53:48 +02:00
Alexander Akhmetov ad683f83ff Alerting: Add state history backend to write ALERTS metric (#104361)
**What is this feature?**

This PR implements a new Prometheus historian backend that allows Grafana alerting to write alert state history as Prometheus-compatible `ALERTS` metrics to remote Prometheus-compatible data sources.

The metric includes a few additional labels:

* `grafana_alertstate`: Grafana's full alert state, more granular than Prometheus.
* `grafana_rule_uid`: Grafana's alert rule UID.

Grafana states are included in the `grafana_alertstate` label also mapped to Prometheus-compatible `alertstate` values:

| Grafana alert state | `alertstate`          | `grafana_alertstate`  |
|---------------------|-----------------------|-----------------------|
| `Alerting`          | `firing`              | `alerting`            |
| `Recovering`        | `firing`              | `recovering`          |
| `Pending`           | `pending`             | `pending`             |
| `Error`             | `firing`              | `error`               |
| `NoData`            | `firing`              | `nodata`              |
| `Normal`            | _(no metric emitted)_ | _(no metric emitted)_ |
2025-06-18 07:17:57 +02:00
Alexander Akhmetov 5a78ce8a4b Alerting: Support saving extra Mimir configurations (#106721) 2025-06-17 23:33:16 +02:00
Moustafa Baiou 74e800e427 Alerting: Add provenance to Prometheus API (#106596)
This commit adds provenance information to the Prometheus API in the ngalert service to enable compatibility with the new alert list page.
2025-06-17 23:31:42 +02:00
Roberto Jiménez Sánchez 689cafc1fa App Platform Provisioning: Add experimental nanogit mode for Git Sync (#106763)
* Add nanogit package
* Add nanoGit feature flag
* Put logger into nanogit context
* Commit go mod and go sum updates
* Add more stuff around logging
* Nanogit also in extra one
* Add owner to dependency
2025-06-17 19:07:30 +02:00
Moustafa Baiou 0e6c7f84c3 Alerting: Add filters for health and contact point in Prometheus Rules api (#106580)
This adds the ability to filter rules with the prometheus compatible api using:
1. `receiver_name` to filter by contact point name
2. `health` to filter by the health status of the rule (one of `ok`, `error`, `nodata`, or `unknown`)

This also ensures that groups with no rules (due to filters) are not returned.
2025-06-17 16:57:03 +02:00
kay delaney 2aae202f92 Library Panels: Mark library panel RBAC as GA & enable by default (#106833) 2025-06-17 14:50:34 +01:00
Oscar Kilhed e90134bb6f Dashboards: Prefer the library panel title instead of panel title set in the dashboard. (#106810)
* prefer library panel title

* Add .

* add tests
2025-06-17 13:21:21 +02:00
Andres Martinez Gotor a125c17e79 Update grafanaAdvisor FF stage to private preview (#106819) 2025-06-17 12:50:00 +02:00
Alexander Akhmetov e92baba748 Alerting: Support PDC in Grafana-managed recording rules (#106677) 2025-06-17 11:46:34 +02:00
Eric Leijonmarck 25fe2b54fb LBAC for data sources: Enable teamHttpHeadersMimir by default (#106636)
feat: enable mimir lbac by default
2025-06-17 09:19:02 +01:00
Luminessa Starlight 09e8484bac i18n: rename locale to regionalFormat (#106585)
* locale -> regionalFormat, mirroring #102233

* set up regionalFormat to replace locale entirely

* replace locale with regionalFormat

* update reportInteraction arguments
2025-06-16 21:53:55 +02:00
Matt Cowley fc97b0e6b4 Home: restrict Getting Started Guide link to admins (#106742) 2025-06-16 14:56:52 -04:00
Matheus Macabu db845ed8de CloudMigrations: Add Mute Timings as dependency for Notification Policies (#106751) 2025-06-16 18:08:18 +02:00
Juan Cabanas c481c979f9 Reporting: Change FF to public preview (#106748) 2025-06-16 17:28:17 +02:00
Stephanie Hingtgen a8886ad5ec Annotations: Use dashboard uids instead of dashboard ids (#106676) 2025-06-13 13:59:24 -05:00
Ida Štambuk 08f274ba73 Features: Remove xrayApplicationSignals feature toggle (#106547)
Features: Remove xrayApplicationSignals toggle
2025-06-13 20:26:14 +02:00
Santiago 3fe73b8de9 Remote Alertmanager: Send SMTP config (#106337)
* (WIP) Remote Alertmanager: Send SMTP config

* send SMTP configs separately

* bring back deleted fields

* actually send stuff over

* remove redundant type, fix comments

* smtp -> smtpConfig

* also send SmtpFrom an StaticHeaders separately

* tests

* restore defaults.ini
2025-06-13 12:44:39 -03:00