Commit Graph

504 Commits

Author SHA1 Message Date
Kristina
06dfe2156f Explore: Add transformations to correlation data links (#61799)
* bring in source from database

* bring in transformations from database

* add regex transformations to scopevar

* Consolidate types, add better example, cleanup

* Add var only if match

* Change ScopedVar to not require text, do not leak transformation-made variables between links

* Add mappings and start implementing logfmt

* Add mappings and start implementing logfmt

* Remove mappings, turn off global regex

* Add example yaml and omit transformations if empty

* Fix the yaml

* Add logfmt transformation

* Cleanup transformations and yaml

* add transformation field to FE types and use it, safeStringify logfmt values

* Add tests, only safe stringify if non-string, fix bug with safe stringify where it would return empty string with false value

* Add test for transformation field

* Do not add null transformations object

* Break out transformation logic, add tests to backend code

* Fix lint errors I understand 😅

* Fix the backend lint error

* Remove unnecessary code and mark new Transformations object as internal

* Add support for named capture groups

* Remove type assertion

* Remove variable name from transformation

* Add test for overriding regexes

* Add back variable name field, but change to mapValue

* fix go api test

* Change transformation types to enum, add better provisioning checks for bad type name and format

* Check for expression with regex transformations
2023-02-22 06:53:03 -06:00
Ashley Harrison
f8d89eff56 Chore: fix type errors in tests (#63270)
* fix any's in tests

* fix more any's in tests

* more test type fixes

* fixing any's in tests part 3

* more test type fixes

* fixing test any's p5

* some tidy up

* fix template_srv
2023-02-14 16:46:42 +01:00
Brendan O'Handley
879f980084 Revert "Prometheus Datasource: Improve Prom query variable editor" (#63278)
Revert "Prometheus Datasource: Improve Prom query variable editor (#58292)"

This reverts commit eedcd7d5b1.
2023-02-10 12:31:16 -05:00
Sven Grossmann
00edc1c6b1 Loki Context UI: Do not disable last label (#62866)
* improved text

* prevent all labels removed

* use `structuredClone` instead of lodash

* update test

* get `structuredClone` in test?

* fix using structuredClone
2023-02-10 14:23:17 +01:00
Brendan O'Handley
eedcd7d5b1 Prometheus Datasource: Improve Prom query variable editor (#58292)
* add prom query var editor with tests and migrations

* fix migration, now query not expr

* fix label_values migration

* remove comments

* fix label_values() variables order

* update UI and use more clear language

* fix tests

* use null coalescing operators

* allow users to query label values with label and metric if they have not set there flavor and version

* use enums instead of numbers for readability

* fix label&metrics switch

* update type in qv editor

* reuse datasource function to get all label names, getLabelNames(), prev named getTagKeys()

* use getLabelNames in the query var editor

* make label_values() variables label and metric more readable in the migration

* fix tooltip for label_values to remove API reference

* clean up tooltips and allow newlines in query_result function

* change function wording and exprType to query type/qryType for readability

* update prometheus query variable docs

* Update public/app/plugins/datasource/prometheus/components/VariableQueryEditor.tsx

Co-authored-by: Galen Kistler <109082771+gtk-grafana@users.noreply.github.com>

---------

Co-authored-by: Galen Kistler <109082771+gtk-grafana@users.noreply.github.com>
2023-02-09 15:35:36 -05:00
Matias Chomicki
94241f6676 Loki Query Splitting: Split queries into sub-queries with smaller time interval (#62767)
* Range splitting: range splitting function

* Range splitting: experiment with 1 hour splits

* Range splitting: reorganize code

* Range splitting: improve code readability and meaning

* Range splitting: add partition limit to prevent infinite loops

* Range splitting: add error handling

* Range splitting: disable for logs queries

* Range splitting: support any arbitrary time splitting + respect original from/to in the partition

* Chore: remove console logs

* Chore: delete unused import

* Range splitting: actually send requests in sequence

* Range splitting: do not split when > 1 query

* Range splitting: combine frames

* Chore: rename function

* split in reverse

* polished reversing

* keep reference to the right frame in the result

* Range splitting: change request state to Streaming

* Range splitting: fix moving only 1 unit of time instead of the provided one

* Chore: change default parameter to timeShift = 1

* Range splitting: do not split for range queqries

* Range splitting: add initial support for log queries

* Range splitting: do not use MutableDataFrame

It has bad performance and it's not required

* Chore: remove unused export

* Query Splitting: move to module

* loki: split: fix off-by-one error (#62966)

loki: split: fix off-by-one loop

* Range splitting: disable for logs volume queries

* Range splitting: combine any number of fields, not just hardcoded 2

* Range splitting: optimize frame-combining function

* Range splitting: further optimize

* Range splitting: combine frame length

* Range splitting: combine stats

* Range splitting: combine stats without assuming the same order

* Query splitting: catch and raise errors

* Range splitting: create feature flag

* Range splitting: implement feature flag

* Range splitting: add unit test for datasource query

* Range splitting: add basic test for runPartitionedQuery

* Range splitting: add unit test for resultLimitReached

* Range splitting: test frame merging

* Chore: fix unit test

---------

Co-authored-by: Sven Grossmann <svennergr@gmail.com>
Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
2023-02-09 12:27:02 -05:00
Ashley Harrison
2a34293689 Chore: more type fixes (#62952)
* fix some more any/type assertions

* more any/type assertion fixes

* implement review comments
2023-02-09 09:03:13 +00:00
Josh Hunt
09637caade Chore: Remove search_srv (#62964)
* Chore: Remove Search Service

* use getSortOptions from grafana searcher

* wip

* fix library panels search tests
2023-02-07 15:28:07 -05:00
Ryan McKinley
5343255de8 Chore: Timeseries cleanup avoid React.FC (#62984)
timeseries FC
2023-02-06 13:53:56 -08:00
Matias Chomicki
57369915f5 Loki Query Editor: Make Monaco the default editor (#62247)
* feat(loki-editor): remove slate and make Monaco the default editor

* feat(loki-editor): remove unsupported usages of onBlur

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

* Chore: remove unused import
2023-02-06 11:18:01 +01:00
Andreas Christou
d7f7cd1e61 Schema: Initial Azure Monitor query schema (#62018)
* Initial schema

- Add types based off of current frontend

* Rename and field-level comments

* Update report and regenerate files

* Rename frontend Azure folder

- Doing this for consistency and to ensure code-generation works
- Update betterer results due to file renames

* Remove default and add back enum vals that I deleted

* Set workspace prop as optional

* Replace template variable types

* Connect frontend query types

- Keep properties optional for now to avoid major changes
- Rename AzureMetricResource
- Correctly use ResultFormat

* Add TSVeneer decorator

* Update schema

* Update type

* Update CODEOWNERS

* Fix gen-cue issue

* Fix backend test

* Fix e2e test

* Update code coverage

* Remove references to old Azure Monitor path

* Review

* Regen files
2023-02-03 16:06:54 +00:00
Jev Forsberg
2e98f5063b Table: Add row number column option (#62256)
* baldm0mma/addRowNumbers/ add showRowNums to panel cue

* baldm0mma/addRowNumbers/ add panel option for sowing row numbers

* baldm0mma/addRowNumbers/ update typing for showRowNums

* baldm0mma/addRowNumbers/ add buildFieldsForOptionalRowNums

* baldm0mma/addRowNumbers/ update addOptionalNumbersRowToTable

* baldm0mma/addRowNumbers/ adjust display method to return numeric and text values

* baldm0mma/ chaneg prop name to match

* baldm0mma/addRowNumbers/ update boolean swicth path

* baldm0mma/addRowNumbers/ move function

* baldm0mma/addRowNumbers/ add getToggleHiddenProps

* baldm0mma/addRowNumbers/ remove addNumbersRowToTable second arg

* baldm0mma/addRowNumbers/ add updateInitialState

* baldm0mma/addRowNumbers/ update getInitialState reducer with initialShowRowNumbers arg

* baldm0mma/addRowNumbers/ add useEffect for RowNumberColumn toggling

* baldm0mma/addRowNums/ bootleg fix

* baldm0mma/addRowNumbers/ export OPTIONAL_ROW_NUMBER_COLUMN_WIDTH

* baldm0mma/addRowNumbers/ add annos for readability

* baldm0mma/addRowNumbers/ remove superfluous annos

* baldm0mma/addRowNumbers/ add a few logs

* baldm0mma/addRowNumbers/ update annos

* baldm0mma/addRowNumbers/ update which footer row displays reducer type

* baldm0mma/addRowNumbers/ abstract away defaultRowNumberColumnFieldData

* baldm0mma/addRowNumbers/ update annos in utils.tsx

* baldm0mma/addRowNumbers/ update annos for defaultRowNumberColumnFieldData

* baldm0mma/addRowNumbers/ mark unused args with underscore

* baldm0mma/addRowNumbers/ add annos to addRowNumbersFieldToData

* baldm0mma/addRowNumbers/ update utils file type

* baldm0mma/addRowNumbers/ remove console.logs

* baldm0mma/addRowNumbers/ update file type

* baldm0mma/addRowNumbers/ update annos in utils

* baldm0mma/addRowNumbers/ remove superfluous footerGroups object

* baldm0mma/addRowNumbers/ add annos for tests

* baldm0mma/addRowNumbers/ add annos for self

* baldm0mma/addRowNumbers/ add tests to table.test.tsx

* baldm0mma/addRowNumbers/ update tests in utils.test

* baldm0mma/addRowNumbers/ update annos and tests

* baldm0mma/addRowNumbers/ remove console.logs

* baldm0mma/addRowNumbers/ update utils file ext

* baldm0mma/addRowNumbers/ update anno in table.tsx

* baldm0mma/addRowNumbers/ update annos in table.tsx

* baldm0mma/addRowNumbers/ rem error annos

* baldm0mma/addRowNumbers/ revert footerCell

* baldm0mma/addRowNumbers/ revert tests

* baldm0mma/addRowNumbers/ skip tests

* baldm0mma/addRowNumbers/ revert table isCountRowSet

* baldm0mma/addRowNumbers/ remove cloneDeep

* baldm0mma/addRowNumbers/ update filterFields

* baldm0mma/addRowNumbers/ skip tests

* Refactor count rows

* baldm0mma/addRowNumbers/ rem test skips

* baldm0mma/addRowNumbers/ update with annos

* baldm0mma/addRowNumbers/ skip timeing out test

* baldm0mma/addRowNumbers/ static row numbering and test updates

* baldm0mma/addRowNumbers/ remove dupe

---------

Co-authored-by: Victor Marin <victor.marin@grafana.com>
2023-02-03 07:00:29 -07:00
Ashley Harrison
b6aedaa57d Chore: improve some types (#62363)
* improve some types

* more tidy up

* better error message handling + update tests

* undo store changes
2023-02-01 10:50:34 +00:00
Ryan McKinley
4186871390 Transforms: Fix schema definition (#62619) 2023-01-31 18:03:08 +00:00
Ashley Harrison
fd2641a542 Navigation: Sign in button now works correctly when served under a sub path (#62504)
make sure getUrlForPartial always includes the basePath + unit tests
2023-01-31 09:27:40 +00:00
Ryan McKinley
0d2a786816 Schema: Add schema for library panels (#62169) 2023-01-30 04:14:12 +00:00
Andre Pereira
afd39c18ba Explore: Refactor trace view and move to core (#61938)
* Move TraceView to core grafana

* Remove unused code

* yarn install

* Remove jaeger-ui-components from CODEOWNERS and other tools

* Type fixes

* yarn install

* Remove mock that we no longer need

* Fix merge conflicts

* Re-add Apache license for trace view components

* Use an exclamation-circle instead of triangle to denote errors

* Remove eslint disables and update betterer results instead
2023-01-27 14:13:17 +00: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
Josh Hunt
70f109526a Search: Store only search value in state, not the whole selectable value (#62228)
* Search: Store only search value in state, not the whole selectable value

* type sort to undefined-able
2023-01-27 10:50:48 +00:00
Jack Westbrook
5050822b9a Fix: NPM Package publishing (#62243)
* move packed packages to npm-artifacts dir

* remove unnecessary any to trigger canary build

* update canary script to create dir only if it does not exist

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2023-01-26 16:18:05 +00:00
Andrej Ocenas
a414b07991 Tempo: Trace to logs custom query with interpolation (#61702) 2023-01-26 16:37:16 +01:00
Will Browne
42732539ed TestData: Introduce schema types (#62130)
* schematize data query

* add the stuff you dingus

* feat(testdatasource): add scenario to generated types

* use generated testdata query in frontend

* update code owners

* Add path exception for testdata datasource

* use specific numeric data types

* fix test

* fix e2e smoketest

* add test data query type

* use test data query type

* fix betterer

* Fix typo

* move to experimental

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

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: sam boyer <sdboyer@grafana.com>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2023-01-26 15:31:34 +00:00
Konrad Lalik
e8dd01df35 Alerting: Alert rules search improvements (#61398)
Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2023-01-26 13:44:14 +01:00
Ashley Harrison
64352e8d08 Chore: Move to node 18 again (#62079)
move to node 18 again
2023-01-26 10:19:39 +00:00
Dominik Prokop
b9a1d8e5f9 Dashboard schema: Review and mature refresh property (#62104)
* Review and mature refresh property

* Update type

* Update report
2023-01-26 01:45:12 -08:00
Victor Marin
6a93c77082 Refactor state timeline/status history to cue model and refactor TimelineChart component (#61631)
* Adapt state timeline to scuemata

* Refactor status history to cue model

* Refactor

* Refactor TimelineChart as a core component

* wip

* Change as per CR

Co-authored-by: sam boyer <sdboyer@grafana.com>
2023-01-26 07:03:59 +00:00
Ashley Harrison
92a750a732 Chore: convert last test to RTL and remove Enzyme references (#61918)
convert last test to RTL and remove enzyme references
2023-01-24 09:20:47 +00:00
Alex Khomenko
3006a457f2 Geomap panel: Generate types (#61636) 2023-01-23 15:12:56 -08: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
Erik Sundell
78184f37c4 Cloudwatch: Restructure languages in plugin root (#61490)
Co-authored-by: Isabella Siu <isabella.siu@grafana.com>
2023-01-19 14:04:28 -05:00
Torkel Ödegaard
9b82e65b7a TablePanel: Refactor to functional component and move add ad hoc filter action to PanelContext (#61360)
* FieldOptions: Add filterable as registry added field item

* Refactor to functional component, move ad hoc filter to PanelStateWrapper

* review tweaks
2023-01-19 14:03:13 +01:00
Hamas Shafiq
7f4b2fcb9c Chore: Convert VirtualizedTraceView.test.tsx to RTL (#61589)
* Chore: Convert VirtualizedTraceView.test.tsx to RTL

* Don't need to change shared component

Co-authored-by: André Pereira <adrapereira@gmail.com>
2023-01-18 18:13:26 +00:00
Josh Hunt
959c89793f Chore: eslint rule for preventing e2e selectors in aria-label (#59731)
* Create eslint plugin/rule for catching e2e selectors in aria-label

* Add no-aria-label-e2e-selectors to betterer

* chore: skip levitate for the `grafana-eslint-rules` package

* Fix rule

* Add readme

* Add Apache 2 license

* Typecheck using @typescript-eslint/utils

* actually export the rule

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
2023-01-18 15:02:35 +00:00
Hamas Shafiq
58a86133af Chore: Convert ListView/index.test.tsx to RTL (#61590)
* Chore: Convert ListView/index.test.tsx to RTL

* Update .better.results

Co-authored-by: André Pereira <adrapereira@gmail.com>
2023-01-18 14:10:31 +00:00
Torkel Ödegaard
8620909006 Table: Fixes broken link styles after recent cell options PR (#61582)
* Table: Fixes broken link styles after recent cell options PR

* Share migration and fix bar gauge as well

* Remove unused import

* Review fixes

* Fixed test

Co-authored-by: Kyle Cunningham <kyle@codeincarnate.com>
2023-01-17 17:08:23 +01:00
ismail simsek
6dcc94ecb2 Prometheus: Add default editor configuration (#61510)
* Add default editor option in Prometheus configuration

* Small readability improvement
2023-01-17 15:39:15 +01:00
ismail simsek
67c02f660a Influxdb: Remove backend migration feature toggle (#61308)
* Remove influxdbBackendMigration feature toggle

* Remove code blocks related to influxdbBackendMigration feature toggle

* Fix annotations

* Remove commented lines

* Fix unit tests
2023-01-17 15:11:26 +01:00
Hamas Shafiq
ac25913f53 Chore: Convert TimelineViewingLayer.test.tsx to RTL (#61056) 2023-01-17 12:35:36 +00:00
Andreas Christou
f135c6cbf1 Cloudmonitor: Refactor query builder (#61410)
* Reset filters when service is changed

* Update to reset any query props

* Reset query properties on metric change

* Update tests

* Refresh labels on panel time update

* Review

* Refactor VisualMetricsQueryEditor

- Move any Metrics functionality to VisualMetricsQueryEditor
- Update tests
- Expose timeSrv from datasource
- Update getLabels to make use of provided timeRange

* Review
2023-01-16 17:57:12 +00:00
Hamas Shafiq
1b6c0d9752 Chore: Convert ViewingLayer.test.tsx to RTL (#61358) 2023-01-16 10:25:47 +00:00
Erik Sundell
432cdbade4 Cloudwatch: Add support for template variables in new log group picker (#61243) 2023-01-13 14:03:08 -05:00
Sven Grossmann
5b2184c485 Logs: Unify detected fields and labels in Log Details (#60448)
* removed js-fields

* added buttons

* rename detectedField to field

* removed unused things from `logParser.ts`

* improve comment

* wip

* better way for statistics

* better hide-stats button

* update tests

* updated tests and var names

* made props optional again

* fix padding

* fix unused import

* removed test

* close elements

* renamed `LogRowMessageDetectedFields` to `LogRowMessageDisplayedFields`

* add active style to menu button

* changed comment in logParser

* updated ToolbarButton colors

* rename `Data Links` to `Links`

* fix stats button being wrongly highlighted
2023-01-11 19:20:11 +01:00
Erik Sundell
c72ab21096 Cloudwatch: Refactor log group fields request (#60909)
* cloudwatch/log-group-fields-refactor

* remove not used code

* remove empty line

* fix broken test

* add tests

* Update pkg/tsdb/cloudwatch/routes/log_group_fields_test.go

Co-authored-by: Isabella Siu <Isabella.siu@grafana.com>

* pr feedback

Co-authored-by: Isabella Siu <Isabella.siu@grafana.com>
2023-01-11 08:12:58 +01:00
Hamas Shafiq
bc3ce5760b Chore: Convert TimelineColumnResizer.test.tsx to RTL (#61156) 2023-01-10 21:24:51 +00:00
Dominik Prokop
5dbbaab3f1 Scenes: Use @grafana/scenes (#60972)
* Use @grafana/scenes WIP

* Use @grafana/scenes package

* Use released @grafana/scenes

* Fix template_srv test
2023-01-10 03:30:53 -08:00
Erik Sundell
c3378aff8b Cloudwatch: Use new log group picker also for non cross-account queries (#60913)
* use new log group picker also for non cross-account queries

* cleanup and add comment

* remove not used code

* remove not used test

* add error message when trying to set log groups before saving

* fix bugs from pr feedback

* add more tests

* fix broken test
2023-01-09 16:30:21 +01:00
Ryan McKinley
0f3b4e02a0 Dashboards: Support drag+drop to import dashboard (#61017) 2023-01-05 12:52:37 -06:00
Torkel Ödegaard
bd90a6e1be Transformations: Add context parameter to transformDataFrame and operators (#60694)
* Transformations: Add context parameter to transformDataFrame and operators

* Remove unused queries prop

* Fixed test

* Fixed test
2023-01-05 17:34:09 +01:00
Galen Kistler
0e265245eb Prometheus: New instant query results view in Explore (#60479)
Add new default instant query UI option for prometheus users in Explore.

Co-authored-by: Beto Muniz <contato@betomuniz.com>
Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2023-01-04 10:46:03 -06:00
Hamas Shafiq
0dffbcbca7 Chore: Refactor the root of the TraceTimelineViewer folder to TS (#59748) 2023-01-03 15:45:28 +00:00