Commit Graph

758 Commits

Author SHA1 Message Date
Ashley Harrison
47f8717149 React: Use new JSX transform (#88802)
* 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
2024-06-25 12:43:47 +01:00
Ivana Huckova
375be77f32 Elasticsearch: Add developer documentation (#89050)
* Elasticsearch: Add developer documentation

* Update

* Update

* Add code comments

* Update

* Update public/app/plugins/datasource/elasticsearch/docs/developer_documentation.md
2024-06-13 18:05:50 +03:00
Ashley Harrison
5f33943397 Select: Revert "preserving custom value" changes (#88856)
* revert Select changes as we can handle it outside of the base select component

* update scenes

* update scenes properly

* revert changes to azure-monitor e2e tests
2024-06-06 17:33:31 +01:00
Ivana Huckova
023857625a Elasticsearch: Remove enableElasticsearchBackendQuerying feature toggle (#88668)
* wip

* Fix newly introduced any

* Remove toggle

* Remove unused code in LegacyQueryRunner
2024-06-05 17:03:29 +02:00
Ashley Harrison
b4e49e3114 Select: Ensure screenreader correctly narrates options (#88118)
* replace select aria-label with data-testid

* update in copy pasted places as well

* update plugin-e2e to 1.2.2
2024-05-28 14:51:47 +01:00
Ashley Harrison
429bcbe67f Select: Preserve value when allowCustomValue is set (#87843)
* initial working poc with some better types

* move logic inside SelectBase

* add unit tests

* cleaner logic

* simpler

* update comments

* more comments

* use onMenuClose

* undo changes to cleanValue

* fix unit tests

---------

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2024-05-20 11:01:38 +01:00
Matias Chomicki
82796fad98 Elasticsearch: queries no longer executed on-change (#87652)
* Elasticsearch: queries no longer executed on-change

* Elasticsearch: run query if it was previously undefined
2024-05-16 19:09:50 +03:00
Ashley Harrison
3c69de6be5 Chore: removing some type assertions (#85839)
* fix some type assertions in loops

* some more cleanup

* some alerting fixes

* put comments in correct place to ignore rule

* couple more

* undo SilencesFilter changes
2024-04-10 14:54:31 +01:00
Ashley Harrison
b3cff22db3 Chore: Improve types (#85659)
* fixing some types

* more type fixes

* few more

* last couple

* tiny tweak
2024-04-08 09:56:21 +01:00
Bogdan Matei
582b252488 Add optional queries parameter to DataSourceGetTagValuesOptions (#85436)
Add optional `queries` parameter to `getTagKeysOptions`
2024-04-02 13:22:37 +03:00
Ivana Huckova
77b1c97482 Elasticsearch: Remove xpack button and make includeFrozen not dependant on it (#84734) 2024-03-20 09:59:26 +01:00
Selene
275ccf994b Schemas: Reduce duplicated jenny code (#84061)
* Remove jenny_ts_resources and use jenny_ts_types for all cases

* Unify TS generated files into one jenny

* Add missing imports to versioned files

* Update Parca plugin

* Fix loki

* Use LokiQuery

* Fix pyroscope tests

* Fix prettier

* 😒 fix default pyroscope value name

* Set the LokiQuery

* Update Elasticsearch and TestData

* Missed files from testdata

* Order imports
2024-03-11 12:51:44 +01:00
Sven Grossmann
411c89012f Elasticsearch: Fix adhoc filters not applied in frontend mode (#83592) 2024-02-28 14:32:01 +01:00
Ivana Huckova
48b4ca8228 Elasticsearch: Decouple frontend dependencies from core (#82179)
* Elasticsearch: Decouple frontend dependencies from core

* Remove not needed code change
2024-02-09 14:11:08 +02:00
Ashley Harrison
765a1f8533 Chore: fix some bad uses of userEvent (#82191)
* fix some bad uses of userEvent

* wrap advance call in act

* don't use act

* remove skip

* need act here (see https://kentcdodds.com/blog/fix-the-not-wrapped-in-act-warning#1-when-using-jestusefaketimers)

* remove test that isn't correct anymore

* implement same change in grafana-prometheus
2024-02-09 10:04:35 +00:00
Mikel Vuka
18963dc3ae Elasticsearch: Apply ad-hoc filters to annotation queries (#82032)
* Elasticsearch: filter annotations

* fix broken tests

* add a new test case

* allow type assertion

There is a lint rule to not be able to use assertions. In this case, it is needed and correct way to asset AdHocVariableModel[]

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>

* simplify the code to add adhoc filters

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>

* lint

---------

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2024-02-08 11:47:18 +01:00
Ashley Harrison
dcf58555e8 Chore: Some test type fixes (#81812)
some test type fixes
2024-02-05 09:47:30 +00:00
Matias Chomicki
2a734a9e3f Supplementary queries: allow plugin decoupling by allowing providers to return a request instance (#80281)
* Supplementary queries: add support for providers returning a request instance

* Formatting

* DataSourceWithSupplementaryQueriesSupport: update getDataProvider signature

* getLogLevelFromLabels: fix buggy implementation

* getLogLevelFromKey: fix key type

Why number??

* Revert "getLogLevelFromKey: fix key type"

This reverts commit 14a95298a6f803cc3270e0421b2e04dd0d65f131.

* getSupplementaryQueryProvider: remove observable support

* Datasources: remove unnecessary check

The switch is doing the same job

* Supplementary queries: update unit test

* datasource_srv: sync mock with real api

* Formatting

* Supplementary queries: pass targets from getSupplementaryQueryProvider

* LogsVolumeQueryOptions: remove range and make extract level optional

* logsModel: add missing range to test data

* query: sync tests with changes

* Formatting

* DataSourceWithSupplementaryQueriesSupport: update interface with deprecated and new methods

* DataSourceWithSupplementaryQueriesSupport: sync Loki and Elasticsearch

* queryLogsVolume: extractLevel no longer customizable

* Loki: update test

* Supplementary queries: add support for the new method

* hasSupplementaryQuerySupport: update signature

* Formatting

* Betterer

* Query: update test

* Supplementary queries: add test for the legacy API

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

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>

---------

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2024-01-30 12:36:20 +02:00
Sven Grossmann
3d033839d7 Elasticsearch: Fix URL creation and allowlist for /_mapping requests (#80970)
* Elasticsearch: Fix URL creation for mapping requests

* remove leading slash by default

* add comment for es route

* hardcode `_mapping`

* update doc
2024-01-23 12:41:13 +01:00
Ivana Huckova
712c505251 Divider: Remove core component and replace with grafana/ui components (#80574)
* Divider: Remove core component and replace with grafana/ui components

* Update gap

* Bump experimental in tempo

---------

Co-authored-by: Fabrizio <fabrizio.casati@grafana.com>
2024-01-16 13:27:51 +02:00
Ivana Huckova
6fbd6e3d31 ConfigDescriptionLink: Replace with component from @grafana/experimental (#80144)
ConfigDescriptionLink: Replace with component from grafana/experimental
2024-01-08 18:34:49 +01:00
Khushi Jain
ee82801843 Chore: Remove gf-form in UserPermission & Annotation Query (#78785)
* Chore: Remove gf-form in UserPermission

* more changes

* Update public/app/features/admin/UserPermissions.tsx

Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>

* more change

* Added annotationQueryEditor

* empty div

* Update public/app/plugins/datasource/elasticsearch/components/QueryEditor/AnnotationQueryEditor.tsx

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>

* final

---------

Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2023-12-14 09:27:30 +02:00
Matias Chomicki
65535a3b3f Loki/Elasticsearch: prevent errors in onDashboardLoadedHandler (#79451)
* Loki: prevent errors in onDashboardLoadedHandler

* Elasticsearch: prevent errors in onDashboardLoadedHandler
2023-12-13 15:37:21 +02:00
Sven Grossmann
db7fa30384 Elasticsearch: Fix modify query with backslashes (#79430)
* Elasticsearch: Fix modify query with backslashes

* add test devenv
2023-12-13 14:07:46 +01:00
Matias Chomicki
02068662c1 Logs: create DataSourceWithQueryModificationSupport + determine popover menu support (#78322)
* DataSourceWithQueryModificationSupportSupport: create interface

* Loki: implement DataSourceWithQueryModificationSupportSupport

* Elasticsearch: implement DataSourceWithQueryModificationSupportSupport

* DataSourceWithQueryModificationSupportSupport: add type guard

* DataSourceWithQueryModificationSupport: rename

* Check for nullish values in guards

* Logs container: replace support map with ds instances map

* Log rows: refactor deselection listener

* Formatting

* Formatting

* DataSourceWithQueryModificationSupport: add missing comment

* Logs container: update method name

* Logs container: check for query modification support

* Create QueryFixType

* QueryFixAction: move back to ds types

* getSupportedQueryModifications: update signature

* getSupportedQueryModifications: update signature
2023-11-23 11:04:23 +01:00
kay delaney
9e11779921 Chore: Clean up usage of deprecated stylesFactory function (#78419) 2023-11-21 14:01:53 +00:00
Matias Chomicki
9cb303c3f7 Log Rows: Added popover menu with filter options when a log line is selected (#75306)
* LogRow: detect text selection

* LogRow: refactor menu as component

* LogRow: add actions to menu

* LogRow: hack menu position

* Remove unsused imports

* LogRowMessage: remove popover code

* PopoverMenu: refactor

* LogRows: implement PopoverMenu at log rows level

* PopoverMenu: implement copy

* PopoverMenu: receive row model

* PopoverMenu: fix onClick capture issue

* Explore: add new filter methods and props for line filters

* PopoverMenu: use new filter props

* Explore: separate toggleable and non toggleable filters

* PopoverMenu: improve copy

* ModifyQuery: extend line filter with value argument

* PopoverMenu: close with escape

* Remove unused import

* Prettier

* PopoverMenu: remove label filter options

* LogRow: rename text selection handling prop

* Update test

* Remove unused import

* Popover menu: add unit test

* LogRows: update unit test

* Log row: hide the log row menu if the user is selecting text

* Log row: dont hide row menu if popover is not in scope

* Log rows: rename state variable

* Popover menu: allow menu to scroll

* Log rows: fix classname prop

* Log rows: close popover if mouse event comes from outside the log rows

* Declare new class using object style

* Fix style declaration

* Logs Popover Menu: add string filtering functions (#76757)

* Loki modifyQuery: add line does not contain query modification

* Elastic modifyQuery: implement line filters

* Modify query: change action name to not be loki specific

* Prettier

* Prettier

* Elastic: escape filter values

* Popover menu: create feature flag

* Log Rows: integrate logsRowsPopoverMenu flag

* Rename feature flag

* Popover menu: track interactions

* Prettier

* logRowsPopoverMenu: update stage

* Popover menu: add ds type to tracking data

* Log rows: move feature flag check

* Improve handle deselection
2023-11-16 11:48:10 +02:00
Josh Hunt
2f2be24e01 Chore: Remove unnecessary type assertions (#78009)
* Chore: Remove unnecessary type assertions

* betterer
2023-11-14 09:17:29 +00:00
Ashley Harrison
40fd80c46f Chore: Various type improvements (#77877)
* more datasource type fixes

* more type updates
2023-11-09 17:39:02 +00:00
Esteban Beltran
0b03344baa Chore: Update to typescript 5 (#76511)
* Update dependency typescript to v5

* Update yarn.lock

* Fix typescript errors

* Update typescript version sdk

* Revert useDescription.ts

* Fix ts errors

* Fix Typescript errors after Symbol.unscopables type change

* Fix colormanipulator errors

* Update packages/grafana-data/src/vector/FunctionalVector.ts

* Fix ts errors in dashboardmigrator

* Fix sandbox component typescript error

* Update yarn

* Update to typescript 5.2

* Fix typescript error

* update typescript/vscode patch/sdk/whatever

* fix ts errors in elasticsearch

* Fix two errors in alerting

* Fix error in dashboard-scene

* Fix errors in dashboard tests

* Fix errors in explore tests

* Fix error in plugins sandbox

* fix error in DashboardQueryRunner

* fix errors in grafana-data

* fix errors in PanelChrome story

* update betterer

* better fix for cloud monitoring

* fix error in reducer tester

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
Co-authored-by: Josh Hunt <joshhunt@users.noreply.github.com>
Co-authored-by: joshhunt <josh@trtr.co>
2023-11-07 13:20:20 +00:00
Matias Chomicki
d7c50eb650 Logs: Deprecated showContextToggle in DataSourceWithLogsContextSupport (#77232)
* Logs: deprecate showContextToggle

* Logs: make row mandatory on showContextToggle prop

* DataSourceWithLogsContextSupport: make showContextToggle optional

* Loki: update test

* Update packages/grafana-data/src/types/logs.ts

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>

* Prettier

* showContextToggle: update deprecation

---------

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2023-10-31 13:37:44 +02:00
Matias Chomicki
e5f92c010d Elasticsearch: Add interval type selector to interval field (#76805)
* Elasticsearch: add interval type selector

* Interval type: add tooltip

* DateHistogramSettingsEditor: create unit test

* Elastic histogram settings: refactor showing calendar type

* Update test

* Prettier

* DateHistogramSettingsEditor: change tooltip according to interval type

* Calendar intervals: add comment

* Prettier
2023-10-30 16:30:25 +02:00
Matias Chomicki
4ea4156b08 Elasticsearch: decouple from timeSrv and templateSrv (#76894)
* Elasticsearch: remove timeSrv dependencies

* Elastisearch: decouple from templateSrv

* Prettier

* Elasticsearch: improve typescript in mocks file

* Prettier
2023-10-24 10:25:23 +02:00
Matias Chomicki
d4b6fc31ff Elasticsearch: move adhoc filters code to modifyQuery module and refactor (#76529)
* Elasticsearch: move addhoc filters to modifyQuery and refactor

* Elasticsearch: add support for number-value adhoc filters
2023-10-19 11:16:47 +03:00
Deepayan Mukherjee
c04e96b3ed Elasticsearch: Remove LegacyForms and gf-form from DataLink (#76397)
* remove LegacyForms and gf-form references from ElasticSearch DataLink page

Signed-off-by: Deepayan Mukherjee <deepayanmukherjee1312@gmail.com>

* fix breaking tests by adding label to inline switch

Signed-off-by: Deepayan Mukherjee <deepayanmukherjee1312@gmail.com>

---------

Signed-off-by: Deepayan Mukherjee <deepayanmukherjee1312@gmail.com>
2023-10-16 13:27:42 +03:00
NikolayTsvetkov
ce462e8cd7 Elasticsearch: Added support for calendar_interval in ES date histogram queries (#75459)
* Introduce support for calendar intervals in ES date histogram queries

* Add missing undef type check for ES calendar interval query support
2023-10-09 12:37:38 +02:00
Matias Chomicki
edbe45efc2 Elasticsearch: HTTP settings migration (#72840)
* Elasticsearch: migrate data source http settings

* Elasticsearch: migrate data source http settings

* Remove test code

* Update unit test

* Connection settings: add url placeholder

* Elasticsearch config editor: improve on-change handling of custom auth

* Config editor: add missing oauthPassThru option
2023-09-26 17:17:17 +02:00
Ashley Harrison
ff0642bf6e Chore: Type improvements 🧹 (#75271)
* fix some e2e flows types

* some type fixes

* must... fix... more...

* MOAR

* MOREMOREMORE

* 1 more
2023-09-22 15:06:49 +01:00
Matias Chomicki
c3cbe220bb Elasticsearch query editor: ensure unique ids on labelled fields (#74396) 2023-09-06 10:17:11 +02:00
Ivana Huckova
a80fd02f95 Elasticsearch: Unify default value for geo hash grid precision across the code to 3 (#73922)
* 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
2023-08-28 16:38:44 +02:00
Matias Chomicki
4c37ba494e Elasticsearch: Add missing tooltips to the configuration page (#73552)
* Add missing tooltips

* Update X-Pack tooltip

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>

---------

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2023-08-21 14:13:23 +02:00
Matias Chomicki
0d121bab29 Elasticsearch: Implement modify query using a Lucene parser (#71954)
* Lucene: add dependency

* ModifyQuery: use Lucene parser to detect key:values in queries

* ModifyQuery: use Lucene parser to remove filters

* Remove test code

* Modify query: switch to recursive implementation

* Modify query: implement remove filter

* Update query normalizing function

* FlagElasticToggleableFilters: remove feature flag

* Remove unused feature flag from test

* Elasticsearch: escape quotes in filter values
2023-07-28 14:49:02 +02:00
Ivan Ortega Alba
8415dd40d7 DSPicker: Use new DS picker everywhere in Grafana (#70609) 2023-07-26 18:40:51 +02:00
Matias Chomicki
84f94cdc24 Logs: Show active state of "filter for value" buttons in Logs Details (#70328)
* Datasource test: fix describe nesting

* Parsing: export handleQuotes function

* Modify query: add functions to detect the presence of a label and remove it

* Loki: add support to toggle filters if already present

* Datasource test: fix describe nesting

* Loki: add support to toggle filter out if present

* Remove label: handle escaped values

* Datasource: add test case for escaped label values

* Loki: remove = filter when applying !=

* Remove selector: add support for Selector node being far from Matcher

* Modify query: add unit tests

* Elasticsearch: create modifyQuery for elastic

* Elastic modify query: implement functions

* Elasticsearch: implement modifyQuery functions in datasource

* Elasticsearch: update datasource test

* Loki modify query: check for streamSelectorPositions length

* Elasticsearch query has filter: escape filter value in regex

* Remove unused type

* Modify query: add functions to detect the presence of a label and remove it

* Remove label: handle escaped values

* Logs: create props to check for label filters in the query

* Log Details Row: use label state props to show visual feedback

* Make isCallbacks async

* Explore: add placeholder for checking for filter in query

* Datasource: define new API method

* Inspect query: add base implementation

* Remove isFilterOutLabelActive as it will not be needed

* Check for "isActive" on every render

Otherwise the active state will be out of sync

* Elasticsearch: implement inspectQuery in the datasource

* Logs: update test

* Log details: update test

* Datasources: update tests

* Inspect query: rename to analize query to prevent confusion

* Datasource types: mark method as alpha

* Explore: add comment to log-specific functions

* Remove duplicated code from bad rebase

* Remove label filter: check node type

* getMatchersWithFilter: rename argument

* Fix bad rebase

* Create DataSourceWithQueryManipulationSupport interface

* Implement type guard for DataSourceWithQueryManipulationSupport

* DataSourceWithQueryManipulationSupport: move to logs module

* hasQueryManipulationSupport: change implementation

`modifyQuery` comes from the prototype.

* DataSourceWithQueryManipulationSupport: expand code comments

* AnalyzeQueryOptions: move to logs module

* DataSourceWithQueryManipulationSupport: add support for more return types

* Fix merge error

* Update packages/grafana-data/src/types/logs.ts

Co-authored-by: Sven Grossmann <sven.grossmann@grafana.com>

* DatasourceAPI: deprecate modifyQuery

* Explore: refactor isFilterLabelActive

* DataSourceWithQueryModificationSupport: rename interface

* Split interfaces into Analyze and Modify

* Query analysis: better name for interface

* Fix guard

* Create feature flag for active state

* Use new feature flag in Explore

* DataSourceToggleableQueryFiltersSupport: create a specific interface for this feature

* Rename feature flag

* De-deprecate modifyQuery

* DataSourceToggleableQueryFiltersSupport: Rethink types and methods

* Explore: adjust modifyQuery and isFilterLabelActive to new methods

* Loki: implement new interface and revert modifyQuery

* DataSourceToggleableQueryFiltersSupport: better name for arguments

* Elasticsearch: implement new interface and revert modifyQuery

* Loki: better name for arguments

* Explore: document current limitation on isFilterLabelActive

* Explore: place toggleable filters under feature flag

* Loki: add tests for the new methods

* Loki: add legacy modifyQuery tests

* Elasticsearch: add tests for the new methods

* Elasticsearch: add legacy modifyQuery tests

* Toggle filter action: improve type values

* Logs types: update interface description

* DataSourceWithToggleableQueryFiltersSupport: update interface name

* Update feature flag description

* Explore: add todo comment for isFilterLabelActive

---------

Co-authored-by: Sven Grossmann <sven.grossmann@grafana.com>
2023-07-24 11:22:47 +03:00
Selene
f75a3d04cf Chore: Remove pfs.GrafanaPlugin from schemas (#71884)
Remove pfs.GrafanaPlugin from schemas
2023-07-19 03:46:13 -04:00
Ashley Harrison
9852b24d61 Chore: Upgrade prettier to v3 (#71764)
* Update dependency prettier to v3 (#71586)

* Update dependency prettier to v3

* run prettier

* ignore prettier update in legacy select scss

* update command line arg

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>

* unplug prettier

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-07-17 15:58:22 +01:00
Ashley Harrison
5ca382c88a Revert "Update dependency prettier to v3 (#71586)" (#71755)
This reverts commit 2e8cd1c021.
2023-07-17 14:46:15 +01:00
renovate[bot]
2e8cd1c021 Update dependency prettier to v3 (#71586)
* Update dependency prettier to v3

* run prettier

* ignore prettier update in legacy select scss

* update command line arg

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2023-07-17 09:19:27 +01:00
Gábor Farkas
fdb8257007 Elasticsearch: Fix histogram colors in backend mode (#71442)
elastic: backend-mode: fix histogram colors
2023-07-12 13:59:51 +02:00
Matias Chomicki
92c94710cd Loki/Elasticsearch config: Add DataSourceDescription component (#71206)
* Loki config: add data source description component

* Elastic config: add data source description component
2023-07-07 14:22:52 +01:00