Commit 17d02a70 by Senkevich Alexsandr

added suppressing of empty results in table plugin

parent 9b4d95ff
......@@ -21,6 +21,10 @@
<metric-segment segment="editor.addColumnSegment" get-options="editor.getColumnOptions()" on-change="editor.addColumn()"></metric-segment>
</div>
</div>
<gf-form-switch class="gf-form" label-class="width-10"
label="Filter null values"
checked="editor.panel.filterNull"
on-change="editor.render()"></gf-form-switch>
</div>
<div class="section gf-form-group">
......
......@@ -42,6 +42,7 @@ class TablePanelCtrl extends MetricsPanelCtrl {
scroll: true,
fontSize: '100%',
sort: {col: 0, desc: true},
filterNull: false,
};
/** @ngInject */
......
......@@ -5,6 +5,7 @@ import moment from 'moment';
import flatten from '../../../core/utils/flatten';
import TimeSeries from '../../../core/time_series2';
import TableModel from '../../../core/table_model';
import angular from "angular";
var transformers = {};
......@@ -219,7 +220,8 @@ transformers['json'] = {
};
function transformDataToTable(data, panel) {
var model = new TableModel();
var model = new TableModel(),
copyData = angular.copy(data);
if (!data || data.length === 0) {
return model;
......@@ -230,7 +232,13 @@ function transformDataToTable(data, panel) {
throw {message: 'Transformer ' + panel.transformer + ' not found'};
}
transformer.transform(data, panel, model);
if (panel.filterNull) {
for (var i = 0; i < copyData.length; i++) {
copyData[i].datapoints = copyData[i].datapoints.filter((dp) => dp[0] != null);
}
}
transformer.transform(copyData, panel, model);
return model;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment