Support auto group by queries in Data Explorer
parent
a88f49d5c6
commit
87e939aff6
|
@ -7,6 +7,8 @@ import {proxy} from 'src/utils/queryUrlGenerator'
|
|||
import {timeSeriesToTableGraph} from 'src/utils/timeSeriesTransformers'
|
||||
import {dataToCSV} from 'src/shared/parsing/dataToCSV'
|
||||
import {Source, QueryConfig} from 'src/types'
|
||||
import {duration} from 'src/shared/apis/query'
|
||||
import {replaceInterval} from 'src/tempVars/utils/replace'
|
||||
|
||||
export const writeLineProtocol = async (
|
||||
source: Source,
|
||||
|
@ -32,9 +34,17 @@ export const getDataForCSV = (
|
|||
errorThrown
|
||||
) => async () => {
|
||||
try {
|
||||
let queryString = query.text
|
||||
|
||||
if (queryString.includes(':interval:')) {
|
||||
const queryDuration = await duration(query.text, source)
|
||||
|
||||
queryString = replaceInterval(query.text, null, queryDuration)
|
||||
}
|
||||
|
||||
const response = await fetchTimeSeriesForCSV({
|
||||
source: source.links.proxy,
|
||||
query: query.text,
|
||||
query: queryString,
|
||||
})
|
||||
|
||||
const {data} = timeSeriesToTableGraph([{response}])
|
||||
|
|
|
@ -63,7 +63,10 @@ const replace = async (
|
|||
}
|
||||
}
|
||||
|
||||
const duration = async (query: string, source: Source): Promise<number> => {
|
||||
export const duration = async (
|
||||
query: string,
|
||||
source: Source
|
||||
): Promise<number> => {
|
||||
try {
|
||||
const analysis = await analyzeQueries(source.links.queries, [{query}])
|
||||
return getDeep<number>(analysis, '0.durationMs', DEFAULT_DURATION_MS)
|
||||
|
|
Loading…
Reference in New Issue