* feat(typescript): read and write index to jsonData
* feat(go): read index from jsonData
* clear database column when index-name is updated
* Update public/app/plugins/datasource/elasticsearch/datasource.ts
Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
* Update public/app/plugins/datasource/elasticsearch/configuration/ElasticDetails.tsx
Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
* add indexChangeHandler function
* fix
* fix failing tests
* fix
* fix
---------
Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
* Elasticsearch: Add benchmarks for processing of requests and responses
* Update, use package variable to elimitnate possible optimization
* Update, require no error
* Elasticsearch: Remove GetMinInterval method that is not used anymore
* Elasticsearch: Fix using of interval value in histogram
* Revert "Elasticsearch: Remove GetMinInterval method that is not used anymore"
This reverts commit a157003902.
* Elasticsearch: Fix processing of percentiles on backend
* Remove redundant logic as we do this in addMetricValue
* Refactor for less cyclomatic complexity
* Remove changes in createFieldsFromPropKeys
* Elasticsearch: Add highlight for logs
* Fix running of queries trough backend only when shouldRunTroughBackend
* Fix incorrect json in test string
* Address feedback
* Keep order of words same
* Elasticsearch: Use displayName field for naming
* Change solution to frame.Name to be backward compatible
* Fix snapshot tests
* Use Time and Value for time and value fields
* Use variables from grafana-plugin-sdk-go for name
* Elasticsearch: Add processing of logs query to backend
* Add and fix tests
* Add snapshot tests
* Fix test in ES client
* Small updates, remove redundant logic
* Refactor setPreferredVisType to improve readability
* WIP
* WIP
* Refactor
* Add tests
* Cleanup
* Fix whitespace
* Fix test and lint
* In snapshot tests update counter to be number
* Add boolean value for snapshot testing
* Update pkg/tsdb/elasticsearch/response_parser.go
Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
* Update pkg/tsdb/elasticsearch/response_parser.go
Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
* Use generic to reuse logic when creating fields
* Use nullable fields
* Fix lint
* WIP (#63272)
wip
* Fix snapshot test after we changed field types to nullable
---------
Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
Use latest github.com/grafana/grafana-plugin-sdk-go which includes changes to the TypeVersion property (always present in JSON).
Also included is squtil changes: SQL util - allow using the database scan type for converters
* Update oapi library and thema
* Use fork commit to fix elasticsearch and cloudwatch generators
* Update thema
* Fixes
* Update thema with last fixes
* Sync
* Fix test
* Update thema and schemas
* Update thema
* Elasticsearch: Implement schema for query
* Comment out types I am not sure how to do
* Manually fix typing for PipelineMetricAggregationWithMultipleBucketPaths and BasePipelineMetricAggregation
* Import types to types.ts to have single source of truth
* Cleanup, reorder
* Remove unnecesary Schema.
* Fix test
* Refactor
Look for 'caused_by.reason' in ES error response
When the ES response does not contain `reason` or `root_cause[0].reason`
is empty, there is no information for the user to know what is going
wrong.
An example of the error message after this change:
```
Failed to evaluate queries and expressions: failed to execute query A: Trying to create too many buckets. Must be less than or equal to: [65536] but this number of buckets was exceeded. This limit can be set by changing the [search.max_buckets] cluster level setting.
```
Related to https://github.com/grafana/grafana/issues/61246
* Refactor parse query to functions
* Move parsing to new file
* Create empty result variable and use it when returning early
* Fix linting
* Revert "Create empty result variable and use it when returning early"
This reverts commit 36a503f66e.
* Elasticsearch: Fix ordering in raw_document and add logic for raw_data
* Add comments
* Fix raw data request to use correct timefield
* Fix linting
* Add raw data as metric type
* Fix linting
* Elasticsearch: Add defaults for log query
* Add higlight
* Fix lint
* Add snapshot test
* Implement correct query for logs
* Update
* Adjust naming and comments
* Fix lint
* Remove ifs