Commit Graph

57675 Commits

Author SHA1 Message Date
Georges Chaudy 1f637d07eb
unistore: check namespace (#102020)
* check namespace in unistore

* fix tests

* fix trace status

* Use capital letter

---------

Co-authored-by: Karl Persson <23356117+kalleep@users.noreply.github.com>
2025-03-12 14:37:17 +01:00
Nick Richmond 00d9916113
ExploreMetrics: Preinstall metrics drilldown app (#100094)
* feat: preinstall metrics drilldown app

* refactor: simplify

* fix: read feature toggles before plugin settings
2025-03-12 09:23:10 -04:00
Ihor Yeromin b224751374
Table: Fix cell border visibility (#101951)
fix(table): cell border visibility
2025-03-12 14:21:15 +01:00
Yulia Shanyrova 3f2eb087ea
Plugins: Update all core plugins with raise issue and docs links (#101929)
* update all core plugins with raise issue and docs links

* fix plugin loader test, run prettier

* fix test

* update test results for api plugin tests
2025-03-12 14:15:46 +01:00
Jack Westbrook c9f563e576
Grafana UI: Use package.json exports for internal code (#101815)
* feat(grafana-ui): introduce development exports to prevent importing from grafana/ui/src

* refactor(theme-generation): move theme templates into scripts so themes continue to build

* refactor(frontend): replace  grafana/ui paths that use nested src with /internal or /unstable

* chore(betterer): update better results file

* feat(grafana-ui): support enterprise, remove Text component from internal

* docs(packages): update readme with exporting code conventions
2025-03-12 14:14:32 +01:00
ismail simsek dcba71a0b0
Prometheus: Improve native histogram response parsing performance (#102024)
* introduce tests

* improve allocation by %61

* ~%27 improvement

goos: darwin
goarch: arm64
pkg: github.com/grafana/grafana/pkg/promlib/converter
cpu: Apple M1 Pro
                                                            │  pmem.0.txt  │             pmem.2.txt             │
                                                            │    sec/op    │   sec/op     vs base               │
ReadPrometheusStyleResult_FromFile/prom-query-range.json-10   117.72µ ± 6%   82.90µ ± 4%  -29.57% (p=0.002 n=6)

                                                            │  pmem.0.txt   │             pmem.2.txt              │
                                                            │     B/op      │     B/op      vs base               │
ReadPrometheusStyleResult_FromFile/prom-query-range.json-10   104.34Ki ± 0%   76.09Ki ± 0%  -27.08% (p=0.002 n=6)

                                                            │ pmem.0.txt  │            pmem.2.txt             │
                                                            │  allocs/op  │ allocs/op   vs base               │
ReadPrometheusStyleResult_FromFile/prom-query-range.json-10   2463.0 ± 0%   899.0 ± 0%  -63.50% (p=0.002 n=6)

* add more tests

* remove comment lines

* read string as slice to prevent type conversion

* golang lint

* revert appendValueFromString improvement

* fix merging issues

* improve native histogram response parsing
2025-03-12 14:12:24 +01:00
Kristina a484c2cb6f
Docs: Remove reference to deleted feature flag in provisioning (#101983)
Remove reference to deprecated feature flag
2025-03-12 07:37:42 -05:00
ismail simsek f64be062c4
Prometheus: Improve response parser performance (#101517)
* introduce tests

* improve allocation by %61

* ~%27 improvement

goos: darwin
goarch: arm64
pkg: github.com/grafana/grafana/pkg/promlib/converter
cpu: Apple M1 Pro
                                                            │  pmem.0.txt  │             pmem.2.txt             │
                                                            │    sec/op    │   sec/op     vs base               │
ReadPrometheusStyleResult_FromFile/prom-query-range.json-10   117.72µ ± 6%   82.90µ ± 4%  -29.57% (p=0.002 n=6)

                                                            │  pmem.0.txt   │             pmem.2.txt              │
                                                            │     B/op      │     B/op      vs base               │
ReadPrometheusStyleResult_FromFile/prom-query-range.json-10   104.34Ki ± 0%   76.09Ki ± 0%  -27.08% (p=0.002 n=6)

                                                            │ pmem.0.txt  │            pmem.2.txt             │
                                                            │  allocs/op  │ allocs/op   vs base               │
ReadPrometheusStyleResult_FromFile/prom-query-range.json-10   2463.0 ± 0%   899.0 ± 0%  -63.50% (p=0.002 n=6)

* add more tests

* remove comment lines

* read string as slice to prevent type conversion

* golang lint

* revert appendValueFromString improvement

* fix merging issues
2025-03-12 13:16:19 +01:00
Ashley Harrison df0df68f30
Theme drawer tweaks (#102013)
tweaks for theme drawer
2025-03-12 11:42:07 +00:00
Sam Jewell 4bd5f29e05
SQL Expressions: Allow more functions (#102011)
I used Cursor and Claude 3.7 thinking to expand the list of functions
we allow. Specifically I needed `abs`.

TODO: Check each of these in the official MySQL docs to ensure they
are all safe:
eg. this doc: https://dev.mysql.com/doc/refman/8.4/en/flow-control-functions.html#operator_case
2025-03-12 11:39:48 +00:00
ismail simsek dacb25ec2a
Prometheus: Add labels to all native histogram fields (#101812)
add labels to all histogram fields
2025-03-12 12:34:23 +01:00
Sam Jewell 8cc352f4ba
SQL Expressions: Add syntax highlighting and autocomplete (#102018)
* SQL Expressions: Add syntax highlighting and autocomplete

Here we add syntax highlighting and autocomplete for MySQL dialect of
SQL. We don't yet have the full functionality that other SQL monaco
editors have, namely
- No autocomplete of table or column names
- No autoformatting yet (meaning no formatting of template variables)

But this is a vast improvement already. The above improvements can come
later - they are slightly harder to do.

* Improvements, based on review from LLM
2025-03-12 11:27:31 +00:00
Will Browne 5a2cba7b01
Plugins: Forward HTTP headers to plugin streaming calls (#101960)
* forward HTTP headers to plugin streaming calls

* fixup

* fix test based on feedback

* improve test assertions
2025-03-12 10:37:07 +00:00
Oscar Kilhed 8de665cbeb
Dynamic dashboards: Persist library panels in responsive grid (#101802)
* persist library panels in responsive grid

* small refactoring of old grid

* remove unused imports
2025-03-12 11:09:42 +01:00
Peter Štibraný ee23a7a7d9
Disable dashboard and folder synchronization when running on Spanner. (#102007) 2025-03-12 11:02:00 +01:00
Torkel Ödegaard 2d0b1c6154
Dashboards: Move settings button into edit pane (#101942) 2025-03-12 10:29:07 +01:00
Torkel Ödegaard 3bf6e3dc37
Dashboards: Fix issues with panel selection and dragging (#102000) 2025-03-12 10:26:59 +01:00
Selene e128c36127
Codegen: Cog and go fixes (#101408)
* Update to latest cog version and update workspaces

* Update generated go files

* Try to avoid concurrency issues

* Update workspaces

* Try to remove the sync...

* Remove grafana dependency from xorm go.mod file
2025-03-12 10:12:56 +01:00
Ben Sully 8988274912
Dashboards: update `@grafana/llm` to v0.13.2 and update usage (#101814)
This version of the package deprecates the `openai` object in
favour of the vendor-agnostic `llm` object, so this PR also
updates the usage of the package to use the new object and
take advantage of the vendor-agnostic APIs.
2025-03-12 10:53:20 +02:00
Ryan McKinley e6f682bc14
K8s/Dashboards: Fix title extraction (#101990) 2025-03-12 09:46:12 +02:00
Torkel Ödegaard e28c993465
DashboardScene: De-select object after they are removed (#101940) 2025-03-12 08:35:44 +01:00
Ren Goto (@ren510dev) 13cd9c3c60
Docs: Fix incorrect label groupings (#101491)
fix incorrect label groupings in alerting documents

Co-authored-by: Matheus Macabu <macabu.matheus@gmail.com>
2025-03-12 07:33:15 +00:00
Matheus Macabu 848d49e70f
Chore: Add username option for redis remote cache (#101787)
* Chore: Add username option for redis remote cache

(cherry picked from commit 25e28dc85e)

* Chore: Update docs and config with sample Redis conn with user+pass

---------

Co-authored-by: Thomas Fournier <tfournier@evolves.fr>
2025-03-12 08:26:41 +01:00
Ryan McKinley cd7b66e2e8
Provisioning: Add RTK client in main (#101991)
add frontend
2025-03-12 10:01:55 +03:00
Alex Khomenko f02803b027
Openapi: Remove duplicate group (#101933)
Remove duplicate group
2025-03-12 09:00:49 +03:00
grafana-pr-automation[bot] 2bec167be5
I18n: Download translations from Crowdin (#101984)
New Crowdin translations by GitHub Action

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-03-12 02:30:46 +02:00
jev forsberg 9ed864a944 Revert "baldm0mma/ add pr-lint-build-docs.yml"
This reverts commit 1ceab26cb4.
2025-03-11 17:04:25 -06:00
jev forsberg c5c26cb62f Revert "baldm0mma/ update node version"
This reverts commit 687c064192.
2025-03-11 17:04:25 -06:00
jev forsberg a2464f7e39 Revert "baldm0mma/ remove double yarn dip"
This reverts commit 12e1ae0751.
2025-03-11 17:04:25 -06:00
jev forsberg 92cf578dc3 Revert "baldm0mma/ remove cue gen and verification step"
This reverts commit ff74cb954f.
2025-03-11 17:04:25 -06:00
jev forsberg 172a4ca43b Revert "baldm0mma/ remove make installation"
This reverts commit 4d6d37d20f.
2025-03-11 17:04:25 -06:00
jev forsberg 868aabeac2 Revert "baldm0mma/ annotate mem lim"
This reverts commit 10621c40d3.
2025-03-11 17:04:25 -06:00
renovate[bot] 2f893faf03
Update dependency @babel/runtime to v7.26.10 [SECURITY] (#101975)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-03-11 23:02:02 +00:00
jev forsberg 10621c40d3 baldm0mma/ annotate mem lim 2025-03-11 16:59:39 -06:00
jev forsberg 4d6d37d20f baldm0mma/ remove make installation 2025-03-11 16:52:14 -06:00
jev forsberg ff74cb954f baldm0mma/ remove cue gen and verification step 2025-03-11 16:46:08 -06:00
jev forsberg 12e1ae0751 baldm0mma/ remove double yarn dip 2025-03-11 16:43:27 -06:00
jev forsberg 687c064192 baldm0mma/ update node version 2025-03-11 16:43:09 -06:00
jev forsberg 1ceab26cb4 baldm0mma/ add pr-lint-build-docs.yml 2025-03-11 16:41:35 -06:00
Jev Forsberg f296b66b37
Chore: Migrate storybook verification to GHAs (#101968)
* baldm0mma/ add storybook-verification workflow file

* baldm0mma/ build out storybook jobs to drone spec

* baldm0mma/ add node fallback and remove runner id

* baldm0mma/ replace with cypress action

* baldm0mma/ update codeowners

* baldm0mma/ add workflow dispatch for testing

* baldm0mma/ update trigger for testing

* baldm0mma/ update path

* baldm0mma/ update paths

* baldm0mma/ update node file
2025-03-11 15:27:54 -06:00
Alexander Akhmetov 7dd6f52630
Alerting: Add MissingSeriesEvalsToResolve option to the AlertRule (#101184) 2025-03-11 22:12:06 +01:00
Yuri Tseretyan 943b73a682
Alerting: Add scheduled clean-up of deleted rules (#101963)
* add scheduled clean up of deleted rules


---------

Signed-off-by: Yuri Tseretyan <yuriy.tseretyan@grafana.com>
2025-03-11 22:58:26 +02:00
Tom Ratcliffe 9870718c3a
Alerting: Enable `jsx-no-useless-fragment` rule (#101884)
* Add no-useless-fragment rule for alerting code

* Auto-fix most no-useless-fragment cases

* Manually fix remaining no-useless-fragment cases

* Fix `invalid` passing to Field component

* Allow AlertingPageWrapper to have optional children
2025-03-11 22:31:47 +02:00
Isabella Siu 700f1225df
AWS Datasources: Update grafana assume role docs to remove unnecessary flags (#101086)
Co-authored-by: Larissa Wandzura <126723338+lwandz13@users.noreply.github.com>
2025-03-11 16:09:22 -04:00
Alexander Akhmetov 85b0b47efd
Alerting: Allow disabling provenance in the Prometheus conversion API (#101573)
When creating Grafana-managed alerts from Prometheus rule definitions with mimirtool or cortextool, the rules are marked as "provisioned" and are not editable in the Grafana UI. This PR allows changing this by providing an extra header: --extra-header="X-Disable-Provenance=true".

When provenance is disabled, we do not keep the original rule definition in YAML, so it is impossible to read it back using the Prometheus conversion API (mimirtool/cortextool). This is intentional because if we did keep it and the rule was later changed in the UI, its Prometheus YAML definition would no longer reflect the latest version of the alert rule, as it would be unchanged.
2025-03-11 19:53:28 +01:00
Ashley Harrison 4dbd1846c7
Chore: bump codeql versions used in pr checks (#101957)
* bump codeql versions used in pr checks

* update supported versions

* use glob syntax

* wider glob
2025-03-11 17:28:36 +00:00
Denis Vodopianov e645a7d8ff
Chore: update golang version in .drone.yaml (#101894) 2025-03-11 18:25:52 +01:00
Sam Jewell 7a3415148e
SQL Expressions: Add cell-limit for input dataframes (#101700)
* expr: Add row limit to SQL expressions

Adds a configurable row limit to SQL expressions to prevent memory issues with large
result sets. The limit is configured via the `sql_expression_row_limit` setting in
the `[expressions]` section of grafana.ini, with a default of 100,000 rows.

The limit is enforced by checking the total number of rows across all input tables
before executing the SQL query. If the total exceeds the limit, the query fails
with an error message indicating the limit was exceeded.

* revert addition of newline

* Switch to table-driven tests

* Remove single-frame test-cases.

We only need to test for the multi frame case. Single frame is a subset
of the multi-frame case

* Add helper function

Simplify the way tests are set up and written

* Support convention, that limit: 0 is no limit

* Set the row-limit in one place only

* Update default limit to 20k rows

As per some discussion here:
https://raintank-corp.slack.com/archives/C071A5XCFST/p1741611647001369?thread_ts=1740047619.804869&cid=C071A5XCFST

* Test row-limit is applied from config

Make sure we protect this from regressions

This is perhaps a brittle test, somewhat coupled to the code here. But
it's good enough to prevent regressions at least.

* Add public documentation for the limit

* Limit total number of cells instead of rows

* Use named-return for totalRows

As @kylebrandt requested during review of #101700

* Leave DF cells as zero values during limits tests

When testing the cell limit we don't interact with the cell values at
all, so we leave them at their zero values both to speed up tests, and
to simplify and clarify that their values aren't used.

* Set SQLCmd limit at object creation - don't mutate

* Test that SQL node receives limit when built

And that it receives it from the Grafana config

* Improve TODO message for new Expression Parser

* Fix failing test by always creating config on the Service
2025-03-11 17:14:33 +00:00
Will Assis 42ae2fb026
fix(unified-storage): add missing dashboard legacy_id when in legacy read mode (#101944)
* add missing dashboard legacy_id when in modes 0-2
2025-03-11 12:56:34 -04:00
Yuri Tseretyan 7e4beb2074
Alerting: API to return deleted rules (#101429) 2025-03-11 12:40:44 -04:00