|
|
|
@ -20,6 +20,7 @@ import { |
|
|
|
|
ResultType, |
|
|
|
|
QueryIntervals, |
|
|
|
|
QueryOptions, |
|
|
|
|
ResultGetter, |
|
|
|
|
} from 'app/types/explore'; |
|
|
|
|
import { LogsDedupStrategy } from 'app/core/logs_model'; |
|
|
|
|
|
|
|
|
@ -301,11 +302,24 @@ export function getIntervals(range: RawTimeRange, lowLimit: string, resolution: |
|
|
|
|
return kbn.calculateInterval(absoluteRange, resolution, lowLimit); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
export function makeTimeSeriesList(dataList) { |
|
|
|
|
return dataList.map((seriesData, index) => { |
|
|
|
|
export const makeTimeSeriesList: ResultGetter = (dataList, transaction, allTransactions) => { |
|
|
|
|
// Prevent multiple Graph transactions to have the same colors
|
|
|
|
|
let colorIndexOffset = 0; |
|
|
|
|
for (const other of allTransactions) { |
|
|
|
|
// Only need to consider transactions that came before the current one
|
|
|
|
|
if (other === transaction) { |
|
|
|
|
break; |
|
|
|
|
} |
|
|
|
|
// Count timeseries of previous query results
|
|
|
|
|
if (other.resultType === 'Graph' && other.done) { |
|
|
|
|
colorIndexOffset += other.result.length; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return dataList.map((seriesData, index: number) => { |
|
|
|
|
const datapoints = seriesData.datapoints || []; |
|
|
|
|
const alias = seriesData.target; |
|
|
|
|
const colorIndex = index % colors.length; |
|
|
|
|
const colorIndex = (colorIndexOffset + index) % colors.length; |
|
|
|
|
const color = colors[colorIndex]; |
|
|
|
|
|
|
|
|
|
const series = new TimeSeries({ |
|
|
|
@ -317,7 +331,7 @@ export function makeTimeSeriesList(dataList) { |
|
|
|
|
|
|
|
|
|
return series; |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* Update the query history. Side-effect: store history in local storage |
|
|
|
|