Commit Graph

142 Commits

Author SHA1 Message Date
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
Erik Sundell
7bca193ecd
CloudWatch: Refactoring - decouple logs and metrics in datasource file (#55079)
* break out query execution related logic

* betterer fixes

* remove unused

* cleanup

* remove unused variables

* remove not used file

* fix broken test

* pr feedback

* add comments
2022-09-19 08:50:41 +02:00
Erik Sundell
ab72d47850
Cloudwatch: Fix annotation query serialization issue (#54884)
* pass period as string and let backend handle conversion

* adding unit test

* adding unit test
2022-09-12 13:29:55 +02:00
Isabella Siu
4f2b66ac1d
CloudWatch: Log group variable should get all log groups (#54062) 2022-08-23 11:43:30 -04:00
Isabella Siu
146c90d59e
CloudWatch: fix log explorer context (#52118) 2022-07-19 13:59:30 -04:00
Isabella Siu
8dd8c50dc4
CloudWatch: Add default log groups to config page (#49286)
Co-authored-by: Shirley Leu <4163034+fridgepoet@users.noreply.github.com>
2022-07-07 13:03:02 -04:00
Isabella Siu
8ba8e1df83
CloudWatch: fix variable query migration with json template variables (#51207)
* CloudWatch: fix variable query migration with json template variables

* fix error messages

* changes for reviews

* fix lint

* fix betterer
2022-06-23 14:23:56 -04:00
Erik Sundell
fcbe0059c2
CloudWatch: Allow hidden queries to be executed in case an ID is provided (#50987)
* allow hidden queries in case an id is provided

* cleanup test

* name tests properly
2022-06-17 10:24:38 +02:00
Kevin Yu
dca0453c2e
CloudWatch: Add multi-value template variable support for log group names in logs query builder (#49737)
* Add multi-value template variable support for log group names

* add test for multi-value template variable for log group names

* add test
2022-06-01 10:23:31 -07:00
Isabella Siu
b80934617b
CloudWatch: Use scopedVars in expressions (#49178)
* CloudWatch: Use scopedVars in expressions

* fix spec test
2022-05-26 17:03:55 -04:00
Erik Sundell
3106af9eec
Cloudwatch: Set time zone offset in GMD request (#48772)
* set timezone offset in case feature is enabled

* add unit tests

* add unit tests

* remove unused import
2022-05-16 12:15:54 +02:00
Will Browne
4ecd57f49c
Plugins: Introduce HTTP 207 Multi Status response to api/ds/query (#48550)
* feature toggles

* return HTTP 207 from ds/query

* add ft check

* add API test

* add 207 check for qr

* change to OR

* revert check

* add explicit toggle check for cloudwatch

* remove unused import

* remove from defaults.ini

* add status codes to md and update swagger

* new fangled http api tests pattern

* update swagger

* Update docs/sources/http_api/data_source.md

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>

* add missing word and reformat

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
2022-05-03 18:02:20 +02:00
Erik Sundell
929d3134d1
Cloudwatch: Dynamic labels frontend migration (#48579)
* migrate metric queries

* restructure migrations

* self review

* cleanup tests

* ensure alias is not changed

* apply pr feedback
2022-05-03 13:52:17 +02:00
Isabella Siu
74c2c2ccf0
CloudWatch: add generic filter component to variable editor (#47907)
* CloudWatch: add generic filter component to variable editor

* remove multi-text-select object

* remove hidden

* andres comments

* migration between 8.5 and this

* add waitFors to tests

* more await tweaks

* actually fix tests

* use popoverContent tooltip

* fix template variable handling

* prettier fix

* fix prettier 2

* feat: make tooltip links in query variable editor clickable

* fix template stuff

Co-authored-by: Adam Simpson <adam@adamsimpson.net>
2022-04-29 16:42:59 -04:00
Erik Sundell
f58a2d879e
Cloudwatch: Use new annotation API (#48102)
* use new annotation api

* fix bad merge
2022-04-27 12:41:48 +02:00
Isabella Siu
801a2a240a
Cloudwatch: fix template variables in variable queries (#48140) 2022-04-25 10:33:49 -04: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
kay delaney
c48d8d1d48
Frontend: Add notification persistence behind feature flag (#47871) 2022-04-20 10:42:32 +01:00
Isabella Siu
05b1edb4a7
CloudWatch: re-add filter to handleMetricQueries (#47341) 2022-04-06 09:02:34 +02:00
Isabella Siu
b1c68b5a12
CloudWatch: filter alert queries (#47222) 2022-04-04 12:06:31 -04:00
Isabella Siu
f8d11fbef9
CloudWatch: use custom variable editor (#46943) 2022-04-04 10:39:31 -04:00
CommanderRoot
d29b8e8858
Chore: Replace deprecated String.prototype.substr() (#46763)
.substr() is deprecated so we replace it with .slice() which works similarily but isn't deprecated
Signed-off-by: Tobias Speicher <rootcommander@gmail.com>
2022-04-04 11:08:06 +02:00
Isabella Siu
590ea19c3f
Cloudwatch: use CheckHealth for testing datasource (#45974)
Co-authored-by: Shirley Leu <4163034+fridgepoet@users.noreply.github.com>
2022-03-02 08:48:51 -05:00
Erik Sundell
8e08128f83
CloudWatch: List all metrics properly in SQL autocomplete (#45898)
* make sure right value is passed for metric

* add unit test
2022-03-02 10:46:17 +01:00
Erik Sundell
1df040eb23
CloudWatch: Remove error message when using multi-valued template vars in region field (#45886)
* don't show error message when using multi-valued template variables in region field

* add unit tests

* remove commented code
2022-02-28 09:28:27 +01:00
Isabella Siu
dac2b7ef73
Cloudwatch: Fix resource variables (#45496) 2022-02-17 09:04:59 -05:00
Isabella Siu
50a53ef58b
CloudWatch: replace metricFindQueries with CallResourceHandler (#41571) 2022-02-16 14:28:26 -05:00
Marcus Andersson
9a12b3ea00
TemplateSrv: exposing a function to detect if a target contains a template (#45214)
* exposing a function to check if a target contains variables.

* fixed tests.

* renamed function

* updated betterer result.
2022-02-15 08:53:42 +01:00
Shirley
5edcc2e795
Cloudwatch: Use generic null-insertion mechanism (#43507)
* Cloudwatch: Fix nil values for a period gap in metrics

* Use fields periods for intervals
2022-02-10 10:17:45 +01:00
Isabella Siu
16e001e762
CloudWatch: Use single timeout for log queries (#44848) 2022-02-08 15:43:37 -05:00
renovate[bot]
d87cd6f26c
Update dependency prettier to v2.5.1 (#43473)
* Update dependency prettier to v2.5.1

* prettier fixes

* chore(toolkit): bump prettier to 2.5.1

* style(eslint): bump grafana config to 2.5.2 in core and toolkit

* style(mssql-datasource): fix no-inferrable-types eslint errors

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
2022-02-02 12:02:32 +00:00
Sarah Zinger
58a71c7e91
Cloudwatch: Add syntax highlighting and autocomplete for "Metric Search" (#43985)
* Create a "monarch" folder with everything you need to do syntax highlighting and autocompletion.

* Use this new monarch folder with existing cloudwatch sql.

* Add metric math syntax highlighting and autocomplete.

* Make autocomplete "smarter":
- search always inserts a string as first arg
- strings can't contain predefined functions
- operators follow the last closing )

* Add some tests for Metric Math's CompletionItemProvider.

* Fixes After CR:
- refactor CompletionItemProvider, so that it only requires args that are dynamic or outside of it's responsibility
- Update and add tests with mocked monaco
- Add more autocomplete suggestions for SEARCH expression functions
- sort keywords and give different priority from function to make more visually distinctive.

* Change QueryEditor to auto-resize and look more like the one in Prometheus.

* Add autocomplete for time periods for the third arg of Search.

* More CR fixes:
- fix missing break
- add unit tests for statementPosition
- fix broken time period
- sort time periods

* Bug fix
2022-02-01 22:53:32 -05:00
Isabella Siu
cbbf451b36
CloudWatch: small logs refactors (#44677) 2022-01-31 17:30:16 -05:00
Erik Sundell
c3208c1850
allow search queries without dimensions (#42800) 2021-12-07 12:43:01 +01:00
Erik Sundell
bab78a9e64
CloudWatch: Add support for AWS Metric Insights (#42487)
* add support for code editor and builder

* refactor cloudwatch migration

* Add tooltip to editor field (#56)

* add tooltip

* add old tooltips

* Bug bash feedback fixes (#58)

* make ASC the default option

* update sql preview whenever sql changes

* don't allow queries without aggregation

* set default value for aggregation

* use new input field

* cleanup

* pr feedback

* prevent unnecessary rerenders

* use frame error instead of main error

* remove not used snapshot

* Use dimension filter in schema picker  (#63)

* use dimension key filter in group by and schema labels

* add dimension filter also to code editor

* add tests

* fix build error

* fix strict error

* remove debug code

* fix annotation editor (#64)

* fix annotation editor

* fix broken test

* revert annotation backend change

* PR feedback (#67)

* pr feedback

* removed dimension filter from group by

* add spacing between common fields and rest

* do not generate deep link for metric queries (#70)

* update docs (#69)

Co-authored-by: Erik Sundell <erik.sundell87@gmail.com>

* fix lint problem caused by merge conflict

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-11-30 10:53:31 +01:00
Andrej Ocenas
802ffa3f03
CloudWatch Logs: Add selected region to autocomplete requests (#42194)
* Add region to get fields query

* Fix and add tests
2021-11-26 13:33:34 +01:00
Andrej Ocenas
e237ff20a9
CloudWatch Logs: Add retry strategy for hitting max concurrent queries (#39290)
* Add error passing and retry strategy

* Change generic error to specific one

* Make the error more generic

* Refactor retry strategy

* Add retry that handles multiple queries

* Rollback some backend changes

* Remove simple retry strategy

* Add comments

* Add tests

* Small test fixes

* Add log timeout config

* Fix tests

* Fix tests

* Add validation

* Remove commented code and add comment

* Fix snapshots

* Remove unnecessary cast
2021-11-17 21:46:13 +01:00
Erik Sundell
eb40723bcb
Cloudwatch: Enable dimension filtering when loading dimension values (#41566)
* fix dimension filter

* refactor tests

* add comments

* fix typo
2021-11-11 16:48:35 +01:00
Ryan McKinley
6c1a0cc707
DataSourceRef: use reference rather than id where possible (#41372) 2021-11-09 07:24:41 -08:00
Josh Hunt
cb948d10e0
CloudWatch: Fix strict Typescript errors (#41160)
* CloudWatch: Fix strict typscript errors

* Update public/app/plugins/datasource/cloudwatch/components/ConfigEditor.tsx

Co-authored-by: Sarah Zinger <sarahzinger@users.noreply.github.com>

* Chore: reduce strict error

* Update ci-check-strict.sh

Co-authored-by: Sarah Zinger <sarahzinger@users.noreply.github.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@gmail.com>
2021-11-02 13:16:46 +00:00
Andrej Ocenas
8cf7e520e8
CloudWatch Logs: Fix variable interpolation in queries (#40899)
* Interpolate variables in queries

* Remove test
2021-10-26 11:40:49 +02:00
Piotr Jamróz
a6a3ef74be
Refactor: Decouple logs from DataSourceApi (#39536)
* Decouple logs from DataSourceApi

* Remove unused code

* Mark log context methods as deprecated

* Update jsdocs deprecation message

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

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>

* Check for undefined in hasLogsContextSupport

* Add release tags

* Change release tag

* Retrigger the build

* Post-merge: revert index.md changes

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2021-10-01 13:38:16 +02:00
Andrej Ocenas
3e47fb1432
CloudWatch Logs: Skip caching for Log queries (#39860)
* Add x-skip-cache header to queries

* Specify caching works for CW metrics
2021-10-01 09:45:37 +02:00
Andrej Ocenas
515d6afec3
CloudWatch Logs: Disable query path using websockets (Live) feature (#39231)
* Use only non live branch for querying logs.

* Update tests

* fix lint
2021-09-15 16:28:34 +02:00
Andrej Ocenas
fb1c31e1b6
CloudWatch Logs: Add link to Xray data source for trace IDs in logs (#39135)
* Refactor log query handling

* Add link to config page

* Change message about missing xray to alert

* Add xrayTraceLinks

* Fix typo in field name

* Fix tests and lint

* Move test

* Add test for trace id link

* lint
2021-09-14 17:02:41 +02:00
Erik Sundell
5e38b02f94
Cloudwatch: Migrate queries that use multiple stats to one query per stat (#36925)
* migrate queries that use multiple stats - squash commits

* fix typo
2021-09-08 16:06:43 +02:00
Hugo Häggmark
dba15190af
Chore: Upgrades rxjs to 7.3.0 (#37913)
* Chore: upgrades rxjs to 7.3.0

* Chore: replaces toPromise with lastValueFrom

* Chore: removes unused mock that caused test error

* Chore: fixes build error in PieChartPanel

* Chore: fixed build error in requestAllIndices

* Chore: fixes comment

* Chore: trying to reduce docs errors

* Chore: searches for explicit api extractor warnings

* Chore: updates rxjs-spy to 8.0.0

* Chore: reverts to main

* Chore: upgrade rxjs and rxjs-spy
2021-08-19 06:38:31 +02:00
Andrej Ocenas
e9c032f10f
CloudWatch Logs: Fix crash when no region is configured (#37639) 2021-08-06 15:47:27 +02:00
Piotr Jamróz
9ace8686a1
Datasources: Improve error handling for testing data sources (#35120)
* Improve error handling for error messages

The error message will be read from error object from the following properties in the following order:
- message
- data.message
- statusText

* Convert api/ds/query errors to TestingStatus

SQL datasources (mysql, mssql, postgres) and CloudWatch use api/ds/query to test the data source, but previously didn't handle errors returned by this endpoint. If the error cannot be handled it's re-thrown to be handled in public/app/features/datasources/state/actions.ts

* Use async/await instead of Promises

* Remove incorrect type import

TestingStatus is in app/types. Should be pulled down to grafana/data but it depends on HealthCheckResultDetails that is public and lives in grafana/runtime. Ideally TestingStatus should live in grafana/data but I'm not sure if HealthCheckResultDetails can be move there too (?)

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

Co-authored-by: Erik Sundell <erik.sundell@grafana.com>

* Handle errors with no details in toTestingStatus instead of re-throwing

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

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

Co-authored-by: Erik Sundell <erik.sundell@grafana.com>
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2021-07-08 14:32:27 +02:00
Thomas Cave
3e95c3826a
CloudWatch Logs: If Grafana Live isn't enabled, don't use the Live Channel (#36358)
* If Live isn't enabled, don't use the Live Channel

* ..Import Config if you want to use it!
2021-07-07 13:39:32 +02:00