Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Alerting: Use a completely isolated context for state history writes #64989

Merged
merged 9 commits into from Apr 4, 2023

Conversation

alexweav
Copy link
Contributor

@alexweav alexweav commented Mar 17, 2023

What is this feature?

The background tasks to write state history data currently pass along the main rule evaluation context.

It doesn't make sense to do this. These writes are totally different background jobs. Passing the context along here means that state history writes might inherit polluted context, unrelated timeouts, and other things.

In this PR, we spin up a brand new context for state history writes, and seed it with the things we expect. I analyzed the existing contexts, which contained three things consistently:

  • Timeouts - I saw many pre-existing timeouts from other areas. These should not be passed along, this is a bug. Replaced with a fresh timeout just for state history.
  • Rule data - used for logging. Added it to the new context.
  • Tracing context - Right now, state history writes are not visible on the spans we emit anyway. I did not bother to pass these through, since we already aren't getting this data, so we aren't losing anything by dropping it. Tracing for these jobs would be nice admittedly - but adding this is better suited for a future PR.

Which issue(s) does this PR fix?:

n/a

Special notes for your reviewer:

@alexweav alexweav added this to the 9.4.8 milestone Mar 17, 2023
@alexweav alexweav requested a review from a team as a code owner March 17, 2023 21:33
@gotjosh
Copy link
Contributor

gotjosh commented Mar 18, 2023

Fixes #64979

@alexweav alexweav force-pushed the alexweav/state-history-context branch from 1bddeea to 0da696d Compare March 21, 2023 15:03
@yuri-tceretian
Copy link
Contributor

Tracing context - Right now, state history writes are not visible on the spans we emit anyway. I did not bother to pass these through, since we already aren't getting this data, so we aren't losing anything by dropping it. Tracing for these jobs would be nice admittedly - but adding this is better suited for a future PR.

I don't think this is the correct statement. Last time I checked when I introduced the tracking in scheduler, db queries initiated in historian were included. If that stopped happening, we should fix that.

@alexweav
Copy link
Contributor Author

I don't think this is the correct statement. Last time I checked when I introduced the tracking in scheduler, db queries initiated in historian were included.

I've checked maybe 10 or 15 spans in Tempo and I'm not seeing this at all. Perhaps I'm looking in the wrong place?

If that stopped happening, we should fix that.

Agree, but I'd prefer a separate PR as this change doesn't regress. Shall I file an issue?

@yuri-tceretian
Copy link
Contributor

What do you think about sending data to historian via a channel. This way we will make it an independent service, decouple and make that channel buffer be a backpressure mechanism (i.e. not need for timeouts on client side)

@alexweav
Copy link
Contributor Author

I think that seems like a nice goal. We'd at the minimum get a little more control over pileups. It's a fairly deep change to implement this right now because we still pass pointers to states in the registry everywhere and not copies, so the states could change underneath it while it sits in the queue. This would need to be fixed first, i.e. doing for state what we already did for rule.

I still think the consumer of the queue should have timeouts though - especially since it's talking to an external service. At a minimum it would need its own context anyway, so even if we start moving toward that goal, this PR is still needed first.

Copy link
Contributor

@gotjosh gotjosh left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM but please see my comment regarding your comment 😆

pkg/services/ngalert/state/historian/annotation.go Outdated Show resolved Hide resolved
pkg/services/ngalert/state/historian/core.go Outdated Show resolved Hide resolved
@alexweav alexweav requested a review from a team as a code owner March 29, 2023 22:14
@alexweav alexweav requested review from sakjur, mildwonkey and yangkb09 and removed request for a team March 29, 2023 22:14
@alexweav alexweav force-pushed the alexweav/state-history-context branch from 8d6e9da to 4a71f8a Compare March 29, 2023 22:23
// It is the equivalent of opentracing.ContextWithSpan and trace.ContextWithSpan.
func ContextWithSpan(ctx context.Context, span Span) context.Context {
if span != nil {
return span.contextWithSpan(ctx)
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

another approach here would be to just detect the span type and inject appropriately, avoiding need to extend the Span interface.

IMO the current approach is better decoupled, but curious what others think?

Copy link
Contributor

@sakjur sakjur Mar 30, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Generally speaking I prefer public methods and casting to other interfaces for optional functionality over having hidden methods for cases like these. Otoh, we'll most likely revisit this when OpenTracing finally gets removed, so lets not overthink it — we can adjust the implementation over time.

Copy link
Contributor

@sakjur sakjur left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Visual review of the changes to pkg/infra/tracing: Looks good to me 🙂

Copy link
Contributor

@yuri-tceretian yuri-tceretian left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@alexweav alexweav modified the milestones: 9.4.x, 9.5.x Apr 4, 2023
@alexweav alexweav added backport v9.5.x Bot will automatically open backport PR and removed backport v9.4.x Mark PR for automatic backport to v9.4.x labels Apr 4, 2023
@alexweav alexweav merged commit fb520ed into main Apr 4, 2023
14 checks passed
@alexweav alexweav deleted the alexweav/state-history-context branch April 4, 2023 21:41
grafanabot pushed a commit that referenced this pull request Apr 4, 2023
…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 fb520ed)
alexweav added a commit that referenced this pull request Apr 4, 2023
…y 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 fb520ed)

