mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
Tempo: Don't modify the passed time range when using timeShiftEnabled (#87980)
Don't modify the passed range
This commit is contained in:
parent
9e6f18c947
commit
a2aea70100
@ -386,6 +386,12 @@ describe('Tempo data source', () => {
|
|||||||
jsonData: { traceQuery: { timeShiftEnabled: true, spanStartTimeShift: '2m', spanEndTimeShift: '4m' } },
|
jsonData: { traceQuery: { timeShiftEnabled: true, spanStartTimeShift: '2m', spanEndTimeShift: '4m' } },
|
||||||
});
|
});
|
||||||
|
|
||||||
|
const range = {
|
||||||
|
from: dateTime(new Date(2022, 8, 13, 16, 0, 0, 0)),
|
||||||
|
to: dateTime(new Date(2022, 8, 13, 16, 15, 0, 0)),
|
||||||
|
raw: { from: '15m', to: 'now' },
|
||||||
|
};
|
||||||
|
|
||||||
const request = ds.traceIdQueryRequest(
|
const request = ds.traceIdQueryRequest(
|
||||||
{
|
{
|
||||||
requestId: 'test',
|
requestId: 'test',
|
||||||
@ -396,17 +402,17 @@ describe('Tempo data source', () => {
|
|||||||
timezone: '',
|
timezone: '',
|
||||||
app: '',
|
app: '',
|
||||||
startTime: 0,
|
startTime: 0,
|
||||||
range: {
|
range,
|
||||||
from: dateTime(new Date(2022, 8, 13, 16, 0, 0, 0)),
|
|
||||||
to: dateTime(new Date(2022, 8, 13, 16, 15, 0, 0)),
|
|
||||||
raw: { from: '15m', to: 'now' },
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
[{ refId: 'refid1', queryType: 'traceql', query: '' } as TempoQuery]
|
[{ refId: 'refid1', queryType: 'traceql', query: '' } as TempoQuery]
|
||||||
);
|
);
|
||||||
|
|
||||||
expect(request.range.from.unix()).toBe(dateTime(new Date(2022, 8, 13, 15, 58, 0, 0)).unix());
|
expect(request.range.from.valueOf()).toBe(new Date(2022, 8, 13, 15, 58, 0, 0).valueOf());
|
||||||
expect(request.range.to.unix()).toBe(dateTime(new Date(2022, 8, 13, 16, 19, 0, 0)).unix());
|
expect(request.range.to.valueOf()).toBe(new Date(2022, 8, 13, 16, 19, 0, 0).valueOf());
|
||||||
|
|
||||||
|
// Making sure we don't modify the original range
|
||||||
|
expect(range.from.valueOf()).toBe(new Date(2022, 8, 13, 16, 0, 0, 0).valueOf());
|
||||||
|
expect(range.to.valueOf()).toBe(new Date(2022, 8, 13, 16, 15, 0, 0).valueOf());
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should not include time shift when querying for traceID and time shift config is off', () => {
|
it('should not include time shift when querying for traceID and time shift config is off', () => {
|
||||||
|
@ -669,11 +669,14 @@ export class TempoDatasource extends DataSourceWithBackend<TempoQuery, TempoJson
|
|||||||
if (this.traceQuery?.timeShiftEnabled) {
|
if (this.traceQuery?.timeShiftEnabled) {
|
||||||
request.range = options.range && {
|
request.range = options.range && {
|
||||||
...options.range,
|
...options.range,
|
||||||
from: options.range.from.subtract(
|
from: dateTime(options.range.from).subtract(
|
||||||
rangeUtil.intervalToMs(this.traceQuery?.spanStartTimeShift || '30m'),
|
rangeUtil.intervalToMs(this.traceQuery?.spanStartTimeShift || '30m'),
|
||||||
'milliseconds'
|
'milliseconds'
|
||||||
),
|
),
|
||||||
to: options.range.to.add(rangeUtil.intervalToMs(this.traceQuery?.spanEndTimeShift || '30m'), 'milliseconds'),
|
to: dateTime(options.range.to).add(
|
||||||
|
rangeUtil.intervalToMs(this.traceQuery?.spanEndTimeShift || '30m'),
|
||||||
|
'milliseconds'
|
||||||
|
),
|
||||||
};
|
};
|
||||||
} else {
|
} else {
|
||||||
request.range = { from: dateTime(0), to: dateTime(0), raw: { from: dateTime(0), to: dateTime(0) } };
|
request.range = { from: dateTime(0), to: dateTime(0), raw: { from: dateTime(0), to: dateTime(0) } };
|
||||||
|
Loading…
Reference in New Issue
Block a user