mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
logs: better handle missing fields (#46963)
This commit is contained in:
@@ -326,24 +326,27 @@ export function logSeriesToLogsModel(logSeries: DataFrame[]): LogsModel | undefi
|
||||
const seriesWithFields = logSeries.filter((series) => series.fields.length);
|
||||
|
||||
if (seriesWithFields.length) {
|
||||
allSeries = seriesWithFields.map((series) => {
|
||||
seriesWithFields.forEach((series) => {
|
||||
const fieldCache = new FieldCache(series);
|
||||
const stringField = fieldCache.getFirstFieldOfType(FieldType.string);
|
||||
const timeField = fieldCache.getFirstFieldOfType(FieldType.time);
|
||||
|
||||
if (stringField?.labels) {
|
||||
allLabels.push(stringField.labels);
|
||||
if (stringField !== undefined && timeField !== undefined) {
|
||||
if (stringField?.labels) {
|
||||
allLabels.push(stringField.labels);
|
||||
}
|
||||
|
||||
allSeries.push({
|
||||
series,
|
||||
timeField,
|
||||
timeNanosecondField: fieldCache.hasFieldWithNameAndType('tsNs', FieldType.time)
|
||||
? fieldCache.getFieldByName('tsNs')
|
||||
: undefined,
|
||||
stringField,
|
||||
logLevelField: fieldCache.getFieldByName('level'),
|
||||
idField: getIdField(fieldCache),
|
||||
});
|
||||
}
|
||||
|
||||
return {
|
||||
series,
|
||||
timeField: fieldCache.getFirstFieldOfType(FieldType.time),
|
||||
timeNanosecondField: fieldCache.hasFieldWithNameAndType('tsNs', FieldType.time)
|
||||
? fieldCache.getFieldByName('tsNs')
|
||||
: undefined,
|
||||
stringField,
|
||||
logLevelField: fieldCache.getFieldByName('level'),
|
||||
idField: getIdField(fieldCache),
|
||||
} as LogFields;
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user