Co-authored-by: Alexander Weaver <weaver.alex.d@gmail.com>
VikaCep pushed a commit that referenced this pull request Apr 5, 2023
…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
@guicaulada guicaulada modified the milestones: 9.5.x, 9.5.0 Apr 24, 2023
@zerok zerok modified the milestones: 9.5.0, 10.0.0 May 3, 2023
DariaKunoichi added a commit to fluxninja/grafana that referenced this pull request May 22, 2023
* ApiKeyGenPrefix: rename package (#65623)

* Rename package to satokengen to make it clearer that it is for service
account tokens

* TimeSeries: Improve stacking direction heuristic (#65499)

* Search: Remove old s o search shortcut from HelpModal (#65631)

* Chore: add selector for items in the megamenu (#65633)

add selector for items in the megamenu

* DateTimePicker: Add min date support to calendar (#64632)

* Storybook: update Alert story (#63959)

* Give more detail and context on http_addr in grafana.ini (#65187)

* Give more detail and context on http_addr in grafana.ini

This particular configuration item is misleadingly named (it's about networking addresses rather than HTTP) and there are a bunch of ways users can misread, misconfigure, and create a situation where grafana won't start due to a bind error.

I'm trying to outline a couple of extra things about what this covers and provide good default advice, leaving room for specialists who know what they're doing to still use this, with more clarity.

* Update _index.md

* Apply suggestions from code review

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>

* Update _index.md

removed recommendation note about http_addr

* makes prettier

---------

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
Co-authored-by: Chris Moyer <chris.moyer@grafana.com>

* Prometheus: Track request.requestId rather than custom query.requestId (#63913)

* Alerting: Introduce proper feature toggles for common state history backend combinations (#65497)

* define 3 feature toggles for rollout phases

* Pass feature toggles along

* Implement first feature toggle

* Try a different strategy with fall-throughs to specific configurations

* Apply toggle overrides once outside of backend composition

* Emit log messages when we coerce backends

* Run code generator for feature toggle files

* Improve wording in flag descs

* Re-run generator

* Use code-generated constants instead of plain strings

* Use converted enum values rather than strings for pre-parsing

* Docs: Fix markup for URL (#65576)

* Docs: Fix markup for URL

* updates absolute URL to a relref

---------

Co-authored-by: Chris Moyer <chris.moyer@grafana.com>

* Explore: Add click tracking to data links (#65221)

* Add click tracking to data links

* Use constants, mock window.open call

* Add comment about possibly missing reporting data

* Remove superfluous if

* Plugins: Support for distributed tracing in backend plugins SDK (#63714)

* Tracing: Pass OTLP address and propagation format to plugins

* Fix unit tests

* Fix indentation

* Fix plugin manager integration tests

* Goimports

* Pass plugin version to plugins

* Do not add GF_PLUGIN_VERSION if plugin version is not set, add tests

* Allow disabling plugins distributed tracing on a per-plugin basis

* Moved disabled plugins to tracing.opentelemetry config section

* Pre-allocate DisabledPlugins map to the correct size

* Moved disable tracing setting flags in plugin settings

* Renamed plugin env vars for tracing endpoint and propagation

* Fix plugin initializer tests

* Refactoring: Moved OpentelemetryCfg from pkg/infra to pkg/plugins

* Changed GetSection to Section in parseSettingsOpentelemetry

* Add tests for NewOpentelemetryCfg

* Fix test case names in TestNewOpentelemetryCfg

* OpenTelemetry: Remove redundant error checks

* CloudWatch Logs: Fix running logs queries with expressions (#65306)

* Search: Move checkbox outside of item card (#65540)

* Move checkbox outside of SeachItem

* Add li element

* TimeSeries: Don't extend stepped interpolation to graph edges (#65657)

* Update scenes to 0.2 (#65676)

* Update scenes to latest

* Replace FormatRegistryID with VariableFormatID

* Remove scene demos that were moved to scenes repo, fix the remaining demos

* Fix grafana Monitoring app

* DashboardsLoader migration

* Fix test

* e2e tests: Add selector to close dashboard settings and use it in e2e tests (#65625)

* add selector to close dashboard settings and use it in e2e tests

* check visibility of add panel button

* check visibility of add new panel button before clicking

* Navigation: Rename Alerts & incidents to Alerts & IRM (#65635)

update Alerts & incidents to Alerts & IRM

* Logs Volume Timeouts: Add a custom message with options (retry, close) for request timeouts (#65434)

* Logs Volume: identify timeouts and provide remediation action

* Supplementary result error: refactor updated component API

* Create helper to identify timeout errors

* Update timeout identifying function

* Add unit test

* Update panel unit test

* Update public/app/features/explore/utils/logsVolumeResponse.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Use some instead of reduce

* Change alert type to info

* Add comment

* Remove unnecessary optional chaining

* Remove unnecessary condition

* Remove unnecessary wrapping arrow function

---------

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Tempo: TraceQL Configurable static fields (#65284)

* TraceQL - configurable static fields for new UI

* TraceQL - filter out static fields from Tags section. Added tooltip to static fields

* Add more units to duration validation. Improve duration field tooltip with accepted units

* Better control of delete button on SearchField

* Move new config behind feature toggle

* Special title for intrinsic "name"

* Fix tests

* Move static fields not in the datasource to the Tags section

* Start using the useAsync hook in the Tempo TraceQL configuration page to retrieve the tags and datasource

* Fix tests

* Fix test. Use useAsync to retrieve options in SearchField

* Remove ability to set a default value in filter configuration.
Removed type from filter, dynamic filters are now any filters not present in the datasource config

* Updated the static filters tooltip

* Replace useState + useEffect with useMemo for scopedTag

* Elasticsearch: Add benchmarks for processing of requests and responses (#65354)

* Elasticsearch: Add benchmarks for processing of requests and responses

* Update, use package variable to elimitnate possible optimization

* Update, require no error

* BrowseDashboards: Fix move to General folder not working (#65653)

* BrowseDashboards: Fix move to General folder not working

* simplify isOpen

* Bump plugin-sdk (#65652)

* Update CODEOWNERS per new team name for aws-datasources (#65638)

update codeowners per new team name

* NestedFolders: Support moving folders into other folders (#65519)

* wip for move folders

* hello

* Polish up move dashboard results messages

* tests

* fix other test

* tweak messages when things can't be moved

* tweak messages when things can't be moved

* fix tests

* remove comment

* restore failOnConsole

* .

* Fix move modal not opening due to dodgy rebase

* NestedFolders: Folder view move folder (#65661)

* NestedFolders: add delete confirmation to delete modal (#65548)

add delete confirmation to delete modal

* Table: Fix column filter popup shadow (#65675)

* Table: Fix column filter popup shadow

* fix border

* Stat Panel: Update docs (#65639)

* baldm0mma/update_stat_docs/ update stat docs

* baldm0mma/update_stat_docs/ update content

* baldm0mma/update_stat_docs/ update show text

* baldm0mma/update_stat_docs/ update color mode text

* Update docs/sources/panels-visualizations/visualizations/stat/index.md

Update to fully plural

Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>

* Update docs/sources/panels-visualizations/visualizations/stat/index.md

Update to singular

Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>

---------

Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>

* Phlare: Rollback pprof code (#65689)

* Logger: Add feature toggle for errors in HTTP request logs (#64425)

* Alerting: Use logger with context in the state cache (#65663)

* Docs: Update influxdb provisioning documentation to align with database deprecation (#65550)

Update influxdb docs to align with database deprecation

* Alerting: Update prometheus version (#65688)

* New Panel Header: Fix when clicking submenu item the parent menu item onClick get's triggered (#65691)

* LDAP: Always synchronize Server Admin role through role sync if role sync is enabled (#58820)

fix a bug with role sync

* AuthN: Tune logs in client (#65714)

* AuthN: Remove log

* AuthN: Check for user not found error in hook

* 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

* Chore: Make SearchItem return div instead of li (#65685)

Remove use of li

* 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

* 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.

* Build: Remove start:hot from package.json (#65718)

* Prometheus: Update capitalisation of elements (#65724)

* update capitalization of elements

* fix tests

* MSSQL: Update forked go-mssqldb dependency (#65658)

* Alerting: Delete stub for SQL alert state history backend (#65667)

Delete stub for SQL backend

* 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>

* (bug) Change URL to correct documentation page (#65493)

* (bug) Change URL to correct documentation page

* (bug) change url to team sync since its more about team sync instead of advanced ldap

* Add Curl in Alpine to Support Docker Health Check (#65547)

adding curl into alpine build for this issue: https://github.com/grafana/grafana/issues/60805

* 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

* PublicDashboards: fix annotations when Target is nil (#65744)

* Docs: Deprecate dashboard previews (#65698)

* previews deprecation notice in docs

* Update docs/sources/search/dashboard-previews/index.md

Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>

---------

Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>

* Docs: Add info how to do multiple sorting in table panel (#65715)

* Docs: Add info how to do multiple sorting in table panel

* Update docs/sources/panels-visualizations/visualizations/table/index.md

Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>

---------

Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>

* Dashboard Datasource: Update Query List & Improve UX (#64429)

* Update query display

* Remove links as they don't work

* Remove unused CSS

* Improve styling and add description for data field

* Update docs

* Fix up docs some more

* Move special data sources back to the bottom

* Add language back

* Change order of special datasrouces in docs

* Alerting: Disable alerting incompatible panels in the dashboard picker (#65341)

* Hide dashboard hint when dashboard already selected

* Disable panels of types other than graph and timeseries

* Add a test checking disabled panels

* Make all panels selectable

* Fix tests

* UI extensions: Refactor the registry and remove the `"command"` type (#65327)

* Wip

* Wip

* Wip

* Wip

* Wip

* Angular: Prevent angular from loading when disabled (#65755)

* Angular: Prevent angular from loading when disabled

* remove stuff

* 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.

* TablePanel: Fix table cells overflowing when there are multiple data links (#65711)

* Fix table cells overflowing when there are multiple data links

* CI: Move release integration pipeline to standalone promotion pipeline (#65787)

* PanelChrome: Add option to show actions on the right side (actions = leftItems) (#65762)

* PanelChrome: Add option to show actions on the right side

* remove button style change

* Added docs and minor tweaks to align the type with titleItems

* Hover header fixes, storybook improvements, and title description fix

* Fixed condition for drag icon in hover header

* 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

* CI: Make `init-enterprise` depend on `grabpl` (#65797)

Make init-enterprise depend on grabpl

# Conflicts:
#	.drone.yml

* 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

* Dashboards: Enable feature flag `newPanelChromeUI` by default (#65593)

* Governance: Update workplace (#63997)

* Loki Query Splitting: Rename from "chunk" to "splitting" (#65630)

* Update chunking mentions in the code and ui

* Rename files and exported functions

* Rename configuration attribute

* Rename grouped querying function name

* Update more function names

* Update unit test

* Update unit tests

* More renames

* Rename time splitting functions

* Prometheus: Remove unused editorSrc (#65829)

Remove unused editorSrc

* elasticsearch: removed code related to removed esVersion field (#65439)

elastic: remove code that references obsolete json field

* Loki docs: remove docs for raw query as it no longer exists (#65804)

* CI: Exclude cloud related tags from tag events  (#65806)

* Exclude cloud related tags

* Fix starlark lint errors

* CloudWatch: Fix cachedQueries insights not being updated for metric queries (#65495)

* Alerting: Add label filters to the logic of showing hidden instances (#65674)

* Add label filters to the logic of showing hidden instances

Co-authored-by: Virginia Cepeda <virginia.cepeda@grafana.com>

* Add tests

Co-Authored-By: Sonia Aguilar <33540275+soniaAguilarPeiron@users.noreply.github.com>

---------

Co-authored-by: Virginia Cepeda <virginia.cepeda@grafana.com>

* Prometheus: Browser resource caching (#60711)

Add cache control headers and range snapping to Prometheus resource API calls.

* 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

* CloudMonitoring: Add project selector for MQL editor[fix] (#65567)

* Prometheus: browser cache unit test bug (#65843)

fix unit tests failing on main, but not on feature branch

* Docs: Add transformations doc link for What's New v9.2 (#65673)

* Add transformations doc link

Add transformations doc link to `Transformations: INNER JOINs` section.

Related issue: https://github.com/grafana/grafana/issues/65671

* Apply suggestions from code review

Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>

---------

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>

* Plugins: Hide extensions menu when editing a panel (#65840)

Plugins: Hide extensions menu when editing a panel

* Remove two PR reviewer checklist items (#65290)

remove two reviewer checklist items

Remove FRR and compatibility checks, because the FRR is only for new features and compatibility is impossible to confirm.

* Revert "Alerting: Add limits to the Prometheus Rules API" (#65842)

* PluginExtensions: Added onClick to link as a replacement for the command type (#65837)

* Added onClick to the link and made path optional.

* Added type to the import.

* revert(plugin-extensions): put back isPromise utility function

* Minor update to the isPromise function.

* added onClick in the panel menu item.

---------

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>

* Alerting: skip flakey test (#65858)

this one was unskipped but seems to still be flakey

* docs: updates for empty dashboard state (#65573)

* empty dashboard related updates

* updated steps to clearly indicate button names

Some steps indicated the heading as the thing to click rather than the button text. Also some of the button text wasn't quite accurate.

* remove incorrect instruction

* apply suggestion from review

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>

* pushing empty commit to trigger linting

* triggering linting

---------

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>

* Docs: Introduce plugin extensions (#64747)

* docs(pluginextensions): initial commit detailing how to add menu items to grafana

* docs(pluginextensions): initial commit detailing how to do cross plugin linking

* Update cross-plugin-linking.md

* Update extend-the-grafana-ui-with-links-and-commands.md

* style(pluginextensions): prettier fix for extend the grafana ui with links and commands

* Update docs/sources/developers/plugins/extend-the-grafana-ui-with-links-and-commands.md

Co-authored-by: Andres Martinez Gotor <andres.martinez@grafana.com>

* Update docs/sources/developers/plugins/cross-plugin-linking.md

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>

* docs(pluginextensions): add info for placements and link to metadata

* docs(plugin-extensions): update metadata for new docs pages

* docs(plugin-extensions): pr feedback

* Update docs/sources/developers/plugins/cross-plugin-linking.md

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>

* docs(plugin-extensions): remove all mention of commands

* chore(plugin-extensions): rename extension doc to remove reference to commands

* docs(plugin-extensions): replace usage of placement with extension point

* docs(plugin-extensions): lowercase ID

---------

Co-authored-by: Joseph Perez <45749060+josmperez@users.noreply.github.com>
Co-authored-by: Andres Martinez Gotor <andres.martinez@grafana.com>
Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>

* UI Extensions: Rename `placement` to `extensionPointId` (#65841)

* UI Extensions: Rename `placement` to `extensionPointId`

* Fix tests.

* Fix conflicts and review notes

* Remove `placement` from some other places

* update enhanced-ldap (#65687)

* update enhanced-ldap

documenting a potential issue with ldap active sync, when search filter and username attributes do not match.

* Update docs/sources/setup-grafana/configure-security/configure-authentication/enhanced-ldap/index.md

* formats example

* Update docs/sources/setup-grafana/configure-security/configure-authentication/enhanced-ldap/index.md

---------

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
Co-authored-by: Chris Moyer <chris.moyer@grafana.com>

* 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

* Docker: Allow to get commit sha when using root Dockerfile (#65870)

* Allow to get commit sha when using root Dockerfile

* 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

* docs: nav updates for data sources (#65873)

* navigation related text updates

* fixed lead-in sentences and indented config options as part of steps

* updated azure managed identity image

* Apply suggestions from code review

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>

---------

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>

* Release: Bump version to 9.5.0 (#65888)

"Release: Updated versions in package to 9.5.0"

* [v9.5.x] PluginExtensions: Fixed issue with incorrect type being exposed when configuring an extension (#65914)

PluginExtensions: Fixed issue with incorrect type being exposed when configuring an extension (#65910)

Fixed issue with wrong type required in configureExtensionLink

(cherry picked from commit 68796a9f3190e807ebef8ee6cf34fb2a5c5e81dd)

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>

* [v9.5.x] Loki Query Splitting: Fix bug for mixed split durations (#65928)

Loki Query Splitting: Fix bug for mixed split durations (#65925)

* Query splitting: fix next request group pointer calculation

* Update unit test

(cherry picked from commit 44beef2e413aacea97c98a160decfa7608dc5b69)

Co-authored-by: Matias Chomicki <matyax@gmail.com>

* [v9.5.x] Docs: Added note to contact Support (#65959)

Docs: Added note to contact Support (#65235)

* Added note to contact Support

* Update docs/sources/setup-grafana/configure-security/configure-authentication/enhanced-ldap/index.md

* Update docs/sources/setup-grafana/configure-security/configure-authentication/enhanced-ldap/index.md

* makes prettier

* Apply suggestions from code review

---------

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
Co-authored-by: Chris Moyer <chris.moyer@grafana.com>
(cherry picked from commit 445734888b8e6340aef65c3141fcecdb4b9d2ac9)

Co-authored-by: melGL <81323402+melgl@users.noreply.github.com>

* [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 fb520edd72624794ab257ddb039a28675e65f1fe)

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

* [v9.5.x] PluginExtensions: Fixed issue in typings for the onClick link callback (#65979)

PluginExtensions: Fixed issue in typings for the onClick link callback (#65978)

* Fixed bug with event being forced.

* Made onClick undefinable in the config as well.

* Fixed some more type issues.

(cherry picked from commit 9719ee9bd30cd3750fa86558c6ba78dea9b7552e)

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>

* [v9.5.x] Docs: Updated Grafana OSS Introduction (#66025)

Docs: Updated Grafana OSS Introduction (#66004)

* Added Phlare and added static data sources to intro instead of it just being TSDB sources

* Update docs/sources/introduction/_index.md

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>

* Update docs/sources/introduction/_index.md

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>

---------

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
(cherry picked from commit e8813916c9dc63b77a3942efc699e15ea76d0ac8)

Co-authored-by: Alex Close <alex.kirtley-close@grafana.com>

* [v9.5.x] PluginExtensions: Adding full targets to the panel menu context (#66020)

PluginExtensions: Adding full targets to the panel menu context (#65861)

* Making sure we add the whole query to the dashboard panel context.

* Adding some more tests.

* Synced with main.

(cherry picked from commit c8ecd0679b959665a7200d8a785d7e0b386cdbb8)

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>

* [v9.5.x] Fix: DataLinks from data sources override user defined data link (#66031)

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
Co-authored-by: Alexa V <239999+axelavargas@users.noreply.github.com>
Fix: DataLinks from data sources override user defined data link (#65996)

* [v9.5.x] PublicDashboards: fix collapsed rows queries (#66030)

PublicDashboards: fix collapsed rows queries (#66014)

(cherry picked from commit 232834f455ea7390efb9c75a98f97cd0ba95788f)

Co-authored-by: Ezequiel Victorero <ezequiel.victorero@grafana.com>

* [v9.5.x] XYChart: Add all dataset columns in tooltip (#66065)

XYChart: Add all dataset columns in tooltip (#65027)

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
(cherry picked from commit df62bba354e169449b6e268e55395e334df7bf50)

Co-authored-by: Victor Marin <36818606+mdvictor@users.noreply.github.com>

* [v9.5.x] PieChart: Show long labels properly (#66083)

PieChart: Show long labels properly (#65699)

Fix label hidden when overflowing

(cherry picked from commit 91a61f1e0d150359c3487f94478c76170c82cdaa)

Co-authored-by: Victor Marin <36818606+mdvictor@users.noreply.github.com>

* [v9.5.x] Table: Fix migrations from old angular table for cell color modes  (#66085)

Table: Fix migrations from old angular table for cell color modes  (#65760)

* Table: Fix migrations from old angular table

* Update defaults

(cherry picked from commit 3843c73162b686a24000b27deca6da4713848cdc)

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>

* [v9.5.x] docs: fix broken data source tables  (#66043)

fixe broken data source tables  (#66042)

fixed tables

(cherry picked from commit a378e3425049ce01954b60e7e06a62fed5bca25e)

Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>

* [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 7808e74260037a63dfd1188363125f242818b4d8)

Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>

* [v9.5.x] Admin/Plugins: Change alert about Connections to subtitle (#65991)

Admin/Plugins: Change alert about Connections to subtitle  (#65913)

* change ConnectionRedirectNotice to a subtitle on Admin/Plugins

* cleanup ConnectionsRedirectNotice a bit

* [v9.5.x] docs: fixes link (#66069)

docs: fixes link (#66051)

* fixes link

* Update docs/sources/setup-grafana/configure-security/configure-authentication/enhanced-ldap/index.md

Co-authored-by: melGL <81323402+melgl@users.noreply.github.com>

---------

Co-authored-by: melGL <81323402+melgl@users.noreply.github.com>
(cherry picked from commit 421b911c4524b6e9832c6e4d8d8a685f9f84ff7e)

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>

* [v9.5.x] Docs: Add content to what's new 9.4 (#66123)

Docs: Add content to what's new 9.4 (#65895)

* Docs: Add content to what's new 9.4

* Update docs/sources/whatsnew/whats-new-in-v9-4.md

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>

* Update docs/sources/whatsnew/whats-new-in-v9-4.md

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>

---------

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
(cherry picked from commit 75f5cb061ec0df76fbb92533fcdf3d7958b2e83b)

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>

* [v9.5.x] Chore: remove console.log from search (#66128)

Chore: remove console.log from search (#66124)

(cherry picked from commit a6a43268204246d9eba97a155f306c7ca2cfea8e)

Co-authored-by: Josh Hunt <joshhunt@users.noreply.github.com>

* [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 1c3ce0735f3b6e5609c3a7d8988d7f0700ee75b1)

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

* [v9.5.x] Docs: Small fixes for Template Variables Doc (#66139)

Docs: Small fixes for Template Variables Doc (#65947)

* Docs: Small fixes for Template Variables Doc

* Docs: Minor fix to Variables Docs

- Added missing word

* Update docs/sources/dashboards/variables/add-template-variables/index.md

Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>

* empty commit to trigger linting

* small change to trigger linting

---------

Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>
Co-authored-by: Isabel Matwawana <isabel.matwawana@grafana.com>
(cherry picked from commit 3685dd56e1a33aae2b3b18a807fbc3574601bdc5)

Co-authored-by: sarah-spang <86264026+sarah-spang@users.noreply.github.com>

* [v9.5.x] docs: nav updates for use dashboard topic (#66154)

docs: nav updates for use dashboard topic (#66151)

* updated main image and supporting text

* fixed icon name

* updated nav path

(cherry picked from commit 8600a8ce2e44f10a67ad98252184901b63dbe135)

Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>

* [v9.5.x] Query Splitting: Fix for handling queries with no requestId (#66162)

Query Splitting: Fix for handling queries with no requestId (#66161)

Loki query splitting fix for when there's no request id

(cherry picked from commit 5dc529a55d4fa5e172580f62fddad7497e5dd3c0)

Co-authored-by: Domas <domasx2@gmail.com>

* [v9.5.x] Alerting: Fix docs link when creating or editing rules (#66164)

Alerting: Fix docs link when creating or editing rules (#66019)

(cherry picked from commit 3e12b72f58bac39cb6ccd17b60da8adce7b930d0)

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

* [v9.5.x] Alerting: Fix explore link in alert detail view (#66166)

Alerting: Fix explore link in alert detail view (#66106)

(cherry picked from commit cb8a5b2c96107f8b82d6c9c286968871d77d5dcd)

Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>

* [v9.5.x] Docs: updates Grafana installation for Red Hat, Fedora, RHEL, SUSE, and OpenSUSE (#66169)

Docs: updates Grafana installation for Red Hat, Fedora, RHEL, SUSE, and OpenSUSE (#65232)

* removes references to CentOS

* starts reorg

* complete restructure

* updates alias

* Update docs/sources/setup-grafana/installation/rpm/index.md

* Apply suggestions from code review

Co-authored-by: Dan Cech <dcech@grafana.com>

* incorporates review feedback

* adds install on suse/opensuse

* updates aliases

* Apply suggestions from code review

Co-authored-by: Dan Cech <dcech@grafana.com>

* removes start server content from both topics; adds link to start server docs in Next steps

* Apply suggestions from code review

Co-authored-by: Dan Cech <dcech@grafana.com>

* incorporates review feedback

* Apply suggestions from code review

* typo fix

---------

Co-authored-by: Dan Cech <dcech@grafana.com>
(cherry picked from commit fcdbb7a86f8cf440a30bf2e2360c14cc7bfa4d22)

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>

* [v9.5.x] Docs: removes start server content, updates links (#66175)

Docs: removes start server content, updates links (#66172)

removes start server content, updates links

(cherry picked from commit 4a2d86750eca720e3b9fb6a5653be2da808dc47e)

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>

* [v9.5.x] fixed broken links (#66179)

fixed broken links (#66153)

(cherry picked from commit ce00465d9be2987d557a19cf704a31f4a1405826)

Co-authored-by: lwandz13 <126723338+lwandz13@users.noreply.github.com>

* [v9.5.x] Docs: updates to error handling (#66236)

Docs: updates to error handling (#65599)

* Docs: updates to error handling

* ran prettier

(cherry picked from commit a164b794ce3d66f31bed5ab5fa95f5041d662434)

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

* [v9.5.x] docs: nav updates for dashboards (#66143)

docs: nav updates for dashboards (#66078)

* navigation related text and image updates in dashboards topics

* fix typo

* fixed style and formatting issues

(cherry picked from commit 3725463c4381ee13069949b33fe1e6c93bc456ba)

Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>

* [v9.5.x] docs: nav related updates for data sources (#66142)

docs: nav related updates for data sources (#66080)

* nav related text updates for data sources

* fixed table rows

(cherry picked from commit 6a91f1a9b49237626b38195b4987e0dc4b501f15)

Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>

* [v9.5.x] Remove "Open source" label from "Recorded queries" page (#66252)

Remove "Open source" label from "Recorded queries" page (#66127)

Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
(cherry picked from commit a5499bbf702cc45a461987e25628b5dc798c0a11)

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>

* [v9.5.x] Remove "Open source" label from all "RBAC" pages (#66248)

Remove "Open source" label from all "RBAC" pages (#66129)

Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
(cherry picked from commit dec3361331b9fcb6a4db3454c231a465e8e24e0f)

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>

* [v9.5.x] Navigation: Scrolled hamburger menu links now navigate correctly in Safari (#66270)

Navigation: Scrolled hamburger menu links now navigate correctly in Safari (#66261)

overlayProps/dialogProps need to go inside FocusScope

(cherry picked from commit 0aa301e251f2799ca9a96598a059eaf5c9d5045e)

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>

* [v9.5.x] SQL Datasources: Fix variable throwing error if query returns no data (#66275)

SQL Datasources: Fix variable throwing error if query returns no data (#65937)

* Fix SQL query variable throwing error if query returns no data

* Tests to verify that metricFindQuery returns properly and doesn't throw error

* Fix all codepaths that might throw errors because of undefined backendSrv response

(cherry picked from commit 02a8bc76d20f4fc63b3e9d727dbffd43ce0160f2)

Co-authored-by: Victor Marin <36818606+mdvictor@users.noreply.github.com>

* [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 fda38de293f595be9bf6d1d821fecd9dcbb74082)

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>

* [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 facd4eca7eddc4fdd3960dc841b62f6db624a49a)

Co-authored-by: Giuseppe Guerra <giuseppe.guerra@grafana.com>

* [v9.5.x] docs: update broken link (#66319)

docs: update broken link (#66317)

* docs: update broken link

Updates link to Community page that no longer exists.

* fix linting

(cherry picked from commit 0cf77741937bf0bcf85ffb9aa062bc502cb49d2a)

Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>

* [v9.5.x] CloudWatch Logs: Document logs data protection (#66322)

CloudWatch Logs: Document logs data protection (#65967)

* CloudWatch Logs: Document logs data protection

* fix href

(cherry picked from commit c235ad67e778a1c2ecf4e43c9f3db7df146c9e89)

Co-authored-by: Kevin Yu <kevinwcyu@users.noreply.github.com>

* [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 24d348f804d07be66705995375c5af0f0bdc65ef)

# Conflicts:
#	.drone.yml

* [v9.5.x] Docs: Add example to extract a specific label value (#66360)

Docs: Add the index function

(cherry picked from commit a39190b6137ea61e194ef5a1fd7e96f83de19cf7)

Co-authored-by: Simon Crute <simonc6372@users.noreply.github.com>

* [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 a1f2d0e20582e3773ac623c5e0d55300fdbdc620.

(cherry picked from commit d830591cdc5e4be96658c0aab982fd29e9ba9192)

Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>

* [v9.5.x] docs: What's New & Upgrade Guide 9.5 (#66377)

docs: What's New & Upgrade Guide 9.5 (#64168)

* added what's new and upgrade guide 9.5 and updated whats new index page

* Added new nav and nested folders.

* added empty dashboard state and dashboards section

* fixed caption

* fixed formatting of link and UI element

* Add: onlyExternalOrgRoleSync

* Adds Alerting entries

* Adds alerting screenshots

* More alerting screenshots

* add dashboard panel redesign

* Update _index.md

* Adds search to notification policy entry

* deletes old line

* Removed nested folders (will be private preview and not part of what's new)

* Docs: support bundle section for 9.5 What's New (#65641)

* support bundle section for 9.5 what's new

* Update whats-new-in-v9-5.md

* Update docs/sources/whatsnew/whats-new-in-v9-5.md

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>

* doc feedback

---------

Co-authored-by: Eric Leijonmarck <eric.leijonmarck@gmail.com>
Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>

* Influxdb database field deprecation notice

* Update reasoning

* fixed typo

* Docs: what's new API keys UI update (#65720)

* API keys deprecation

* Update docs/sources/whatsnew/whats-new-in-v9-5.md

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

* Update docs/sources/whatsnew/whats-new-in-v9-5.md

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

---------

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

* Docs: API keys UI updates (#65723)

update

* Docs: add dashboard previews deprecation notice (#65692)

* previews deprecation notice

* Apply suggestions from code review

Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>

---------

Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>

* we set the FF emptyDashboardPage ON by default, so it's available by default

* Update docs/sources/whatsnew/whats-new-in-v9-5.md

Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>

* add whats new toggle for prom browser cache feature

* Prometheus: metric encyclopedia feature toggle

* spell check

* Product editorial pass

Adds hyperlinks, notes release stages, updates intro, Adds content to upgrade guide

* add blurb for prom query cache

* Add more context to org role sync

Add more context to organization role sync about the ability to change a user's organization role even then sync is enabled. Also outlined why this is valuable and when it should be used.

* copy edit of upgrade guide

* copy edit and link fixes

* Update docs/sources/whatsnew/whats-new-in-v9-5.md

Makes it clear what can happen after sign in.

Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>

* Update docs/sources/whatsnew/whats-new-in-v9-5.md

Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>

* Update docs/sources/whatsnew/whats-new-in-v9-5.md

Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>

* Apply suggestions from code review

* fixes link

* Adds dark screenshot for alerting

* fixes alerting title

* Update whats-new-in-v9-5.md

* added missing quotation mark

* trigger linting

* small change to trigger linting

* fix title to follow pattern

* Update whats-new-in-v9-5.md

* Clearer explanation

* wording edits

* fixed heading levels

* fix title wording

* wording edit and availability fix

* remove extra space

* final copy edit

---------

Co-authored-by: Zsofia <zsofia.komaromi@gmail.com>
Co-authored-by: Eric Leijonmarck <eric.leijonmarck@gmail.com>
Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
Co-authored-by: ismail simsek <ismailsimsek09@gmail.com>
Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
Co-authored-by: Artur Wierzbicki <artur.wierzbicki@grafana.com>
Co-authored-by: polinaboneva <polina.boneva@grafana.com>
Co-authored-by: Galen <galen.kistler@grafana.com>
Co-authored-by: bohandley <brendan.ohandley@gmail.com>
Co-authored-by: Mitchel Seaman <mitchel.seaman@gmail.com>
Co-authored-by: danielkenlee <115471695+danielkenlee@users.noreply.github.com>
Co-authored-by: Chris Moyer <chris.moyer@grafana.com>
Co-authored-by: Fabrizia Rossano <117294258+frossano-grafana@users.noreply.github.com>
(cherry picked from commit f9fdeafe35562216a39738fddc8cc9fb85494bc7)

Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>

* [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 2c210909312625bf891332a86d2ebf00c3104376)

Co-authored-by: Misi <mgyongyosi@users.noreply.github.com>

* [v9.5.x] Expressions: Fix expression load with legacy UID -100 (#66388)

Expressions: Fix expression load with legacy UID -100 (#65950)

* Fix expressions instance settings loading

* Introduce a new method to get name or uid

* Update public/app/features/plugins/datasource_srv.ts

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>

* Move getNameOrUid method outside the class

---------

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
(cherry picked from commit d4bd024951e7555e9306681e10bbdd2b7cac2fa1)

Co-authored-by: ismail simsek <ismailsimsek09@gmail.com>

* [v9.5.x] InfluxDB: Fix Interpolation when querying variables (#66392)

InfluxDB: Fix Interpolation when querying variables (#65875)

Interpolate variables with InfluxQueryModel

(cherry picked from commit 4e71c91cfd29fb60cd83a018cd2e52a9e53a8bc2)

Co-authored-by: ismail simsek <ismailsimsek09@gmail.com>

* [v9.5.x] docs: nav updates for enterprise and reports (#66395)

docs: nav updates for enterprise and reports (#66389)

nav-related text updates

(cherry picked from commit 4025927f7dbde1396d79189b45a4faf536b88140)

Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>

* [v9.5.x] Prometheus: Show initial hint on builder mode when metric lookup disabled (#66400)

Prometheus: Show initial hint on builder mode when metric lookup disabled (#65827)

* Show initial hint on builder mode when metric lookup disabled

* Disable MetricEncyclopedia and label request when metric lookup is disabled

(cherry picked from commit 08727b7d6cb6200432f6f8fb2ce06c5db12e7410)

* [v9.5.x] Table Panel: Fix panel migration for options cell type (#66406)

Table Panel: Fix panel migration for options cell type (#66305)

(cherry picked from commit b83627a6612304619bcee70b8883acc9caca6323)

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>

* [v9.5.x] remove duplicate exemplars section (#66405)

remove duplicate exemplars section (#66398)

(cherry picked from commit 5197fca70cb3e9236887dab277659c6049a179af)

Co-authored-by: lwandz13 <126723338+lwandz13@users.noreply.github.com>

* [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 4cac95d1c22cc553723ceb72218b3167b8d13dcf)

Co-authored-by: Misi <mgyongyosi@users.noreply.github.com>

* [v9.5.x] Alerting: Fix creating a recording rule when having multiple datasources (#66448)

Alerting: Fix creating a recording rule when having multiple datasources (#66415)

Fix creating recording rules when having multiple datasources

(cherry picked from commit 2991d4c2136f1a2c65eeb02a72958dfe33f4863a)

Co-authored-by: Virginia Cepeda <virginia.cepeda@grafana.com>

* [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 6309d3fae62583c2570e6b975c7761215a830380)

* [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 1c3ad81826fa023b39cce8414ea5a62771731cc3)

* trigger ci

---------

Co-authored-by: Giuseppe Guerra <giuseppe.guerra@grafana.com>
Co-authored-by: Giuseppe Guerra <to@nyo.zz.mu>

* [v9.5.x] Dashboards: Prevent template variables from resolving twice (#66452)

Dashboards: Prevent template variables from resolving twice (#66372)

(cherry picked from commit 38ee910e396d6c99fa8489d666f023e9c80969ab)

Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>

* [v9.5.x] Docs: Add docs for [plugin.plugin_id].tracing config key (#66454)

Docs: Add docs for [plugin.plugin_id].tracing config key (#65900)

* Docs: Add docs for [plugin.plugin_id].tracing config key

* Docs: Changes after PR review

* PR review changes

* PR review changes

(cherry picked from commit 93c252e0fec2b655b0aeb8cd45a23ba23adc0874)

Co-authored-by: Giuseppe Guerra <giuseppe.guerra@grafana.com>

* [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 2bbf0c9de4afa6ccdf919547b1d19e3f148873ca)

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

* [v9.5.x] Alerting: Hide mute timing actions when dealing with vanilla prometheus (#66460)

Alerting: Hide mute timing actions when dealing with vanilla prometheus (#66457)

(cherry picked from commit 03f95d6e98650b31394cd30384ad9298e232406b)

Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>

* [v9.5.x] Docs: Fix a type in support bundles (#66491)

Docs: Fix a type in support bundles (#66481)

(cherry picked from commit 694b48660b1a08a622742a3be0d9854c86c7f34a)

Co-authored-by: Vardan Torosyan <vardants@gmail.com>

* [v9.5.x] docs: nav updates for exemplars (#66473)

docs: nav updates for exemplars (#66469)

* nav-related image upates

* resized some images

(cherry picked from commit 0d06aef5f7ad2ca3f9cdd0a0709d4ba3f5cc638f)

Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>

* [v9.5.x] docs: nav update notes for videos (#66519)

docs: nav update notes for videos (#66506)

* nav related notes for videos

* wording edit

Co-authored-by: Eve Meelan <81647476+Eve832@users.noreply.github.com>

* wording edits

Co-authored-by: Eve Meelan <81647476+Eve832@users.noreply.github.com>

---------

Co-authored-by: Eve Meelan <81647476+Eve832@users.noreply.github.com>
(cherry picked from commit 1b46d2f5bdce3d4f42663e07f10f6f0fc5bb6b7d)

Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>

* [v9.5.x] Put the numbers before dashboard elements. (#66530)

Put the numbers before dashboard elements. (#65749)

* Put the numbers before dashboard elements.

Putting the numbers before the dashboard elements will make finding these easier for our customers as the first thing most people will do is look for the number that corresponds with the number in the photo.

* fixed icon name

---------

Co-authored-by: Isabel Matwawana <isabel.matwawana@grafana.com>
Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>
(cherry picked from commit d208324331f52470a3d483e65929326265058c07)

Co-authored-by: samu6851 <samuel.oswalt@grafana.com>

* [v9.5.x] Prometheus: Fix ad-hoc filters (#66534)

Prometheus: Fix ad-hoc filters (#66521)

* refactor label names back to getTagKeys to fulfill contract with parent class required for ad-hoc functionality

(cherry picked from commit 4a7f27489eb1fc4878272187733ebcdedff025e7)

Co-authored-by: Galen Kistler <109082771+gtk-grafana@users.noreply.github.com>

* [v9.5.x] E2E: Fixed so openPanelMenuItem flow works with new/old panel chrome without breaking changes (#66540)

E2E: Fixed so openPanelMenuItem flow works with new/old panel chrome without breaking changes (#66118)

Fixed so the openPanelMenuItem works with both angular and react panels.

(cherry picked from commit c3fee5881fccaa52a93607766a2bb0f6ec53fb23)

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>

* [v9.5.x] Loki Variable Query Editor: Fix bug when the query is updated (#66536)

Loki Variable Query Editor: Fix bug when the query is updated (#66509)

* Variable Query Editor: Remove options override in effect

* Add regression test

(cherry picked from commit 46742f6d96b33d35ba6d18ff267913cb18df8209)

Co-authored-by: Matias Chomicki <matyax@gmail.com>

* [v9.5.x] Docs: Add distributed tracing plugin developer guide (#66558)

Docs: Add distributed tracing plugin developer guide (#65898)

* Docs: Add plugin developer guide on distributed tracing

* Docs: Fix typo

* Docs: Plugins: Tracing: Address TODOs and other changes

* Docs: Plugins: Tracing: Fix typo

* Docs: Plugins: Tracing: Add note about min SDK version and update command

* Docs: Plugins: Tracing: Fix some typos, rephrase some sentences

* Docs: Plugins: Traacing: Removed manual instance management instructions

* Update docs/sources/developers/plugins/add-distributed-tracing-for-backend-plugins.md

Co-authored-by: Joseph Perez <45749060+josmperez@users.noreply.github.com>

* Docs: Plugins: Tracing: Use markdown instead of HTML

---------

Co-authored-by: Joseph Perez <45749060+josmperez@users.noreply.github.com>
(cherry picked from commit d1f1beaef9b05ab2fd8f0fdccce4bc7acbd8f870)

Co-authored-by: Giuseppe Guerra <giuseppe.guerra@grafana.com>

* [v9.5.x] Dashboards: Fix broken internal data links (#66581)

Dashboards: Fix broken internal data links (#66567)

* In dashboards splitOpenFn is not passed, instead "href" link is used. When we added tracking we changed the behaviour so onClickFn is always passed when generating the model. To bring back the previous behaviour we skip the onClickFn if the split function is not provided.

* Fix test and add a task to re-check the logic

(cherry picked from commit 4f5b80095edebc95ba99c53e2cb00e32bf464873)

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>

* [v9.5.x] InfluxDB: Fix querying with hardcoded retention policy (#66588)

InfluxDB: Fix querying with hardcoded retention policy (#66466)

* Use default retention policy instead of hardcoded retention policy

* Load retention policies for the editor

* Fix the typo

* Add more comment line

* Update comment

* Better error message

* Put back getTagKeys and getTagValues

* Fix unit test

(cherry picked from commit 6d53c87862e4ef67aa454c1b722282b5dd04b4a8)

Co-authored-by: ismail simsek <ismailsimsek09@gmail.com>

* [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 02951e8a26f650b812164e95a7b9683d7f177e08)

Co-authored-by: Adam Simpson <adam@adamsimpson.net>

* [v9.5.x] Explore: Allow supplementary query data provider to be undefined for mixed data sources (#66422) (#66577)

Explore: Allow supplementary query data provider to be undefined for mixed data sources (#66422)

* Switch back to the API where data provider for a supplementary query can be undefined

* Promote exploreMixedDatasource to beta

* Revert "Promote exploreMixedDatasource to beta"

This reverts commit a3bc167d1c223e71958edb953c6f94ecaeb77014.

* Resolve data source in parallel

* Do not modify function params

* Reorganize code for better readability

* Improve readability

* Simplify code

* Stop using a deprecated error property

(cherry picked from commit b5e2b0d14cb945852b527b166d1a5ee5ffac7183)

# Conflicts:
#	public/app/features/explore/state/query.ts

* [v9.5.x] GRPC: Document GRPC flags to allow overriding env vars (#66631)

* [v9.5.x] Navigation: Redirect to root page when switching organization (#66658)

Navigation: Redirect to root page when switching organization (#66655)

* just redirect to root when switching org

* remove old orgswitcher modal

(cherry picked from commit 90f0b1c6e2756f240f790cf01b28b62cc13786e0)

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>

* [v9.5.x] removed duplicate query data source section (#66682)

removed duplicate query data source section (#66605)

(cherry picked from commit 1e53b29eee4527ba4ff50fe1e1c237f9e9ed87d4)

Co-authored-by: lwandz13 <126723338+lwandz13@users.noreply.github.com>

* [v9.5.x] docs: add missing alias (#66676)

docs: add missing alias (#66621)

added missing alias

(cherry picked from commit 2b7f41f4dfaf7c2d17f6648fc9c7cc8596c6a91a)

Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>

* [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 92d92187d9b02b55837bcc9f8e1cec71d1571b5b)

* 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>

* [v9.5.x] Docs: Un-draft 'Configure Integrations' docs (#66715)

Docs: Un-draft 'Configure Integrations' docs (#66699)

* Docs: Un-draft 'Configure Integrations' docs

* fix typo

(cherry picked from commit a113d94bbb2f9609b84a86a98f3455597367af04)

Co-authored-by: Santiago <santiagohernandez.1997@gmail.com>

* [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 04370f92dc7acfad01363a4a3ecd31d64ca72abb)

Co-authored-by: Sofia Papagiannaki <1632407+papagian@users.noreply.github.com>

* [v9.5.x] Update index.md (#66718)

Update index.md (#66698)

The useful links were down as they were using /docs/grafana/next/ instead of /docs/grafana/latest/ in the path

(cherry picked from commit 58e3b3a90ef1ae3fa9aee0007e4aa4880c47c1dd)

Co-authored-by: Sébastien Dauphin <dauphin.sebastien@gmail.com>

* [v9.5.x] Annotations: Ignore unique constraint violations for tags (#66757)

(cherry picked from commit 948131aac3ba136a336f06cfe9dd982bcba3896b)

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>

* [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 f64a89727ef03b165cc4560c58451801d45d81f3)

Co-authored-by: Alex Moreno <alexander.moreno@grafana.com>

* [v9.5.x] Alerting: Fix share URL for Prometheus rules on subpath (#66773)

Alerting: Fix share URL for Prometheus rules on subpath (#66752)

(cherry picked from commit 2cec4026475129b26dd37bd87946aeb0052ca63a)

Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>

* [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 5a4658f270220680a394f43c6f15498836396c23.

* Add optional COMMIT_SHA and BUILD_BRANCH environment variables

(cherry picked from commit 614427c60232e3bfc59f10e05ad2a40d9f433883)

Co-authored-by: Guilherme Caulada <guilherme.caulada@grafana.com>

* [v9.5.x] CloudMonitor: Correctly re-render `VisualMetricQueryEditor` on `TimeRange` updates (#66787)

CloudMonitor: Correctly re-render `VisualMetricQueryEditor` on `TimeRange` updates (#66756)

Compare string value rather than object

(cherry picked from commit adf12d0e90f44cad2ad5d145d10e92f7c6b4620e)

Co-authored-by: Andreas Christou <andreas.christou@grafana.com>

* [v9.5.x] Catalog: Show install error with incompatible version (#66817)

Catalog: Show install error with incompatible version (#65059)

(cherry picked from commit 98778289cbf66d794b3f05f87f177bba5ff52322)

Co-authored-by: Andres Martinez Gotor <andres.martinez@grafana.com>

* Chore: Upgrade Go to 1.20.3 (#66831)

Backport of #66264

* [v9.5.x] [docs] remove auth/saml alias from team sync page (#66856)

[docs] remove auth/saml alias from team sync page (#66796)

removed auth/saml alias from team sync page

(cherry picked from commit 60e6ff10386e05744ba87501dc70a885c69f4667)

Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>

* [v9.5.x] Chore: Update AddPanel selectors for top nav (#66896)

Chore: Update AddPanel selectors for top nav (#65871)

* Update add panel selectors for top nav

* trigger build

(cherry picked from commit 61599de32c248d8efb1716c9fc34c325660a7c44)

Co-authored-by: Andreas Christou <andreas.christou@grafana.com>

* [v9.5.x] Chore: Update @grafana/e2e (#66880)

Chore: Update @grafana/e2e (#66365)

* Update e2e package

- Ensure health request is monitored for addDatasource flow
- Add custom timeout to configurePanel flow

* Make health check optional

(cherry picked from commit b2e32a70b9df081c1a59ee0b2396f22c42460300)

Co-authored-by: Andreas Christou <andreas.christou@grafana.com>

* [v9.5.x] AzureMonitor: Ensure dimension labels are consistent (#66874)

AzureMonitor: Ensure dimension labels are consistent (#66783)

Ensure dimension labels are consistent

(cherry picked from commit c161b28f2975906f10d0223005a86f2a07f0cf27)

Co-authored-by: Andreas Christou <andreas.christou@grafana.com>

* [v9.5.x] Tempo: TraceQL query builder QoL improvements (#66927)

Tempo: TraceQL query builder QoL improvements (#66865)

* Remove focus on duration inputs to match the other selects

* Allow users to create options while they load

* Options without type default to not have quotes around them

* Fix #66571 - set query type to traceql when linking from logs to traces

* Fix test

(cherry picked from commit 6e8b17ef…
@zerok zerok modified the milestones: 10.0.0, 10.0.0-preview May 31, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

None yet

6 participants