Commit Graph

10490 Commits

Author SHA1 Message Date
Grot (@grafanabot) ed10eebb48 [v9.5.x] Alerting: Fix misleading status code in provisioning API (#67358)
Alerting: Fix misleading status code in provisioning API (#67331)

Fixes #66249

(cherry picked from commit dfc99cdd19)

Co-authored-by: Uwe Sommerlatt <uwe.sommerlatt@gmail.com>
2023-04-27 11:47:49 +03:00
Grot (@grafanabot) f373eca377 [v9.5.x] Alerting: Fix panic when reparenting receivers to groups following an attempted rename via Provisioning (#67175)
Co-authored-by: Alexander Weaver <weaver.alex.d@gmail.com>
Fix panic when reparenting receivers to groups following an attempted rename via Provisioning (#67167)
2023-04-25 04:43:47 +03:00
Steve Simpson c3d1930d05 [v9.5.x] Alerting: Allow hooking into request handler functions. (#67154)
Alerting: Allow hooking into request handler functions. (#67000)

* Alerting: Allow hooking into request handler functions.

Adds a facility to AlertNG for hooking into API handlers, allowing the
replacement of request handlers for specific paths. One of goals of this
approach was to allow hooking as late as possible in the request, e.g.
after all middleware has been applied, to simplfiy usage.

* Update pkg/services/ngalert/api/hooks.go

Co-authored-by: gotjosh <josue.abreu@gmail.com>

* Update pkg/services/ngalert/api/hooks.go

Co-authored-by: gotjosh <josue.abreu@gmail.com>

* Update pkg/services/ngalert/ngalert.go

Co-authored-by: gotjosh <josue.abreu@gmail.com>

* Fixes to review comments

* Fix passing logger in

---------

Co-authored-by: gotjosh <josue.abreu@gmail.com>
(cherry picked from commit 9effb9a708)
2023-04-24 20:43:23 +02:00
Grot (@grafanabot) dda934678d [v9.5.x] AzureMonitor: Correct series name accounting for dimensions (#67068)
AzureMonitor: Correct series name accounting for dimensions (#67050)

Correct displayName accounting for dimensions

(cherry picked from commit a2b97547a6)

Co-authored-by: Andreas Christou <andreas.christou@grafana.com>
2023-04-21 21:42:08 +03:00
Grot (@grafanabot) 8bc2a7144a [v9.5.x] Nested folders: Fix error response codes (#66975)
Nested folders: Fix error response codes (#66943)

* Nested folders: Fix error response codes

Fix error handling

(cherry picked from commit 24696d593b)

Co-authored-by: Sofia Papagiannaki <1632407+papagian@users.noreply.github.com>
2023-04-21 15:15:14 +00:00
Ashley Harrison ae716112dc Navigation IA: Update Monitoring to Observability (#66963) (#67023)
* update monitoring -> observability

* update backend test

(cherry picked from commit 1f193f1bad)
2023-04-21 10:40:15 +01:00
Grot (@grafanabot) 32869c96df [v9.5.x] Alerting: Fix DatasourceUID and RefID missing for DatasourceNoData alerts (#66962)
Alerting: Fix DatasourceUID and RefID missing for DatasourceNoData alerts (#66733)

This commit fixes a bug where DatasourceUID and RefID annotations are
missing for DatasourceNoData alerts in Grafana 9.5. This bug affects
datasource plugins that have moved to using the data plane contract.

(cherry picked from commit 35342a3c76)

Co-authored-by: George Robinson <george.robinson@grafana.com>
2023-04-20 16:56:53 +03:00
Grot (@grafanabot) dcc5190620 [v9.5.x] Expressions/threshold: Fix incorrect thresholds args length (#66926)
Expressions/threshold: Fix incorrect thresholds args length (#66859)

(cherry picked from commit 350de3f3bf)

Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2023-04-20 13:15:59 +02:00
Grot (@grafanabot) 384a21d03c [v9.5.x] Alerting: Add tests for Evaluate (#66930)
Alerting: Add tests for Evaluate (#66739)

(cherry picked from commit 883dcc81c0)

Co-authored-by: George Robinson <george.robinson@grafana.com>
2023-04-20 13:42:18 +03:00
Grot (@grafanabot) 0315b911ef [v9.5.x] Catalog: Show install error with incompatible version (#66817)
Catalog: Show install error with incompatible version (#65059)

(cherry picked from commit 98778289cb)

Co-authored-by: Andres Martinez Gotor <andres.martinez@grafana.com>
2023-04-19 10:51:07 +02:00
Grot (@grafanabot) 6a1a71f8bd [v9.5.x] Build: Add optional build-args for COMMIT_SHA and BUILD_BRANCH (#66759)
Build: Add optional build-args for COMMIT_SHA and BUILD_BRANCH (#66672)

* Remove .git from .dockerignore

* Revert "Remove .git from .dockerignore"

This reverts commit 5a4658f270.

* Add optional COMMIT_SHA and BUILD_BRANCH environment variables

(cherry picked from commit 614427c602)

Co-authored-by: Guilherme Caulada <guilherme.caulada@grafana.com>
2023-04-18 12:58:46 -03:00
Grot (@grafanabot) 3fb37e26b5 [v9.5.x] Alerting: Allow provenance disable in alerting provisioning API (#66761)
Alerting: Allow provenance disable in alerting provisioning API (#63650)

* Allow provenance None in alert rule update and rule group replace

* Allow provenance None in contact point update

* Allow updating policies to none by sending x-disable-provenance header

* Allow mute timings to disable provenance with x-disable-provenance header

* Allow disabling provenance by using x-disable-provenance header

* Add provenance helper to lower the cyclomatic complexity

* Do not downgrade provenance except un ReplaceRuleGroup

* Add function explanation and change error handling

* Add docs for x-disable-provenance changes (#66300)

* Add docs for x-disable-provenance changes

* Apply suggestions from code review

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update _index.md

---------

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/set-up/provision-alerting-resources/_index.md

Co-authored-by: George Robinson <george.robinson@grafana.com>

* Add error message check in tests

* Change docs

---------

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
Co-authored-by: George Robinson <george.robinson@grafana.com>
(cherry picked from commit f64a89727e)

Co-authored-by: Alex Moreno <alexander.moreno@grafana.com>
2023-04-18 15:34:44 +02:00
Grot (@grafanabot) 81b78f3af4 [v9.5.x] Annotations: Ignore unique constraint violations for tags (#66757)
(cherry picked from commit 948131aac3)

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
2023-04-18 14:48:16 +02:00
Grot (@grafanabot) 760146aeab [v9.5.x] Annotations: Improve get tags query performance (#66744)
Annotations: Improve get tags query performance (#66182)

* Add benchmark

* Add fix

(cherry picked from commit 04370f92dc)

Co-authored-by: Sofia Papagiannaki <1632407+papagian@users.noreply.github.com>
2023-04-18 13:47:13 +03:00
Grot (@grafanabot) c035abf529 [v9.5.x] SQL Datasources: Update Max Connection and Max Idle Connection Defaults to 100 and add auto mode (#66651)
* SQL Datasources: Update Max Connection and Max Idle Connection Defaults to 100 and add auto mode (#65834)

* Update connection configuration for SQL datasources

* Working auto state for connection numbers

* Add migration

* Use defaults from constants file

* Remove dead code

* Add tests and restructure useMigrateDatabaseField

* Update function names

* Update docs

* Make sure we don't continually issue updates

* Update docs

* Use onOptionsChnage in ConnectionLimits

* Update docs

* Clean up docs

* Update migration

* Fix default values in docs

* Fix spacing issue

* Fix test

* Update default values for SQL connections

* Include consts

* Allow override for default SQL datasource connection parameters

* Fix linter errors

* Remove extra @ts-ignore

* Centralize logic for default values

* Remove debugging

* Remove unecessary function

* Update configuration docs

* minor suggested change

* Fix comment misspelling

* Remove unecessary default setting code

* Update docs to indicate that code was included for backport version

* Remove dead code

---------

Co-authored-by: lwandz13 <larissa.wandzura@grafana.com>
(cherry picked from commit 92d92187d9)

* Add brackets around property name so that it's dynamic

---------

Co-authored-by: Kyle Cunningham <codeincarnate@users.noreply.github.com>
Co-authored-by: Kyle Cunningham <kyle@codeincarnate.com>
2023-04-17 21:53:12 +07:00
Grot (@grafanabot) 1433fcb9b2 [v9.5.x] Google Cloud Monitoring: Fix project variable (#66603)
Google Cloud Monitoring: Fix project variable (#66524)

Google Cloud Monitoring: fix project variable

Also fix typo found while debugging

(cherry picked from commit 02951e8a26)

Co-authored-by: Adam Simpson <adam@adamsimpson.net>
2023-04-14 15:29:44 +00:00
Grot (@grafanabot) 3369033d74 [v9.5.x] Alerting: Allow Rules to Schedule to be filtered by Rule Group (#66458)
Alerting: Allow Rules to Schedule to be filtered by Rule Group (#59990)

* Alerting: Allow Rules to Schedule to be filtered by Rule Group

(cherry picked from commit 2bbf0c9de4)

Co-authored-by: gotjosh <josue.abreu@gmail.com>
2023-04-13 15:13:17 +03:00
Grot (@grafanabot) 0f4a76c9de [v9.5.x] Plugins: Fix module.js file not being closed when loading plugins (#66435)
* Plugins: Fix module.js file not being closed when loading plugins (#66288)

* Plugins: Loader: Fix module.js file not being closed

* Plugins: LocalFS: Add comments, ensure same Read() behaviour as os.File's

* Changed comment for Close()

* Add tests for LocalFS

* "Fix" linter error

* "Fix" linter error again

(cherry picked from commit 1c3ad81826)

* trigger ci

---------

Co-authored-by: Giuseppe Guerra <giuseppe.guerra@grafana.com>
Co-authored-by: Giuseppe Guerra <to@nyo.zz.mu>
2023-04-13 12:41:26 +02:00
Grot (@grafanabot) 0f10b98202 [v9.5.x] Cloudwatch: Pass refId from query for expression queries (#66434)
Co-authored-by: Shirley <4163034+fridgepoet@users.noreply.github.com>
Co-authored-by: Isabella Siu <Isabella.siu@grafana.com>
(cherry picked from commit 6309d3fae6)
2023-04-13 12:37:46 +02:00
Grot (@grafanabot) 12d121a1fc [v9.5.x] Auth: Remove the session cookie only if it's invalid or revoked (#66431)
Auth: Remove the session cookie only if it's invalid or revoked (#65984)

Remove the cookie if it's invalid or revoked

(cherry picked from commit 4cac95d1c2)

Co-authored-by: Misi <mgyongyosi@users.noreply.github.com>
2023-04-13 09:54:23 +02:00
Grot (@grafanabot) a38b4cf3b0 [v9.5.x] AccessControl: Allow editors to access GET /api/datasources (#66376)
AccessControl: Allow editors to access GET /api/datasources (#66343)

Allow editors to access GET /datasources

(cherry picked from commit 2c21090931)

Co-authored-by: Misi <mgyongyosi@users.noreply.github.com>
2023-04-12 15:56:01 +02:00
Grot (@grafanabot) 122a38543c [v9.5.x] Revert "Prometheus: Reduce allocations parsing exemplars" (#66374)
Revert "Prometheus: Reduce allocations parsing exemplars" (#66367)

Revert "Prometheus: Reduce allocations parsing exemplars (#58959)"

This reverts commit a1f2d0e205.

(cherry picked from commit d830591cdc)

Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
2023-04-12 15:28:12 +02:00
Dimitris Sotirakis fe530beebd [v9.5.x] CI: Split /bin/build artifacts * subcommand (#66005) (#66345)
CI: Split `/bin/build artifacts *` subcommand (#66005)

* Split go files

* Modify publishartifacts.go

* Split main

* FIXME: Temp add GCSCopy to gcloud/storage

* Fix lint

* Exported flags

* Update starlark - make drone

* Further backend lint fixes

* Add fallback_test.go

* Fix go imports order

* make drone

* Remove GCSCopy from static assets

* Remove GCSCopy from storybook

* Fix lint

* Remove GCSCopy

* Remove success logline

* drone yaml cleanup

* Add artifacts-editions flag

* Fix starlark

* Add default sting slice in artifacts packages command

(cherry picked from commit 24d348f804)

# Conflicts:
#	.drone.yml
2023-04-12 12:24:34 +03:00
Grot (@grafanabot) 97164ed37e [v9.5.x] Plugins: Fix plugin signature calculation not working on Windows (#66302)
Plugins: Fix plugin signature calculation not working on Windows (#66273)

* Plugins: Fix plugin signature calculation not working on Windows

* Plugins: Added test for NTFS path separators in signature verification

* Use filepath.ToSlash and replace its implementation in tests

* Fix typo

(cherry picked from commit facd4eca7e)

Co-authored-by: Giuseppe Guerra <giuseppe.guerra@grafana.com>
2023-04-11 17:46:37 +02:00
Grot (@grafanabot) 1ef8c02d19 [v9.5.x] Library panels: Ensure pagination controls are always correctly displayed (#66279)
Library panels: Ensure pagination controls are always correctly displayed (#65283)

correctly count library panels in the general folder

(cherry picked from commit fda38de293)

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2023-04-11 16:35:28 +03:00
Grot (@grafanabot) e47e901618 [v9.5.x] Alerting: Tiny refactor on the eval and schedule packages (#66133)
Alerting: Tiny refactor on the eval and schedule packages (#66130)

* Alerting: Tiny refactor on the eval and schedule packages

two very small things:

- We had a constructor on something called a `Context` which is not a `context.Context` so let's just name that constructor `NewContext`
- The user that we use to run query evaluations is the same (with some variation) abstract it to a function so that it can be re-used when necessary.

* Update pkg/services/ngalert/schedule/schedule.go

Co-authored-by: Alexander Weaver <weaver.alex.d@gmail.com>

* Update pkg/services/ngalert/schedule/schedule.go

Co-authored-by: Alexander Weaver <weaver.alex.d@gmail.com>

---------

Co-authored-by: Alexander Weaver <weaver.alex.d@gmail.com>
(cherry picked from commit 1c3ce0735f)

Co-authored-by: gotjosh <josue.abreu@gmail.com>
2023-04-06 18:56:53 +03:00
Grot (@grafanabot) a013ee7be4 [v9.5.x] Plugins: Skip instrumenting plugin build info for core and bundled plugins (#66113)
Plugins: Skip instrumenting plugin build info for core and bundled plugins (#66105)

* only instrument plugin build for non core/bundled plugins

* fix import

(cherry picked from commit 7808e74260)

Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
2023-04-06 14:11:25 +03:00
Grot (@grafanabot) 62e0b45067 [v9.5.x] PublicDashboards: fix collapsed rows queries (#66030)
PublicDashboards: fix collapsed rows queries (#66014)

(cherry picked from commit 232834f455)

Co-authored-by: Ezequiel Victorero <ezequiel.victorero@grafana.com>
2023-04-05 10:54:28 -03:00
Grot (@grafanabot) c7cc68649d [v9.5.x] Alerting: Use a completely isolated context for state history writes (#65969)
Alerting: Use a completely isolated context for state history writes (#64989)

* Add fresh context with timeout and same log properties, re-derive logger

* Unify timeout constants

* Move ctx after shortcut that got added through rebasing

* Unify timeouts

* Port opentracing's SpanFromContext and ContextFromSpan to the grafana tracing package

* Support both opentracing and otel variants

* Better document why we're creating a new ctx

* Add new func to FakeSpan which was added after rebase

* Support grafana-specific traceID key in both tracer implementations

(cherry picked from commit fb520edd72)

Co-authored-by: Alexander Weaver <weaver.alex.d@gmail.com>
2023-04-04 17:12:30 -05:00
Sofia Papagiannaki a270188f0c Nested folders: Fix moving folder under root (#65684)
* Nested folders: Fix moving folder under root

* Add store test for not empty parent after update

* Modify folder and document store update implementation

Move folder only if NewParentUID is not nil

* Apply suggestion from code review
2023-04-03 21:24:36 +03:00
Joan López de la Franca Beltran 87a0c95164 Rendering: Experimental support to use JWTs as auth method (#60841)
* Rendering: Add support for auth through JWT

* Goimports

* Apply review suggestions

* Correct feature toggle ref

* Minor changes
2023-04-03 18:53:38 +02:00
George Robinson bd29071a0d Revert "Alerting: Add limits to the Prometheus Rules API" (#65842) 2023-04-03 15:20:37 +00:00
Guilherme Caulada 8f282b8a6e Build: Add CloudMode to build versions (#65651)
* Add CloudMode to build versions

* Use linux-amd64 variant without musl for cloud mode

* Add cloud mode to version folder on package upload

* Use musl variant for CloudMode

* Only sign rpm packages if there's any to sign

* Remove trailing whitespace
2023-04-03 11:15:39 -03:00
Galen Kistler 96e9e80739 Prometheus: Browser resource caching (#60711)
Add cache control headers and range snapping to Prometheus resource API calls.
2023-04-03 09:07:17 -05:00
Gábor Farkas 3ae39ff02b elasticsearch: removed code related to removed esVersion field (#65439)
elastic: remove code that references obsolete json field
2023-04-03 14:47:10 +02:00
Alexa V 2b0c0d4b95 Dashboards: Enable feature flag newPanelChromeUI by default (#65593) 2023-04-03 13:50:43 +02:00
Polina Boneva bf0f4a6751 Dashboard: Enable feature toggle emptyDashboardPage by default (#65464)
* enable FF emptyDashboardPage by default

* fix smoke test for creating a panel after enabling FF emptyDashboardPage by default
2023-04-03 14:04:54 +03:00
Giuseppe Guerra 2647b2e0f9 Plugins: Tracing: Disable distributed tracing for plugins by default (#65796)
* Plugins: Tracing: Disable tracing by default, pass GF_VERSION only if tracing is enabled

* Plugins: Tracing: Fix GF_PLUGIN_VERSION instead of GF_VERSION
2023-04-03 12:48:24 +02:00
George Robinson d96b0a71d3 Alerting: Add limits to the Prometheus Rules API (#65169)
This commit adds a number of limits to the Grafana flavor of the
Prometheus Rules API:

1. `limit` limits the maximum number of Rule Groups returned
2. `limit_rules` limits the maximum number of rules per Rule Group
3. `limit_alerts` limits the maximum number of alerts per rule

It sorts Rule Groups and rules within Rule Groups such that data in the
response is stable across requests. It also returns summaries (totals) for
all Rule Groups, individual Rule Groups and rules.
2023-04-03 10:17:02 +01:00
Ezequiel Victorero 63998b0ad2 PublicDashboards: fix annotations when Target is nil (#65744) 2023-03-31 19:13:06 -03:00
Santiago aba91d3053 Alerting: Fetch all applied alerting configurations (#65728)
* WIP

* skip invalid historic configurations instead of erroring

* add warning log when bad historic config is found

* remove unused custom marshaller for GettableHistoricUserConfig

* add id to historic user config, move limit check to store, fix typo

* swagger spec
2023-03-31 17:43:04 -03:00
Yuri Tseretyan 7b2f44762e Alerting: Update migration to put alerts to the default folder if dashboard folder is missing (#65577)
* extract function

* use context logger

* put alert to general folder if folder is missing

* move folderHelper init

* add test

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

Co-authored-by: Matthew Jacobson <matthew.jacobson@grafana.com>

---------

Co-authored-by: Matthew Jacobson <matthew.jacobson@grafana.com>
2023-03-31 18:40:21 +02:00
Alexander Weaver da4832724e Alerting: Delete stub for SQL alert state history backend (#65667)
Delete stub for SQL backend
2023-03-31 11:15:56 -05:00
Stephanie Hingtgen 211beae736 MSSQL: Update forked go-mssqldb dependency (#65658) 2023-03-31 10:07:37 -06:00
Matthew Jacobson b9dc04139a Alerting: Respect "For" Duration for NoData alerts (#65574)
* Alerting: Respect "For" Duration for NoData alerts

This change modifies `resultNoData` to be more inline with the logic of the other state handlers.

The main effects of this are:

1) NoData states with NoDataState config set to Alerting will respect "For" duration.
2) Prevents zero value in StartsAt and EndsAt for alerts that have only even been in normal state. This includes state transitions from NoDataState=OK and ExecErrState=OK.
3) Better state transition logging.
2023-03-31 19:05:15 +03:00
Yuri Tseretyan ed8628e39d Alerting: Fix integration test for creating silences (#65722)
* fix integration test for creating silences

to create correct silence with endsAt in the future

* Update api_alertmanager_test.go
2023-03-31 18:44:05 +03:00
Karl Persson 46cfb73e21 AuthToken: client token rotation fix (#65709)
* AuthToken: respond with 401 if token is not found

* Set retry to one so we don't retry a failed token rotation
2023-03-31 16:44:08 +02:00
Karl Persson 355f47628f AuthN: Tune logs in client (#65714)
* AuthN: Remove log

* AuthN: Check for user not found error in hook
2023-03-31 16:43:24 +02:00
Ieva 94cc93cc83 LDAP: Always synchronize Server Admin role through role sync if role sync is enabled (#58820)
fix a bug with role sync
2023-03-31 15:39:23 +01:00
Steve Simpson 04336d53a9 Alerting: Update prometheus version (#65688) 2023-03-31 16:34:35 +02:00