Commit Graph

47 Commits

Author SHA1 Message Date
Ivana Huckova
4fd1d92332 Loki: Remove relying on timeSrv.timeRange in LanguageProvider (#78450)
* Loki: Allow setting of timeRange when using languageProvider functions

* Loki: Use timerange where available for start

* Loki: Use timerange where available for fetchLabels

* Loki: Use timerange where available for fetchSeriesLabels

* Loki: Use timerange where available for fetchLabelValues

* Loki: Use timerange where available for getParserAndLabelKeys

* Loki: Update and add tests for fetchLabels

* Loki: Update and add tests for fetchSeriesLabels

* Loki: Update and add tests for fetchSeries

* Loki: Update and add tests for fetchLabelValues

* Loki: Update and add tests for fetchLabelValues

* Loki: Update and add tests for getParserAndLabelKeys

* Update public/app/plugins/datasource/loki/LanguageProvider.test.ts

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

* Update public/app/plugins/datasource/loki/LanguageProvider.test.ts

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

* Not needing to use languageProvider.getDefaultTime in Monaco

* Update comment

* Update getDefaultTimeRange to be ptivate

---------

Co-authored-by: Matias Chomicki <matyax@gmail.com>
2023-11-22 14:35:15 +01:00
Ashley Harrison
07cc7504ee Icon: Simplify and remove wrapping <div> (#76819)
* remove wrapping div

* update tests, just gotta figure out how to handle fontawesome :(

* add spinner.svg which matches the font-awesome spinner

* add mock for react-inlinesvg

* update mock and fix some tests

* fix FormField test

* fix CorrelationsPage tests

* increase timeout
2023-10-24 12:16:32 +01:00
Ivana Huckova
e587d4e879 Loki: Change run query button text based on number of queries (#76196)
Loki: Change run query button name based on number of queries
2023-10-09 17:14:34 +02:00
Ivana Huckova
28b4d7fa0c Loki: Remove unused methods (#75106)
* Loki: Remove unused imports in dataosurce.ts

* Extract range from props, fix lint

* Fix naming

* Remove unused types
2023-09-22 12:41:54 +02:00
Gareth Dawson
9def0d2305 Loki: Fix timerange for query stats request (#72193)
* call query stats with whole query

* call stats when query type changes

* fix stats request timerange

* feedback: extract functions from component

* feedback: remove "or string" types

* feedback: use ds timerange picker end

* partial: fix broken test

* changes

* update test comment

* rename variable

* add comment explain message prop

* make getStatsTimeRange a datasource method

* update tests for getStatsTimeRange

* make getStats a datasource method

* update failing tests

* update failing tests

* remove import

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

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

---------

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2023-09-20 16:47:21 +01:00
Ivana Huckova
21021502b5 Loki: Remove unused datasource prop from LokiQueryBuilderOptions (#69445)
Loki: Remove unused props from LokiQueryBuilderOptions
2023-06-02 13:26:20 +02:00
Ivana Huckova
06003c98c8 Loki: Add predefined operations functionality behind feature flag (#69379)
* Add feature toggle for lokiPredefinedOperations

* Add config editor for predefined operations

* Add predefined patterns to editor

* Update content in tooltip

* Update public/app/plugins/datasource/loki/configuration/QuerySettings.tsx

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

* Update public/app/plugins/datasource/loki/components/LokiQueryEditor.tsx

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

* Add experimental badge

---------

Co-authored-by: Sven Grossmann <sven.grossmann@grafana.com>
2023-06-02 12:52:36 +02:00
Gareth Dawson
13c5aadd5d Loki: Don't request stats with invalid query (#65287)
* fix: dont call endpoint if invalid query

* fix: use latest lezer-logql

* refactor: use null instead of undefined

* test: returns null when query is invalid

* update
2023-04-18 15:52:37 +01:00
Torkel Ödegaard
395890c357 Prometheus/Loki: Run query explicitly instead of onblur in panel edit (#64815)
* Prometheus: Run query explicitly instead of onblur in panel edit, and highlight Run qqueries when query changed

* Update loki to do the same

* Cleanup unused prop

* Remove test
2023-03-21 07:55:34 +01:00
Gareth Dawson
c16280a4e8 Loki: Improve the display of loki query stats (#63623)
* fix: refresh query stats on timerange change

* partial fix: request stats update on type in code mode

* complete fix: request stats update on type in code mode

* fix: update failing tests and props

* refactor: pass only essential query string to getQueryStats

* refactor: remove unused variables

* test: fix datasource.getTimeRange is not a function

* refactor: use lodash debounce instead of setTimeout

* refactor: add suggestions from code review

* test: shouldUpdateStats and makeStatsRequest

* refactor: use more appropriate variable names

* refactor: make setQueryStats required instead of optional

* refactor: move setQueryStats into LokiQueryEditor

* fix: add missing props to LokiQueryField

* revert changes

* refactor: use inversion of control to request stats

* refactor: remove unnecessary code
2023-03-16 18:50:42 +00: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
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
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
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
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
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
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
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
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
Josh Hunt
3c6e0e8ef8 Chore: ESlint import order (#44959)
* Add and configure eslint-plugin-import

* Fix the lint:ts npm command

* Autofix + prettier all the files

* Manually fix remaining files

* Move jquery code in jest-setup to external file to safely reorder imports

* Resolve issue caused by circular dependencies within Prometheus

* Update .betterer.results

* Fix missing // @ts-ignore

* ignore iconBundle.ts

* Fix missing // @ts-ignore
2022-04-22 14:33:13 +01:00
Ryan McKinley
546818819b Loki: use queryType rather than range|instant flags (#43727) 2022-01-07 10:00:11 -08:00
Olof Bourghardt
d26f3cdd03 Loki: add support for resolution (#36710)
* Add input to specify min step

* Add stepInterval to as input to component

* Add onBlur to Input component

* Loki: add functionality for min step

* Loki: change name on props to step to make it more clear

* Loki: add resolution as a query option

* Loki: Add min,max,exact as step options

* Loki: add functionality for different step modes

* Loki: fix bug where step function isn't working

* Loki: fix bug where exact step isn't working

* Loki: change width of step input field

* Loki: add tests for adjustInterval function

* Loki: add check for max step oprio to make sure it's not below the safe interval

* Loki: fix bug with some tests

* Loki: fix bug with tests

* Explore: add tooltip to loki step function

* Loki: remove resolution as a logs option

* Loki: update snapshots

* Fix failing tests

* Loki: add select component for choosing resolution

* Loki: add functionality for calculating correct interval with resolution applied

* Loki: remove functionality for step mode

* Loki: remove tests for step mode

* Loki: add tooltip to line limit and resolution

* Loki: add backend support for resolution

* Loki: fixed backend bug where resolution was undefined

* Loki: add check for resolution
2021-08-16 14:02:13 +02:00
Ivana Huckova
a0f94866b4 Update dashboard loki query editor (#37541) 2021-08-04 16:23:16 +02:00
Marcus Andersson
8ddf6de6e7 Alerting: app specific query editors for Loki and Prometheus (#34365)
* Adding simplified version of query editor based on app flag.

* cleaned up the absolute time range.

* changing placeholder text.

* updated snapshot.

* added some tests.

* adding loki query editor tests.

* updating snapshots.
2021-05-19 16:24:27 +02:00
Ivana Huckova
c32c682f81 Loki: Refactor query editor so query field can be used independently (#33276)
* Refactor Loki so LokiQueryField can be used independently

* Refactor PromQueryEditor
2021-04-23 10:08:23 +02:00
Ivana Huckova
a54e0ff79d Loki: Add query type and line limit to query editor in dashboard (#29356)
* WIP Add line limit and query type switch toLoki dashboard editor

* Refactor, reuse code for both - Explore and Dashboard

* Üpdate snapshot tests

* Refactor and unify

* Rename test file

* Update test
2020-12-01 20:43:35 +01:00
Ivana Huckova
bf5d52c5c7 Loki: Send current time range when fetching labels and values (#26622)
* Send current time range when fetching labels and values in Explore

* Pass range to Editors, in the same way as it was in Angular editors

* Remove unused imports

* Remove unused imports, props

* Update

* Update

* Update refresh condition

* Add comment
2020-07-30 18:04:20 +02:00
Torkel Ödegaard
fd44c01675 Chore: Fix typescript strict null fixes now at 298 (#26125)
* Chore: Fix typescript strict null errors

* Added new limit

* Fixed ts issue

* fixed tests

* trying to fix type inference

* Fixing more ts errors

* Revert tsconfig option

* Fix

* Fixed code

* More fixes

* fix tests

* Updated snapshot

* Chore: More ts strict null fixes

* More fixes in some really messed up azure config components

* More fixes, current count: 441

* 419

* More fixes

* Fixed invalid initial state in explore

* Fixing tests

* Fixed tests

* Explore fix

* More fixes

* Progress

* Sub 300

* Fixed incorrect type

* removed unused import
2020-07-08 11:05:20 +02:00
Sebastian Widmer
5789f80e14 Loki: Allow aliasing Loki queries in dashboard (#25706)
* Loki: Add Legend field to query editor

* Loki: Basic test for legend field

* Loki: Mention legend is only for metric queries

* Loki: Fix absolute timerange never updating
2020-07-01 22:19:36 +02:00
kay delaney
f48ba11d4c Datasource/Cloudwatch: Adds support for Cloudwatch Logs (#23566)
* Datasource/Cloudwatch: Adds support for Cloudwatch Logs

* Fix rebase leftover

* Use jsurl for AWS url serialization

* WIP: Temporary workaround for CLIQ metrics

* Only allow up to 20 log groups to be selected

* WIP additional changes

* More changes based on feedback

* More changes based on PR feedback

* Fix strict null errors
2020-04-25 22:48:20 +02:00
Andrej Ocenas
39f7cff7c7 Loki: Refactor editor and syntax hooks (#21687) 2020-01-24 15:07:45 +01:00
Dominik Prokop
9b7748ec13 Chore: Reorg packages (#20111)
Primarily- moving majority of the types and utils from @grafana/ui to @grafana/data

* Move types from grafana-ui to grafana-data

* Move valueFormats to grafana-data

* Move utils from grafana-ui to grafana-data

* Update imports in grafana-ui

* revert data's tsconfig change

* Update imports in grafana-runtime

* Fix import paths in grafana-ui

* Move rxjs to devDeps

* Core import updates batch 1

* Import updates batch 2

* Imports fix batch 3

* Imports fixes batch i don't know

* Fix imorts in grafana-toolkit

* Fix imports after master merge
2019-10-31 10:48:05 +01:00
David
781cff07af Explore: Remove datasource testing on selector (#19910)
* Explore: Remove datasource testing on selector

- datasource testing gets in the way of fast query iteration: switching
between datasources can take seconds
- it should not be explore's duty to test datasources in the first place
- removed the concept of datasourceError in Explore, should not be its
concern
- datasource erorrs will express themselves in query errors just fine
- connection errors are still bubbled up
- removed reconnection logic from explore, should not be its concern
- missing labels in loki are still "visible" via an empty label selector
- Loki and Prometheus treated connection errors differently than other
datasources, making sure to pass through the original error message

* Show datasource error in query field for prom/loki/influx

* Removed connection test case, fixed disabled state
2019-10-29 10:37:36 +00:00
David
942f702d80 Loki: remove live option for logs panel (#19533)
* Loki: remote live option for logs panel

* Remove live from logs panel docs
2019-10-01 16:31:45 +02:00
Torkel Ödegaard
bbf2bd18fd QueryEditor: Clean-up interface to only have one PanelData (#19249)
* QueryEditor: Clean-up interface to only have one PanelData

* Renamed to prop name to data
2019-09-23 11:13:33 +02:00
Ryan McKinley
991f77cee1 Loki: support loki with streaming in dashboards (#18709)
Move some of the buffering with live streaming inside of the datasource, sending full frames instead of deltas and allow Loki in dashboards.
2019-09-05 14:04:01 +02:00
Ryan McKinley
c194ae1ba5 Registry: add a reusable function registry (#17047) 2019-07-16 11:40:23 -07:00
Ryan McKinley
3f15170914 Refactor: move some files to @grafana/data (#17952)
* moving to data WIP

* more refactoring

* add missing test

* mock full path

* remove sinon from grafana-ui
2019-07-06 08:05:53 +02:00
Dominik Prokop
0a66d8afc7 Merge branch 'master' into cli/watch-sass-var 2019-02-12 17:20:14 +01:00
Torkel Ödegaard
e75e69a709 Commented out the Loki dashboard query editor 2019-02-11 10:27:04 +01:00
Hugo Häggmark
2c255fd85a Renamed initialQueries to queries 2019-02-05 06:19:40 +01:00
Hugo Häggmark
d9578bc485 Merge with master 2019-02-04 08:17:18 +01:00
Torkel Ödegaard
2a4b10a5c8 minor fix 2019-02-01 13:40:46 +01:00
Torkel Ödegaard
0de861a3a8 Minor progress on react query editor support, solving updating query persisted state 2019-01-29 09:39:23 +01:00
Torkel Ödegaard
02083d71c8 Loki query editor is starting to work, had to make changes to explore query field in order to update query from the outside without unmount between 2019-01-23 17:44:22 +01:00