Datasource/Elasticsearch: Fix logs which were displayed with incorrect timestamp in Explore logs tab (#20009)

pull/20192/head
lzd 6 years ago committed by David
parent 92ab4d80f0
commit 31e7e35bff
  1. 10
      packages/grafana-data/src/dataframe/MutableDataFrame.test.ts
  2. 5
      packages/grafana-data/src/dataframe/MutableDataFrame.ts

@ -57,6 +57,16 @@ describe('Apending DataFrame', () => {
{ time: null, name: null, value: null, value2: 'XXX' }, // 4
]);
// Add a time value that has an array type
frame.add({ time: [300] });
expect(frame.toArray()).toEqual([
{ time: 100, name: 'a', value: 1, value2: null }, // 1
{ time: 200, name: 'BB', value: 20, value2: null }, // 2
{ time: null, name: null, value: 3, value2: null }, // 3
{ time: null, name: null, value: null, value2: 'XXX' }, // 4
{ time: 300, name: null, value: null, value2: null }, // 5
]);
// Make sure length survives a spread operator
const keys = Object.keys(frame);
const copy = { ...frame } as any;

@ -234,6 +234,11 @@ export class MutableDataFrame<T = any> implements DataFrame, MutableVector<T> {
field.parse = makeFieldParser(val, field);
}
val = field.parse(val);
} else if (field.type === FieldType.time && isArray(val)) {
if (!field.parse) {
field.parse = (val: any[]) => val[0] || undefined;
}
val = field.parse(val);
}
if (val === undefined) {

Loading…
Cancel
Save