* add query pattern prom types
* rebase main
* update docs
replace query patterns with kick start your query
* update docs, remove raw query from prom docs
Raw query toggle was removed from the code
* add binary query pattern to query patterns
* add aria labels for accessibility
* fix tests
* apply/create a query pattern behavior if anything exists in the query editor
* fix tests
* rebase main
* 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
* 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
* 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>
* 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
* Add createOptionPosition props to SelectBase
* Show create option in the beginning of the list
* Show only matched template variables
* Fix the test
* Remove redundant check
* 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
* Allow prometheus code editor API to use new prometheus API calls for supported data source clients.
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
* Track usages of completion items in TraceQL query editor
* Change back traceID reportInteraction() name to avoid breaking dashboards
* Filter out TAG_VALUE labels from feature tracking to avoid exposing sensitive data
* add max item text
* add tests
* add selected log groups counter label
* cleanup
* fix styling in selector fields
* remove unused imports
* move selected log groups to a new component
* add confirm dialog
* remove not used import
* set max logs groups to 6
* add margin bottom
* Set width of common columns between trace and span rows
* Better syntax highlighting for non string constants
* Apply variables to traceql query
* Fix test
* Add adoption metrics for Cloud Monitoring
- Add metrics to track each query type (MQL/Time Series Query, Builder/Time Series Filter, SLO, Annotation)
* Remove hidden fields and account for pre 9.4 queries
* Simplify object
* GoogleCloudMonitoring: Migrate queries to the new format
* Refactor Aligment and AligmentFunction components (#60235)
* Adapt CloudMonitoringDatasource and CloudMonitoringAnnotationSupport (#60177)
* Fix: avoid migration for new queries (#60375)
* Move preprocessor handling to the backend (#60383)
* Other fixes and new function (#60411)
* Adapt components to the new API (#60451)
* Split metrics query type in time series list and query (#60475)
* Clean up metricQuery references (#60478)
* More bug fixes (#60525)
* SQL Datasources: Use health check for config test
* Remove unnecessary test
* Fix test errors
* Revert mysql go driver update
* Use transform query error
* Use TransformQueryError from sql_engine
* add space between search field and result table
* add margin between checkbox and log group
* add space between result table and bottom buttons
* revert modal always open
* use secondary variant for cancel button
* fix spacing between selected log groups
* refactor header
* split left and right header actions
* cleanup
* fix broken tests
* move MetricsQueryEditor tests to QueryEditor tests
* fix mock imports
* remove no longer used onRunQuery func
* move run queries button
* apply defaults also when changing query type
* remove not used prop
* 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>
* Implement getDefaultQuery for cloudwatch logs and metrics
* Fix bug with query reference in queryMigrations and replace tests
* Move migrate functions to /migrations, remove onChange from LogsQueryField
* [EMPTY] Retry CI
* Fix naming
* CloudWatch: Add arns to log insights button
* start test
* convert to function component
* add tests
Co-authored-by: Erik Sundell <erik.sundell87@gmail.com>
* Remove TraceID tab when TraceQL is enabled. Use TraceQL editor to query for trace IDs by checking whether the content is an hex only string
* Highlight valid trace IDs in traceql editor
* Update trace and span links to use TraceQL tab when feature flag is enabled
* Remove traceqlEditor feature flag.
* Remove traceId query type from Tempo and replace it with traceQl
* 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
* Datasource settings: Add deprecation notice for database field
* SQL Datasources: Migrate from settings.database to settings.jsonData.database
* Check jsonData first
* Remove comment from docs
* 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
* 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>
* Elasticsearch: Fix removing of empty settings from query in backend implementation
* Update
* Update
* Update pkg/tsdb/elasticsearch/time_series_query.go
Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
* Send time range params when requesting labels
* Update public/app/plugins/datasource/prometheus/datasource.tsx
Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
* Send params when calling values too
Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
* Tempo: Add the ability to show/hide the Span column in the table when using TraceQL
* Add optional chaining
* Update tests
* Show subcols in a subtable
* Add more space for the subtable
* Remove unused import
* Better expander icon. Improved the subtable styling. Integrated with real data
* Fix expanding the wrong index when table already has an expanded row
* ⚠️ Hack ⚠️ - Fix table links
* Link to spans
* Tempo: [TraceQL] Don't wrap the autocomplete vals for the status tag in quotes
* TraceQL result table improvements and fixes
* Include span name in the subtable
* Loop through data only if it is not nullish
* Integrate traceql with sub-tables
* Added booleans as keywords. Make query editor multiline
* Make date format consistent between trace and span
* Reset expanded indexes when data or subdata change
* Dynamic attributes by trace
* Fix test. Cleanup and refactor
* Tiny refactor
Co-authored-by: Hamas Shafiq <hamas.shafiq@grafana.com>
Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com>
* Lattice: Point to private prerelease of aws-sdk-go (#515)
* point to private prerelease of aws-sdk-go
* fix build issue
* Lattice: Adding a feature toggle (#549)
* Adding a feature toggle for lattice
* Change name of feature toggle
* Lattice: List accounts (#543)
* Separate layers
* Introduce testify/mock library
Co-authored-by: Shirley Leu <4163034+fridgepoet@users.noreply.github.com>
* point to version that includes metric api changes (#574)
* add accounts component (#575)
* Test refactor: remove unneeded clientFactoryMock (#581)
* Lattice: Add monitoring badge (#576)
* add monitoring badge
* fix tests
* solve conflict
* Lattice: Add dynamic label for account display name (#579)
* Build: Automatically sync lattice-main with OSS
* Lattice: Point to private prerelease of aws-sdk-go (#515)
* point to private prerelease of aws-sdk-go
* fix build issue
* Lattice: Adding a feature toggle (#549)
* Adding a feature toggle for lattice
* Change name of feature toggle
* Lattice: List accounts (#543)
* Separate layers
* Introduce testify/mock library
Co-authored-by: Shirley Leu <4163034+fridgepoet@users.noreply.github.com>
* point to version that includes metric api changes (#574)
* add accounts component (#575)
* Test refactor: remove unneeded clientFactoryMock (#581)
* Lattice: Add monitoring badge (#576)
* add monitoring badge
* fix tests
* solve conflict
* add account label
Co-authored-by: Shirley Leu <4163034+fridgepoet@users.noreply.github.com>
Co-authored-by: Sarah Zinger <sarah.zinger@grafana.com>
* fix import
* solve merge related problem
* add account info (#608)
* add back namespaces handler
* Lattice: Parse account id and return it to frontend (#609)
* parse account id and return to frontend
* fix route test
* only show badge when feature toggle is enabled (#615)
* Lattice: Refactor resource response type and return account (#613)
* refactor resource response type
* remove not used file.
* go lint
* fix tests
* remove commented code
* Lattice: Use account as input when listing metric names and dimensions (#611)
* use account in resource requests
* add account to response
* revert accountInfo to accountId
* PR feedback
* unit test account in list metrics response
* remove not used asserts
* don't assert on response that is not relevant to the test
* removed dupe test
* pr feedback
* rename request package (#626)
* Lattice: Move account component and add tooltip (#630)
* move accounts component to the top of metric stat editor
* add tooltip
* CloudWatch: add account to GetMetricData queries (#627)
* Add AccountId to metric stat query
* Lattice: Account variable support (#625)
* add variable support in accounts component
* add account variable query type
* update variables
* interpolate variable before its sent to backend
* handle variable change in hooks
* remove not used import
* Update public/app/plugins/datasource/cloudwatch/components/Account.tsx
Co-authored-by: Sarah Zinger <sarah.zinger@grafana.com>
* Update public/app/plugins/datasource/cloudwatch/hooks.ts
Co-authored-by: Sarah Zinger <sarah.zinger@grafana.com>
* add one more unit test
Co-authored-by: Sarah Zinger <sarah.zinger@grafana.com>
* cleanup (#629)
* Set account Id according to crossAccountQuerying feature flag in backend (#632)
* CloudWatch: Change spelling of feature-toggle (#634)
* Lattice Logs (#631)
* Lattice Logs
* Fixes after CR
* Lattice: Bug: fix dimension keys request (#644)
* fix dimension keys
* fix lint
* more lint
* CloudWatch: Add tests for QueryData with AccountId (#637)
* Update from breaking change (#645)
* Update from breaking change
* Remove extra interface and methods
Co-authored-by: Shirley Leu <4163034+fridgepoet@users.noreply.github.com>
* CloudWatch: Add business logic layer for getting log groups (#642)
Co-authored-by: Sarah Zinger <sarah.zinger@grafana.com>
* Lattice: Fix - unset account id in region change handler (#646)
* move reset of account to region change handler
* fix broken test
* Lattice: Add account id to metric stat query deep link (#656)
add account id to metric stat link
* CloudWatch: Add new log groups handler for cross-account querying (#643)
* Lattice: Add feature tracking (#660)
* add tracking for account id prescense in metrics query
* also check feature toggle
* fix broken test
* CloudWatch: Add route for DescribeLogGroups for cross-account querying (#647)
Co-authored-by: Erik Sundell <erik.sundell87@gmail.com>
* Lattice: Handle account id default value (#662)
* make sure right type is returned
* set right default values
* Suggestions to lattice changes (#663)
* Change ListMetricsWithPageLimit response to slice of non-pointers
* Change GetAccountsForCurrentUserOrRole response to be not pointer
* Clean test Cleanup calls in test
* Remove CloudWatchAPI as part of mock
* Resolve conflicts
* Add Latest SDK (#672)
* add tooltip (#674)
* Docs: Add documentation for CloudWatch cross account querying (#676)
* wip docs
* change wordings
* add sections about metrics and logs
* change from monitoring to observability
* Update docs/sources/datasources/aws-cloudwatch/_index.md
Co-authored-by: Sarah Zinger <sarah.zinger@grafana.com>
* Update docs/sources/datasources/aws-cloudwatch/query-editor/index.md
Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>
* Update docs/sources/datasources/aws-cloudwatch/query-editor/index.md
Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>
* Update docs/sources/datasources/aws-cloudwatch/query-editor/index.md
Co-authored-by: Sarah Zinger <sarah.zinger@grafana.com>
* Update docs/sources/datasources/aws-cloudwatch/query-editor/index.md
Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>
* apply pr feedback
* fix file name
* more pr feedback
* pr feedback
Co-authored-by: Sarah Zinger <sarah.zinger@grafana.com>
Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>
* use latest version of the aws-sdk-go
* Fix tests' mock response type
* Remove change in Azure Monitor
Co-authored-by: Sarah Zinger <sarah.zinger@grafana.com>
Co-authored-by: Shirley Leu <4163034+fridgepoet@users.noreply.github.com>
Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>
* elastic: response parsing: convert TableModel to DataFrame
* elastic: response parsing: convert JSONDocumentData to DataFrame
* elastic: response parsing: convert TimeSeries to DataFrame
* elastic: unit tests: type fixes
* elastic: fixed unit test
* 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>
* 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
* Component that can cache and extract variable dependencies
* Component that can cache and extract variable dependencies
* Updates
* Refactoring
* Lots of refactoring and iterations of supporting both re-rendering and query re-execution
* Updated SceneCanvasText
* Updated name of file
* Updated
* Refactoring a bit
* Added back getName
* Added comment
* minor fix
* Minor fix
* Merge fixes
* Scene variable interpolation progress
* Merge fixes
* Added all format registeries
* Progress on multi value support
* Progress on multi value support
* Updates
* Progress on scoped vars
* Fixed circular dependency
* Updates
* Some review fixes
* Updated comment
* Added forceRender function
* Add back fail on console log
* Update public/app/features/scenes/variables/interpolation/sceneInterpolator.test.ts
* Moving functions from SceneObjectBase
* fixing tests
* Fixed e2e
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
* Component that can cache and extract variable dependencies
* Component that can cache and extract variable dependencies
* Updates
* Refactoring
* Lots of refactoring and iterations of supporting both re-rendering and query re-execution
* Updated SceneCanvasText
* Updated name of file
* Updated
* Refactoring a bit
* Added back getName
* Added comment
* minor fix
* Minor fix
* Merge fixes
* Merge fixes
* Some review fixes
* Updated comment
* Added forceRender function
* Add back fail on console log
* Remove URL-based alertmanagers from endpoint config
* WIP
* Add migration and alertmanagers from admin_configuration
* Empty comment removed
* set BasicAuth true when user is present in url
* Remove Alertmanagers from GET /admin_config payload
* Remove URL-based alertmanager configuration from UI
* Fix new uid generation in external alertmanagers migration
* Fix tests for URL-based external alertmanagers
* Fix API tests
* Add more tests, move migration code to separate file, and remove possible am duplicate urls
* Fix edge cases in migration
* Fix imports
* Remove useless fields and fix created_at/updated_at retrieval
Co-authored-by: George Robinson <george.robinson@grafana.com>
Co-authored-by: Konrad Lalik <konrad.lalik@grafana.com>