Alerting: Ensure field validators return the proper type (#104050)
* Ensure field validators return the proper type
This ensures correct error propagation through services up to
the API layer.
* Move error wrapping up to call site
(cherry picked from commit 820c338414)
* CI: Use docker creds from ci/common (#104827)
Use docker creds from ci/common
(cherry picked from commit fd4afdbd2c)
* CI: move `grafana-delivery-bot` path in Drone (#104886)
* move delivery bot creds to vault
* format-drone
(cherry picked from commit ec35e861e0)
Docs: xy chart visualization refactor (#103558)
* Added config options heading and bumped other heading levels
* Restructured xy options section
* Fixed links
* Formatted xy chart options using tabs
* Finalized structure of xy chart options section
* Corrected and restructured tooltip options
* Made to do note
* Added to do note
* Replaced screenshots
* Replaced axis options with shared file
* moved transform section
* Moved non-config sections and fixed heading level
* Removed incorrect options from xy chart and commented out image in shared axis file
* Wording edits
* Updated axis options
* Fixed wording
* Added Value mappings and thresholds and other minor edits
* Fixed table
(cherry picked from commit 27e9422f24)
Docs: candlestick visualization refactor (#103310)
* Added config options heading and bumped other heading levels
* Reordered headings and added missing ones
* Nested candlestick options under heading
* Added graph styles and axis content
* Added candlestick options to table
* Refactored and edited candlestick options section
* Replaced shared file with manual tooltip section
* Added missing intro sentences to candlestick options section
* Added a graph styles shared file
* Replaced body text with graph styles shared file in candlestick and time series files
* Added content from time series file to shared axis options file
* replaced shared file in candlestick file with axis content
* Updated option descriptions in axis options shared file
* Updated axis options section of candlestick
* Fixed typos
* Ran prettier
* Replaced some screenshots with higher res, up to date versions
* Wording edits
* Added contributor notes and a missing command
* Fixed typo
* Fixed typo
* Ran prettier
* Removed note from axis options all file
* Renamed axis options file
* Renamed shared file adn updated link in time series page
* Added axix options file and renamed another one, updated links in other files
* Ran prettier
(cherry picked from commit 31ecb5d0b5)
Docs: dashboard list visualization refactor (#103211)
* Added configuration options heading and bumped other heading levels
* Moved dashboard list options into table
* Further restructured dashboard list options and made wording edits
* Added semantic line breaks
* Replaced screenshot with high res image
* Wording edits
(cherry picked from commit ac39141021)
Docs: status history visualization refactor (#103027)
* Added config options section and bumped heading levels
* Added level offset
* Restructured Status history options and removed screenshot from Value mappings section
* Replaced screenshot and updated example text
* Fixed heading level in legend options 2 shared file
(cherry picked from commit 4c2790c41b)
Docs: text visualization refactor (#102939)
* Added Config options section, bumped heading levels, added missing options, and restructured Text options section
* Moved variables content
* Replaced screenshot
* Moved sentence
* Used previous wording
* test commit
* Revert test commit
* Ran prettier
(cherry picked from commit 608a2a7535)
Auth: Introduce authn.SSOClientConfig to get client config from SSOSettings service (#94618)
* wip
* possible solution
* Separate interface for SSO settings clients
* Rename interface
* Fix tests
* Rename
* Change GetClientConfig to comma ok idiom
(cherry picked from commit 50a635bc7e)
Docs: bar gauge visualization refactor (#102747)
* Added Config options heading and bumped heading levels
* Added empty Text size options section and updated Value options
* Updated bar gauge section
* Added missing options and removed screenshot
* Fixed Bar gauge options
* Added descriptions for Text size section
* Added links to text size section
* Fixed text size section
(cherry picked from commit 13058d2715)
Docs: Updating manual installation instructions (#98834)
* Docs: adding additional installation steps to Grafana on openSUSE docs
* Docs: Adding systemd service info for grafana manual install
* Finalizing first edit with tested steps
* spacing adjustment and adding steps to RHEL/Fedora
* Adding a note based on Marins feedback
* A slight adjustment based on feedback from Marin and adding steps to Debian installation
* adjusting some wording
* adjusting naming conventions for Debian instructions
* changing "open-source" to "open source"
* vale and review edits
* deleting erroneous character in shortcode
* updating some shortcodes
---------
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
(cherry picked from commit b6ea06f259)
* Alerting: Re-encrypt existing contact points before get and patch in legacy config API (#101263)
* Test covering Get+Save interaction for newly secret fields
* Alerting: Re-encrypt existing contact points before get and patch
(cherry picked from commit b73c59547c)
* Fix provisioning tests
(cherry picked from commit c4f30ea991372222e4357f007c54b44f1eb8c9c5)
* googlechat url test fix
(cherry picked from commit 0f4af56177)
* api_notifications_test fix
Docs: traces visualization refactor (#101476)
* Added Config options heading, bumped heading levels, and changed heading
* Updated task sub-heading and added to do notes
* Moved span filter options into a table and moved sentences after table
* Removed image
* Replaced captions with alt text
* Updated image path for main screenshot
* Fixed image path
* Updated screenshot and made to do notes
* Updated link to new heading
* Removed comments
(cherry picked from commit b26fdf8f5e)
* backport fixes from https://github.com/grafana/grafana/pull/101679
* Service Accounts: Don't show error pop-ups for Service Account and Renderer UI flows (#101776)
* don't show error pop-ups for SAs and renderer
* only hide non 4xx error pop'ups
* linting
(cherry picked from commit 392124de00)
* Chore: Bump Go version to 1.23.7
* Chore: Bump golangci-lint version to match Go version
* Chore: Run yarn prettier:write
* Chore: Bump godeltaprof to v0.1.8 to fix start-up
* Chore: Fix wire updated error fixture
* Chore: Fix OpenAPI spec diffs
* Chore: Fix new linting errors from Go upgrade
* [release-11.4.2] Bump github.com/golang-jwt/jwt/v4 from 4.5.0 to 4.5.1
Backport from #95807
(cherry picked from commit ec33c739a8)
* Run make update-workspace
---------
Co-authored-by: Matheus Macabu <macabu.matheus@gmail.com>
CI: Remove unused release_publisher scripts (#101019)
* Remove the unused `release_publisher` script.
* Remove the "whats new check" in Drone.
* Automatically set the What's New URL in releases based on the tagged version.
(cherry picked from commit 49e5f77dd1)
CI: release comms should trigger on merges to release- branches (#100901)
release comms should trigger on merges to release- branches
(cherry picked from commit 14477a7fe9)
Chore: pin tonistiigi/binfmt version (#100510)
* Chore: pin tonistiigi/binfmt version
* change version to qemu-v7.0.0-28
* uninstall first, log version
* uninstall first, log version
* uninstall first, log version
(cherry picked from commit a9b4b1e5be)
MSSQL: Correctly type `UDPConnectionLimit` (#99011)
* Correctly type UDPConnectionLimit
* Update tests
* Handle legacy case
(cherry picked from commit cc09f38421)
Co-authored-by: Andreas Christou <andreas.christou@grafana.com>
* feat: update to Go 1.22.11
* chore: make drone
* CI: Force re-build
* build: update mariadb connection
The new Alpine base that the Golang images are built on no longer trust the CA of MySQL.
This is a backport of: https://github.com/grafana/grafana/pull/98857
(cherry picked from commit e1bb8ccb79)
Docs: Updated Grafana Enterprise page with missing data sources (#98286)
added 5 missing data sources, changed one name
(cherry picked from commit c172bbba50)
Co-authored-by: Larissa Wandzura <126723338+lwandz13@users.noreply.github.com>
Fix: Show organization attribute path only for GrafanaAdmins on the UI (#98002)
* Show organization attribute path only for GrafanaAdmins
* prettier
(cherry picked from commit 7b24c4404d)
Co-authored-by: Misi <mgyongyosi@users.noreply.github.com>
* Azure Monitor: Add a feature flag to toggle user auth for Azure Monitor only (#96858)
* Azure Monitor: Add a feature flag to toggle user auth for Azure Monitor only
* Fix condition for userIdentityEnabled
* Re-add removed test
* Remove unused prop
* Refactor onAuthTypeChange in AzureCredentialsForm
* Add frontend unit tests
* Lint
(cherry picked from commit b898a4540d)
# Conflicts:
# docs/sources/setup-grafana/configure-grafana/feature-toggles/index.md
# packages/grafana-data/src/types/featureToggles.gen.ts
# pkg/services/featuremgmt/registry.go
# pkg/services/featuremgmt/toggles_gen.csv
# pkg/services/featuremgmt/toggles_gen.go
# pkg/services/featuremgmt/toggles_gen.json
* Update test
* Missing import
---------
Co-authored-by: Adam Yeats <16296989+adamyeats@users.noreply.github.com>
* Azure/GCM: Improve error display (#96921)
Improve handling of errors
(cherry picked from commit 9f75a448d4)
* Update import and var name
---------
Co-authored-by: Andreas Christou <andreas.christou@grafana.com>
Docs: Updating ldd example command for image renderer troubleshooting (#97443)
(cherry picked from commit 0025876659)
Co-authored-by: Jacob Valdez <jacob.valdez@grafana.com>
Packaging: Remove sysvinit references / support from rhel packaging (#97068)
Remove sysvinit references / support from rhel packaging
(cherry picked from commit 3448384e0d)
Co-authored-by: Kevin Minehart <5140827+kminehart@users.noreply.github.com>
Chore: Remove verification steps for deb/rpm in drone (#96991)
remove verification steps for deb/rpm in drone
(cherry picked from commit feeb2c6ce0)
Co-authored-by: Serge Zaitsev <serge.zaitsev@grafana.com>
Fix: Do not fetch Orgs if the user is authenticated by apikey/sa or render key (#97162)
* Do not fetch Orgs if the user is authenticated by apikey/sa or render svc
* Lint
(cherry picked from commit fa634e1476)
Co-authored-by: Misi <mgyongyosi@users.noreply.github.com>
CI: Add github app token generation in pipelines that use GITHUB_TOKEN (#96646)
* Add github app token generation in pipelines that use GITHUB_TOKEN
* ci?
* clone gh repo using x-access-token user
* address linting issues
* use mounted volume for exporting token
* remove unused github_token env var swagger gen step
* replace pat on release_pr pipepline
* cleanup GH PAT references
* linting
* Update scripts/drone/steps/lib.star
* make drone
---------
Co-authored-by: Matheus Macabu <macabu.matheus@gmail.com>
(cherry picked from commit 2400483d6c)
Azure: Handle namespace request rejection (#95574)
Handle rejection and add test
(cherry picked from commit da1a5426d0)
Co-authored-by: Andreas Christou <andreas.christou@grafana.com>
Timeseries: Utilize min/max on stacking percentage (#95581)
* Bring in defined min/max into stacking range
* simplify logic
* different approach
---------
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
(cherry picked from commit 68aefc73b6)
Co-authored-by: Kristina <kristina.durivage@grafana.com>
Folders: Add admin permissions upon creation of a folder w. SA (#95072)
* add admin permissions upon creation of a folder w. SA
* Update pkg/services/folder/folderimpl/folder.go
Co-authored-by: Karl Persson <kalle.persson@grafana.com>
* Grant service account permissions for creation of dashboards
* Grant service account admin permissions upon creating a datasource
* fetch user using the userservice with the userid
* Revert "fetch user using the userservice with the userid"
This reverts commit 23cba78752.
* revert back to original datasource creation
---------
Co-authored-by: Karl Persson <kalle.persson@grafana.com>
(cherry picked from commit 9ab064bfc5)
CI: Remove drone steps for building windows because it's done in grafana-… (#95373)
Remove drone steps for building windows because it's done in grafana-build now
(cherry picked from commit 67b3848fd9)
* Fix: Deduplicate OrgID in SA logins (#94378)
* Fix: Deduplicate OrgID in SA logins
(cherry picked from commit b90e09e966)
* Fix: Actually call the DedupOrgInLogin migration (#94520)
* Fix: Account for conflicting logins in dedupOrgInlogin migration (#94669)
---------
Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
Azure: Fix duplicated traces in multi-resource trace query (#95156)
Use first resource as base resource for query
(cherry picked from commit 8bb7475e4f)
Co-authored-by: Andreas Christou <andreas.christou@grafana.com>
Migration: Remove table aliasing in delete statement to make it work for mariadb (#95226)
Migration: remove table aliasing in delete statement to make it work in mariadb
(cherry picked from commit 6f7528f896)
Co-authored-by: Karl Persson <kalle.persson@grafana.com>
* Update changelog
* Update version to 11.2.2+security-01
* Revert "Update version to 11.2.2+security-01"
This reverts commit 0a4da88872bc681f65211c9e4ef4c9b9bc864664.
* update changelog
---------
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Kevin Minehart <kmineh0151@gmail.com>
* Update changelog
* Update version to 11.2.1+security-01
* Revert "Update version to 11.2.1+security-01"
This reverts commit ca98ca183d.
* Update changelog
---------
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Kevin Minehart <kmineh0151@gmail.com>
CI: Support more version formats in publishing (#94575)
* cleanup dead code
* add tests and rewrite publish grafanacom steps to reuse
* add pkg/build tests; don't upload CDN assets on grafana releases
(cherry picked from commit 7a2edd35d5)
Folders: Correctly show new folder button under root folder (#94687)
show new folder button under root folder if nested folders are disabled and user has the right perms
(cherry picked from commit 284c2d6f71)
Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
GCM: Time field naming (#94548)
* Name time field correctly
* Update tests
* Lint
(cherry picked from commit 7c79f8f7a5)
Co-authored-by: Andreas Christou <andreas.christou@grafana.com>
Fix: Ensure SA migrations doesn't hit migrated SAs if rerun (#94347)
* ensure mig doesn't hit migrated SAs if rerun
* Fix small issue with the test
---------
Co-authored-by: gamab <gabriel.mabille@grafana.com>
(cherry picked from commit 945dd052b1)
Co-authored-by: Jo <joao.guerreiro@grafana.com>
ServiceAccounts: Run migration in batches (#94429)
* ServiceAccounts: Run migration in batches
(cherry picked from commit 2d0ea60017)
Co-authored-by: Karl Persson <kalle.persson@grafana.com>
ServiceAccounts: Remove permissions to service account when it is deleted (#93877)
* Service account: clean up permissions related to service accounts when deleted
* Add migration for deleting orphaned service account permissions
Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
(cherry picked from commit c7ca2bfcf5)
CI: Remove redundant FE and BE tests from release pipeline (#94173)
baldm0mma/remove_tests/ remove fe and be tests
(cherry picked from commit 0e8fa1f5f8)
Canvas: Allow API calls to grafana origin (#91822)
* allow post URL
* check for config
* allow relative paths
* add allowed internal pattern; add checks for method
* update defaults.ini
* add custom header
* update config comment
* use globbing, switch to older middleware - deprecated call
* add codeowner
* update to use current api, add test
* update fall through logic
* Update pkg/middleware/validate_action_url.go
Co-authored-by: Dan Cech <dcech@grafana.com>
* Update pkg/middleware/validate_action_url.go
Co-authored-by: Dan Cech <dcech@grafana.com>
* add more tests
* Update pkg/middleware/validate_action_url_test.go
Co-authored-by: Dan Cech <dcech@grafana.com>
* fix request headers
* add additional tests for all verbs
* fix request headers++
* throw error when method is unknown
---------
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: Brian Gann <bkgann@gmail.com>
Co-authored-by: Brian Gann <briangann@users.noreply.github.com>
Co-authored-by: Dan Cech <dcech@grafana.com>
(cherry picked from commit f64b121ddb)
Co-authored-by: Adela Almasan <88068998+adela-almasan@users.noreply.github.com>
Alerting: Fix incorrect permission on POST external rule groups endpoint [CVE-2024-8118] (#93940)
Fix endpoint permission on rule write endpoint
(cherry picked from commit c2799b4901)
Co-authored-by: Alexander Weaver <weaver.alex.d@gmail.com>
Correlations: Limit access to correlations page to users who can access Explore (#93519)
Correlations: Limit access to correlations page to users who can access Explore
(cherry picked from commit 813e1c1364)
Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
AzureMonitor: Deduplicate resource picker rows (#93129)
* Use URI for querying resources in RG
- Ensure resource group names are correctly slash separated
* Update test
(cherry picked from commit 76c8975b4f)
Co-authored-by: Andreas Christou <andreas.christou@grafana.com>
Annotations: Optimize search by tags (#93547)
* Annotations: Optimize search on large number of dashboards
* refactor
* fix batch size
* Return early if no annotations found
* revert go.mod
* return nil in case of error
* Move default limit to the API package
* fix empty access control filter
* Set default limit to 100
* optimize query when number of annotations is less than limit
* Update pkg/services/annotations/annotationsimpl/annotations.go
Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
* remove limit from store since it's set in API
* set default limit in Find method (do not break tests)
* Only add limit to the query if it's set
* use limit trick for all searches without dashboard filter
* set default page if not provided
---------
Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
(cherry picked from commit 5e713673e1)
Co-authored-by: Alexander Zobnin <alexanderzobnin@gmail.com>
update 'Simplified exploration' page (#93565)
* update 'Simplified exploration' page
* removed extra 'Explore' heading, which is a little confusing in this context
* simplified the intro text to sound more like the rest of the docs
* Update docs/sources/explore/simplified-exploration/_index.md
Co-authored-by: Jennifer Villa <jvilla2013@gmail.com>
---------
Co-authored-by: Kim Nylander <104772500+knylander-grafana@users.noreply.github.com>
Co-authored-by: Jennifer Villa <jvilla2013@gmail.com>
(cherry picked from commit b9d325884b)
Co-authored-by: Mat Ryer <matryer@users.noreply.github.com>
Dashboard: Annotations - Fix issue of `angularEditorLoader` when angular is not supported (#93583)
Dashboard: Annotations - Fix issue of angularEditorLoader when angular is not supported
(cherry picked from commit 067ea66cbb)
Co-authored-by: Alexa V <239999+axelavargas@users.noreply.github.com>
Alerting: Make query wrapper match up datasource UIDs if necessary (#93057)
(cherry picked from commit ef486133c2)
Co-authored-by: Tom Ratcliffe <tom.ratcliffe@grafana.com>
AzureMonitor: Improve resource picker efficiency (#93127)
* Parameterise region building metric namespace URL
- Add parameter for region (this parameter takes precedence over if global is set)
- Update tests
- Support this parameter on the data source method
* Refactor fetchAllNamespaces
- Use Set rather than an array for greater performance
- Request namespaces across WestEurope, EastUS, and JapanEast concurrently
- Update test
* Maintain existing behaviour
(cherry picked from commit 6a3dbe7d41)
Co-authored-by: Andreas Christou <andreas.christou@grafana.com>
CloudMigrations: improve nil handling (#93257)
* CloudMigrations: fail token decryption if session is not found or without a token
* CloudMigrations: do not report event if session is nil
(cherry picked from commit 4f21ecf982)
Co-authored-by: Matheus Macabu <macabu@users.noreply.github.com>
Cloud migrations: GetSnapshotList only returns snapshots that belong to a session that exists (#91798)
* Cloud migrations: GetSnapshotList only returns snapshots that belong to a session that exists
* Cloud migrations: test GetSnapshotList
* add one more test case for GetSnapshotList
* fix test
* store encryption key for testing
(cherry picked from commit 90b44fdcbf)
Co-authored-by: Bruno <brunotj2015@hotmail.com>
InfluxDB: Fix variable interpolation in influx db (#92988)
Fix variable interpolation in influx db
(cherry picked from commit c0df15dcde)
Co-authored-by: Oscar Kilhed <oscar.kilhed@grafana.com>
DashboardScenes: Fix duplicate query modifying original query on panel duplication (#93038)
make sure queries are cloned on panel duplicate
(cherry picked from commit 8eb7e55f8f)
Alerting docs: adds recording rule info (#93204)
* Alerting docs: adds recording rule info
* ran prettier
* Updates with feedback from pepe and removes external reference
* couple of minor edits
* removes reference
* feedback from sonia
* adds links per gilles
* adds correct version link
(cherry picked from commit 98f766a50d)
Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
TimeSeries: Increase y-axis tick density for small-height panels (#93188)
(cherry picked from commit e9901acfb4)
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
IAM Docs: replace `relref` with `refs` links to enable IAM docs in Grafana Cloud docs (#92890)
* Update `refs` links in `Service accounts` to enable the Cloud docs
* Update `refs` links in `Migrate API keys` to enable the Cloud docs
* Update `refs` links in `RBAC docs` to enable the Cloud docs
* 2 - Update `refs` links in `RBAC docs` to enable the Cloud docs
* 3 - Update `refs` links in `RBAC docs` to enable the Cloud docs
* Apply Jack suggestions
* Set `folder permissions` for OSS and Cloud
* Set adminition shortcode to support GC ref links
* Fix `//` in URLs
(cherry picked from commit c43bd82c92)
Data sources: Hide the datasource redirection banner for users who can't interact with data sources (#92886)
* hide the datasource redirection banner for users who can't list data sources
* readding explore evaluation
* add a test
(cherry picked from commit ba9f1da28e)
Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
Docs: fix a typo on the Configure Grafana page (oentelemetry -> opentelemetry) (#93021)
chore(docs): fix a typo on the Configure Grafana page (oentelemetry -> opentelemetry)
(cherry picked from commit 55abfd7858)
Co-authored-by: Martin Lehmann <martin@lehmann.tech>
Explore Metrics: Fix infinite loop while opening a panel in explore metrics (#92946)
* Fix infinite loop while opening a panel in explore metrics
* clean up
(cherry picked from commit 9e6e41c6f8)
Explore Metrics: Fix existing parent error while opening a panel in explore metrics (#92948)
Fix exiting parent error while opening a panel in explore metrics
(cherry picked from commit 0ba808805e)
Co-authored-by: ismail simsek <ismailsimsek09@gmail.com>
CloudMigrations: Fix snapshot creation on Windows systems (#92941)
* cloudmigration: improve error logging stringify body
* deps: update migration snapshot library to v1.3.0 (fix to Windows)
(cherry picked from commit 95ef2a1eb2)
Co-authored-by: Matheus Macabu <macabu@users.noreply.github.com>
Prometheus: Variable query editor, display selected label when using query type of label values (#92513)
display label, add test
(cherry picked from commit 4bf350cc62)
Co-authored-by: Brendan O'Handley <brendan.ohandley@grafana.com>
CI: Ensure changelogs are prettified prior to commit (#92580)
* Ensure changelogs are prettified prior to commit
* Remove cache property
* Include .yarn directory
* Include packages directory
* Try just using npx
* Update workflows
(cherry picked from commit 8daa6f1f30)
Co-authored-by: Andreas Christou <andreas.christou@grafana.com>
Alerting docs: adds caps not supported in email contact points (#92902)
* Alerting docs: adds caps not supported in email contact points
* ran prettier
* feedback from antonio
* ran prettier
(cherry picked from commit 9d3d1703f7)
Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
Alerting docs: responds to feedback on alerting state or error alerts (#92859)
* Alerting docs: responds to feedback on alerting state or error alerts
* ran prettier
(cherry picked from commit 4749064f57)
Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
Logs: Show older logs button when infinite scroll is enabled and sort order is descending (#91060)
* LogsNavigation: show older logs button when the order is descending
* LogsNavigation: adjust styles for showing only older logs button
* Logs Navigation: revert changes
* Infinite scroll: add older logs button
* Older logs button: show only in explore
* chore: add unit test
* Formatting
* Update public/app/features/logs/components/InfiniteScroll.test.tsx
Co-authored-by: Sven Grossmann <sven.grossmann@grafana.com>
* Chore: add missing translation
* Chore: move the button a tiny bit
---------
Co-authored-by: Sven Grossmann <sven.grossmann@grafana.com>
(cherry picked from commit 40c6f741c0)
Co-authored-by: Matias Chomicki <matyax@gmail.com>
RBAC: Always store action sets (#92833)
always store action sets, even if FT is disabled
(cherry picked from commit 46e81e98cf)
Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
IAM docs: Transform `API keys` to `Migrate API keys` docs (#92380)
* IAM docs: Transform `API keys` to `Migrate API keys` docs
* Update links to `API keys` in other doc pages
* Grafana UI: update help button link
* Update OpenAPI/Swagger links
* Update docs/sources/administration/service-accounts/migrate-api-keys.md
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
* Update `relref` links to the new URL
* fix space before em dash
spaces before or after em dashes are not recommended (https://developers.google.com/style/dashes)
---------
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
Co-authored-by: Irene Rodriguez <irene.rodriguez@grafana.com>
(cherry picked from commit 6a29e4aecf)
Dashboard: Fix Annotation runtime error when a data source does not support annotations (#92504)
When data source does not support annotations, shows an inline Error in Annotation Settings page
(cherry picked from commit f8cd448441)
DashboardScenes: Default to first variable value when editing a repeated panel (#91123)
* DashboardScenes: Default to first variable value when editing a repeated panel
* cleanup
* tests
* refactor
* refactor
* refactor
* refactor
(cherry picked from commit 47a0efd581)
Co-authored-by: Victor Marin <36818606+mdvictor@users.noreply.github.com>
Authn: No longer hash service account token twice during authentication (#92598)
* APIKey: Only decode and hash token once during authentication
* Only update last used every 5 minutes
(cherry picked from commit 56487d37db)
Logs Panel: Only send DataHoverClearEvent on container mouse leave event (#92526)
* fix: stop sending clear events between every row, and only when the mouse leaves the container
(cherry picked from commit 867f3f793c)
Co-authored-by: Galen Kistler <109082771+gtk-grafana@users.noreply.github.com>
Runtime: Make dashboardSceneSolo flag updatable at runtime (#92290)
Runtime: Make dashboardSceneSolo flag updatable at runtimeuntime
(cherry picked from commit 79abc0cf1d)
Co-authored-by: Agnès Toulet <35176601+AgnesToulet@users.noreply.github.com>
Bugfix: QueryField typeahead missing background color (#92216)
Added missing styles to the typeahead menu.
(cherry picked from commit 95409f53d2)
Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
Annotations: only set userID if caller is a user or service account (#91898)
* Ignore errors when extracting current user id
* Only set userID if caller is user or service account
* Fix patch api
(cherry picked from commit e9bb3b4d73)
Co-authored-by: Karl Persson <kalle.persson@grafana.com>
QuotaService: refactor to use ReplDB for Get queries (#91333)
* Feature (quota service): Use ReplDB for quota service Gets
This adds the replDB to the quota service, as well as some more test helper functions to simplify updating tests. My intent is that the helper functions can be removed when this is fully rolled out (or not) and we're consistently using the ReplDB interface (or not!)
* test updates
(cherry picked from commit 299c142f6a)
Co-authored-by: Kristin Laemmert <mildwonkey@users.noreply.github.com>
* OpenTSDB: Fix data frame construction (#90991)
* Update type and frame construction
* Update tests
* Keep dataField name as value
(cherry picked from commit 06509712ec)
* OpenTSDB: Fix test (#91761)
Fix test
---------
Co-authored-by: Andreas Christou <andreas.christou@grafana.com>
* RBAC: Fix an issue with server admins not being able to manage users in orgs that they don't belong to (#92024)
* look at global perms if user is not a part of the target org
* use constant
* update tests
(cherry picked from commit 41ac5b5ae7)
* fix tests
---------
Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
Explore metrics: Improve performance for build layout (#92238)
* revert buildLayout
* filter metric names using metricPrefix using regex
* build groups with all the metric names and only build them once
* remove commented code
* use the metrics search input results to build the prefix select options
* simplify prefix regex because we do not have to do it at the same time as the metrics search input regex
(cherry picked from commit 130a86d9c7)
Co-authored-by: Brendan O'Handley <brendan.ohandley@grafana.com>
AzureMonitor: Add authproxy as supported user auth method (#91754)
Add authproxy as supported user auth method
(cherry picked from commit d52626be3f)
Co-authored-by: Andreas Christou <andreas.christou@grafana.com>
Auth: Skip email extraction when api url is not present (#91699)
* Auth: Skip email extraction when api url is not present
* fix lint: reduce cyclomatic complexity
(cherry picked from commit be32630de5)
Co-authored-by: Agni Bhattacharyya <34892434+PyAgni@users.noreply.github.com>
Alerting: Support for optimistic concurrency in priovisioning Tempate API (#91195)
* support optimistic concurrency in template service
* update request handler to get version from query parameter
* return not found if a new template is set with version
* update PUT api to set version
* update documentation + for mute timings
---------
Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
(cherry picked from commit 1108a00668)
Co-authored-by: Yuri Tseretyan <yuriy.tseretyan@grafana.com>
Alerting: Fix long Alertmanager names overflowing the window (#92023)
fix long names overflowing the window
(cherry picked from commit 6f63def283)
Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
VizTooltip: Fix positioning at bottom and right edges on mobile (#92042)
(cherry picked from commit 74ebc66520)
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
DashboardModel - Add fallback for variable current value fallback (#91833)
* add variable current value fallback when null
* refactor to avoid loosing reference
(cherry picked from commit 7c8184d5bf)
Co-authored-by: Sergej-Vlasov <37613182+Sergej-Vlasov@users.noreply.github.com>
Alerting docs: include `Grafana Alerting API` as one option to manage… (#91593)
Alerting docs: include `Grafana Alerting API` as one option to manage Data sources-mangaged resources
(cherry picked from commit a0e1028ae6)
Co-authored-by: Pepe Cano <825430+ppcano@users.noreply.github.com>
Docs: Create new landing page and Get started doc for Explore (#91602)
* started updates
* added descriptions
* changed some wording
* minor updates
* updates
* updates
* created new landing page, and the get started page
* finished creating landing page
* continued with restructure
* final edits
* updated the Explore landing page
* ran prettier
* Update docs/sources/explore/get-started-with-explore.md
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
* Update docs/sources/explore/get-started-with-explore.md
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
* Update docs/sources/explore/get-started-with-explore.md
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
* Update docs/sources/explore/get-started-with-explore.md
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
* Update docs/sources/explore/get-started-with-explore.md
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
* Update docs/sources/explore/get-started-with-explore.md
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
* Update docs/sources/explore/get-started-with-explore.md
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
* Update docs/sources/explore/get-started-with-explore.md
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
* updates based on Jack's feedback
* ran prettier a second time
* wording change on landing page
* removed uncommented section
---------
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
(cherry picked from commit 7ff8b1e0e2)
Co-authored-by: Larissa Wandzura <126723338+lwandz13@users.noreply.github.com>
Capitalized list items under "With Explore Metrics, you can:" (#91879)
capitalised list items under "With Explore Metrics, you can:"
(cherry picked from commit 62abaea8f5)
Co-authored-by: Irene Rodriguez <irene.rodriguez@grafana.com>
Alerting: Update contact points list and mute timings list on update (#91776)
make sure that contact points list and mute timings list are updated when we update the alertmanager configuration
(cherry picked from commit f11d6ebcd0)
Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
Prometheus: Fix label names select component when there are too many options (#92026)
* add more doc info for truncate function and how we use it
* truncate label names and allow users to search all labels on typing
* remove unused import
* handle labels select in variable query in addition with truncated list
(cherry picked from commit 68f545210d)
Co-authored-by: Brendan O'Handley <brendan.ohandley@grafana.com>
Tempo: Send the existing query with the request for a tags values (#90931)
* Send query with request
* Ensure number tag values are added to query correctly
* Update test
* Update test
(cherry picked from commit d72846790e)
Co-authored-by: Joey <90795735+joey-grafana@users.noreply.github.com>
Add `grafana_state_reason` section in State of alerts (#91562)
* Add `grafana_state_reason` section in State of alerts
* Minor edit for clarification
* Mention `Paused/RuleDeleted/Updated` states
(cherry picked from commit 98a74d844e)
Co-authored-by: Pepe Cano <825430+ppcano@users.noreply.github.com>
Prometheus: Add a limit for the series resource api in metrics browser (#91555)
* add a limit for the series resource api in metrics browser
* decouple serieslimit from options and only use in metrics browser
* add series limit input to metrics browser
* add warning
* add and fix tests
* add new param to jsdoc
* do not use the limit in other calls outside metrics browser
* update test
* trim limit
* fix tests, remove limit from non labels calls
(cherry picked from commit f01263803a)
Co-authored-by: Brendan O'Handley <brendan.ohandley@grafana.com>
Canvas: Fix selection box glitch when adding certain elements (#91654)
* fix selecto glitch when adding certain elements
* minor doc updates
(cherry picked from commit 787abccfbc)
Co-authored-by: Nathan Marrs <nathanielmarrs@gmail.com>
Table: Fix edge case where text wrapping crashes on undefined header widths (#91850)
Make sure we don't read from header groups if it's undefined
(cherry picked from commit 40144eb3c8)
Co-authored-by: Kyle Cunningham <codeincarnate@users.noreply.github.com>
Docs: Update SAML docs after making the certificate/private key optional (#91202)
* update SAML docs after changing the certificate/private key to be optional
* fix link with example of how to generate saml credentials
* revert link
(cherry picked from commit 340af8cf6b)
Co-authored-by: Mihai Doarna <mihai.doarna@grafana.com>
RBAC: Hide root level folder creation button if the user doesn't have the right permissions (#91502)
* hide root level folder creation button if the user doesn't have the right permissions
* linting
(cherry picked from commit 134b9f731f)
Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
* Update module.tsx
Corrected the options: Render Count, Data Changed Count, and Schema Changed Count to have the correct sentence casing to match the rest of the product
* Live viz update
Correct type case error on "Show Message" to "Show message"
* Trend viz case correction
Corrected case of Trend viz from "X Axis" and "X Field" to "X axis" and "X field"
* add warning on UUIDs not being available before 10.2.0
* Update docs/sources/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/index.md
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
* Update docs/sources/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/index.md
---------
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
* GOps: Setup support FullStory in the IRM configuration tracker
* fix: improve fs-unmask class application
* fix: remove extrtag as requested in PR review
* fix: revert extratag removed since it affects UI alignment
* fix: wrap text with trans component as betterer ask
* fix: update extraction
* Update Yarn to v4.4.0
* add new yarn version
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
* Add migration to enable TraceQL streaming for Tempo datasources
* lint
* Always run migration but exit early if feature flag is disabled
* Require feature toggle OR datasource config to enable streaming
* minor performance improvement
* apply a warning to any non-core plugins that successfully migrate
* commit frontend wip while I refactor some stuff
* update api
* repurpose error dialog to be a generic details dialog
* whitespace
* add unit test
* fixes from testing
* fix migration summary
* add comment
* fix localization stuff
* fix backend test
* reduce number of queries to the db
* some PR feedback
* whitespace
This PR adds instrumentation for loading frontend SPA along with select methods in the dashboard service, and cleans up span handling in sqlstore.
---------
Co-authored-by: Dave Henderson <dave.henderson@grafana.com>
* remove nonnamespaced paths
* use common.Unstructed for Intergration.Settings
* update codeowners to include alerting
* fix json name of secure fields to start with lower case
* Update dependency eslint-plugin-jsx-a11y to v6.9.0
* ignore new violation and add comment to fix
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
* Table: fix negative numbers during rtl styling
* revert field config unit check as it is no longer needed with fix implemented in this PR
---------
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
* Check for RBAC permissions when hitting query history endpoints; extract checking logic into a middleware
* Fix lint errors
* Fix test
* Use permissions for patch path; rename callback handler
* add placeholder option for repeat panel with empty options
* add tests and update to scenes canary
* adjust tests to not fail on expected console.error
* Refactor url creatUrl and add tests
* update createUrl to createRelativeUrl in GrafanaRules.tsx
* Add slash if not present in createAbsoluteUrl
* Use template type forcing url parameter to start with slash instead of adding slash if not present
* address review comment
* Add roadmap links to connection tab
* move to its own component
* add roadmaplinks to the catalog browse page
* use trans for text
* Change TextLink to accept ReactNode
* use Space component
* Add translations
* Add clear and reset onBlur
* use selectItem
* Use downshift hooks instead
* Fix Clear bug and extract i18n
* Remove useMemo from story
* Add loading state to many options story
* Set fallback to null
* Fix unused import
* Use onBlur and pass it to Downshift instead
* add support for template vars in filter by value transformation for regex matcher
* less code is more code
* add test to confirm interpolation works for regex
* suggestions input for regex editor
---------
Co-authored-by: Adela Almasan <adela.almasan@grafana.com>
* wip
* Add save functionality to query row
* add success conditional
* move around translations
* Add translations
* Add key to fix test
* Add key to the right spot
* define specific save button
* WIP - Use RowActionComponents to add action without modifying the core component
* Only add component once on render
* Move logic to main explore page
* Add keyed render actions to prevent redundancy, use this to add keyed action
* Overcome the forces of dayquil to attempt to make actual sense
* Add scoped actions to query action component
* Spaces not allowed in generateName
* refactor replCfg to look more like plugins/plugin config
* validateReplicaConfigs must handle inconsistencies in type names due to the WithHooks suffix
* refactor `selectorString` and remove Selector struct
* move code from selector string to BuildLogQuery
* batch requests by folder UID
* update historian annotation store to handle multiple queries
* sort folder uids to make consistent queries
* add logs to loki http
* log batch size but not content. content is logged by the client
* send dashboard commands instead of dashboards
* move status updates before goroutine to ensure frontend polls
* fix syncing issues between snapshot state and resources
* make sessionUid a requirement for modifying snapshots
* move the function I meant to move earlier
* remove accidental commit
* another accidental commit
* verify UpdateSnapshot is called with sessionUid
* revert
* pass in session uid everywhere
* forgot to save
* fix unit test
* fix typo
* tiny tweak
* work off bundle instead of individual plugin
* Remove children
Co-authored-by: Giuseppe Guerra <giuseppe.guerra@grafana.com>
* Remove children ref
Co-authored-by: Giuseppe Guerra <giuseppe.guerra@grafana.com>
* fix assign
* end early
* unset children
---------
Co-authored-by: Giuseppe Guerra <giuseppe.guerra@grafana.com>
* RBAC sync: Fix removal of roles which need to be added
* Optimize code
* cleanup: appease the linter
---------
Co-authored-by: Victor Cinaglia <victor@grafana.com>
* handle metadata map nil
* remove double context
* clean up logging in scheduler
* do not reuse loggers from previous ticks
* log the dropped tick
* log tick instead of ticknum
* replace with processing tick logs
* log sending notifications
* update logging in persister to fetch context
* logs to historian
moved them upstream to be able to log when store is overridden
* E2C: Add stat rollup to MigrationSummary
* fix report event url
* open form in new page
* sort folders by heirarchy
* undo accidental commit
* remove another commit
* make folder sorting dynamic
---------
Co-authored-by: joshhunt <josh@trtr.co>
* Docs: Edit of contribute to docs guide (part 8 of doc improvement project)
* Fix open source
* Modify bullets
* Change final sentence
* Fix final sentence
* Explore: Pass the dataframes along with the time range of the data (#90259)
* Use data time range for rendering instead of selected range from the picker
* Update CustomContainer to use data time range
* Update test
(cherry picked from commit 58285e37a2)
* Memoize visible range passed to LogsVolumePanel
* Ensure onHiddenSeriesChanged is called only when hidden frames change
* rename to getMuteTimingByName
* add UID to api model of MuteTiming
* update GetMuteTiming to search by UID
* update UpdateMuteTiming to support search by UID
* update DeleteMuteTiming to support uid
* make sure UID is populated
* update usages
* use base64 url-safe, no padding encoding for UID
* Implement UI for grafana-managed recording rules
* use undefined for the duration instead of null , for recording rules
* Fix tests
* add tests
* Add pause functionality for grafana recording rules
* update translations
* remove obsolete snapshot
* use createUrl instead of renderUrl
* refactor
* Add validation for grafana recording rule name
* create util functions for rule types and add record field in mock function
* add util isDatatSourceManagedRuleByType
* refactor
* Add metric field in alert rule form
* fix alert name component
* update width for alert name and metric
* fix test
* add validation back to cloud recording rules name
* Alerting: Recording rules PR review (#90654)
Update type helper methods
* add slash in createUrl
* fix baseurl in the returnTo
* nits
* Add metric on expanded row in the alert list view
* nits
Co-authored-by: Tom Ratcliffe <tom.ratcliffe@grafana.com>
* update snapshot
---------
Co-authored-by: Tom Ratcliffe <tom.ratcliffe@grafana.com>
* add history handler
* move them into functions
* handle adding new history steps
* handle time history by respecting the timezone
* remove commented code
* no type casting
* add unit tests
* add colons and a new type metric_page
* remove console
* fix unit tests
* add --set-upstream origin to release-pr workflow git push
* use a different branch name for the changelog workflow
* disable backport support for now
* remove backport condition
* make the resource store the default unified storage backend
* add integration tests
* fix test non passing
* Update pkg/storage/unified/sql/test/integration_test.go
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
* lint
* fix tests
* fix no rows
---------
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
* Resolved the issue stated in issue #90426.
* Method created to get the length of the url.
* Applied the length logic and intentional fall through in switch.
* Changed the way length calculated
Co-authored-by: Drew Slobodnjak <60050885+drew08t@users.noreply.github.com>
* Remove un-used method getUrlLength
* Refactoring
---------
Co-authored-by: Drew Slobodnjak <60050885+drew08t@users.noreply.github.com>
* store encryption key in unified secrets table
* fix local dev mode
* make metadata more realistic
* fix tests
* fix sql queries against postgres
* fix stats endpoint
* updates and language clarification
* fixed screenshot under logs nav
* removed gerund from title
* ran prettier
* removed trace integration file from PR
* Update docs/sources/explore/logs-integration.md
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
* Update docs/sources/explore/logs-integration.md
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
* Update docs/sources/explore/logs-integration.md
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
* Update docs/sources/explore/logs-integration.md
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
* Discard changes to docs/sources/explore/trace-integration.md
---------
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
* Cfg: Move rbac settings to own struct
* Cfg: Add setting to control if resource should generate managed permissions when created
* Dashboards: Check if we should generate default permissions when dashboard is created
* Folders: Check if we should generate default permissions when folder is created
* Datasource: Check if we should generate default permissions when datasource is created
* ServiceAccount: Check if we should generate default permissions when service account is created
* Cfg: Add option to specify resources for wich we should default seed
* ManagedPermissions: Move providers to their own files
* Dashboards: Default seed all possible managed permissions if configured
* Folders: Default seed all possible managed permissions if configured
* Cfg: Remove service account from list
* RBAC: Move utility function
* remove managed permission settings from the config file examples, change the setting names
* remove ini file changes from the PR
* fix setting reading
* fix linting errors
* fix tests
* fix wildcard role seeding
---------
Co-authored-by: Karl Persson <kalle.persson@grafana.com>
Co-authored-by: jguer <me@jguer.space>
* Itroduce watcher and mode4
* Logging
* Mode4 should be initialized from the dual writer for observability
* Comment watch while it's not implemented
* Lint
* Use mode log when dual writer is initiated
* Use error from logger
* Dual writer: mode 3
* Add integration tests for playlits in mode 3
* Remove todo
* Update pkg/apiserver/rest/dualwriter_mode3.go
Co-authored-by: Arati R. <33031346+suntala@users.noreply.github.com>
* Admin: Fixes an issue where user accounts could not be enabled (#88117)
Fix: unable to enable user
* [REVIEW] FInish mode 3 and add tests
* Improve logging
* Update dependencies
* Update pkg/apiserver/rest/dualwriter_mode3_test.go
Co-authored-by: maicon <maiconscosta@gmail.com>
* remove test assertion
* Use mode log when dual writer is initiated
---------
Co-authored-by: Arati R. <33031346+suntala@users.noreply.github.com>
Co-authored-by: gonvee <gonvee@qq.com>
Co-authored-by: maicon <maiconscosta@gmail.com>
* add groop as a local dependency
* update layout
* nested layout with panels
* fix the height of the rows
* copy groop library into grafana/grafana
* Don't create a new scene everytime metrics refreshed
* Add display option dropdown
* handle different layout options in buildLayout
* add select component props
* unify scene body creation
* handle other display cases in refreshMetricNames
* set a new body when display format is different
* handle nestedScene population
* show nested groups
* handle panel display
* add tabs view
* populate tabs view
* show selected tab group
* show display options before metric search
* populate prefix filter layout
* only switch layout for nested-rows display option
* Update public/app/features/trails/groop/parser.ts
Co-authored-by: Darren Janeczek <38694490+darrenjaneczek@users.noreply.github.com>
* Update public/app/features/trails/groop/parser.ts
Co-authored-by: Darren Janeczek <38694490+darrenjaneczek@users.noreply.github.com>
* Update public/app/features/trails/MetricSelect/MetricSelectScene.tsx
Co-authored-by: Darren Janeczek <38694490+darrenjaneczek@users.noreply.github.com>
* Update public/app/features/trails/MetricSelect/MetricSelectScene.tsx
Co-authored-by: Darren Janeczek <38694490+darrenjaneczek@users.noreply.github.com>
* Remove tab view
* generate groups async
* Remove unnecessary parts
* Refactor
* implement urlSync
* update keys
* introduce interaction
* ui updates
* chore: revert some auto formatting to clarify comments
* chore: revert some auto formatting to clarify comments
* rename
* add tooltip
* add styles
* update unit tests
* make i18n-extract
* update unit test
---------
Co-authored-by: Darren Janeczek <38694490+darrenjaneczek@users.noreply.github.com>
Co-authored-by: Darren Janeczek <darren.janeczek@grafana.com>
* check that a user doesn't have higher plugin access on the destination folder than they have on the source folder when moving folders
* Update pkg/services/folder/folderimpl/folder_test.go
---------
Co-authored-by: Jo <joao.guerreiro@grafana.com>
TemplateSrv: Backportable version of 90808 (#90816)
* TemplateSrv: Add test case for SafeSerializableSceneObject
* Update dashboard data source to use scoped vars scene object valueOf
* 11.1.x Backportable version of 90808
* lint
* TemplateSrv: Add test case for SafeSerializableSceneObject
* Update dashboard data source to use scoped vars scene object valueOf
* 11.1.x Backportable version of 90808
* lint
* Make variables not sticky on mobile
* Removes scrollable body
* Remove unused CSS
* Remove unnecessary cx
---------
Co-authored-by: Ivan Ortega <ivanortegaalba@gmail.com>
* cleanup dependencies and improve list method
* Improve Resource Server API, remove unnecessary dependencies
* Reduce the API footprint of ResourceDBInterface and its implementation
* Improve LifecycleHooks to use context
* Improve testing
* reduce API size and improve code
* sqltemplate: add DialectForDriver func and improve naming
* improve lifecycle API
* many small fixes after adding more tests
* show active child in breadcrumb
* use activeChild url
* only add tab title if not first tab
* handle scenes settings breadcrumbs
* fix breadcrumbs on starred dashboard settings
* display separate crumb
* fix: fix case where we are adding stream selectors to both stream selectors and line filters
---------
Co-authored-by: Sven Grossmann <sven.grossmann@grafana.com>
* Navigation: Show list of pinned ites on the navigation
* Rename section to 'Bookmarks'
* Internationalization
* Rename everything to bookmarks
* Update public/app/core/reducers/navBarTree.ts
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
* Ignore empty message as well
* Dont update navigation if there is an error patching
---------
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
* add gms client function
* add timeout config for endpoint
* report events to gms
* fix lint error
* clean up report calls and make sure reports all have local ids
* extra validation
* improve error logging and fix url
* Add permissions check for viewer without viewers_can_edit
* Add test
* fix lint
* Add role checks on other handlers
* Linter and fix Go issue
* Fix conflict
* Remove invalid way of testing for error
* try integrating
* pass tags
* change section order
* use better terminology
* one more attempt
* keep delimiters
* attempt to patch changelog
* quotes, bash quotes...
* use proper content file
* parens around date
* time for a pr
* first checkout, then create user
* add latest input
* git push
* use square brackets
* formatting
* update release-pr
* fix typo
* try sparse checkout
* fetch depth zero
* clean up after changelog generator
* initial commit
* Action sets stored
remove the dependancy for actionsets
got the actionsets registered
storing the permissions
* fix golanglinting
* remove unused struct field
* wip
* actionset registry for a plugin from the actionsetservice
* update to make declareactionset the primary way of plugin registration and modification
* declare actually extends actionsets
* tests fixed
* tests skipped
* skip tests
* skip tests
* skip tests
* skip tests
* change to warning instead
* remove step from pipeline to see if it fails due to plugin not registering
* reintroduce step but remove features dependancy
* add back the tests that were failing
* remove comments and another skip test
* fix a comment and remove unneeded changes
* fix and clean up, put the behaviour behind a feature toggle
* clean up
* fixing tests
* hard-code allowed action sets for plugins
* Apply suggestions from code review
Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
* small cleanup
---------
Co-authored-by: IevaVasiljeva <ieva.vasiljeva@grafana.com>
Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
* change the rule-group to be hashed when exporting to HCL
Signed-off-by: Aviv Guiser <avivguiser@gmail.com>
---------
Signed-off-by: Aviv Guiser <avivguiser@gmail.com>
* Add success case and tests for writer using metrics
* Use testable version of clock
* Assert a specific series was written
* Fix linter
* Fix manually constructed writer
* improve error handling a retries during async operations
* fix use of contexts
* updates to how we call the folder api
* fix urls for gms
* more progress on the folder issue
* fix folders
* refactor for readability
* define rule mapping type
* introduce a new mapping type
* add type comments
* add identifier check
* remove tests from wrong file
* add tests to the right file
* define function body
* unit tests and logic for getQueryLabelsForRuleName
* update logic of getRecordingRuleIdentifierIdx
* update logic and tests getRecordingRuleIdentifierIdx
* fix unit tests
* fix tests
* update how we return the options
* update message
* update type
* update expandRecordingRules unit tests
* remove identifier from end result
* fix unit tests once more
* remove fix action from expand rules warning
* remove generic type
* update warning text
* betterer
* add support of metadata to condition and adding it to request headers
* support for additional metadata when condition is built
* add additionall context to conditions: source and folder title
* add version
* use percent-encoding for header values
* Check if a time interval is used in alert rules before deleting it
* Add time interval to parameters of ListAlertRulesQuery and ListNotificationSettings of DbStore
== Refacorings ==
* refactor isMuteTimeInUse to accept a single route
* update getMuteTiming to not return err
* update delete to get the mute timing from config first
* Use Runbook URL label everywhere and add validation in the alert rule form for it
* remove validation in alert rule form and render link on detail view only when its a valid url
* Re-add feature flag with deprecation note
* Hide the field in frontend if ff disabled
* Block scope overriding if ff is disabled in backend
- Update promlib to forward logger to extendOptions
- Add warning
- Update tests
* Default toggle to true for now
* Update description
* Update prom tests
* Fix lint
* initial attempt at body scrolling
* fix login layout
* minor fixes
* "fix" some fixed position stuff
* remember scroll position in dashboard page
* fix unit tests
* expose chrome header height in runtime and fix connections sticky header
* fix panel edit in scenes
* fix unit tests
* make useChromeHeaderHeight backwards compatible, fix plugin details double scrollbar
* fix sticky behaviour in explore metrics
* handle when undefined
* deprecate scrollRef/scrollTop
* fix extra overflow on firefox
* UI: Align the `icon` in the `Alert`
* feat: align icon with one line text
* chore: prettier imports fix
* chore: revert imports
* feat: remove alignSelf & position the icon
* chore: clean up
* fix: display metric name suffix instead of unknown
* chore: add documentation comment; remove unecessary text
* fix: create helper function getUnitFromMetric()
* refactor: make getUnitFromMetric() not use getUnit, return null if unable to identify unit
* test: add test for getUnitFromMetric()
* chore: add documentation comments to functions that get unit
* chore: add comment for tests
* chore: fix imports
* fix: display if unable to determine metric
* Update public/app/features/trails/ActionTabs/MetricOverviewScene.tsx
Co-authored-by: ismail simsek <ismailsimsek09@gmail.com>
* fix: update the translation files for drone
---------
Co-authored-by: ismail simsek <ismailsimsek09@gmail.com>
* Make content outline visible and in expanded mode by default
* Clean up unused args
* Save content outline visibility in local storage
* Add test
* Expanded state relies on local storage;
* Use the current namespace
* Enable PeakQ API
* Enable PeakQ API when Query API is enabled
* Enable PeakQ API when Query API & Query Library are enabled
* Add search index table
* Stab a test
* Add more tests
* Add basic index
* Switch to UID and add a test for the index
* Improve tests coverage
* Remove redundant whitespaces
* Load all data source APIs when query history is loaded
* Fix column type
* Fix migration
* Clean-up the index
* Fix linting
* Fix migrations
* Fix migrations
* Fix migrations
* Rename index to details
* implement querying gms for snapshot status
* add some documentation
* provide snapshot resources after snapshot is created
* add rate limiting to backend
* fix compilation error
* fix typo
* add unit tests
* finish merge
* lint
* swagger gen
* more testing
* remove duplicate test
* address a couple PR comments
* update switch statement to a map
* add timeouts to gms client through the http client
* remove extra whitespace
* put method back where it was so the PR is less confusing
* fix tests
* add todo
* fix final unit test
* Disable genai title and description buttons when dashboard doesn't have at least one panel with a title or description
* Fix test
* Additional tooltip tests
* address pr feedback
* Fix test: Use const for panel title
---------
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
* use variable state for loading labels
* UI fix for missing metadata fields
* remove extra space
* add <Trans> for betterer
* import Trans from core, this will need to be addressed when we externalize explore metrics
* make i18n-extract for drone
* Create some integration testing infra for RRs
* whoops
* Require no error in responding
* fix linter
* Panic, no need to pass testing around
* Extend status test
* Cloud migration: upload snapshot files using presigned url
* log error if index file cannot be closed
* log error if file cannot be closed in uploadUsingPresignedURL
* Remove cancelActiveListeners() and delay()
* Wait for handle history to resolve
* Do not sync from URL when state changes
---------
Co-authored-by: harisrozajac <haris.rozajac12@gmail.com>
* Implement EventDetails for expanded rows and pagination on the events list
* Add test for getPanelDataForRule function
* prettier
* refactor EventState component
* create interfaces for props
* Add missing translations
* Update some comments
* Add plus button in alertrulename , to add it into the filter
* Add plus button to add filters from the list labels and alert name
* Add clear labels filter button
* run prettier
* fix RBAC checks
* Update AlertLabels onLabelClick functionality
* add limit=0 in useCombinedRule call
* Add filter by state
* remove plus button in labels
* Fix state filter
* Add filter by previous state
* fix some errors after solving conflicts
* Add comments and remove some type assertions
* Update the number of transitions calculation to be for each instance
* Add tests for state filters
* remove type assertion
* Address review comments
* Update returnTo prop in alert list view url
* Update translations
* address review comments
* prettier
* update cursor to pointer
* Address Deyan review comments
* address review pr comments from Deyan
* fix label styles
* Visualize expanded row as a state graph and address some pr review comments
* Add warning when limit of events is reached and rename onClickLabel
* Update texts
* Fix translations
* Update some Labels in the expanded states visualization
* move getPanelDataForRule to a separate file
* Add header to the list of events
* Move HistoryErrorMessage to a separate file
* remove getPanelDataForRule function and test
* add comment
* fitler by instance label results shown inthe state chart
* remove defaults.ini changes
* fix having single event on time state chart
---------
Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
* chore: add new data source request template
* Update 6-data_source_request.yaml
Add placeholder text for Use case field
* Update .github/ISSUE_TEMPLATE/6-data_source_request.yaml
Co-authored-by: Mitch Seaman <mjseaman@users.noreply.github.com>
---------
Co-authored-by: Mitch Seaman <mjseaman@users.noreply.github.com>
* refactor: add translatable elements and confirmation text
* refactor: add translatable element
* refactor: add translatable element
* refactor: run i18n extraction
* refactor: add translatable elements
* order session list descending
* add snapshot status method to store
* query stats while retrieving snapshot
* return stats in dto
* swagger
* fix tests
* commit results of bingo get
* fix swagger
* minor improvement
* fix typo
* forgot a file
* Ensure default subscription is set
* Include some info for when the default subscription is required
* Rename settings mock
- Add mockDatasourceSettings function
* Add MonitorConfig test
* Revert "Rename settings mock"
- Avoid issues when backporting
* Remove description
* Remove required field
* Remove unused import
* Plugins: Enhanced plugin instrumentation
* use backend.CallResourceResponseSenderFunc
* sdk v0.237.0
* support admission control
* cover all handlers in log and metrics middlewares
* fix after review
* soft delete
* Fix bench test
Co-authored-by: Bruno Abrantes <bruno@brunoabrantes.com>
* Add integration test for soft deletion
---------
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
* fix kind of TimeInterval
* register custom fields for selectors
* support field selectors in legacy storage
* support selectors in storage
===== Misc
* refactor conversions to build in one place
* hide implementation of provenance status behind accessors to use the key in selectors
* fix provenance error
* Added `workflow_call` event to allow other workflows to invoke the "Create or update GitHub release"
* Added `dry_run` to `github-release.yml`
* Added `latest` to `release-pr.yml` which will cause the release PR to add a `release/latest` label.
* Removed unnecessary github app creation from github-release workflow and just used permissions.
* Unify values
* Fix with latest changes on main
* Fix up NaN test
* Keep refIDs with -1 as value
* Test that refIDs are preserved on Normal to Error transition
* Alerting to err test too
* Add a blurb to docs about this behavior
* Alerting: Allow remote Alertmanager integration tests to fail
* format drone
* rebase from main
* the wait-for container needs canFail more than the acutal integration-tests container
---------
Co-authored-by: Charandas Batra <charandas.batra@grafana.com>
The contact point deletion API was returning 500 when it should have been
returning a 4xx error, when the contact point is in use:
- When in use by a notificiation policy, we were missing
the `.Errorf("")` to convert `errutil.Base` into `errutil.Error`.
- When in use by an alert rule, an regular error was returned.
* convert TagBadge to a functional component
* migrate label and label-tag styles to TagBadge
* migrate filter-table to emotion globals
* migrate query-part styles to emotion globals
* move tag color to be an inline style
* App events: Add info notification type
* Revert state
* Use info alert
* Nav: Enable saving items
* Use local state
* Use RTK query
* Revert go.work
* Revert
* User-specific queries
* Add memo
* Fix base URL
* Switch to ids
* Fix memo
* Add codeowners
* Generate API
* Separate user prefs API
* Remove tag
* Update export
* Use feature toggle
* Compare results when reading/writing between unified_storage and legacy
* Always use name when comparing objects
* Compare on get method
* Update pkg/apiserver/rest/dualwriter.go
Co-authored-by: Dan Cech <dcech@grafana.com>
* Add new metric to count how many times we read from legacy in mode 2
* Move counter
* Add name in mode1
---------
Co-authored-by: Dan Cech <dcech@grafana.com>
* filter the k6 folder out in the SQL queries rather than during post processing to ensure that the correct number of results is always returned
* linting
* Split org_mapping correctly if it contains multiple colons
* Improve tests
* Use backslash as an escape character for colons
* Cleanup, address feedback
* Change test to use double quotes as an example
* Revert "Chore: Return influxdb query error early before parsing the result (#88549)"
This reverts commit a87c155c06.
* Handle error in buffered parser
* handle error message in streaming parser
* refactor(datasource): only pass back the error information when rejecting ds updates
* revert(datasource): remove stray console import
* refactor(datasource-config): update traceId to traceID
* Add org_mapping and org_attribute_path to the UI
* Add validators, allow setting org mapping to only Grafana Admins
* comment
* Address feedback, improve validation, fix FE test, lint
* add timeout for storybook, only run on changes to @grafana/ui
* add comment to trigger verify-storybook
* remove test comment
* add comment
* use a later version of wait-on
* remove comment and hardcode wait-on version
* Various updates
* Update form callbacks
* Use defaultValue as opposed to value on input
* Fix things up
* Docs
* Prettier
* Update docs
* Update label text
* Prettier
* remove redundant test matchers
* use amendTable, trimTable functions from @grafana/data package
* move getMockDataSource function into the mocks.ts
* use LocalStorageValueProvider from @grafana/o11y-ds-frontend
* move all mocks under __mocks__ directory
* use store from @grafana/o11y-ds-frontend
* move test related files under test directory
* use getNextRefId from @grafana/data instead of deprecated getNextRefIdChar
See: https://github.com/grafana/grafana/pull/87460
* betterer
* remove unnecessary mockings
* import from @grafana/data
* import from @grafana/data
* Cloud migrations: create snapshot and store it on disk
* fix merge conflicts
* implement StartSnapshot for gms client
* pass snapshot directory as argument to snapshot builder
* ensure snapshot folder is set
* make swagger-gen
* remove Test_ExecuteAsyncWorkflow
* pass signed in user to buildSnapshot method / use github.com/grafana/grafana-cloud-migration-snapshot to create snapshot files
* fix FakeServiceImpl.CreateSnapshot
* remove new line
* First pass at using new async apis
* async api tweaks
* clean up async api usage
* Update public/app/features/migrate-to-cloud/onprem/Page.tsx
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
* Update public/app/features/migrate-to-cloud/onprem/Page.tsx
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
* fix syntax
---------
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
* Zanzana: Listen http to handle fga cli requests.
* make configurable
* start http server during service run
* wait for GRPC server is ready
* remove unnecessary logs
* fix linter errors
* run only in devenv
* make address configurable
* Alerting docs: Update `View alert groups`
Rename to `View the status of notifications` and extend on this topic
* Update docs/sources/alerting/manage-notifications/view-alert-groups.md
Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
* Update docs/sources/alerting/manage-notifications/view-alert-groups.md
Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
* Update docs/sources/alerting/manage-notifications/view-alert-groups.md
Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
* Use `1` always for numbered list
* refer to `grouping settings of notification policies`
* Update `View notification errors` with latest instructions
---------
Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
* Adding new export button
* Create Export as JSON drawer
* update scene drawer and add css
* update css
* Update ExportAsJson to be regular react component
* add tests to export menu and button
* add tests
* prettier and lint
* fix translations
* update translation
* Apply suggestions from code review
Co-authored-by: Juan Cabanas <juan.cabanas@grafana.com>
* delete extra file
* Update to use SceneObject
* add spinner
* Rename ExportAsJSON.tsx to ExportAsJson.tsx
* update i18n
* Upate texts
* small fixes from code review
* add space
* i18n
* fix build issues
* changes from review feedback
* update test
* update test
---------
Co-authored-by: Juan Cabanas <juan.cabanas@grafana.com>
* add very basic tests to verify storybook builds correctly
* add storybook step to drone
* reorder steps
* drone tweaks
* don't need host since it's set in env
* don't need to wait
* format build.star and readd wait
* install netcat in CI
* do a yarn install here to get correct bindings
* refactoring to hopefully work better in CI
* add wait-on
* add verbose logging
* localhost?
* more logging
* specify storybook host
* ...
* back to grafana-server
* does this work? 🤔
* run storybook e2e test after rgm-package so the backround process is running for less time
* split into separate step
* format
* Add basic button for adding a query template
* Add hook to create a template
* Handle notifications
* Add tags to invalidate cache
* Generate translations
* Updates types
* Add tests
* Simplify code
* Add user to type
* Add a better default title
* bring in piotrs pr and try to add user data
* Move out of metadata (reserved in k8s) and make new values exportable
* Show user data
* Fix bad merge
* WIP
* Add annotation data to FE
* add (failing) test
* Fix types and test
* Cleanup
* Enhance user data and send to component for display
* Fix type
* Fix expected values
* fix betterer
* Fix test
* Remove user lookup
* testing slug usage for api
* Revert "testing slug usage for api"
This reverts commit cc4556c3b7.
* change types, display userid if login isnt returned
* Simply display whatever is in property
* skip test on removed logic
* Try waiting for query to finish before eval
* Revert "Try waiting for query to finish before eval"
This reverts commit 6220cabd17.
* Handle attribute not existing when storage type is file
---------
Co-authored-by: Piotr Jamroz <pm.jamroz@gmail.com>
* Use runtime data source for getting events from alert state history in the bar chart
* extract translations
* refactor
* More refactor
* Update events limit
* Add info icon with tooltip info for label querying filter
* Add translations
* Create new useRuleHistoryRecords hook skipping extraction of common labels as they are not used
* Fix test
* update limit value for the events in the api to 5000
* Use state for rows key
* remove React import
* Address review comments
* Address review comments
* run prettier
* Remove duplicated handlers
* Alerting docs: adds silence RBAC 11.1
* ran prettier
* Improve docs with new rule-specific silence RBAC information
* Apply suggestions from code review
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
* Apply suggestions from code review
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
* prettier
---------
Co-authored-by: Matt Jacobson <matthew.jacobson@grafana.com>
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
* Alerting: Add setting for maximum allowed rule evaluation results
Added a new configuration setting `quota.alerting_rule_evaluation_results` to set the maximum number of alert rule evaluation results per rule. If the limit is exceeded, the evaluation will result in an error.
This PR reduces the number of allocations made while caching permissions from the database, fixes the hierarchy of spans and adds new spans for tracing.
---------
Signed-off-by: Dave Henderson <dave.henderson@grafana.com>
Co-authored-by: Dave Henderson <dave.henderson@grafana.com>
* feat(grafana-data): create rbac functions for checking permissions
* feat(grafana-runtime): pass current user to runtime
* feat(grafana-runtime): expose rbac functions to check permissions against current user
* refactor(contextsrv): use functions from grafana/data to check rbac permissions against user
* Apply suggestions from code review
Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
* chore(rbac): fix missing types imports
* refactor(rbac): make exposed functions return boolean
---------
Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
* add method CanReadAllRules to rule authorization service
* add alias type Namespace for Folder in ngalert's models package. It implements the Namespacer interface that is used by authz logic
* update state history's backends to authorize access to rules.
* update Loki to add folders UIDs to query.
* Update BuildLogQuery to drop filter by folders if it's too long and fall back to in-memory filtering.
* WIP implement generic compare interface
* Use global compare fn for all entities
* Lint
* Update pkg/apiserver/rest/dualwriter.go
Co-authored-by: Dan Cech <dcech@grafana.com>
* Don't need to hash, just compare bytes
* Fix tests
---------
Co-authored-by: Dan Cech <dcech@grafana.com>
* Prometheus: Fix quote stripping in parser
Currently only double quotes are stripped from the end, while single quotes are left. Moreover, double quotes are stripped even when part of the value
* Prometheus: Double escape the string, apply linting fixes for files that I touched
* Made updates to add dashboard controls changes; also fixed styling issues and consolidated some tasks
* Made minor edits
* Committed suggestion from review
Co-authored-by: Ivan Ortega Alba <ivanortegaalba@gmail.com>
* Update docs/sources/dashboards/create-manage-playlists/index.md
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
* Apply suggestions from code review
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
---------
Co-authored-by: Ivan Ortega Alba <ivanortegaalba@gmail.com>
* Add ability to show Session for this span button in trace view
* Add session link when fe o11y ids are available
* Add tests for creating session links
* Also check for session id written following otel semantic convention
* update eslint, tsconfig + esbuild to handle new jsx transform
* remove thing that breaks the new jsx transform
* remove react imports
* adjust grafana-icons build
* is this the correct syntax?
* try this
* well this was much easier than expected...
* change grafana-plugin-configs webpack config
* fixes
* fix lockfile
* fix 2 more violations
* use path.resolve instead of require.resolve
* remove react import
* fix react imports
* more fixes
* remove React import
* remove import React from docs
* remove another react import
Alerting: fix preserving errors in the alert rule state during error to error transitions
Alert state transition from one error to another did not update state.Error correctly.
The error in state.Error remained as the initial error encountered.
This led to another issue, where after a Grafana restart, the error was lost because
the state of the alert rule did not change, but the Error is not preserved in the database
between restarts.
This could happen if the expression service returned an error or the alert routine panicked
during querying.
* create a new table for migration resources
* remove raw result bytes from db
* more snapshot resource management stuff
* integrate new table with snapshots
* pass in result limit and offset as params
* combine create and update
* set up xorm store test
* add unit tests
* save some cpu
* remove unneeded arg
* regen swagger
* fix bug with result processing
* fix update create logic so that uid isn't required for lookup
* change offset to page
* regen swagger
* revert accidental changes to file
* curl command page should be 1 indexed
* Removed depricated HorizontalLayout from PrometheusMetricsBrowser
* Removed commented import
* typo fix
* Removed depricated HorizontalLayout from RawInfluxQLEditor
* Replaced InlineFormLabel to InlineField in RawInlfuxEditor.tsx
* Removed depricated HorizontalLayout from GraphiteFunctionEditor
* Changed div to instead use stack
* Changed htmlFor attribute from selectElementId to aliasElementId
* Updated the betterer results
* Updated prettier write to the updated files
* Changed htmlFor label to fix the text
* Made edit mode updates in Manage library panels
* Made edit mode updates to Manage library panels
* Made edit mode updates to Inspect variables and fixed formatting
* Wording and formatting edits
* Added note about shortning process
* Reverted change to remove this file from the PR
* Made small fixes
* Fixed wording and formatting
* adjust drone to run scenes e2e alongside
* adjust typo in scenes e2e folder name for consistency
* fix select options selector inssue with scenes bump
* skip tests in old arch that result in race conditions
* skip more flaky tests due to race conditions
* skip scenes e2e instead of old arch in case of race condition
* update to latest scenes version
* skip test due to race conditions
* skip flaky race condition test
* modify and sign drone pipeline
* remove unnecessary edits
* resolve merge conflicts and regenerate drone.yml
* add regex support for api tests
* revert dumb thing
* add api tests
* add unit test for core async workflow
* add xorm store unit tests
* fix typo
* remove unnecessary assignment
* RecentlyDeleted: Show hard delete date
* format date
* don't crash when <60 minutes
* tooltip
* reimplement course duration
* oops fixed missed units
* cleanup
* feat(fe-sandbox): introduce module and exports magic modules to executed plugin code
* refactor(fe-sandbox): rename module and exports vars for clarity
* remove/migrate normalize.scss
* fix typo
* migrate _add_data_source styles
* migrate panel-header styles
* migrate slate styles to emotion globals
* put back a couple of classes used by external plugins
* expose ngalert API to public
* add delete action to time-intervals
* introduce time-interval model generated by app-platform-sdk from CUE model the fields of the model are chosen to be compatible with the current model
* implement api server
* add feature flag alertingApiServer
---- Test Infra
* update helper to support creating custom users with enterprise permissions
* add generator for Interval model
* Simple replace of State.Resolved with State.ResolvedAt
* Retain ResolvedAt time between Normal->Normal transition
* Introduce ResolvedRetention to keep sending recently resolved alerts
* Make ResolvedRetention configurable with resolved_alert_retention
* Tick-based LastSentAt for testing of ResendDelay and ResolvedRetention
* Do not reset ResolvedAt during Normal->Pending transition
Initially this was done to be inline with Prom ruler. However, Prom ruler
doesn't keep track of Inactive->Pending/Alerting using the same alert instance,
so it's more understandable that they choose not to retain ResolvedAt. In our
case, since we use the same cached instance to represent the transition, it
makes more sense to retain it.
This should help alleviate some odd situations where temporarily entering
Pending will stop future resolved notifications that would have happened
because of ResolvedRetention.
* Pointers for ResolvedAt & LastSentAt
To avoid awkward time.Time{}.Unix() defaults on persist
* use react-virtual
* Render story with 100k items
* Dyanmic height and TanStack
* Remove weird item
* Add numberOfOptions to story
* Update class name
* Update class name
* First pass
* WIP
* why is my cpu angy
* Avoid triggering onHiddenSeriesChanged too often
onHiddenSeriesChanged should be called only when dataWithConfig changes, not when the callback changes itself.
This is actually causing an infinite loop because onHiddenSeriesChanged may not be memoized in the parent and passed as a new callback function on each render.
* fix tests
* Remove store mock and clear store between tests instead
* Fix filtering
* First pass adding callbacks and dependencies
* Add useRef hook for toggleLegend and topLogsRef
* Remove unwanted reactivity
register(...) changes outlineItems. A function that calls register(...) behaves like a setter for the state - it cannot react to the state itself.
* Separate unmount clean-ups
* Ensure unmount is not reactive to props
* Make memoized functions stats
* Wrap functions passed down to components with useCallback
* Fix reporting interaction when context is closed
* Adjust several variables to use refs
* Post-merge fixes
* Ensure scrollIntoView is called with a ref to the container
* Update docs
* Ensure scrollIntoView is updated only if the scroll element changes
* Fix the default pinned log tooltip
* Small clean up
* Remove console.log()
---------
Co-authored-by: Piotr Jamroz <pm.jamroz@gmail.com>
Co-authored-by: harisrozajac <haris.rozajac12@gmail.com>
* Zanana: Use grafana migrations to run openFGA migration files and initilize store.
* Add feature toggle
* Zanzana: return noop client if feature toggle is disabled
* add new apis
* add payloads
* create snapshot status type
* add some impl
* finish implementing update
* start implementing build snapshot func
* add more fake build logic
* add cancel endpoint. do some cleanup
* implement GetSnapshot
* implement upload snapshot
* merge onprem status with gms result
* get it working
* update comment
* rename list endpoint
* add query limit and offset
* add helper method to snapshot
* little bit of cleanup
* work on swagger annotations
* manual merge
* generate swagger specs
* clean up curl commands
* fix bugs found during final testing
* fix linter issue
* fix unit test
* Add info tooltips to logs that have been sampled by adaptive logs
* review commends and linter changes
* make warnings match info
* fix betterer results
This adds a version of the SQLStore that includes a ReadReplica. The primary DB can be accessed directly - from the caller's standpoint, there is no difference between the SQLStore and ReplStore unless they wish to explicitly call the ReadReplica() and use that for the DB sessions.
Currently only the stats service GetSystemStats and GetAdminStats are using the ReadReplica(); if it's misconfigured or if the databaseReadReplica feature flag is not turned on, it will fall back to the usual (SQLStore) behavior.
Testing requires a database and read replica - the replication should already be configured. I have been testing this locally with a docker mysql setup (https://medium.com/@vbabak/docker-mysql-master-slave-replication-setup-2ff553fceef2) and the following config:
[feature_toggles]
databaseReadReplica = true
[database]
type = mysql
name = grafana
user = grafana
password = password
host = 127.0.0.1:3306
[database_replica]
type = mysql
name = grafana
user = grafana
password = password
host = 127.0.0.1:3307
* keep config in a separate struct in LDAP
* implement reload function for LDAP
* remove param from sso service constructor
* update unit tests
* add feature flag
* remove nil params
* address feedback
* add unit test for disabled config
* Fix restoring dashboard to root folder
* use a root folder representation instead of nil
* change root folder by general folder
---------
Co-authored-by: Ezequiel Victorero <ezequiel.victorero@grafana.com>
* Zanana: Initial work to run zanana as ebeddedn or standalone
* Add addr settings for when remote client is used.
* sync dependencies
* Lock mysql driver version
---------
Co-authored-by: Dan Cech <dcech@grafana.com>
* TraceQL: Make the search field component use the virtualized prop for performance gains
* Use act on timers to eliminate warningsd
* Update more timers to use act to fix testing library warnings
* Fix linting failure
* Run make commands
---------
Co-authored-by: Joey Tawadrous <joey.tawadrous@grafana.com>
* add function to search for free port
* Update pkg/tsdb/influxdb/fsql/fsql_test.go
Co-authored-by: Dave Henderson <dave.henderson@grafana.com>
* Update pkg/tsdb/influxdb/fsql/fsql_test.go
Co-authored-by: Dave Henderson <dave.henderson@grafana.com>
* fix test
* fix go linting issue
* fix go lint
---------
Co-authored-by: Dave Henderson <dave.henderson@grafana.com>
* WIP
* Add barchart panel with scenes
* Fix timerange in barchart panel
* Refactor: component names
* Remove not used css styles and rename panel title
* Remove unnecessary HistoryEventsListObject class and update text in labels filter
* add padding top for filter
* Add translations
* update limit labels constant
* Update showing state reason
* Fix scene object
* Address review comments
* Update icons
* use endpoints instead of the autogenerated hook
* Address review comments
* Add tooltip for alert name
* use private polling interval
* fix autogenerated translations
* Address pr rewview comments
* Address review comments
* Update text in placeholder
* Rename variable and remove spaces in Trans children
* Initial experiment
* Add pill and underline
* Text decoration for hover
* Only set underline on the title
* Remove underline from hover
* Remove underline alltogether
* Fix several broadcaster data races and error handling
- Separate concerns between sender and receiver sides in channel usage
- broadcaster: Fix data race between Subscribe/Unsubscribe and start
- Fix Subscribe error to be io.EOF when broadcaster is terminated
- Fix Watch never unsubscribing
- General cleanup
- fix usage of context
- add a huge amount of documentation about channels
* Add TracedClient
* Handle errors and status codes
* Wire up tracing to normal ASH and loki annotation mapping
* Add tracing to remote alertmanager
* one more spot
* and not or
* More consistency with other grafana traces, lower cardinality name
* Use ref URIs with the reference style links
If I remember correctly, the UI needs reference style links so it can substitute its own link destinations.
ref URIs work both inline and as the destination for reference style links.
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
* Remove unused ref URI
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
* Remove unused Data frames link
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
---------
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
* Pass prometheus registerer to the dual writer
* Fix tests
* Remove unused var
* Fix tests
* Uncomment test
* Remove leading line
* Fix tests. Reuse registerer if there's already one
* Lint
* Improve double registering logic
* Rebase main
* Updated table wrapping and auto wording
* Fixed formatting to match other lists
* Fixed admonition styling and moved content out of note into body
* Added note re feature toggle
* Fixed typo
* Added comma
Co-authored-by: Adela Almasan <88068998+adela-almasan@users.noreply.github.com>
---------
Co-authored-by: Adela Almasan <88068998+adela-almasan@users.noreply.github.com>
* rename some stuff
* more renaming
* clean up api
* rename more functions
* rename cms -> gms
* update comment
* update swagger gen
* update endpoints
* overzealous
* final touches
* dont modify existing migrations
* break structs into domain and dtos
* add some conversion funcs
* fix build
* update frontend
* try to make swagger happy
* resolve action sets when GetPermissions is called
* a fix to ensure that dashboard permissions that override parent folder permissions are displayed on top of the inherited permission
* linting
* linting pt2
Improves log line to help with debugging in Server Side Expressions. In particular, the traceId, datasourceType, and datasourceUid will now be included.
* Update description of Grafana OSS
Reorder info and change examples to include only OSS data sources
* ran prettier
---------
Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
* migrate section-heading
* move fonts to global styles
* migrate code styles to emotion globals
* migrate spacings styles and leave some in angular
* padding should be 2 here not 1
* duplicate various-suite in scenes e2e
* restore original various-suite
* adjust various-suite e2e tests for scenes
* adjust workflow for test run
* adjust flaky exemplars test
* remove old dash script and restore workflow
* duplicate e2e/various-suite/keybinds.spec.ts into e2e/scenes
* restore original e2e/various-suite/keybinds.spec.ts
* add new keybinds e2e test
* restore workflow file after test run
* Scenes: Add support for viewing variable dependency graph in settings
* Fix failing e2e test
* Add test for createDependencyNodes/Edges
* Refactor for better separation between old architecture and scenes
* Add internationalization
* run maker
---------
Co-authored-by: Ivan Ortega <ivanortegaalba@gmail.com>
* include and resolve action sets when fetching user's permissions
* expand both action and action prefix (returns an empty set for the one that isn't specified)
Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
* if action is specified, check for exact match; also extend tests
* make the config sync happen on each call to ApplyConfig(), fix tests
* send autogen config
* add fake autogen function for tests
* update stale comments, tidy things up, make linter happy
* add auto-gen routes only if the feature toggle is enabled
* remove unnecessary fake autogen function
* throttle configuration syncs
* restore pkg/services/store/entity/sqlstash/sql_storage_server.go
* test sync loop in ApplyConfig, skip invalid autogen routes
* restore conf/defaults.ini
* restore conf/defaults.ini
* avoid skipping invalid auto-gen routes in SaveAndApplyConfig
* test that autogenFn is called and its errors are returned
* add debug message about the sync interval not having elapsed
* collapse two log lines into one
* Update index.md on Node panels to Grafana Play link
* Update index.md add Traces docs link to Grafana Play
* Update index.md News documentation link to Grafana Play
* Update index.md Alert list documentation link to Grafana Play
* Update index.md Alert list fixed missing link
* Update index.md Fixed title
* Update index.md Trying code fix
* Ran prettier command
* Matched link text to dashboard titles
* Replaced URL with ref URI key
---------
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
Co-authored-by: Isabel Matwawana <isabel.matwawana@grafana.com>
* Docs: Update "Configure high availability" guide with ha_reconnect_timeout configuration
---------
Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
* wip: working version
* add delete buttons, put pinned logs on top,
* Use already available onPinLine prop
* cleanup
* Fix alignment of pinned log
* Limit to 3 pinned log lines
* Format tooltip message
* Lower to font size and adjust padding so pinned log title is fully visible
* Add internationalization support in Explore Logs
* Update json for i18n
* Test remove button
* Open content outline after pinning a log
* Remove console.log statements
* Minor changes
* Conflict stuff
* Make MakeDependencyError public for tests in another package
* Create tests for errors in eval results
* Extract logic to pull frame errors out into exported function
* Maybe we can drop cyclomatic complexity lint suppression now?
* extract frame errors and fail recording rules if frames contain error
* Fix up retry logic to actually work
* Do not retry non retryable errors
* Docs: landing page for OSS/Enterprise
* adds alt text for image in alerting
* Update docs/sources/_index.md
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
* Update docs/sources/_index.md
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
* Update docs/sources/_index.md
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
* changes according to jacks feedback
* more fixes
* ran prettier
* adds upgrade tile
* adds better description
---------
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
* Allow undefined filter prop in adhoc variable when comparing two adhoc variables
* set mock implementation before each test
* mock console.warn in each test
* add root and client certificate value fields for LDAP
* update error messages for connection error
* add LDAP fallback strategy for SSO settings service
* fix params for sso service provider
* fix params for sso service provider
* sort imports
* sort imports
* replace json.Number with int64 in config map
* remove type assertions
* add test for the bug
* remove unused struct
* update db store to post process filters by group using go-lang's case-sensitive string comparison
--------
Co-authored-by: Alexander Weaver <weaver.alex.d@gmail.com>
* iam-716 - prevent a folder move operation when the folder's uid or any of its parents uids begin with k6-app
* fox folder move check and only list non-k6 folders to users
* adding tests for moving
* add a test for listing folders
* fix the other tests
* use method that adds folder parent
---------
Co-authored-by: IevaVasiljeva <ieva.vasiljeva@grafana.com>
* Add and fix tests for playlists in mode1
* Make etcd tests pass mode1 for now
* Fix mode1 and add more tests for playlists in mode 1
* Remove repeated test
* Fix test setup
[0, 0, 0, "\'Layout\' import from \'@grafana/ui/src/components/Layout/Layout\' is restricted from being used by a pattern. Use Stack component instead.", "0"],
[0, 0, 0, "Do not use any type assertions.", "1"],
[0, 0, 0, "Styles should be written using objects.", "2"],
[0, 0, 0, "Styles should be written using objects.", "3"],
[0, 0, 0, "Styles should be written using objects.", "4"],
[0, 0, 0, "No untranslated strings. Wrap text with <Trans />", "5"],
[0, 0, 0, "No untranslated strings. Wrap text with <Trans />", "6"],
[0, 0, 0, "No untranslated strings. Wrap text with <Trans />", "7"],
[0, 0, 0, "No untranslated strings. Wrap text with <Trans />", "8"]
[0, 0, 0, "Do not use any type assertions.", "0"],
[0, 0, 0, "No untranslated strings. Wrap text with <Trans />", "1"],
[0, 0, 0, "No untranslated strings. Wrap text with <Trans />", "2"],
[0, 0, 0, "No untranslated strings. Wrap text with <Trans />", "3"],
[0, 0, 0, "No untranslated strings. Wrap text with <Trans />", "4"]
[0, 0, 0, "* import is invalid because \'Layout,HorizontalGroup,VerticalGroup\' from \'@grafana/ui\' is restricted from being used by a pattern. Use Stack component instead.", "0"]
],
"public/app/plugins/panel/logs/types.ts:5381": [
[0, 0, 0, "Do not re-export imported variable (\`./panelcfg.gen\`)", "0"]
description:Raise a request for a new data source plugin
title:"[New Data Source]: <name-of-service>"
labels:
- area/datasource,type/new-plugin-request
body:
- type:markdown
attributes:
value:|
Thank you for requesting a new data source plugin!
We greatly appreciate feedback from our community about which new data sources would be beneficial.
Grafana Labs regularly reviews these requests and uses them to inform our prioritization. Note: we cannot offer any guarantees on whether we or our community will build a given data source.
Please check our [roadmap](https://github.com/orgs/grafana/projects/619?pane=info) for existing requests and subscribe to stay informed of our plans. If no request exists, please fill out the following information.
Please do not request support or file bug reports and feature requests for existing plugins here.
- For support, please use the community support resources [here](https://grafana.com/help/).
- Please consider the `New Bug Report` or `Feature Requests` [issue templates](https://github.com/grafana/grafana/issues/new/choose) for other requests.
- type:textarea
id:background
attributes:
label:Background
description:Tell us about the service you would like to see integrated as a data source
placeholder:ACME_DB is an open source time-series database that is used by many organizations to store their metrics data. It is a popular choice for monitoring and observability.
validations:
required:true
- type:textarea
id:use_case
attributes:
label:Use case
description:Describe any key requirements or data you would need surfaced, ideally including why they are useful for you.
placeholder:My team uses ACME_DB as the application database to monitor our produciton workloads, so we'd like to alert on it and visualize ACME_DB data next to our logs and traces in Grafana.
validations:
required:true
- type:checkboxes
attributes:
label:Contribution
description:If you are interested in creating the data source yourself and contributing to the [plugin catalog](https://grafana.com/grafana/plugins/), please fill in the following
options:
- label:Are you looking to create the plugin?
- label:Are you affiliated with the project/product the data source integrates with?
- label:Does the plugin integrate with a commercial product?
about: Suggest a component for the @grafana/ui package
labels: 'area/grafana/ui'
---
<!--
By using this template you will make it easier for us to make sure that documentation and implementation stays up to date for every component in @grafana/ui
Thank you!
-->
**Why is this component needed**:
<!-- Explain your use case -->
___
- [ ] Is/could it be used in more than one place in Grafana?
**Where is/could it be used?**:
___
- [ ] Post screenshots possible.
- [ ] It has a single use case.
- [ ] It is/could be used in multiple places.
**Implementation** (Checklist meant for the person implementing the component)
- [ ] Component has a story in Storybook.
- [ ] Props and naming follows [our style guide](https://github.com/grafana/grafana/blob/main/contribute/style-guides/frontend.md).
- [ ] It is extendable (rest props are spread, styles with className work, and so on).
- [ ] Uses [theme for spacing, colors, and so on](https://github.com/grafana/grafana/blob/main/contribute/style-guides/themes.md).
- [ ] Works with both light and dark theme.
**Documentation**
- [ ] Properties are documented.
- [ ] Use cases are described.
- [ ] Code examples for the different use cases.
- [ ] Dos and don'ts.
- [ ] Styling guidelines, specific color usage (if applicable).
description:Create an issue for delivering wireframes, mockups or other design solutions.
title:"UX: "
labels:["type/ux"]
body:
- type:textarea
id:background
attributes:
label:"Background / Why we're doing this"
description:Describe the problem and background of the issue. This could include research insights that inform the design changes, unmet user needs, or other usability issues.
placeholder:Add UI improvements to make Grafana Alerting alert creation easier based on usability test results.
validations:
required:true
- type:dropdown
attributes:
label:Is there existing research for this?
description:Please link research results or insights in the Background section if you have any. If no research was conducted, you might want to consider usability testing your design later.
options:[
"Yes, I have linked it",
"No research yet"
]
validations:
required:true
- type:textarea
id:problems-or-tasks
attributes:
label:Problems or tasks
description:Describe problems the new design should solve or tasks the user needs to complete.
placeholder:
value:|
- A problem we're trying to solve
- A task the user needs to accomplish
- …
validations:
required:false
- type:textarea
attributes:
label:Deliverables
description:Add a checklist of deliverables here. You can later add links to each deliverable.
about: Create an issue for a chore needing completion
labels: 'type: chore'
---
<!--
Please use this template to create your chore issue. You can use this template if you spot an out-of-date README, discover a misspelling, or happen upon a deeply nested 7-layer for-loop that could be better handled another way. Please use this template for your non-bug related fixes/updates/refactors.
- Questions should be posted to: https://community.grafana.com
- Use query inspector to troubleshoot issues: https://bit.ly/2XNF6YS
- How to record and attach gif: https://bit.ly/2Mi8T6K
By using this template, you help expand our component and pattern solutions within the design system and let others reuse your work! You can contribute bug or design defect fixes, component, and pattern enhancements, or even net-new components! This template brings visibility to the great work everyone already does and in turn helps reduce duplicate efforts.
- [ ] It works as expected from a user's perspective.
- [ ] If this is a pre-GA feature, it is behind a feature toggle.
- [ ] The docs are updated, and if this is a [notable improvement](https://grafana.com/docs/writers-toolkit/writing-guide/contribute-release-notes/#how-to-determine-if-content-belongs-in-a-whats-new-document), it's added to our [What's New](https://grafana.com/docs/writers-toolkit/writing-guide/contribute-release-notes/) doc.
- [ ] The docs are updated, and if this is a [notable improvement](https://grafana.com/docs/writers-toolkit/contribute/release-notes/#how-to-determine-if-content-belongs-in-whats-new), it's added to our [What's New](https://grafana.com/docs/writers-toolkit/contribute/release-notes/) doc.
"comment":"Please ask your question on [community.grafana.com/](https://community.grafana.com/). To avoid having your issue closed in the future, please read our [CONTRIBUTING](https://github.com/grafana/grafana/blob/main/CONTRIBUTING.md) guidelines.\n\nHappy graphing!"
"type":"label",
"name":"bot/question",
"addLabel":"type/question",
"removeLabel":"bot/question",
"action":"close",
"comment":"Please ask your question on [community.grafana.com/](https://community.grafana.com/). To avoid having your issue closed in the future, please read our [CONTRIBUTING](https://github.com/grafana/grafana/blob/main/CONTRIBUTING.md) guidelines.\n\nHappy graphing!"
},
{
"type":"comment",
"name":"duplicate",
"allowUsers":[],
"action":"close",
"addLabel":"type/duplicate"
"type":"comment",
"name":"duplicate",
"allowUsers":[],
"action":"close",
"addLabel":"type/duplicate"
},
{
"type":"label",
"name":"bot/duplicate",
"addLabel":"type/duplicate",
"removeLabel":"bot/duplicate",
"action":"close",
"comment":"Thanks for creating this issue! It looks like this has already been reported by another user. We’ve closed this in favor of the existing one. Please consider adding any details you think is missing to that issue.\n\nTo avoid having your issue closed in the future, please read our [CONTRIBUTING](https://github.com/grafana/grafana/blob/main/CONTRIBUTING.md) guidelines.\n\nHappy graphing!"
"type":"label",
"name":"bot/duplicate",
"addLabel":"type/duplicate",
"removeLabel":"bot/duplicate",
"action":"close",
"comment":"Thanks for creating this issue! It looks like this has already been reported by another user. We’ve closed this in favor of the existing one. Please consider adding any details you think is missing to that issue.\n\nTo avoid having your issue closed in the future, please read our [CONTRIBUTING](https://github.com/grafana/grafana/blob/main/CONTRIBUTING.md) guidelines.\n\nHappy graphing!"
},
{
"type":"comment",
"name":"needsMoreInfo",
"allowUsers":[],
"action":"updateLabels",
"addLabel":"bot/needs more info"
"type":"comment",
"name":"needsMoreInfo",
"allowUsers":[],
"action":"updateLabels",
"addLabel":"bot/needs more info"
},
{
"type":"label",
"name":"bot/needs more info",
"action":"updateLabels",
"addLabel":"needs more info",
"removeLabel":"bot/needs more info",
"comment":"Thanks for creating this issue! We think it's missing some basic information. \r\n\r\nFollow the issue template and add additional information that will help us replicate the problem. \r\nFor data visualization issues: \r\n- Query results from the inspect drawer (data tab & query inspector)\r\n- Panel settings can be extracted in the panel inspect drawer JSON tab\r\n\r\nFor dashboard related issues: \r\n- Dashboard JSON can be found in the dashboard settings JSON model view\r\n\r\nFor authentication, provisioning and alerting issues, Grafana server logs are useful. \r\n\r\nHappy graphing!"
"type":"label",
"name":"bot/needs more info",
"action":"updateLabels",
"addLabel":"needs more info",
"removeLabel":"bot/needs more info",
"comment":"Thanks for creating this issue! We think it's missing some basic information. \r\n\r\nFollow the issue template and add additional information that will help us replicate the problem. \r\nFor data visualization issues: \r\n- Query results from the inspect drawer (data tab & query inspector)\r\n- Panel settings can be extracted in the panel inspect drawer JSON tab\r\n\r\nFor dashboard related issues: \r\n- Dashboard JSON can be found in the dashboard settings JSON model view\r\n\r\nFor authentication, provisioning and alerting issues, Grafana server logs are useful. \r\n\r\nHappy graphing!"
},
{
"type":"label",
"name":"bot/no new info",
"action":"close",
"removeLabel":"needs more info",
"comment":"We've closed this issue since it needs more information and hasn't had any activity recently. We can re-open it after you you add more information. To avoid having your issue closed in the future, please read our [CONTRIBUTING](https://github.com/grafana/grafana/blob/main/CONTRIBUTING.md) guidelines.\n\nHappy graphing!"
"type":"label",
"name":"bot/no new info",
"action":"close",
"removeLabel":"needs more info",
"comment":"We've closed this issue since it needs more information and hasn't had any activity recently. We can re-open it after you you add more information. To avoid having your issue closed in the future, please read our [CONTRIBUTING](https://github.com/grafana/grafana/blob/main/CONTRIBUTING.md) guidelines.\n\nHappy graphing!"
},
{
"type":"label",
"name":"bot/close feature request",
"action":"close",
"addLabel":"not implemented",
"comment":"This feature request has been open for a long time with few received upvotes or comments, so we are closing it. We're trying to limit open GitHub issues in order to better track planned work and features. \r\n\r\nThis doesn't mean that we'll never ever implement it or that we will never accept a PR for it. A closed issue can still attract upvotes and act as a ticket to track feature demand\/interest. \r\n\r\nThank You to you for taking the time to create this issue!"
"type":"label",
"name":"bot/close feature request",
"action":"close",
"addLabel":"not implemented",
"comment":"This feature request has been open for a long time with few received upvotes or comments, so we are closing it. We're trying to limit open GitHub issues in order to better track planned work and features. \r\n\r\nThis doesn't mean that we'll never ever implement it or that we will never accept a PR for it. A closed issue can still attract upvotes and act as a ticket to track feature demand\/interest. \r\n\r\nThank You to you for taking the time to create this issue!"
"comment":" please add one or more appropriate labels. Here are some tips:\r\n\r\n- if you are making an issue, TODO, or reminder for yourself or your team, please add one label that best describes the product or feature area. Please also add the issue to your project board. :rocket:\r\n\r\n- if you are making an issue for any other reason (docs typo, you found a bug, etc), please add at least one label that best describes the product or feature that you are discussing (e.g. `area/alerting`, `datasource/loki`, `type/docs`, `type/bug`, etc). [Our issue triage](https://github.com/grafana/grafana/blob/main/ISSUE_TRIAGE.md#3-categorizing-an-issue) doc also provides additional guidance on labeling. :rocket:\r\n\r\n Thank you! :heart:"
Since you've added the `Add to what's new` label, consider drafting a [What's new note](https://admin.grafana.com/content-admin/#/collections/whats-new/new) for this feature.
You are provided with a Grafana issue. Your task is to categorize the issue by analyzing the issue title and description to determine the most relevant category and type from the provided lists. Focus on precision and clarity, selecting only the most pertinent labels based on the issue details. Ensure that your selections reflect the core problem or functionality affected.
The output should be a valid JSON object with the following fields:
* id (string): The ID of the current issue.
* categoryLabel (array of strings): The category labels for the current issue, emphasizing key terms and context.
* typeLabel (array of strings): The type of the current issue, emphasizing clarity and relevance.
**Instructions**:
1. **Contextual Analysis**: Understand the context and intent behind the issue description. Analyze the overall narrative and relationships between different components within Grafana. Consider dependencies and related components to inform your decision.
2. **Category and Type Differentiation**: Use language cues and patterns to differentiate between similar categories and types. Provide examples and counterexamples to clarify distinctions. Prioritize primary components over secondary ones unless they are critical to the issue.
3. **Historical Data Utilization**: Compare current issues with past resolved issues by analyzing similarities in problem descriptions, leveraging patterns to inform categorization. Use historical data to recognize patterns and inform your decision-making.
4. **Confidence Scoring**: Implement a confidence scoring mechanism to flag issues for review if the confidence is below a predefined threshold. Clearly indicate thresholds for high and low confidence predictions. Provide clarifying questions if data is ambiguous.
5. **Feedback Loop Integration**: Integrate feedback from incorrect predictions to refine understanding and improve future predictions. Conduct error analysis to identify patterns in misclassifications and adapt your approach accordingly.
6. **Semantic Analysis**: Evaluate the underlying intent of the issue using semantic analysis, considering broader implications and context. Leverage metadata or historical patterns to improve accuracy.
7. **Avoid Over-Specification**: Maintain precision and conciseness, avoiding unnecessary details. Prioritize clarity and flag for further review if uncertain.
8. **Consistent JSON Formatting**: Ensure the output maintains a consistent JSON structure with uniform formatting for readability and scalability.
**Next Steps and Insights**:
- Suggest potential next steps or resources that could help address the issue, providing actionable insights to enhance user engagement.
- Regularly test responses against edge cases to ensure robustness and adaptability.
- Stay updated with changes in category and type lists to remain current.
Provide a brief explanation of the categorization decision, highlighting key terms or context that influenced the choice. Use user-centric language and technical details to ensure the explanation is comprehensive and insightful.
description: 'Needs to match, exactly, the name of a milestone. The version to be released please respect: major.minor.patch, major.minor.patch-preview or major.minor.patch-preview<number> format. example:7.4.3,7.4.3-preview or 7.4.3-preview1'
required:true
env:
YARN_ENABLE_IMMUTABLE_INSTALLS:false
push:
default:true
required:false
dry_run:
default:false
required:false
permissions:
contents:write
pull-requests:write
jobs:
main:
bump-version:
runs-on:ubuntu-latest
steps:
# This is a basic workflow to help you get started with Actions
- pkg/storage/unified/sql/db/dbimpl/db.go# Ignoring warnings on the whole file for now while inline comments is not supported in Go (https://github.com/github/codeql/issues/11427)
schedule:
- cron:'0 4 * * 6'
@@ -25,6 +26,7 @@ jobs:
analyze:
name:Analyze
runs-on:ubuntu-latest
continue-on-error:true# doesn't block PRs from being merged if this fails
if:github.repository == 'grafana/grafana'
strategy:
@@ -43,16 +45,17 @@ jobs:
# We must fetch at least the immediate parents so that if this is
description: 'Needs to match, exactly, the name of a milestone. The version to be released please respect: major.minor.patch, major.minor.patch-preview or major.minor.patch-preview<number> format. example:7.4.3,7.4.3-preview or 7.4.3-preview1'
dry_run:
type:boolean
required:false
default:false
description:When enabled, this workflow will print a preview instead of creating an actual post.
secrets:
GRAFANA_MISC_STATS_API_KEY:
required:true
GRAFANABOT_FORUM_KEY:
required:true
workflow_dispatch:
inputs:
version:
type:string
required:true
description: 'Needs to match, exactly, the name of a milestone. The version to be released please respect: major.minor.patch, major.minor.patch-preview or major.minor.patch-preview<number> format. example:7.4.3,7.4.3-preview or 7.4.3-preview1'
dry_run:
type:boolean
required:false
default:false
description:When enabled, this workflow will print a preview instead of creating an actual post.
name:When epic issues changed in Platform UX squad projects, check if epic is part of specified child projects and update on Platform UX parent project
extract_error_message='::error::Extraction failed. Make sure that you have no dynamic translation phrases, such as "t(`preferences.theme.{themeID}`, themeName)" and that no translation key is used twice. Search the output for '[warning]' to find the offending file.'
make i18n-extract || (echo "${extract_error_message}" && false)
- run:|
uncommited_error_message="::error::Translation extraction has not been committed. Please run 'make i18n-extract', commit the changes and push again."
file_diff=$(git diff --dirstat public/locales)
if [ -n "$file_diff" ]; then
echo $file_diff
echo "${uncommited_error_message}"
exit 1
fi
lint-frontend-prettier:
permissions:
contents:read
id-token:write
# Run this workflow only for PRs from forks; if it gets merged into `main` or `release-*`,
# the `lint-frontend-prettier-enterprise` workflow will run instead
description: 'The version to be released please respect: major.minor.patch, major.minor.patch-preview or major.minor.patch-preview<number> format. example:7.4.3,7.4.3-preview or 7.4.3-preview1'
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.