* refactor breakdown scene
* refactor BreakdownScene along with LayoutSwitcher
* rename
* don't pass default layout
* better type handling
* betterer
* add @bsull/augurs
* implement LabelBreakdownScene
* integrate SortByScene in LabelBreakdownScene
* move to new directory
* introduce BreakdownSearchScene
* integrate searchScene
* cleaning
* initialize @bsull/augurs
* add interaction
* use new breakdown scene
* resolve merge conflicts
* ugrade @bsull/augurs
* update import
* update css
* update tooltip text
* refine sorting
* fix unit test
* fix
* implement outlier detector
* support wasm
* jest testing fix
* localization fix
* use unknown instead of any
* update i18n
* update betterer
* fix locales
* update test
* fix tests maybe
* prettier
* chore: update jest config
* chore: create mock for @bsull/augurs (#92156)
chore: create mock for bsull/augurs
@bsull/augurs assumes it will be running as an ESM, not
a CommonJS module, so can't be loaded by Jest (specifically
because it contains a reference to import.meta.url).
This PR provides a mock implementation which gets tests passing
again.
Ideally we'd be able to load the actual @bsull/augurs module
in tests so this is just a stopgap really, until a better
solution appears.
* fix unit tests
* remove unused BreakdownScene.tsx
* set outliers as undefined if an error occurs
* Add labels
* betterer
* reset event implemented
* fix controls positioning
* update augurs
* betterer
* i18n
* conflict fixes
* update texts
---------
Co-authored-by: Matias Chomicki <matyax@gmail.com>
Co-authored-by: Ben Sully <ben.sully@grafana.com>
* refactor breakdown scene
* refactor BreakdownScene along with LayoutSwitcher
* rename
* don't pass default layout
* better type handling
* betterer
* add @bsull/augurs
* implement LabelBreakdownScene
* integrate SortByScene in LabelBreakdownScene
* move to new directory
* introduce BreakdownSearchScene
* integrate searchScene
* cleaning
* initialize @bsull/augurs
* add interaction
* use new breakdown scene
* resolve merge conflicts
* ugrade @bsull/augurs
* update import
* update css
* update tooltip text
* refine sorting
* fix unit test
* fix
* implement outlier detector
* support wasm
* jest testing fix
* localization fix
* use unknown instead of any
* update i18n
* update betterer
* fix locales
* update test
* fix tests maybe
* prettier
* chore: update jest config
* chore: create mock for @bsull/augurs (#92156)
chore: create mock for bsull/augurs
@bsull/augurs assumes it will be running as an ESM, not
a CommonJS module, so can't be loaded by Jest (specifically
because it contains a reference to import.meta.url).
This PR provides a mock implementation which gets tests passing
again.
Ideally we'd be able to load the actual @bsull/augurs module
in tests so this is just a stopgap really, until a better
solution appears.
* fix unit tests
* remove unused BreakdownScene.tsx
* set outliers as undefined if an error occurs
* Add labels
* betterer
* reset event implemented
* fix controls positioning
* remove sorting
* fix type guard
* more clean up
* remove wasm support from webpack
* betterer
---------
Co-authored-by: Matias Chomicki <matyax@gmail.com>
Co-authored-by: Ben Sully <ben.sully@grafana.com>
* add history handler
* move them into functions
* handle adding new history steps
* handle time history by respecting the timezone
* remove commented code
* no type casting
* add unit tests
* add colons and a new type metric_page
* remove console
* fix unit tests
* add groop as a local dependency
* update layout
* nested layout with panels
* fix the height of the rows
* copy groop library into grafana/grafana
* Don't create a new scene everytime metrics refreshed
* Add display option dropdown
* handle different layout options in buildLayout
* add select component props
* unify scene body creation
* handle other display cases in refreshMetricNames
* set a new body when display format is different
* handle nestedScene population
* show nested groups
* handle panel display
* add tabs view
* populate tabs view
* show selected tab group
* show display options before metric search
* populate prefix filter layout
* only switch layout for nested-rows display option
* Update public/app/features/trails/groop/parser.ts
Co-authored-by: Darren Janeczek <38694490+darrenjaneczek@users.noreply.github.com>
* Update public/app/features/trails/groop/parser.ts
Co-authored-by: Darren Janeczek <38694490+darrenjaneczek@users.noreply.github.com>
* Update public/app/features/trails/MetricSelect/MetricSelectScene.tsx
Co-authored-by: Darren Janeczek <38694490+darrenjaneczek@users.noreply.github.com>
* Update public/app/features/trails/MetricSelect/MetricSelectScene.tsx
Co-authored-by: Darren Janeczek <38694490+darrenjaneczek@users.noreply.github.com>
* Remove tab view
* generate groups async
* Remove unnecessary parts
* Refactor
* implement urlSync
* update keys
* introduce interaction
* ui updates
* chore: revert some auto formatting to clarify comments
* chore: revert some auto formatting to clarify comments
* rename
* add tooltip
* add styles
* update unit tests
* make i18n-extract
* update unit test
---------
Co-authored-by: Darren Janeczek <38694490+darrenjaneczek@users.noreply.github.com>
Co-authored-by: Darren Janeczek <darren.janeczek@grafana.com>
* define rule mapping type
* introduce a new mapping type
* add type comments
* add identifier check
* remove tests from wrong file
* add tests to the right file
* define function body
* unit tests and logic for getQueryLabelsForRuleName
* update logic of getRecordingRuleIdentifierIdx
* update logic and tests getRecordingRuleIdentifierIdx
* fix unit tests
* fix tests
* update how we return the options
* update message
* update type
* update expandRecordingRules unit tests
* remove identifier from end result
* fix unit tests once more
* remove fix action from expand rules warning
* remove generic type
* update warning text
* betterer
* Revert "Chore: Return influxdb query error early before parsing the result (#88549)"
This reverts commit a87c155c06.
* Handle error in buffered parser
* handle error message in streaming parser
* remove redundant test matchers
* use amendTable, trimTable functions from @grafana/data package
* move getMockDataSource function into the mocks.ts
* use LocalStorageValueProvider from @grafana/o11y-ds-frontend
* move all mocks under __mocks__ directory
* use store from @grafana/o11y-ds-frontend
* move test related files under test directory
* use getNextRefId from @grafana/data instead of deprecated getNextRefIdChar
See: https://github.com/grafana/grafana/pull/87460
* betterer
* remove unnecessary mockings
* import from @grafana/data
* import from @grafana/data
* return error early
* enable gzip between grafana and influxdb
* use json-iterator package for json operations
* revert gzip changes
* update test
* go mod tidy
go work sync
* Update @lezer/lr to v1.4.0
* Update @prometheus-io/lezer-promql to v0.37.0
* Update @prometheus-io/lezer-promql to v0.38.0
* Update @prometheus-io/lezer-promql to v0.39.0
* Update @prometheus-io/lezer-promql to v0.40.0
* add jest config
* update code
* fix code to pass "handles things" test
* fix retrieving labels
* fix code to pass "handles label values" test
* fix code to pass "simple binary comparison" test
* use BoolModifier
* add changed lines as comments
* fix for ambiguous query parsing tests
* resolve rebase conflict
* fix retrieving labels, aggregation with/out labels
* add error
* fix comment
* fix "reports error on parenthesis" unit test
* fix for "handles binary operation with vector matchers" test
* fix for "handles multiple binary scalar operations" test
* fix for "parses query without metric" test
* fix indentation and import style
* remove commented lines
* add todo items and comments
* remove dependency update from tempo datasource
* apply same changes in core prometheus frontend
* prettier
* add new test case
* use old version of lezer in the root package.json
* Revert "apply same changes in core prometheus frontend"
This reverts commit 83fd6ac7
* fix indentation
* use latest version of lezer-promql v0.51.2
* Update packages/grafana-prometheus/src/querybuilder/parsing.ts
Co-authored-by: Nick Richmond <5732000+NWRichmond@users.noreply.github.com>
* enable native histogram test
---------
Co-authored-by: Nick Richmond <5732000+NWRichmond@users.noreply.github.com>
* don't iterate over first column as it is a time column already
* don't iterate over first column as it was handled earlier
* add more flexibility to run the commands
* Update pkg/tsdb/influxdb/influxql/converter/converter.go
Co-authored-by: Nick Richmond <5732000+NWRichmond@users.noreply.github.com>
---------
Co-authored-by: Nick Richmond <5732000+NWRichmond@users.noreply.github.com>
* Move files to prometheus-library
* refactor core prometheus to use prometheus-library
* modify client transport options
* mock
* have a type
* import aliases
* rename
* call the right method
* remove unrelated test from the library
* update codeowners
* go work sync
* update go.work.sum
* make swagger-clean && make openapi3-gen
* add promlib to makefile
* remove clilogger
* Export the function
* update unit test
* add prometheus_test.go
* fix mock type
* use mapUtil from grafana-plugin-sdk-go
* fix expanding rules with one metric wrapped in a parenthesis
* fix expanding rules with regex match operator
* fix for multiple labels
* refactor
* don't modify recording rules name in label values
* metric + metric fix
* fix last issues with label regex and spaces
* add comments
* add the same changes to the prometheus library
* clean up intervalv2 functions
* use roundInterval from grafana-plugin-sdk-go
* use from grafana-plugin-sdk-go
* have intervalv2 in publicdashboards and remove tsdb/intervalv2
* legacydata cleanup
* remove unused variables
* Update pkg/tsdb/legacydata/interval/interval.go
Co-authored-by: Arati R. <33031346+suntala@users.noreply.github.com>
---------
Co-authored-by: Arati R. <33031346+suntala@users.noreply.github.com>
* Move to the library
* copy from library
* move them in src
* have additional files
* add unmigrated/dulicated code and files
* migrate from brendan's pr
module.ts, query_hints.ts, tracking.ts, and remove plugin.json
* migrate from brendan's pr
metric_find_query.test.ts
* migrate from brendan's pr
language_utils.test.ts
* migrate from brendan's pr
index.ts in root and in configuration
* migrate from brendan's pr
datasource.test.ts
* migrate from brendan's pr
typings folder
* migrate from brendan's pr
querycache folder
* migrate from brendan's pr
monaco-query-field folder
* migrate from brendan's pr
components folder without monaco-query-field folder
* migrate from brendan's pr
configuration/overhaul folder
* migrate from brendan's pr
AlertingSettingsOverhaul.tsx
* Remove azure related code
* migrate from brendan's pr
ConfigEditor.tsx, DataSourceHttpSettingsOverhaul.tsx, ExemplarSetting.tsx, configuration/mocks.ts, PromSettings.test.tsx, PromSettings.tsx
* migrate from brendan's pr
useFlag.ts
* migrate from brendan's pr
metrics-modal folder
* migrate from brendan's pr
files inside components folder
* migrate from brendan's pr
LabelFilters* files because they are now under components folder
* migrate from brendan's pr
files under querybuilder/shared folder
* migrate from brendan's pr
aggregations.ts, QueryPattern.tsx, QueryPatternsModal.tsx, state.ts, testUtils.ts under querybuilder folder
* Apply Ivana's PR https://github.com/grafana/grafana/pull/81656
* Apply jack's suggestions in this PR https://github.com/grafana/grafana/pull/77762
* Apply Ivana's PR https://github.com/grafana/grafana/pull/81656
* Fix type import
* add monaco-promql to transformIgnorePatterns to run prometheus frontend library tests
* remove Loki specific tests because we removed Loki code to decouple Loki
* add prometheus specific references
* We are moving these betterer issues from core Prometheus to the Library and we promise to remove all issues in the future, thank you
* include prometheus library in package.json
* add yarn lock with prometheus frontend library
* decouple final core import from metric_find_query.test.ts
* run prettier
* fix core imports in promqail
* fix lint errors
* run prettier
* add grafana-ui to devdeps to fix lint errors
* update yarn.lock
* grafana-ui fix
* trying to fix grafana-ui type errors with lerna drone check
* trying to fix grafana-ui type errors with lerna drone check
* trying to fix grafana-ui type errors with lerna drone check
* trying to fix grafana-ui type errors with lerna drone check
* try to pass typecheck
---------
Co-authored-by: Brendan O'Handley <brendan.ohandley@grafana.com>
* create the feature flag
* bring the concurrency in to the play
* Update feature flag
* Use concurrency number from settings
* update influxdb dependency
* use ConcurrentQueryCount from plugin-sdk-go
* use helper method for concurrent query count
* log the error
* add value guard
* add unit tests
* handle concurrency error