* Allow creating correlations for provisioned data sources
* Update docs
* Fix linting
* Add missing props
* Add missing props
* Fix linting
* Fix linting
* Clarify error name
* Removed error handling for a non-existing use case
* Create a list of deleted data datasources based on all configs
* Add org_id to correlations
* Add tests
* Allow org_id to be null in case org_id=0 is used
* Create organization to ensure stable id is generated
* Fix linting
* Ensure backwards compatibility
* Add deprecation information
* Update comments
* Override existing datasSource variable so the UID is retrieved correctly
* Migrate correlations indices
* Default org_id when migrating
* Remove redundant default
* Make PK non-nullable
* Post merge fixes
* Separate data sources / correlations provisioning
* Adjust comments
* Store new data sources in spy store so it can be used to test correlations as well
* Fix linting
* Update tests
* Ensure response is closed
* Avoid creating duplicates during provisioning
* Fix updating provisioned column and update tests
* Rename error message
* Fix linting errors
* Fix linting errors and rename variable
* Update test
* Update pkg/services/sqlstore/migrations/correlations_mig.go
Co-authored-by: Giordano Ricci <me@giordanoricci.com>
* Remove unused error
* Fix lining
---------
Co-authored-by: Giordano Ricci <me@giordanoricci.com>
* BrowseDashboards: Only remember the most recent expanded folder
* set to null
* cleanup
* only clear removed folder if it was the most recently opened
* comments + variable
* Add necessary fields to edges
* Add information about name and namespace to edge when available
* Use new fields to build search taking into account namespace
* Remove new fields from NodeGraphDataFrameFieldNames, define them locally
* various type fixes
* candlestick panel type fixes
* few more fixes
* some fixes
* more :)
* moar!
* undo change to SilencesFilter
* undo change to configureStore
* adding contain:strict to let browsers know the layout of logs panel can be rendered independently
* add new prop to allow LogRow component to contain content
* feat: add a `isDeprecated` field to `CatalogPlugin`
* tests: update the tests for merging local & remote
* feat: display a deprecated badge in the plugins list
* feat: show a deprecated warning if the plugin is deprecated
* Fix linting issues
* Review notes
Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
* refactor: remove `isDeprecated` from the details (it's already in the main CatalogPlugin object)
* refactor: use an enum for remote statuses
---------
Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
* delete PanelHeader
* PanelHeaderMenuItem is only used in PageHeader
* PanelHeaderCorner only used by PanelEditorTableView
* PanelHeaderMenuTrigger not used anywhere
* PanelHeaderMenuWrapperNew is PanelHeaderMenuWrapper, old one is deleted
* remove newPanelChromeUI from test
* delete feature flag newPanelChromeUI
* PanelHeaderMenuWrapperNew is PanelHeaderMenuWrapper, old one is deleted
* Refactor data tab to be usable from scenes
* DashboardScene: Inspect data tab
* Everything seem to work now
* don't change drawer size in this PR
* Remove uncommented code
* Fix layout issues for data actions
* Added comment explaining retry
Adapt document language
HTML "lang" attribute should reflect the actual language used in texts. Important for accessibility functions (screen readers), but also usable in CSS.
* fix(plugins): support edge cases where default extension was not added
* fix(plugins): only apply AMD wrapper to AMD format plugins
* refactor(plugins): update regex for codeql warnings
* refactor(plugins): remove check for commented out dependency strings in AMD regex
* test(plugins): add tests for systemjs hook amd detection
* create new feature toggle + start to put stuff behind it
* block move, tidy up interfaces
* fix new/folder actions buttons
* show warning when deleting library panels/alert rules + run i18n:extract
* pseudo
* update unit tests
* pass alert in description
* Add support for MI authentication to MSSQL
This adds support for managed identity authentication for MSSQL managed
instances running in Azure.
Co-authored-by: baldm0mma <jev.forsberg@grafana.com>
* don't use legacy AC fallback for frontend access control checks
* extend tests
* more test fixes
* more test fixes
* more test fixes
* final test fix
* team test fix
* finally fix tests
* Progress
* think this a bad approach
* Scene panel repeats looking good
* Update
* update
* Update
* Use key instead for inspect/view
* refactorings to improve tests
* Update
* More tests
* Update
* added support for key / value variables
* Update
* Fixes
* remove log
* Update
* Removed old gdev templating dashboard and added new and improved one
* Update
* Added repeating panels coded demo
* Update to latest scenes lib
* review feedback fixes
* update
* Sync schema
* account for timezone when using relative times
Co-authored-by: eledobleefe <laura.fernandez@grafana.com>
Co-authored-by: Joao Silva <joao.silva@grafana.com>
Co-authored-by: L-M-K-B <48948963+L-M-K-B@users.noreply.github.com>
Co-authored-by: joshhunt <josh@trtr.co>
Co-authored-by: tskarhed <1438972+tskarhed@users.noreply.github.com>
* keep as it was originally for now
* add e2e test for relative time zone overrides
* empty commit to add coauthors
Co-authored-by: eledobleefe <laura.fernandez@grafana.com>
Co-authored-by: Joao Silva <joao.silva@grafana.com>
Co-authored-by: L-M-K-B <48948963+L-M-K-B@users.noreply.github.com>
Co-authored-by: joshhunt <josh@trtr.co>
Co-authored-by: tskarhed <1438972+tskarhed@users.noreply.github.com>
* fix types
* switch to using table panel in e2e test
* use regex for partial text match
* actually go to the dashboard...
* use include.text
* check for visibility first
* try waiting on backend request to complete
* CI driven development is fun
* make sure we're waiting for both data query calls
* open dashboard instead
* kick drone
* Revert "open dashboard instead"
This reverts commit bab9c77c4d.
* check timezone second
* refactor to avoid detached elements
---------
Co-authored-by: eledobleefe <laura.fernandez@grafana.com>
Co-authored-by: Joao Silva <joao.silva@grafana.com>
Co-authored-by: L-M-K-B <48948963+L-M-K-B@users.noreply.github.com>
Co-authored-by: joshhunt <josh@trtr.co>
Co-authored-by: tskarhed <1438972+tskarhed@users.noreply.github.com>
* Add tabs for Insights/Getting Started in home page
* Display panels using the scenes framework
* Hide Insights page under a feature flag
* Add a new panel and improve ASH queries
* Improve panels layout
* Add more panels
* Change datasource UID
* Rename most fired alerts table title
* Show navigation cards on top
* Improve panels
* Add transformation to display link to view alert rule
* Restructure panels
* Fix panels layout
* Fix grid layout in landing tab
* Add transformation to most fired rules table
* Move grafana-specific scenes under dedicated folder
* Add scene with custom datasource that queries an API
* Add scenes panels for more datasources
Not just ASH but including grafanacloud-usage and grafanacloud-prom metrics
* Changes to grafana panels
* Add per rule group scenes with query variables
Also improve existing panels legends/formatting
* Fix lint
* Fix legends for some panels
* Fix lint
* Move files under new alerting home directory
* Refactor transformation in MostFiredInstancesTable scene
* fix lint
* Display panels in collapsable sections
* Improvements to data displayed in several panels
* chore(plugins): bump systemjs to latest version
* refactor(plugins): switch runtime over to use latest systemjs, add typings
* refactor(plugins): use latest systemjs APIs for runtime dependency resolution
* refactor(plugins): return valid urls from backend for latest systemjs import to work
* revert(plugins): remove cfg from assetpath in favour of relative paths
* fix(plugins): useDefault for systemjs deps to solve undefined errors
* feat(plugins): add basic support for loading plugins via CDN
* fix(plugins): load nested plugins with latest systemjs
* feat(plugins): add back ability to transform plugin src for cdns
* feat(plugins): get caching for module.js working, clean up
* refactor(plugin_loader): create buildImportMap fn and more clean up
* refactor(angularapp): use buildImportMap for dependencies and clean up
* test(plugin_loader): fix failing test due to systemjs update
* test(jest): mock systemjs amd extra in tests to prevent it breaking tests
* chore(plugins): remove systemjs module-types extra, already included with system
* fix(plugins): update key for invalidating cached plugins
* fix: move systemjs amd define to another global so monaco can load
* refactor(plugins): clean up cache buster and tests
* chore(plugins): remove debug
* refactor(plugins): move systemjs define to keep global cleaner
* fix(plugins): set useDefault so system modules lodash references dont fail
* feat(plugins): hook systemjs onload so stylesheets are applied to the dom
* refactor(plugins): wrap amd formatted plugins in iife to prevent define collision
* feat(plugins): support system module format for legacy plugins
* test(plugincachebuster): update tests to match latest implementation
* test(plugins-loader): fix up tests post module property change
* fix test
* Update pkg/plugins/manager/loader/assetpath/assetpath.go
Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
* chore(plugin_loader): remove stray import from merge conflict
* Revert "Update pkg/plugins/manager/loader/assetpath/assetpath.go"
This reverts commit 0df57d1cf20f49c22c93369001c70aae46a97c42.
* fix(plugin_loader): set use default for shared plugin dependencies
* refactor(plugins): use leading slash for Module and BaseUrl
* fix(plugins): fix resolve appending extension to cache query param
* refactor(plugins): align baseurl and module paths
* refactor(plugins): update builtInPlugins keys to match naming convention
* refactor(plugins): minor loader clean up, fix up types
* test(plugins): fix failing tests
* refactor(plugins): rename cache buster systemjs plugin to cache
* refactor(plugins): separate plugin_loader into smaller files
* chore(plugins): clean up plugin_loader types
* chore(plugin_sandbox): fix typescript error
* chore(npm): remove unplug debug and pin systemjs to 6.14.1
* refactor(plugins-cdn): update loaders to use absolute module url from backend
* fix(plugins): escape period in systemjs module regex
* chore(plugins): delete redundant systemjs plugins
* refactor(plugin_loader): move hooks into own file, add types
* test(plugins): add tests for systemjs loader hooks
* chore(plugins): rename systemjshooks file
* chore(plugins): remove redundant systemjs cdn backend code
* fix(plugins): handle loading with config.appSubUrl
* chore(plugins): delete redundant plugin-cdn angular code
* test(plugins): fix failing systemjs test missing pluginsCDNBaseUrl
* refactor(plugins): backend provides base and module properties with AppSubUrl
* fix(plugins): consider AppSubUrl for plugin logos
* fix(plugins): use isHostedOnCDN util when checking for cdn hosted plugins
* add new appSubURL field to config
* refactor relative URL func
* fix path for core app
* refactor asset path input
* fix(plugins): catch errors in loadPluginCss
* feat(plugins-cdn): selectively transform sourceMapURL
* re-add deleted test case
* chore(plugins): bump to latest systemjs@6.14.2
* feat(plugins): add systemjs-cjs-extra for loading commonjs plugins
---------
Co-authored-by: Will Browne <will.browne@grafana.com>
Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
* check languageProvider to work with non-indexed metadata
* change loki devenv to work with non-indexed metadata
* trigger ci
* add forced labels after parsers
* add comment
* Update public/app/plugins/datasource/loki/modifyQuery.ts
Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
---------
Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
* updates
* make save button always visible but disabled
* only reset toggles if there isn't an error response
* make linters happy
* update post body to match backend
* fix linter again
* be smarter about sorting of empty descriptions
* run prettier
* fix payload
* Re-add disabled to switch
---------
Co-authored-by: Joao Calisto <joao.santana.calisto@gmail.com>
Co-authored-by: Michael Mandrus <michael.mandrus@grafana.com>
* baldm0mma/help_button/ force QueryOperationRow to expand on showHelp click
* baldm0mma/help_button/ remove comment
* baldm0mma/help_button/ add comment to onClose()
* baldm0mma/help_button/ remove useToggle for showing help
* baldm0mma/help_button/ remove comment
* baldm0mma/help_button/ update comment
* baldm0mma/help_button/ add full toggle control for parent of QueryOperationRow
* baldm0mma/help_button/ update inline comments
* baldm0mma/help_button/ update annos
* Add angularDeprecationUI feature toggle
* Add angular notice in angular panel header
* Show angular notice for angular datasources
* Show angular notice at the top of the dashboard
* Changed Angular deprecation messages
* Fix angular deprecation alert displayed for new dashboards
* re-generate feature flags
* Removed unnecessary changes
* Add angular deprecation dashboard notice tests
* Add test for angular deprecation panel icon
* Update test suite name
* Moved isAngularDatasourcePlugin to app/features/plugins/angularDeprecation
* Add hasAngularPlugins to DashboardModel
* re-generate feature toggles
* Fix tests
* Fix data source spelling
* Fix typing issues
* Extract plugin type into a separate function
* re-generate feature flags
* reportInteraction on angular dashboard notice dismiss
* re-generate feature flags
* Re-generate feature flags
* lint
* Refactor: move ldap auth registration to OSS
* Update public/app/features/auth-config/types.ts
* fix: permission settingswrite
* fix: types for typescript find()
* fix: linting
* fix: removed types that are implicit
* added text for no available authentication providers
* refactor: make use of ldapenabled instead for minimal changes
* SceneDashboard: Discard changes now works
* To save model works and start at save drawer
* Update
* Added missing file
* Refactorings to keep responsibility more logical
* Refactorings
* Removed file
* Fixed state issue
* Update
* Update
* Dashboard: Save original JSON to state
* Dashboards: Update tests
* Dashboards: Fix original json access
* Dashboard: Save original to the DashboardModel
* Dashboard: Cleanup tests
* Remove original db setter
* fix some event.target as stuff
* segment async story
* segmentinput story
* SegmentSelect
* fixing some tests
* more test fixes
* undo change to SilencesFilter
* Unify default value
* Use variable to keep default precisions in sync
* Use default precision variable
* Update precision description
* Update defaultPrecisionString and move
* Be more specific in naming of variabkle
* Revert "Merge remote-tracking branch 'origin' into ivana/es-precision-default-value"
This reverts commit 599f236a77, reversing
changes made to 6742be0c6d.
* Revert wrong merge
* Revert wrong merge with turned off lefthook
* Metrics summary
* Update query
* Remove colors
* Update states
* Add group by into its own component
* Add group by to search and traceql tabs
* Add spacing for group by
* Update span kind values
* Update span status code values
* Update query based on target + group by
* Cleanup
* Only add targetQuery if not empty
* Add kind=server to table
* Update groupBy query logic
* Add feature toggle
* Use feature toggle
* Self review
* Update target query
* Make gen-cue
* Tweak query
* Update states
* useRef for onChange
* Fix for steaming in search tab
* Add loading state tests
* metricsSummary tests
* Datasource tests
* Review updates
* Update aria-label
* Update test
* Simplify response state
* More manual testing and feedback from sync call
* Prettier and fix test
* Remove group by component from traceql tab
* Cleanup, tests, error messages
* Add feature tracking
* experiment: attempt to tag only UI devices
* lint frontend
* use await
* use shorthand check
* do not assume build info exists
* do not assume build info exists
* Apply suggestions from code review
Co-authored-by: Alexander Zobnin <alexanderzobnin@gmail.com>
---------
Co-authored-by: Alexander Zobnin <alexanderzobnin@gmail.com>
* move truncating to helper function, to start of array
* Prometheus: Add 1000 result warning as sticky footer in metric select (#73649)
add 1000 result warning as sticky footer in metric select
* Prometheus: Only show truncated results warning if results have been truncated (#73650)
only show truncated warning if results have been truncated
* add test to metric select
---------
Co-authored-by: Brendan O'Handley <brendan.ohandley@grafana.com>
Co-authored-by: bohandley <brendan.ohandley@gmail.com>
`grafana-ml` was added to the `availableIconsIndex` object in
<commit> but no corresponding SVG was added, nor was the Icon
bundle updated.
This commit adds the real Grafana ML icon as gf-ml.svg, renames
the key in the availableIconsIndex accordingly, and updates the
Icon bundle using the documented script. Note that the name
was changed to `gf-ml` rather than `grafana-ml` because otherwise
the wrong directory is used (unicons rather than custom).
The main motivation for adding this is because plugin extensions
need to specify a valid icon name, and we want to use the Grafana ML
icon for our extensions, which requires the icon to be part of
core Grafana.
* InfluxDB/QueryEditor: Add delete buttons to measurement, part and tag sections
The diff provides an additional "delete" button to measurement section, part list section and tags section in the influxdb datasource editor. This improves user experience by allowing users to delete measurements, parts and tags directly from the user interface. The commit also slightly refactors the options generation for these sections, removing the "-- remove filter --" option as it becomes redundant with the new delete button.
* InfluxDB/QueryEditor: Replace Button with AccessoryButton
Changed the Button components to AccessoryButton from the '@grafana/experimental' package, used for the delete functionality in data source components for influxdb query editor. The AccessoryButton is more visually consistent with our current Grafana UI aesthetic and provides better user experience. The change was implemented in FromSection.tsx, PartListSection.tsx, and TagsSection.tsx files.
* Update public/app/plugins/datasource/influxdb/components/editor/query/influxql/visual/FromSection.tsx
Co-authored-by: ismail simsek <ismailsimsek09@gmail.com>
* Update public/app/plugins/datasource/influxdb/components/editor/query/influxql/visual/PartListSection.tsx
Co-authored-by: ismail simsek <ismailsimsek09@gmail.com>
---------
Co-authored-by: ismail simsek <ismailsimsek09@gmail.com>
* Improve naming; fix tests
* Pass countWarning to titleItems
* Center warning text
* Revert variable name
* Switch from arrow function to direct assignment
* Add ability to make component controlled
* Replace remaining isOpen with collapsed
* Fix test; update story and docs
* Add test; add uncontrolled functionality
Update config editor
- Use Field instead of InlineField
- Make use of new ConfigSection structural components
- Add DataSourceDescription component
- Add secureSocksProxy to types
* set panel z-index to a descending number once they are ordered before they are rendered
* set styling inside grid item
* fix unresponsive RGL when style is overwritten entirely
* Logs: Hide filters in log details if the data source doesn't support them
* Logs Container: use logsQueries prop
* Log details: add filters visibility test
* remove unused datasource pages
* move useDataSourceSettingsNav from datasources to connections
without any modification in the code yet
The reason for this is that its only usage is in this file, so we are
going to merge it with the other useDataSourceSettingsNav hook in the
next commit.
* merge two useDataSourceSettingsNav's
and rename consts and remove duplicated calls
* simplify useDataSourceSettingsNav
* Fix parsing absolute range
* Silence warning issued by moment js
* Introduce URLRangeValue to enforce better type-checking
* Fix unit tests
* Allow not passing range to generate ExploreUrl
* Use updated time range format in a test
* Allow empty object to be passed as a data link for backward compatibility
* Update mocks
* Post-merge fixes
* Simplify checking if range is passed as an empty object
* Update docs
* make discord url secure
* support migrating unsecure settings to secure settings
* Update public/app/features/alerting/unified/utils/receiver-form.ts
Co-authored-by: William Wernert <william.wernert@grafana.com>
---------
Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
Co-authored-by: William Wernert <william.wernert@grafana.com>
* Add nested option to DataFrame. Refactor Table to use nested dataframes for sub-tables
* Use nested frames for TraceQL response
* debugging
* Fix cell text and table position
* Update getItemSize
* noHeader size
* Update sub table renderer
* Update table container height
* Cleanup and fix RawPrometheusContainer height
* Update resultTransformer and docker script
* Updates to TableContainer, resultTransformer after merge
* Fixes for table pagination in dashboards
* Cell height and show footer enhancement/fix
* Sub table links
* Update RawPrometheusContainer
* Remove console log
* Update tests
* Update storybook
* Remove Tempo demo
* Store nested data in single field via its values
* Move nested prop into custom
* Tempo demo
* Add field type & update incorrect logic
* Update docker compose image for Tempo
* Update packages/grafana-data/src/field/fieldOverrides.ts
Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
* Simplify logic for getting nestedFrames and rendering sub tables
* Update docs for table
* Update nested table bg color
* Lighten nested table bg color
* Renames
* Migrate frames using parentRowIndex and add deprecation notice
* Update title
* Align expander icon size between Table and interactive table
* Table: Refactor out the expanded rows bits
* fix spacing
* Add line along left side for expanded rows
* Disable hover row background when expanded
---------
Co-authored-by: André Pereira <adrapereira@gmail.com>
Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
* introduce a new action "alert.provisioning.secrets:read" and role "fixed:alerting.provisioning.secrets:reader"
* update alerting API authorization layer to let the user read provisioning with the new action
* let new action use decrypt flag
* add action and role to docs
* Make it clear that MariaDB is also supported as datasource
MariaDB is now the default relational DB on lots of Linux distribution,
it's important to make it clear that it is perfectly supported.
* Fix 404 and make MySQL docs URL more robust
And lint with prettier.
* Review from lwandz13