Commit Graph

758 Commits

Author SHA1 Message Date
Gareth Dawson
42f8f5a9ea
Loki: Fix label filter expression treating int as string (#62496)
* fix: label filter expression treats int as string

* refactor: labelFilterRenderer

* test: add tests to labelFilterRenderer

* refactor: use backticks based on the operator not the value

* test: labelFilterRenderer uses the correct value type based on the operator

* test: use it.every rather than having multiple repetitive tests
2023-02-01 14:13:08 +00:00
Sven Grossmann
d7026900bd
LokiContext: Add feature tracking (#62344)
* add feature tracking to LokiContextUi

* only depend on `row.uid`

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

---------

Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
2023-01-30 11:30:39 +01:00
Sven Grossmann
da7065d3dc
LokiContext: Fix wrong queries being run when reopened (#62353)
* fix wrong query being run when reopened

* fix typo

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

* and test for `onClose`

* rename functions

---------

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2023-01-30 09:26:27 +01:00
Gareth Dawson
b2c8126e6e
Loki: Show query size approximation (#62109)
* feat: make api request to /loki/api/v1/index/stats

* fix: add /index/stats to callResource valid urls

* feat: make call to getQueryStats when the query changes

* feat: render user tooltip displaying the estimated value for processed data

* fix: add new props to component tests

* test: add tests for query size estimation

* fix: disable error message on request failure

* refactor: add suggestions from code review

* refactor: only pass required query string
2023-01-27 17:32:53 +00:00
Ivana Huckova
d0e95f8c95
Loki: Add X-Query-Tags header for logs sample and data sample (#62333) 2023-01-27 16:41:40 +01:00
Sven Grossmann
7c02d9bb8a
Logs: Add experimental support to display a datasource custom UI in LogContext (#62189)
* add loki contextfilter component

* add `getLogRowContextUi` support to DataSourceAPI

* add `runContextQuery` to LogRowContextProvider

* pass `getRowContextUi` to `LogRowContext`

* adapt LogRowContext to show datasource ui

* implement LogRowContextUi in Loki

* add `logsContextDatasourceUi` feature flag

* change state to `Alpha`

* disable the feature if `logsContextDatasourceUi` is not set

* don't fetch labels in the constructor

* adjust to right height

* remove unnecessary eslint disable

* add test for LokiContextUi

* move code down in datasource.ts

* rename `refresh` to `runContextQuery`

* update datasource tests

* don't update if `updateFilter` fn changes

* organized imports in datasource.test.ts

* don't trigger on intialization changes

* change tag to `experimental`

* move `getLogRowContextUi` to props
2023-01-27 15:12:01 +01:00
Ivana Huckova
ea1fcbb866
Explore: Add feature to open log sample in split view (#62097)
* Add tests

* Implement split open to see logs functionality

* Fix imports in test

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

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

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

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

* Update default scneario to throw error

* Exit early in getSupplementaryQuery

* Update public/app/features/explore/LogsSamplePanel.tsx

Co-authored-by: Matias Chomicki <matyax@gmail.com>
2023-01-26 16:06:10 +01:00
Stephanie Hingtgen
0a1f31814a
Plugins: add UI for more supported datasources with secure socks proxy feature toggle (#61962) 2023-01-25 08:39:17 -07:00
Ivana Huckova
a0921f2e88
Explore: Implement logs sample in Explore (#61864)
* Implement log samples

* Explore: Implement logs sample panel

* Log samples: Add documentation

* Update docs

* Add info for log sample

* Fix label

* Update

* Default to true

* Fix copy in test

* Update public/app/features/explore/LogsSamplePanel.tsx

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

* Use timeZone from grafana/schema

* Rename data props to queryResponse

* Unify name to logs sample

* Remove redundant optional parameters in LogsSamplePanel

* Make intervalMs parameter optional in dataFrameToLogsModel and remove undefined argument when not needed

* Fix incorrect position of copy log line button

* Update public/app/core/logsModel.ts

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

Co-authored-by: Sven Grossmann <sven.grossmann@grafana.com>
2023-01-24 19:10:27 +01:00
Ivana Huckova
c106c7700b
Explore: Create DataSourceWithSupplementaryQueriesSupport interface to support log volume and samples (#61298)
* Create DataSourceWithLogsSampleSupport check and move to 1 place

* Add new SupplementaryQueryType

* Add and change utility functions for loading, storing ancd checking supp queries

* Add logic to redux for processing of new type of supp query

* Implement queryLogsSample used to run samples queries

* Fix tests to include also Log samples

* Add tests

* Temporarily, default to false

* Change comment

* Fix lint error

* Refactor handling of supplementary queries in query.ts

* Fix looping over array

* Remove changes for any => unknowns as in utils.ts

* Fix logic

* Fix incorrect imports after function was moved to different file

* Migrate old log volume key

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

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

* Refactor to use DataSourceWithSupplementaryQueriesSupport

* Refactor, improve tests,  change internal API

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

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

* Add deprecation for DataSourceWithLogsVolumeSupport, but still support it

* Update comment with correct new issue

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
2023-01-20 14:20:49 +01:00
Matias Chomicki
89e77d072f
Loki Query Builder: Fix bug parsing range params (#61678)
feat(loki-query-builder): fix bug parsing range params
2023-01-18 15:54:18 +01:00
Sven Grossmann
6c566a391d
Loki: Use queries maxLines if configured, even if it is zero (#61652)
* user `query.maxLines` even if it is zero

* remove unnecessary comment
2023-01-18 10:14:42 +01:00
Gareth Dawson
54fd1b634f
Loki: Show configured log line limit (#61291)
* feat: show configured line limit

* test: correct failing test

* refactor: update variable names

* fix: ui renders the wrong value given a falsy value

* refactor: use nullish coalescing operator
2023-01-17 08:45:23 +00:00
Esteban Beltran
4454d5eb49
Build: Fix eslint in file (#61568) 2023-01-16 15:42:02 +00:00
Matias Chomicki
7e505ea49c
Loki Autocomplete: Suggest only possible labels for unwrap (#61411)
* feat(loki-autocomplete): filter valid labels for unwrap autocomplete suggestions

* refactor(unwrap): reuse new function in builder
2023-01-16 13:07:02 +01:00
Sven Grossmann
5fe23b4964
Loki: Track obfuscated query (#61325)
* obfuscate query

* also conver numbers and comments

* query obfuscation: simplify obfuscation and keep some identifiers

* Query obfuscation: replace placeholder string with node name

Co-authored-by: Matias Chomicki <matyax@gmail.com>
2023-01-13 16:16:47 +00:00
Gábor Farkas
ed88401a58
logs: json/logfmt-detection, simplify code (#61492)
* logs: json/logfmt: simplify code

* remove obsolete comment

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

Co-authored-by: Sven Grossmann <sven.grossmann@grafana.com>
2023-01-13 14:33:18 +00:00
Sven Grossmann
b816538e09
Loki: Fix misaligned derived fields settings (#61475)
* fix loki datasource settings

* remove unnecessary spacing

* remove unused import
2023-01-13 14:25:03 +01:00
Piotr Jamróz
e8ef0395b1
Glue: Hide run queries button in Correlations Page (#61039)
* Hide run queries button in Correlations Page when showing Loki and Prometheus editors

* Use more semantic selectors

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

* Use more semantic selectors

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

* Post-merge fix (remove duplicate)

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2023-01-12 21:14:55 +01:00
Ivana Huckova
8bda8b8272
Log volume: Fix functionality if query has multiple comments (#61306)
* Log volume: Fix functionality if query has comments

* Add additional test
2023-01-11 16:21:02 +00:00
Matias Chomicki
ef9a71f483
Loki Autocomplete: Improve handling of trailing spaces in queries (#61184)
* Loki Autocomplete: improve handling of trailing spaces in the query

* Monaco Field: rename resizing handler function

* Fix typo

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

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2023-01-10 14:38:22 +01:00
Gareth Dawson
114c8b64aa
Loki: Rename "explain" toggle to "explain query" (#61150)
* feat: rename explain toggle to explain query

* test: correct failing test for explain toggle

* docs: update documentation on explain query toggle

* fix: update capitalization
2023-01-10 12:35:12 +00:00
Sven Grossmann
5ad95a2952
Loki: Fix tracking of queries_with_changed_line_limit_count (#60091)
* change line limit tracking

* updated test
2023-01-09 09:54:57 +01:00
Gareth Dawson
93fe3faed5
Loki: Fix code editor not correctly responding to window resize (#61061)
* fix: code editor not correctly responding to window resize

* trigger build
2023-01-06 10:17:20 +00:00
Gareth Dawson
bd9cce2866
Loki: Add hints for query filters (#60293)
* add hint for label filter

* add hint for line filter

* add feature tracking for hints click

* fix failing tests

* add tests for new query builder hints

* update hint labels

* fix: hint continues to render after adding operation

* add missing title property to hints

* make use of isQueryWithParser and remove isQueryWithLogFmt

* refactor isQueryWithLabelFilter

* always render label operation, even if incomplete

* suggestion

* fix oversight in feature tracking name on hint click

* update query hint label

* improvements

* add missing test for ADD_NO_PIPELINE_ERROR
2023-01-05 13:56:31 +00:00
Stephanie Hingtgen
39b8d3a182
Plugins: add UI for secure socks proxy feature toggle (#60750) 2023-01-04 20:47:27 +05:30
Sven Grossmann
9f9bf4650d
Loki: Fix missing parameters on Query Builder operations (#60677)
* add missing mandatory params

* improve naming

* change let to const
2022-12-22 15:31:41 +01:00
Gareth Dawson
90185bea00
Loki: Change format of query builder hints (#60228)
* change format of query builder hints

* fix tests

* add hint property on query actions

* revert changes to prometheus hints

* respond to feedback

* fix failing tests

* trigger drone

Co-authored-by: Matias Chomicki <matyax@gmail.com>
2022-12-19 16:28:46 +00:00
Gareth Dawson
65f7b93e6b
Loki: Add format explanation to regex operations (#60518)
* change explain messages for regex operations

* update explain messages to use the more accurate RE2
2022-12-19 14:32:51 +00:00
Matias Chomicki
5dfa59884e
Loki Query Editor: Update history items with successive queries (#60327)
feat(loki-monaco-autocomplete): add support to update history with successive queries
2022-12-15 10:03:05 +01:00
Sven Grossmann
ae05c6180c
Loki/ES: Add further items to query tracking (#60347)
* add more tracking to queries from ES and Loki

* improve tracking elasticsearch

* update type assertion

* remove unused import
2022-12-15 09:59:50 +01:00
Matias Chomicki
4be99c56f6
Loki Query Editor: Autocompletion and suggestions improvements (unwrap, parser, extracted labels) (#59103)
* Chore: refactor test to improve internal categorization of scenarios

* feat(loki-monaco-unwrap): add unwrap situation support

* Chore: remove redundant path from aggregation situation

* feat(loki-monaco-unwrap): add unwrap suggestions

* feat(loki-monaco-autocomplete): rename IN_DURATION and add missing tests

* feat(loki-monaco-autocomplete): detect parser and line filter

* feat(loki-monaco-autocomplete): optionally suggest line filters and parsers

* feat(loki-monaco-autocomplete): improve suggestions and update completions tests

* feat(loki-monaco-autocomplete): allow for multiple line filters suggestions

* Chore: update situations test

* Chore: add test case for AFTER_UNWRAP completion

* feat(loki-monaco-autocomplete): use logs query instead of labels for data sample

* Chore: improve getParser function name and add tests

* Chore: update test mock data

* Update public/app/plugins/datasource/loki/components/monaco-query-field/monaco-completion-provider/situation.test.ts

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

* feat(loki-monaco-autocomplete): improve after unwrap detection

* feat(loki-monaco-autocomplete): remove leftover parser detection

* Chore: completely remove parser suggestion exclusion implementation

It was correct to have more than one parser, so we don't need to exclude parsers if one is present.

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2022-12-14 11:37:08 -05:00
Matias Chomicki
2c1b65021d
feat(loki-query-autocomplete): suggest unique history items (#60262) 2022-12-14 07:43:06 -05:00
Matias Chomicki
58a41af3f3
Loki Query Editor: Add support to display query parsing errors to users (#59427)
* feat(loki-query-validation): validation proof of concept

* feat(loki-query-validation): refactor and properly display the error portion

* feat(loki-query-validation): add support for multi-line queries

* feat(loki-query-validation): improve display of linting errors to users

* feat(loki-query-validation): add unit tests

* Chore: remove unused import

* wip

* Revert "wip"

This reverts commit 44896f7fa2d33251033f8c37776f4d6f2f43787d.

* Revert "Revert "wip""

This reverts commit f7889f49a6b0bdc5a4b677e9bbb8c62ea3cccb74.

* feat(loki-query-validation): parse original and interpolated query for better validation feedback

* feat(loki-query-validation): refactor interpolated query validation support

* feat(loki-query-validation): improve validation for interpolated queries
2022-12-13 12:07:59 -05:00
Gareth Dawson
1b1f2475c2
Loki: Set custom width for modals in the loki query editor (#59714)
* set custom width for modals in the loki query editor

* convert unit from px to vw

* add media query for smaller devices

* use theme breakpoints instead of @media
2022-12-13 11:09:30 +00:00
Sven Grossmann
8356df081d
Loki/Prometheus: Fix wrong queries executed in split view (#60172)
* add context to monaco editors
2022-12-12 17:50:00 +01:00
Gareth Dawson
22736cc93b
Loki: Update feature tracking for label browser (#59295)
* update feature tracking names

* track when label browser is opened

* remove old feature tracking

* report interaction on modal close

* update

* fix type error

* revert changes to modal

* revert changes to modal

* remove close method from report interaction

* remove close type for grafana_loki_log_browser_closed

* nit pick

* add closeType to grafana_loki_label_browser_closed
2022-12-12 15:35:29 +00:00
Ivana Huckova
3c9ccd4512
Loki: Usage for queries not from dashboards (#60017)
Loki: Usage for queries not from dashboars
2022-12-08 13:04:05 +01:00
Ivana Huckova
601df109af
Loki: Remove annotation, context and volume tracking (#59962)
* Loki: Remove annotation and context tracking

* Implement log volume
2022-12-08 10:05:11 +01:00
Ivana Huckova
1aa94165d9
Loki: Do not track samples (#59960) 2022-12-07 16:24:22 +01:00
Sven Grossmann
d0eeff2fa0
Loki: Add tracking of executed queries (#59887)
* add query tracking

* add app

* add comment

* use `reportInteraction` not `console.log`

* add test to `queryUtils`

* organize imports

* add datasource tests

* change `metrics` to `metric`

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

* change `parseToArray` to `parseToNodeNamesArray`

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2022-12-06 15:54:20 -05:00
Ivana Huckova
fdc3adb2c9
Loki: Add tracking for on dashboard load (#59914)
Loki: Add on dashboard load tracking
2022-12-06 21:15:55 +01:00
Sven Grossmann
932349b5ab
Loki: Fix wrongly escaped label values when using LabelFilter (#59812)
* change backticks to quotes

* add unescaping to `addFilterAsLabelFilter`

* fix removal of wrong quotes

* change unescape order
2022-12-06 12:30:03 +01:00
Ida Štambuk
3544250baf
Accessibility: Make QueryEditorHelp examples keyboard interactive (#59355)
* Cloudwatch: A11y - Make example log keyboard interactive

* Change all cheat sheets to buttons

* Make suggestions block
2022-12-05 16:03:24 +01:00
Gareth Dawson
6b5ebf2b4b
Loki: Add improvements to loki label browser (#59387)
* improvements

* refactor label browser modal

* feat(label-browser-modal): fetch labels on modal open

* apply suggestions

* check for log labels after languageProvider start

Co-authored-by: Matias Chomicki <matyax@gmail.com>
2022-11-29 14:07:34 +00:00
Ivana Huckova
28c390bc90
Loki: Fix adhoc parsing if multiple stream selectors and some empty (#58658) 2022-11-25 14:00:48 +01:00
Matias Chomicki
ff87a2641f
Loki Variable Query Editor: Improve stream selector tooltip text (#59311)
* feat(loki-variable-query-editor): improve stream selector tooltip text

* Chore: improve sample stream selector

* Chore: update sample stream selector in tooltip

* Chore: add example of interpolated stream selector
2022-11-24 11:41:02 -05:00
renovate[bot]
e84a01e870
Update jest monorepo to v29 (#58261)
* Update jest monorepo to v29

* update snapshots + wrap test in act

* fix linting errors: jest.mocked now defaults to deep mocking

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-11-24 14:00:41 +00:00
Gareth Dawson
a098bdef58
Loki: Make label browser accessible in query builder (#58525)
* add label browser button to query editor header

* add dynamic button label text

* add LabelBrowserModal.tsx

* toggle label browser modal on click

* pass required props to LabelBrowserModal

* add placeholder to text input

* render label browser inside of the modal

* change button based on label status

* remove label browser button from code mode

* fix element overlap in label browser

* fix undefined app in feature tracking

* remove all any types

* add tests for label browser button

* update modal component width

* update label loading function

* add tests to LabelBrowserModal

* fix broken mock datasource

* update test names

* use stack component for button spacing

* revert modal width

* update label search placeholder

* remove unused import

* add test assertion for closed modal

* remove redundant if statement

* remove unnecessary code

* update error message and fix position

* fix input placeholder text
2022-11-23 16:48:41 +00:00
Gareth Dawson
94372f5f23
Loki: Remove raw query toggle (#59125)
* set default query expression

* always show raw query

* remove raw query title

* remove test for raw query toggle

* remove raw query toggle

* remove default expression

* hide raw query preview if empty

* remove e2e test for raw query toggle

* update test name
2022-11-23 16:07:59 +00:00
Ryan McKinley
d33939da55
DataSourceWithBackend: Add plugin id to the request headers (#58082) 2022-11-14 19:35:50 -05:00
Gareth Dawson
966b47c2ef
Loki: Rename log browser to label browser (#58416)
* rename loki log browser to label browser

* rename loki log browser to label browser
2022-11-09 09:57:05 +00:00
Matias Chomicki
25f79ef2b9
Loki: enable Monaco Query Editor by default (#58080)
* feat(loki-monaco-editor): update tests

* chore(loki): use unified datasource mock function in tests

* chore: enable monaco feature flag in tests

* feat(loki-monaco-editor): add test case for disabled feature

* feat(loki-monaco-editor): enable by default

* Revert "feat(loki-monaco-editor): enable by default"

This reverts commit 08904f94a707a4fa32aa1e7f3f0de377575a7636.

* feat(loki-monaco-editor): enable from registry

* feat(loki-monaco-editor): make feature flag frontend only
2022-11-08 10:22:40 -05:00
Gareth Dawson
2027f4702c
Loki: Add case insensitive line contains operation (#58177)
* add line-contains-case-insensitive operation definition

* add loki operation id for line-contains-case-insensitive

* make query case-insensitive when using line filter

* remove console log from operationUtils.ts

* add line-does-not-contain-case-insensitive operation definition

* add loki operation id for line-does-not-contain-case-insensitive

* make query case insensitive when using line-does-not-contain-case-insensitive

* update title and min-width for line-contains-case-insensitive

* add caseInsensitive optional parameter

* toggle case insensitive on operations

* remove console log

* update operation names

* add test coverage

* update to implement suggestions

* add suggestion
2022-11-07 17:01:06 +00:00
Matias Chomicki
17cce38545
Loki Monaco Editor: implement extracted label keys (#57368)
* feat(loki-monaco-editor): implement extracted label keys

* Chore: add missing responseUtils tests

* feat(loki-monaco-editor): suggest extracted labels

* Chore: fix test case name

* feat(loki-monaco-editor): dont suggest labels in logs query

* Chore: remove console log

* Chore: remove extracted keyword from suggested label

* feat(loki-monaco-editor): do not suggest duplicated labels

* refactor(loki-monaco-editor): pass query and offset to the completions resolver

* Revert "refactor(loki-monaco-editor): pass query and offset to the completions resolver"

This reverts commit d39464fd1a4624d5cd5420156dd2d1e2dad2eecf.

* refactor(loki-monaco-editor): refactor label completions for grouping

* Chore: remove obsolete function
2022-11-07 11:45:07 -05:00
Sven Grossmann
4b1ddba0a8
fixed explain handlers for label- and lineformat (#58135) 2022-11-03 14:57:29 +01:00
Matias Chomicki
c8689fd591
Loki Monaco Editor: grab operator documentation from the operations module (#57525)
* feat(loki-operations): add method to resolve operation docs

* feat(loki-operations): read operation and strip markdown links

* feat(loki-monaco-editor): read parser docs from operations

* feat(loki-monaco-editor): grab docs for more operations

* Chore: update completions test

* Chore: add tests for the operations module

* Chore: fix typo

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

* Chore: fix typo

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

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2022-10-26 15:44:44 +02:00
Virginia Cepeda
9eae793b5d
Alerting: Remove the alert manager selection from the data source configuration (#57369)
* Remove alertmanager dropdown from datasource config

* Avoid sending alertmanagers from loki/prom config editors

* Add test

* Remove unneeded param
2022-10-25 10:53:20 -03:00
Zoltán Bedi
c0b778134e
Revert: Query editor components from grafana-ui (#57436)
* Revert: QueryEditor components from grafana-ui

* Use local version of experimental

* Use experimental for query editor components

* Fix type issues in MSSQL

* point to actual version of experimental package

* point to latest version of experimental

Co-authored-by: Erik Sundell <erik.sundell87@gmail.com>
2022-10-24 17:12:36 +02:00
Ivana Huckova
3d7439d97d
Loki: Fix input history (#57344) 2022-10-24 16:27:56 +02:00
Ivana Huckova
ef78f03a6f
Loki: Fix the name of exported component from LokiQueryEditor.tsx (#57340)
* Loki: Fix editor

* Fix names
2022-10-20 14:49:55 +02:00
Ivana Huckova
3ee450e66b
Loki: Remove unused query editors (#57192)
* Loki: Remove not used query editors

* Move Loki editor to components and rename

* Update public/app/plugins/datasource/loki/components/LokiQueryEditorByApp.test.tsx

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

* Fix test

Co-authored-by: Matias Chomicki <matyax@gmail.com>
2022-10-20 11:46:48 +02:00
Ivana Huckova
7928f170ce
Loki: Fix adding of adhoc filters to stream selector when query with empty stream selector (#57280)
* disable double stringify

* Refactor test for addLabelToQuery

* Add tests (TDD for expected behaviour)

* Fix adding ad hoc filters to correct place when no stream selector

* Update

* Update comment

* Fix getAllPositionsInNodeByType

Co-authored-by: Sven Grossmann <svennergr@gmail.com>
2022-10-19 17:24:00 +02:00
Matias Chomicki
93f39b5178
Loki Monaco Editor: add missing documentation and new autocompletion type (#57186)
* feat(loki-monaco-editor): add documentation and pipe operators

- Added documentation for line filters
- Added documentation for parsers
- Improved parser suggestions
- Introduced new PIPE_OPERATION category
- Added missing label_format pipe operation

* feat(loki-monaco-editor): update tests

* Chore: remove unused completion type

* Chore: remove line format
2022-10-19 10:30:44 -04:00
Ivana Huckova
b4a03d0cff
Loki: Fix explain section about $__interval variable (#57188)
* Loki: Update  explain section

* Update

* Update public/app/plugins/datasource/loki/querybuilder/operationUtils.ts

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

Co-authored-by: Matias Chomicki <matyax@gmail.com>
2022-10-19 12:01:29 +02:00
Ivana Huckova
b997bc4200
Loki: Remove already selected options from next label filter options in builder (#57187)
* Loki: Filter out duplicated options in loki query builder label name options

* Update test
2022-10-19 11:32:01 +02:00
Matias Chomicki
d2abcbe4a5
feat(loki-monaco-editor): improve line filter suggestions (#57103) 2022-10-18 12:40:12 +02:00
Matias Chomicki
08ffcfdf16
feat(loki-monaco-editor): escape autocompleted label values (#56890) 2022-10-14 08:29:03 +00:00
Matias Chomicki
6a74cd207a
feat(loki-monaco-editor): add support for in_aggregation situation (#56680) 2022-10-11 15:52:57 +00:00
Gareth Dawson
fa09aef4ba
Loki: Add tests for NestedQuery.tsx (#56538)
* WIP: Testing the NestedQuery component

* Add tests for NestedQuery.jsx

* Add aria-labels to select elements

* Update aria-labels

* Create datasource using createLokiDatasource()
2022-10-11 09:22:32 +01:00
Matias Chomicki
1b7e31cd27
Loki Monaco Editor: add component tests (#56658)
* feat(loki-monaco-editor): add component tests

* feat(loki-monaco-editor): rename test case

* Chore: add missing export
2022-10-11 04:15:48 -04:00
Sven Grossmann
62674604b4
Loki: Escape label-values in context queries (#56614) 2022-10-10 14:31:19 +02:00
Ivana Huckova
a4c5801440
Loki: Fix redundant escaping in adhoc filter with regex match (#56447)
* Loki: Fix redundant escaping in adhoc filter with regex match

* Update data.js

* Simplify test

* Simplify test

* Update

* Add more tests
2022-10-07 16:21:59 +02:00
Matias Chomicki
729ce8bb72
Loki: query editor using Monaco (#55391)
* loki: switch to a monaco-based query field, step 1 (#46291)

* loki: use monaco-logql (#46318)

* loki: use monaco-logql

* updated monaco-logql

* fix all the tests (#46327)

* loki: recommend parser (#46362)

* loki: recommend parser

* additional improvements

* more improvements

* type and lint fixes

* more improvements

* trigger autocomplete on focus

* rename

* loki: more smart features (#46414)

* loki: more smart features

* loki: updated syntax-highlight version

* better explanation (#46443)

* better explanation

* improved help-text

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

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

* Fix label

* feat(loki-monaco-editor): add monaco-logql as a dependency

* feat(loki-monaco-editor): add back range function removed during merge

* feat(loki-monaco-editor): sync imports with recent changes

* feat(loki-monaco-editor): add missing lang provider functions

* feat(loki-monaco-editor): fix imports

* feat(loki-monaco-editor): display monaco editor by default

Temporarily

* Chore: remove commented code

* Chore: minor refactor to NeverCaseError

* Chore: minor code cleanups

* feat(loki-monaco-editor): add history implementation

Will see how it behaves and base the history slicing on tangible feedback

* feat(loki-monaco-editor): turn completion data provider into a class

* Chore: fix missing imports

* feat(loki-monaco-editor): refactor data provider methods

Move complexity scattered everywhere to the provider

* Chore: clean up redundant code

* Chore: minor comments cleanup

* Chore: simplify override services

* Chore: rename callback

* feat(loki-monaco-editor): use query hints implementation to parse expression

* feat(loki-monaco-editor): improve function name

* Chore: remove superfluous variable in favor of destructuring

* Chore: remove unused imports

* Chore: make method async

* feat(loki-monaco-editor): fix deprecations and errors in situation

* feat(loki-monaco-editor): comment failing test case

* Chore: remove comment from test

* Chore: remove duplicated completion item

* Chore: fix linting issues

* Chore: update language provider test

* Chore: update datasource test

* feat(loki-monaco-editor): create feature flag

* feat(loki-monaco-editor): place the editor under a feature flag

* Chore: add completion unit test

* Chore: add completion data provider test

* Chore: remove unwanted export

* Chore: remove unused export

* Chore(loki-query-field): destructure all props

* chore(loki-completions): remove odd string

* fix(loki-completions): remove rate_interval

Not supported

* fix(loki-completions): remove line filters for after pipe case

We shouldn't offer line filters if we are after first pipe.

* refactor(loki-datasource): update default parameter

* fix(loki-syntax): remove outdated documentation

* Update capitalization in pkg/services/featuremgmt/registry.go

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

* refactor(situation): use node types instead of names

* Chore: comment line filters pending implementation

It's breaking the build due to a linting error.

* Chore: update feature flag test after capitalization change

* Revert "fix(loki-completions): remove line filters for after pipe case"

This reverts commit 3d003ca4bc.

* Revert "Chore: comment line filters pending implementation"

This reverts commit 84bfe76a6a.

Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
Co-authored-by: Ivana Huckova <ivana.huckova@gmail.com>
2022-10-06 10:35:30 -04:00
Sven Grossmann
0d8ea2bb34
LogContext: Fix scroll position in upper context group (#56370)
* fix log row being falsely added to context

* do not add to many lines

* fix scroll position in context

* more flexible id comparison

* add original refid to context query

* added missing row comparison

* updated comment

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

Co-authored-by: Matias Chomicki <matyax@gmail.com>
2022-10-05 16:26:22 +02:00
Ivana Huckova
4469572b27
Loki: Add support for range aggregations with by grouping (#56184)
* Loki: Fix unwrapped range operations with grouping

* Update, fix tests

* Fix modeller
2022-10-05 11:32:33 +02:00
George Rodrigues
8950d86141
fix: some typos (#56171) 2022-10-04 18:43:49 -05:00
Gareth Dawson
05e958f689
Loki: Add tests for LokiOptionFields.tsx (#56183)
* WIP: Added tests to LokiOptionFields.test.tsx

* chore(loki-option-fields): fix error with `userEvent`

Using `fireEvent` prevents the running condition.

* Add tests for LokiOptionFields.tsx

* chore: remove unwanted comments

* chore: update test names

Co-authored-by: Matias Chomicki <matyax@gmail.com>
2022-10-03 15:56:30 +01:00
Gábor Farkas
d2601003cf
Logs: move logs-functions from grafana-data to grafana-main (#55457)
* logs: move utils from grafana-data to grafana

* logs: adjust imports

* updated betterer checksum file
2022-09-30 12:16:47 +02:00
Ivana Huckova
b39d629142
Loki: Show invalid fields in label filter (#55751)
* Loki: Show invalid fields in Label filter

* Update

* Update comment

* Update comment
2022-09-29 13:32:01 +02:00
Ivana Huckova
21a99fba7e
Loki/Prometheus: Fix adding of ad hoc filters when jumping from dashboard to explore (#55915)
* Loki, Prometheus: Fix adding of ad hoc filters when jumping from dashbaord to explore

* Update
2022-09-29 11:17:41 +02:00
Ivana Huckova
5bd65db8a8
Loki: Add new range operation range_counter (#55936)
* Loki: Add new range operation range_counter

* Update yarn.lock
2022-09-28 18:36:36 +02:00
GitStart
ac875a1329
Loki: Remove any from public/app/plugins/datasource/loki/live_streams.test.ts (#55545)
Co-authored-by: gitstart <gitstart@gitstart.com>
Co-authored-by: gitstart <gitstart@users.noreply.github.com>
Co-authored-by: Matheus Benini Ferreira <88898100+MatheusBeniniF@users.noreply.github.com>
Co-authored-by: Nitesh Singh <nitesh.singh@gitstart.dev>
Co-authored-by: Thiago Nascimbeni <tnascimbeni@gmail.com>
Co-authored-by: Rafael Toledo <87545086+Toledodev@users.noreply.github.com>
Co-authored-by: Murilo Amaral <87545137+MuriloAmarals@users.noreply.github.com>
Co-authored-by: Rubens Rafael <70234898+RubensRafael@users.noreply.github.com>
Co-authored-by: Júlio Piubello da Silva Cabral <julio.piubello@gitstart.dev>

Co-authored-by: gitstart <gitstart@users.noreply.github.com>
Co-authored-by: gitstart <gitstart@gitstart.com>
Co-authored-by: Matheus Benini Ferreira <88898100+MatheusBeniniF@users.noreply.github.com>
Co-authored-by: Nitesh Singh <nitesh.singh@gitstart.dev>
Co-authored-by: Thiago Nascimbeni <tnascimbeni@gmail.com>
Co-authored-by: Rafael Toledo <87545086+Toledodev@users.noreply.github.com>
Co-authored-by: Murilo Amaral <87545137+MuriloAmarals@users.noreply.github.com>
Co-authored-by: Rubens Rafael <70234898+RubensRafael@users.noreply.github.com>
Co-authored-by: Júlio Piubello da Silva Cabral <julio.piubello@gitstart.dev>
2022-09-26 16:42:53 +02:00
Ivana Huckova
c0ecdf6783
Loki: Redesign and improve query patterns (#55097)
* WIP

* WIP

* Query patterns: Redesign and improve feature

* Remove duplicated pattern

* Remove empty line

* Refactor

* Add tests

* Update docs and e2e test

* Update public/app/plugins/datasource/loki/querybuilder/LokiQueryModeller.ts

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

* Update public/app/plugins/datasource/loki/querybuilder/LokiQueryModeller.ts

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

* Update public/app/plugins/datasource/loki/querybuilder/LokiQueryModeller.ts

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

* Use capitalize

* Refactor to use QueryPatternsCard component

* Update public/app/plugins/datasource/loki/querybuilder/LokiQueryModeller.ts

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

* Update feature tracking for v2

* QueryPatternsCard: Remove unnecessary key

* Update naming for card

* Mock reportInteraction in tests

Co-authored-by: Matias Chomicki <matyax@gmail.com>
2022-09-26 14:03:13 +02:00
Gábor Farkas
1ee6a1f7c2
Logs: move logs-components from grafana-ui to grafana-main (#55041)
* logs: added a copy of the grafana-ui logs-files

* fix: added the ansicolor package to the main grafana package

* logs-components: import things from grafana-ui

* import from local files

* logs-components: other fixes

* add betterer-exceptions

* apply updates from grafana-ui package
2022-09-19 10:51:46 +02:00
GitStart
46f0672215
Loki: Remove hardcoded values for parsed query parts (#54755)
Co-authored-by: Nitesh Singh <nitesh.singh@gitstart.dev>
Co-authored-by: gitstart <gitstart@users.noreply.github.com>
Co-authored-by: Rafael Toledo <87545086+Toledodev@users.noreply.github.com>
Co-authored-by: Murilo Amaral <87545137+MuriloAmarals@users.noreply.github.com>
Co-authored-by: gitstart <gitstart@gitstart.com>
Co-authored-by: Matheus Benini Ferreira <88898100+MatheusBeniniF@users.noreply.github.com>
Co-authored-by: Matheus Benini <matheus_benini@hotmail.com>
Co-authored-by: Rubens Rafael <70234898+RubensRafael@users.noreply.github.com>
Co-authored-by: Júlio Piubello da Silva Cabral <julio.piubello@gitstart.dev>

Co-authored-by: gitstart <gitstart@users.noreply.github.com>
Co-authored-by: Nitesh Singh <nitesh.singh@gitstart.dev>
Co-authored-by: Rafael Toledo <87545086+Toledodev@users.noreply.github.com>
Co-authored-by: Murilo Amaral <87545137+MuriloAmarals@users.noreply.github.com>
Co-authored-by: gitstart <gitstart@gitstart.com>
Co-authored-by: Matheus Benini Ferreira <88898100+MatheusBeniniF@users.noreply.github.com>
Co-authored-by: Matheus Benini <matheus_benini@hotmail.com>
Co-authored-by: Rubens Rafael <70234898+RubensRafael@users.noreply.github.com>
Co-authored-by: Júlio Piubello da Silva Cabral <julio.piubello@gitstart.dev>
2022-09-16 15:35:20 +02:00
Ivana Huckova
82a6872f0f
Loki, Prometheus: Remove beta tag from query builder (#55150) 2022-09-16 12:31:33 +02:00
GitStart
f26babf484
Loki: Rename public/app/plugins/datasource/loki/query_utils.ts file to follow convention (#55180) 2022-09-16 10:16:54 +02:00
GitStart
eb7fe07401
Loki: Rename public/app/plugins/datasource/loki/language_utils.ts file to follow convention (#55181) 2022-09-16 08:48:37 +02:00
Ivana Huckova
926a3396ab
Query patterns: Feature tracking (#55164)
* Query patterns: Feature tracking before redesign

* Update
2022-09-14 16:52:39 +02:00
GitStart
57bc472755
Loki: Rename public/app/plugins/datasource/loki/live_streams.ts file to follow convention (#55148)
Co-authored-by: gitstart <gitstart@users.noreply.github.com>
Co-authored-by: gitstart <gitstart@gitstart.com>
Co-authored-by: Nitesh Singh <nitesh.singh@gitstart.dev>
Co-authored-by: Rafael Toledo <87545086+Toledodev@users.noreply.github.com>
Co-authored-by: Murilo Amaral <87545137+MuriloAmarals@users.noreply.github.com>
Co-authored-by: Matheus Benini Ferreira <88898100+MatheusBeniniF@users.noreply.github.com>
Co-authored-by: MuriloAmarals <muralha2000@gmail.com>
Co-authored-by: Rubens Rafael <70234898+RubensRafael@users.noreply.github.com>
Co-authored-by: Júlio Piubello da Silva Cabral <julio.piubello@gitstart.dev>
2022-09-14 14:55:15 +02:00
Ivana Huckova
4503e0f417
Loki: Hide sample loki queries from inspector (#55158) 2022-09-14 14:25:25 +02:00
GitStart
dc1f7cc226
Loki: Rename public/app/plugins/datasource/loki/live_streams_result_transformer.ts file to follow convention (#54919)
Co-authored-by: Nitesh Singh <nitesh.singh@gitstart.dev>
Co-authored-by: gitstart <gitstart@users.noreply.github.com>
Co-authored-by: Murilo Amaral <87545137+MuriloAmarals@users.noreply.github.com>
Co-authored-by: Rafael Toledo <87545086+Toledodev@users.noreply.github.com>
Co-authored-by: Matheus Benini Ferreira <88898100+MatheusBeniniF@users.noreply.github.com>
Co-authored-by: Toledodev <rafael.toledo@engenharia.ufjf.br>
Co-authored-by: Rubens Rafael <70234898+RubensRafael@users.noreply.github.com>
Co-authored-by: Júlio Piubello da Silva Cabral <julio.piubello@gitstart.dev>

Co-authored-by: gitstart <gitstart@users.noreply.github.com>
Co-authored-by: Nitesh Singh <nitesh.singh@gitstart.dev>
Co-authored-by: Murilo Amaral <87545137+MuriloAmarals@users.noreply.github.com>
Co-authored-by: Rafael Toledo <87545086+Toledodev@users.noreply.github.com>
Co-authored-by: Matheus Benini Ferreira <88898100+MatheusBeniniF@users.noreply.github.com>
Co-authored-by: Toledodev <rafael.toledo@engenharia.ufjf.br>
Co-authored-by: Rubens Rafael <70234898+RubensRafael@users.noreply.github.com>
Co-authored-by: Júlio Piubello da Silva Cabral <julio.piubello@gitstart.dev>
2022-09-13 10:16:04 +02:00
Matias Chomicki
445e1b3eae
Loki: add missing interpolation to metric find query requests (#54979)
* feat(loki-variable-query-support): refactor datasource to support legacy and new variable query format

* Chore: fix comment

* Chore: use internal method to interpolate strings

* Chore: revert removed changes

* Chore: update test
2022-09-12 17:48:04 +02:00
Matias Chomicki
4bed59efb3
Loki Query Variables: Add support to select from existing labels (#54625)
* feat(loki-variable-editor): replace input with select with datasource labels

* feat(loki-variable-editor): update test

* feat(loki-variable-editor): allow the editor to receive an existing query instance and edit it

* feat(loki-variable-editor): allow custom values in the label select

* feat(loki-variable-editor): mark stream field as optional

* feat(loki-variable-editor): add placeholder to stream selector and extend tooltip info
2022-09-09 08:59:07 -04:00
Sven Grossmann
20b07fae6f
fix bug in loki's adhoc filters (#54920) 2022-09-09 12:04:51 +02:00
GitStart
e9243f8a38
Loki: Rename public/app/plugins/datasource/loki/language_provider.ts file to follow convention (#54819) 2022-09-08 14:32:32 +02:00
Matias Chomicki
c0b3cd3da0
refactor(loki-derived-fields): migrate test to testing library (#54729) 2022-09-07 08:54:28 +00:00
kay delaney
a70aba1384
Chore: Update slate and related packages (#54566)
* Chore: Update slate and related packages
2022-09-06 15:23:48 +01:00
GitStart
d5d7e920a0
Loki: Remove any from public/app/plugins/datasource/loki/components/LokiOptionFields.test.tsx (#54239) 2022-09-05 18:25:12 +02:00
Gareth Dawson
73eb1f047a
Loki/Prometheus: Make sections in log/metrics browser resizable (#54704)
* Make loki label browser resizable

* Make prometheus metric browser resizable

* Remove min-width from Label and Metrics browser

* Remove max-width from Prometheus Metrics Browser
2022-09-05 17:03:03 +01:00
Ashley Harrison
3e8d178fc1
convert LokiQueryEditor test to RTL (#54639) 2022-09-02 15:11:13 +01:00
Ashley Harrison
22e5ee3b52
update LokiExploreQueryEditor test to RTL (#54644) 2022-09-02 14:46:14 +01:00
Ashley Harrison
11689c0385
convert ConfigEditor test to RTL (#54636) 2022-09-02 12:48:37 +01:00
Matias Chomicki
6e6069a2ba
Loki: Create Variable Query Editor for Loki. (#54102)
* feat(loki-query-editor): create base editor component

* feat(loki-query-editor): update editor to use loki query type

* feat(loki-query-editor): add custom variable support to datasource

* feat(loki-query-editor): prevent errors when no label is present

* Add unit test for LokiMetricFindQuery

* Update datasource test

* Add component test

* Add variable query migration support

* feat(loki-query-editor): add migration support for older-format variables

* Fix enum capitalization for consistency

* Move attribute to the top of the class

* Remove unnecessary from()

* Update capitalization of new enum

* Fix enum capitalization in component

* feat(loki-query-editor): replace unnecessary class with class method
2022-08-30 18:18:51 +02:00
Ashley Harrison
db4a2d58a1
convert DerivedField test to RTL (#54334) 2022-08-30 10:28:06 +01:00
Giordano Ricci
b4334b26aa
Chore: add missing properties to mocks (#54290)
* Chore: add missing properties to mocks

* update snapshot
2022-08-26 12:17:04 +01:00
Giordano Ricci
c68d7f1e35
Correlations: Add CorrelationSettings Page (#53821)
* GrafanaUI: add option to close DeleteButton on confirm click

* add datasource readOnly info to frontend settings

* move isTruthy utility type guard

* add generic non-visualization table component

* Add correlations settings page

* add missing readOnly in mock

* Fix typo

* avoid reloading correlations after add/remove

* use DeepPartial from rhf

* validate source data source

* fix validation logic

* fix navmodel test

* add missing readonly property

* remove unused styles

* handle multiple clicks on elements

* better UX for loading states

* fix remove handler

* add glue icon
2022-08-26 11:27:28 +01:00
Matias Chomicki
cd617b6520
Loki: refactor mock instance creation and clean up datasource test (#54176)
* refactor(loki-test): move mock creation to mock module

* refactor(loki-test): allow to pass custom settings to the mock constructor

* refactor(loki-test): refactor mock factory in datasource test

* refactor(loki-test): revert change in undefined test case for dsMaxLines

* refactor(loki-test): move type assertion to mock definition

* refactor(loki-test): fix more type issues

* refactor(loki-explore-query-editor): refactor test to use createLokiDatasource() and fix type issues

* refactor(loki-test): replace makeMockLokiDatasource with metadataRequest factory

* fix: remove any

* fix(loki-test): fix remaining usages of any

* Fix: add missing exported type
2022-08-26 09:26:48 +02:00
Matias Chomicki
1642716978
Chore(loki): remove any from DerivedFields test (#53547) 2022-08-24 10:06:28 +02:00
Ashley Harrison
3cf95d7eee
Chore: fix some anys pt.2 (#53928)
* correctly type some more any's

* undo this change for now...
2022-08-22 16:51:33 +01:00
renovate[bot]
4c8ea0bb89
Update dependency @lezer/common to v1 (#50866)
* Update dependency @lezer/common to v1

* Bump lezer/lr as well

* Fix broken code

* Add new lezer-promql and update lezer-logql

* Change to prometheus lezer-promql, fix lezer-logql code

* Update tests for Loki

* fix typeErrors

* fix tests by adding new error node to expected objects

* refactor usages of node references to differentiate usage from node object

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
Co-authored-by: Ivana Huckova <ivana.huckova@gmail.com>
Co-authored-by: gtk-grafana <galen.kistler@grafana.com>
2022-08-22 08:45:29 -05:00
Ashley Harrison
f91f05f32c
Chore: convert DebugSection test to RTL (#53965)
* convert DebugSection test to RTL

* remove unused import
2022-08-22 13:19:46 +01:00
Ivana Huckova
fde5147d71
Loki, Prometheus: Fix passing of query with defaults to code mode (#53646) 2022-08-12 15:00:55 +02:00
Ivana Huckova
f34a03b2f1
Loki: Rename Labels to Label filter and update placeholders (#53446)
* Loki: Rename Labels to Label filter and update placeholders

* Update label

* Replace Label filter with Label filters based on suggestion
2022-08-12 07:38:34 -04:00
Matias Chomicki
8d69acb9f8
Chore(loki): remove any from LokiQueryField test (#53548) 2022-08-11 18:08:23 +02:00
Matias Chomicki
df8d1de94f
Chore(loki): remove any from config editor test (#53475) 2022-08-11 18:08:05 +02:00
Ivana Huckova
8813cbfb62
Loki: Update copy for missing label filter error message (#53449)
* Loki: Update copy for missing label filter

* Update
2022-08-11 17:57:10 +02:00
Matias Chomicki
27e2953951
Loki: Rewrite getHighlighterExpressionsFromQuery to use Loki parser (#53316)
* refactor(loki): use Loki parser in getHighlighterExpressionsFromQuery

* fix(highlighter): update regex to properly identify term quotes

* refactor(highlighter): determine quote type by string comparison

* Chore: remove empty line
2022-08-09 15:23:14 +02:00
Alex Ratner
fecf4c41ad
Dashboard: Spelling corrections in end-user visible dialogs (#53340) 2022-08-09 10:19:30 +02:00
matt abrams
d69457d5e5
revise to match docs (#53354) 2022-08-08 18:49:54 +02:00
Matias Chomicki
6f01930e9d
Chore: remove any from test (#53260) 2022-08-08 11:26:12 +02:00
Ivana Huckova
bf3fa4a445
Loki: Fix producing correct log volume query for query with comments (#53254)
* Loki: Remove comments from log volume query

* Update, add more tests

* Update based on suggestions

* Update

* Update tests to use it.each
2022-08-04 17:58:39 +02:00
Matias Chomicki
97ce40577b
Loki: Fix types in querybuilder state test (#53223)
* Chore: add missing refId property to LokiQuery type

* Chore: fix types in Loki querybuilder state test

* Chore: remove unnecessary added property to LokiQuery
2022-08-03 15:59:33 +02:00
Ivana Huckova
3877964470
Loki: Remove some of any assertions from tests (#53114)
* Loki: Remove some of any assertions from tests

* Remove unnecessary as assertions
2022-08-03 15:57:38 +02:00
Matias Chomicki
7cf2b68e0a
Loki: Remove hardcoded values for LokiOperationId (#53168) 2022-08-03 12:50:43 +02:00
ismail simsek
920ee16b54
Update LokiQueryCodeEditor test title (#53181)
* Update LokiQueryCodeEditor test title

* Update public/app/plugins/datasource/loki/querybuilder/components/LokiQueryCodeEditor.test.tsx
2022-08-03 09:59:02 +02:00
Ivana Huckova
5009c330ca
Loki: Add tests for explain section in builder and code editor (#53113)
* Loki: Add tests for new explain section

* Update any assertions
2022-08-02 17:20:22 +02:00
Ryan McKinley
a51d3dad4f
Loki: support template variables when running stream (live) mode (#52973) 2022-07-29 08:41:11 -07:00
Ivana Huckova
b8e4c2abeb
Loki: Move explain section to builder mode (#52879)
* Loki: Move explain to builder and code mode

* Update

* Update transition

* Fix tests

* Fix tests

* Prometheus: Move explain section to builder mode (#52935)

* Prometheus: Move explain section to builder mode

* Show explain switch before raw query switch

* Store explain switch value in localstorage

* Make explain available for code mode too

* Introduce useFlag hook for query editor switches

* Remove Explain mode

Co-authored-by: ismail simsek <ismailsimsek09@gmail.com>
2022-07-29 17:09:43 +02:00
Ivana Huckova
3f681114e5
Loki: Show label options for unwrap operation (#52810)
* Loki: Show options for unwrap operation

* Add comment for check
2022-07-27 10:45:30 +02:00
Gábor Farkas
52989c2144
loki: remove unused code (#52435) 2022-07-27 06:11:09 +00:00
renovate[bot]
c70641c593
Update dependency lru-cache to v7.13.1 (#52733)
* Update dependency lru-cache to v7.13.1

* update snapshot

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-07-26 11:21:57 +01:00
Ivana Huckova
77421907b7
Loki: Add support for IP label and line filter in query builder (#52658)
* Add support for IP line filter

* Add support for IP label filter

* Updates for Explain mode

* Update test

* Remove invalid options in LabelFilterIpMatches
2022-07-25 15:16:04 +02:00
Ivana Huckova
53b8e528fc
Loki: Add unwrap with conversion function to builder (#52639)
* Loki: Add unwrap with conversion operator to builder

* Update explain section

* Update test
2022-07-25 12:51:28 +02:00
Ivana Huckova
772b6396f5
Loki: Add hints for level-like labels (#52414)
* Loki: Add hint for level-like label

* Add test to addToQuery

* Add tests

* Update tests

* Update copy

* Get log position in metrics query and add test

* Update
2022-07-22 16:59:25 +02:00
Scott Lepper
de956fc3d8
Core code editor/builder components (#52421)
* migrate experimental to core grafana - update refs

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2022-07-20 12:50:08 -04:00
Sven Grossmann
6cab909132
Loki: Fix show context not working in some occasions (#52458)
* added missing `languageProvider.start` call

* moved `languageProvider.start`
2022-07-20 12:28:11 +02:00
Levente Balogh
d6d49d8ba3
DataSources: refactor datasource pages to be reusable (#51874)
* refactor: move utility functions out of the redux actions

* refactor: move password handlers to the feature root

* refactor: move API related functions to an api.ts

* refactor: move components under a /components folder

* refactor: move page containers under a /pages folder and extract components

* refactor: update mocks to be easier to reuse

* refactor: move tests into a state/tests/ subfolder

* refactor: expose 'initialState' for plugins

* refactor: move generic types to the root folder of the feature

* refactor: import path fixe

* refactor: update import paths for app routes

* chore: update betterer

* refactor: fix type errors due to changed mock functions

* chore: fix mocking context_srv in tests

* refactor: udpate imports to be more concise

* fix: update failing test because of mocks

* refactor: use the new `navId` prop where we can

* fix: use UID instead ID in datasource edit links

* fix:clean up Redux state when unmounting the edit page

* refactor: use `uid` instead of `id`

* refactor: always fetch the plugin details when editing a datasource

The deleted lines could provide performance benefits, although they also make the
implementation more prone to errors. (Mostly because we are storing the information
about the currently loaded plugin in a single field, and it was not validating if it
is for the latest one).

We are planning to introduce some kind of caching, but first we would like to clean up
the underlying state a bit (plugins & datasources.

* fix: add missing dispatch() wrapper for update datasource callback

* refactor: prefer using absolute import paths

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

* fix: ESLINT import order issue

* refactor: put test files next to their files

* refactor: use implicit return types for components

* fix: remove caching from datasource fetching

I have introduced a cache to only fetch data-sources once, however as we
are missing a good logic for updating the instances in the Redux store
when they change (create, update, delete), this approach is not keeping the UI in sync.
Due to this reason I have removed the caching for now, and will reintroduce it once we have a
more robust client-side state logic.

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2022-07-20 09:25:09 +02:00
Ivana Huckova
c087198b1b
Loki: Fix adding of multiple label filters when parser (#52335)
* Loki: Fix adding multiple filters

* Update logic in sorting
2022-07-19 18:08:55 +02:00
Ivana Huckova
8ff152f98f
ModifyQuery: Improve typing for modifyQuery and query hints (#52326)
* ModifyQuery: Improve typing

* Elasticsearch: Added `modifyQuery` method to add filters in Explore (#52313)

* fixed elasticsearch `QueryFixAction` type

Co-authored-by: Sven Grossmann <Svennergr@gmail.com>
2022-07-18 14:13:34 +02:00
Sven Grossmann
a2512dd1c7
Logs: Fixed incorrect highlighting on empty line filter (#52214)
* fixed hightlighting searchwords

* do not add empty searchWords
2022-07-15 14:26:15 +02:00
Ivana Huckova
1d077e84ce
Loki: Add hint for pipeline error to query builder (#52134)
* WIP

* Update

* Add tests

* Fix lint/betterer errors

* Update public/app/plugins/datasource/loki/addToQuery.ts

* Update copy
2022-07-14 10:48:27 +02:00
Ivana Huckova
2090534635
Loki: Support json parser with expressions in query builder (#51965)
* Loki: Support json parser with expressions in query builder

* Add explain docs for json parser
2022-07-12 15:42:01 +02:00
Ivana Huckova
0a2a370b77
Loki: Fix suggesting operations from different category (#52034) 2022-07-11 14:24:49 +02:00
Ivana Huckova
99fb29850e
Loki: Add missing operators in label filter expression (#51880) 2022-07-08 15:33:03 +02:00
Ivana Huckova
10cb84e401
Loki: Implement hints for query builder (#51795)
* Loki: Implement hints for query builder

* Update name of file

* Update imports

* Refactor

* Remove unused import

* Unify

* Revert "Unify"

This reverts commit 78da0e27e3.

* Unify

* Fix types

* Fix tests

* Fix type error

* Simplify

* Update test

* Add documentation

* Update comment

* Add tests for addParserToQuery

* Smaller updates
2022-07-07 15:49:31 +02:00
Ivana Huckova
66b4a9e6a1
Loki: Remove unused prop from query builder (#51504) 2022-06-30 16:02:27 +02:00
user10x
39bd3e2fe3
rename logs_model.ts->logsModel.ts; update references (#51468) 2022-06-29 21:04:30 +02:00
Ivana Huckova
60454192b7
Loki: Add e2e test for query builder (#51314)
* Loki: Add e2e test for query builder

* Update

* Update test

* Update test

* Update test

* Update test

* Add more checks in test

* Update betterer

* Update betterer
2022-06-29 11:04:27 +02:00
Ivana Huckova
d3dd3042d6
Loki: Fix support of ad-hoc filters for specific queries (#51232)
* Loki: Refactor ad-hoc filters to use parser

* Remove renaming of files for easier review

* Update

* Update

* Add previously buggy test

* Fix tests

* Fix typos

* Update, improve typing

* Move reused code up

* Update order

* Update betterer statss
2022-06-24 22:29:22 +02:00
Gábor Farkas
48a258f515
loki: no histogram for instant queries (#50711) 2022-06-20 11:31:36 +02:00
Ashley Harrison
803473f479
Chore: Enable useUnknownInCatchVariables for stricter type checking in catch blocks (#50591)
* wrap a bunch of errors

* wrap more things!

* fix up some unit tests

* wrap more errors

* tiny bit of tidy up
2022-06-15 08:59:29 +01:00
Ivana Huckova
0073f1b0b5
Update header (#50787) 2022-06-14 16:24:44 +02:00
Gábor Farkas
a97f022612
Loki: Handle invalid query type values (#50755)
* loki: more robust query-type handling

* better comment

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

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2022-06-14 11:48:49 +02:00
Ivana Huckova
088a1880d8
Loki, Prometheus: Show Query patterns in all editor modes (#50263) 2022-06-13 09:45:01 +02:00
Ivana Huckova
88279dda1c
Loki: Fix issues with using query patterns (#50414)
* WIP

* Loki: Fix running of query patterns

* Remove console.log

* Add test

* Update empty line filter test
2022-06-11 21:36:44 +02:00
Gábor Farkas
c412a3b052
logs: track the usage of certain features (#50325)
* logs: track the usage of certain features

* Add report interaction for logs interactions

* mock reportInteraction in test

* mock reportInteraction

Co-authored-by: Ivana Huckova <ivana.huckova@gmail.com>
2022-06-09 15:53:23 +02:00
Gábor Farkas
3b745b597f
loki: rename result_transformer* to live_streams_result_transformer* (#50376) 2022-06-08 13:28:48 +00:00
Gábor Farkas
130bd26edd
loki: better error message when escaping is involved (#50352) 2022-06-08 15:27:58 +02:00
Gábor Farkas
50145e1617
Loki: remove frontend mode code (#50185)
* feature-flag removed

* loki: remove frontend-mode
2022-06-08 08:14:34 +02:00
Ivana Huckova
be712a5f17
Loki: Add more query patterns (#50248)
* Loki: Add query patterns

* Update

* Update queries

* Update public/app/plugins/datasource/loki/querybuilder/LokiQueryModeller.ts

Co-authored-by: Jennifer Villa <jvilla2013@gmail.com>

* Update public/app/plugins/datasource/loki/querybuilder/LokiQueryModeller.ts

* Update descriptions

* Update

Co-authored-by: Jennifer Villa <jvilla2013@gmail.com>
2022-06-07 13:22:05 +02:00
Gábor Farkas
cb96f51c73
Loki: remove angular (#49471)
* loki: remove angular

Co-Authored-By: Joey Tawadrous <joey.tawadrous@grafana.com>

* better backward-compatibility

* slightly better typescript check

Co-authored-by: Joey Tawadrous <joey.tawadrous@grafana.com>
2022-06-07 12:41:16 +02:00
Ivana Huckova
9f6afb3475
Prometheus, Loki: Update run queries button (#50005)
* Prometheus, Loki: Updare run queries button

* Update docs

* Update docs
2022-06-07 09:57:56 +02:00
Andrej Ocenas
37aedd6906
Loki: Add user analytics for query editor mode (#49619)
* Add reportInteraction call

* Update public/app/plugins/datasource/loki/querybuilder/components/LokiQueryEditorSelector.tsx

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2022-06-06 10:38:45 +02:00
Gábor Farkas
f8eb3c8720
Revert "Loki: do not produce histogram for instant queries (#50019)" (#50182)
This reverts commit b0925ed4ee.
2022-06-06 08:57:36 +02:00
Gábor Farkas
6011c373ae
loki: handle ad hoc filters in backend mode (#50135)
* loki: handle ad hoc filters in backend mode

* devenv: better loki fake data

* added test
2022-06-03 10:53:03 +02:00
Andrej Ocenas
cc90f9bb69
Prometheus/Loki: Add raw query and syntax highlight in explain mode (#50070) 2022-06-02 13:50:58 +02:00
Andrej Ocenas
c63071f519
Prometheus/Loki: Show raw query by default in the builder(#50007) 2022-06-02 13:50:10 +02:00
Gábor Farkas
46d6573968
loki: add cookie-handling functionality (#49978) 2022-06-02 11:52:27 +02:00
svennergr
d7139e75fb
Loki: Fix uncaught errors if labelKey contains special characters (#49887)
* added regex check of labelKeys

- labelKeys should not contain any special characters
- added encoding of labelKeys in the URL
- don't offer autocomplete if label with special characters is detected

* removed additional regex check for labels
2022-06-02 11:30:47 +02:00
Gábor Farkas
b0925ed4ee
Loki: do not produce histogram for instant queries (#50019)
* loki: no histogram for instant queries

* added test
2022-06-02 09:13:57 +00:00
svennergr
b355adac6f
Loki: Run query when pressing Enter on line-filters (#49913)
* changed `onBlur` and `onKeyDown` handling

- `onCommitChange` is only called if `onBlur` or `onKeyDown` are not set

* added `runQueryOnEnter` flag to OperationParamDef

* only run query if `runQueryOnEnter` is configured

* changed `evt.type` check to `keydown`
2022-06-01 15:16:18 +02:00
Andrej Ocenas
72367cf1ad
Prometheus: Cleanup annotation editor (#49615)
* Remove unused code

* Remove test

* Remove Builder mode and simplify the code

* Fix step mapping

* Fix import

* change placeholder
2022-05-31 11:50:23 +02:00
Ivana Huckova
5f6b23e45a
AutoSizeInput: Move to @grafana/ui (#48811)
* AutoSizeInput: Move to @grafana/ui

* Update packages/grafana-ui/src/components/AutoSizeInput/AutoSizeInput.mdx

Co-authored-by: JitaC <70489351+achatterjee-grafana@users.noreply.github.com>

* Update packages/grafana-ui/src/components/AutoSizeInput/AutoSizeInput.mdx

Co-authored-by: JitaC <70489351+achatterjee-grafana@users.noreply.github.com>

* Update packages/grafana-ui/src/components/AutoSizeInput/AutoSizeInput.mdx

Co-authored-by: JitaC <70489351+achatterjee-grafana@users.noreply.github.com>

* Fix linter error

* Update packages/grafana-ui/src/components/AutoSizeInput/AutoSizeInput.mdx

Co-authored-by: JitaC <70489351+achatterjee-grafana@users.noreply.github.com>

* Update packages/grafana-ui/src/components/AutoSizeInput/AutoSizeInput.mdx

Co-authored-by: JitaC <70489351+achatterjee-grafana@users.noreply.github.com>

* Move AutoSizeInput to Input folder

* Use iconOptions in storybook

Co-authored-by: JitaC <70489351+achatterjee-grafana@users.noreply.github.com>
2022-05-30 10:46:33 +02:00
Ivana Huckova
745b101d41
Loki: Fix unwrap parsing (#49732) 2022-05-27 14:00:51 +02:00
Gábor Farkas
386181cf45
Loki code editor: do not run query on blur in explore mode (#49241)
* loki code editor: do not run query on blur in explore mode

* loki: code editor: better change tracking

* fixed comment

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

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2022-05-26 15:03:36 +02:00
Gábor Farkas
b54817033a
loki: better unpack handling (#49074) 2022-05-26 11:26:20 +02:00
Gábor Farkas
514d1bbbdd
loki: added two new functions (#49617) 2022-05-26 10:23:28 +02:00
Andrej Ocenas
4124294011
Prometheus: Migrate annotation editor to react (#48814)
* Modify the annotation support api

* Migrate annotation editor component

* Update public/app/features/annotations/standardAnnotationSupport.ts

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

* Move the escape hatches out of the public API

* Fix props transforms

* Break import cycle

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2022-05-24 17:43:58 +02:00
Andrej Ocenas
7cd034f33a
Loki: Cleanup some code for default editorMode (#49431) 2022-05-23 19:21:00 +02:00
Gábor Farkas
0caeaaafe3
loki: add back frontend-mode metadata queries (#49297) 2022-05-21 16:46:39 +02:00
Gábor Farkas
93e299305c
loki: backend-mode: apply default max-lines if not set in the UI (#48859) 2022-05-21 16:39:21 +02:00
Gábor Farkas
061055fac9
loki: dataframes: do not set field.config.DisplayName (#49317) 2022-05-20 17:27:49 +02:00
Gábor Farkas
0355772e36
loki: do not use backend-mode when keepCookies is used (#49222) 2022-05-19 14:26:54 +02:00
renovate[bot]
d4d2a747d0
Update dependency lru-cache to v7.10.1 (#49096)
* Update dependency lru-cache to v7.10.1

* update snapshot

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-05-18 10:00:46 +01:00
Gábor Farkas
683c1c0f40
logs: use explicit frame-type-check (#48940) 2022-05-16 13:38:05 +02:00
Gábor Farkas
f866165445
loki: backend: add error-prop if loki parse error happened (#48860) 2022-05-16 08:29:46 +02:00
Gábor Farkas
8b9419222a
loki: backend-mode: fix experimental stream-mode (#48936) 2022-05-16 08:28:41 +02:00
Gábor Farkas
44e7602ad2
loki: backend-mode: add "limit" dataframe meta attribute (#48894) 2022-05-12 06:56:09 +00:00
Gábor Farkas
270e38cfcf
loki: backend-mode: handle derived fields (#48873) 2022-05-11 09:29:04 +02:00
Gábor Farkas
c4edab884e
logs: simpler nanoscecond timestamp handling (#48773) 2022-05-06 10:55:12 +02:00
Gábor Farkas
da74dba7c8
Loki: backend: use streaming JSON parser, try2 (#48752)
* converter: remove __name__ customization because Loki does not do that

Loki does not handle __name__ in a special way.
for Prometheus, the caller can implement the formatting
by themselves

* converter: change labels-formatting

the labels.String() method does not handle strange values well

* loki: backend: use streaming-json parser

* more idiomatic code

Co-authored-by: Todd Treece <360020+toddtreece@users.noreply.github.com>

* simpler row-length check

* simpler code

* fixed converter/prom tests

Co-authored-by: Todd Treece <360020+toddtreece@users.noreply.github.com>
2022-05-05 13:09:01 +02:00
Gábor Farkas
3cade2f669
Revert "Loki: backend: use streaming JSON parser (#47656)" (#48747)
This reverts commit 46b40b6e82.
2022-05-05 12:02:53 +02:00
Gábor Farkas
60cabaea0a
loki: use metadataRequest in testDatasource (#48431) 2022-05-05 09:43:36 +02:00
Gábor Farkas
46b40b6e82
Loki: backend: use streaming JSON parser (#47656)
* converter: remove __name__ customization because Loki does not do that

Loki does not handle __name__ in a special way.
for Prometheus, the caller can implement the formatting
by themselves

* converter: change labels-formatting

the labels.String() method does not handle strange values well

* loki: backend: use streaming-json parser

* more idiomatic code

Co-authored-by: Todd Treece <360020+toddtreece@users.noreply.github.com>

* simpler row-length check

* simpler code

Co-authored-by: Todd Treece <360020+toddtreece@users.noreply.github.com>
2022-05-05 08:47:40 +02:00
Ashley Harrison
06d3c27bc1
Select: Portal menu by default (#48176)
* Remove menuShouldPortal from all <Select /> components

* fix unit tests

* leave menuShouldPortal as an escape hatch

* Fix import order
2022-05-04 15:12:59 +01:00
renovate[bot]
00dbea91ea
Update dependency lru-cache to v7.9.0 (#47480)
* Update dependency lru-cache to v7.9.0

* update snapshot

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-05-04 15:07:27 +01:00
Alexander Kubyshkin
f00ffb190c
Escape backslashes in regexps in Loki label browser (#45809, #47039). (#47412)
* Escape backslashes in regexps in Loki label browser (#45809, #47039).

* Escape values in Loki Query Builder.

* Escape more values in Loki Query Builder.
2022-05-04 12:49:04 +02:00
Ivana Huckova
769be876a5
Loki, Prometheus: Remember preferred editor (#48580)
* Loki: Remember default editor

* Loki: Add tests

* Prometheus: Set default editor type

* Fix and refactor tests

* Remove unused import
2022-05-03 14:50:13 +02:00