* WIP: inital POC
* Wip: Moving forward
* Wip
* Refactor: Makes loading indicator work for Prometheus
* Refactor: Reverts prom observable queries because they did not work for multiple targets
* Refactor: Transforms all epics into thunks
* Fix: Fixes scanning
* Fix: Fixes so that Instant and TimeSeries Prom query loads in parallel
* Fix: Fixes negation logic error
* Propagate errors in stream events, and close streams
* Update datasource.ts
* Update datasource.test.ts
* utcOffset reverse
from moment docs, utcOffset "function returns the real offset from UTC, not the reverse offset"
* add utcOffset() to DateTime interface
method returns the UTC offset as a number of minutes
* Fixed test
* Explore: Prometheus query errors now show
Fixes: #17435
* Explore: Adds test to ensure prometheus query errors are reported
* Explore: removes implicit anys introduced previously
* Chore: Remove implicit anys from ResultProcessor and tests
* Chore: Removes implicit anys for /loki/**/*.ts
* Chore: Removes implicit anys for prometheus/**/*
The range variables get filled with the range from the query options,
not with the range in the timeSrv object. This means that panels that
use a relative time override get the correct values from the __range
variables.
Fixes#17102
This escape is currently not happening which breaks multi-value queries with
'|' characters in the variable value.
Added tests for 'interpolateQueryExpr' which should possibly be private, but is difficult to
test due to TemplateSrv calling it.
Closes#16840
* Refactor: Removes replaceUrl from actions
* Refactor: Moves saveState thunk to epic
* Refactor: Moves thunks to epics
* Wip: removes resulttype and queries once
* Refactor: LiveTailing uses observer in query
* Refactor: Creates epics folder for epics and move back actioncreators
* Tests: Adds tests for epics and reducer
* Fix: Checks for undefined as well
* Refactor: Cleans up previous live tailing implementation
* Chore: merge with master
* Fix: Fixes url issuses and prom graph in Panels
* Refactor: Removes supportsStreaming and adds sockets to DataSourcePluginMeta instead
* Refactor: Changes the way we create TimeSeries
* Refactor: Renames sockets to streaming
* Refactor: Changes the way Explore does incremental updates
* Refactor: Removes unused method
* Refactor: Adds back Loading indication
* Wip: Removes queryTransactions from state
* Refactor: Adds back query failures
* Refactor: Moves error parsing to datasources
* Refactor: Adds back hinting for Prometheus
* Refactor: removed commented out code
* Refactor: Adds back QueryStatus
* Refactor: Adds scanning back to Explore
* Fix: Fixes prettier error
* Fix: Makes sure there is an error
* Merge: Merges with master
* Fix: Adds safeStringifyValue to error parsing
* Fix: Fixes table result calculations
* Refactor: Adds ErrorContainer and generic error handling in Explore
* Fix: Fixes so refIds remain consistent
* Refactor: Makes it possible to return result even when there are errors
* Fix: Fixes digest issue with Angular editors
* Refactor: Adds tests for explore utils
* Refactor: Breakes current behaviour of always returning a result even if Query fails
* Fix: Fixes Prettier error
* Fix: Adds back console.log for erroneous querys
* Refactor: Changes console.log to console.error
This fixes a regression introduced by #16724 when datasource is configured
to use HTTP method POST and testing the datasource which results in an
'options.headers is undefined'. Same error probably happens if datasource
is configured to use basic auth and testing datasource.
Fixes#14615.
Removes extra escaping for regex filter values when using ad hoc
filters for Prometheus. The extra escaping causes queries with
regex characters to be invalid.
- future alignment cause issues with rate charts and the display of last
values
- this change modifies the alignment to use the last available aligned
end date and no longer possibly requests data from the future
- since e731c248d7 step calculation for
annotation queries was broken
- this change puts the interval in the correct parameter so it gets
considered in `createQuery`
- added tests
- since the DataQuery rewrite, Explore starts by submitting its queries (Explore cant know if the queries are emtpty)
- The datasource intercepts an empty query and returns an empty list of time series, and also no table for the table query.
- The query hinter then received no series to analyse and was not guarding against this.
- This PR adds this guard.
- Queries in Explore have been string based
- This PR introduces the use of the DataQuery type to denote all queries handled in Explore
- Within Explore all handling of DataQueries is transparent
- Modifying DataQueries is left to the datasource
- Using `target` as variable names for DataQueries to be consistent with the rest of Grafana
Rules expansion (available via query hints in explore) was broken for expressions that contained selectors.
- fix replacing regexp to recognize `{` and `[` as the end of a rule name
- moved logic to language utils
- added tests
Implements rudimentary support for placeholder values inside a string
with the `PlaceholdersBuffer` class. The latter helps the newly added
sum aggregation query suggestion to automatically focus on the label
so users can easily choose from the available typeahead options.
Related: #13615
- extends handlers for panel menu and keypress 'x'
- in a mixed-datasource panel finds first datasource that supports
explore and collects its targets
- passes those targets to the found datasource to be serialized for
explore state
- removed `supportMetrics` and `supportsExplore`
- use datasource metadata instead (set in plugin.json)
- Use angular timeout to wrap url change for explore jump
- Extract getExploreUrl into core/utils/explore