mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
Singlestat: Various fixes to singlestat and DataFrame (#18783)
* Singlestat: Various fixes to singlestat and DataFrame * removed comment
This commit is contained in:
@@ -149,6 +149,7 @@ class GraphCtrl extends MetricsPanelCtrl {
|
||||
|
||||
this.events.on('render', this.onRender.bind(this));
|
||||
this.events.on('data-received', this.onDataReceived.bind(this));
|
||||
this.events.on('data-frames-received', this.onDataReceived.bind(this));
|
||||
this.events.on('data-error', this.onDataError.bind(this));
|
||||
this.events.on('data-snapshot-load', this.onDataSnapshotLoad.bind(this));
|
||||
this.events.on('init-edit-mode', this.onInitEditMode.bind(this));
|
||||
@@ -210,13 +211,11 @@ class GraphCtrl extends MetricsPanelCtrl {
|
||||
|
||||
// This should only be called from the snapshot callback
|
||||
onDataReceived(dataList: LegacyResponseData[]) {
|
||||
this.handleDataFrames(getProcessedDataFrames(dataList));
|
||||
this.onDataFramesReceived(getProcessedDataFrames(dataList));
|
||||
}
|
||||
|
||||
// Directly support DataFrame skipping event callbacks
|
||||
handleDataFrames(data: DataFrame[]) {
|
||||
super.handleDataFrames(data);
|
||||
|
||||
onDataFramesReceived(data: DataFrame[]) {
|
||||
this.dataList = data;
|
||||
this.seriesList = this.processor.getSeriesList({
|
||||
dataList: this.dataList,
|
||||
|
||||
@@ -119,7 +119,7 @@ class SingleStatCtrl extends MetricsPanelCtrl {
|
||||
super($scope, $injector);
|
||||
_.defaults(this.panel, this.panelDefaults);
|
||||
|
||||
this.events.on('data-received', this.onDataReceived.bind(this));
|
||||
this.events.on('data-frames-received', this.onFramesReceived.bind(this));
|
||||
this.events.on('data-error', this.onDataError.bind(this));
|
||||
this.events.on('data-snapshot-load', this.onDataReceived.bind(this));
|
||||
this.events.on('init-edit-mode', this.onInitEditMode.bind(this));
|
||||
@@ -157,14 +157,23 @@ class SingleStatCtrl extends MetricsPanelCtrl {
|
||||
|
||||
// This should only be called from the snapshot callback
|
||||
onDataReceived(dataList: LegacyResponseData[]) {
|
||||
this.handleDataFrames(getProcessedDataFrames(dataList));
|
||||
this.onFramesReceived(getProcessedDataFrames(dataList));
|
||||
}
|
||||
|
||||
// Directly support DataFrame skipping event callbacks
|
||||
handleDataFrames(frames: DataFrame[]) {
|
||||
onFramesReceived(frames: DataFrame[]) {
|
||||
const { panel } = this;
|
||||
super.handleDataFrames(frames);
|
||||
this.loading = false;
|
||||
|
||||
if (frames && frames.length > 1) {
|
||||
this.data = {
|
||||
value: 0,
|
||||
display: {
|
||||
text: 'Only queries that return single series/table is supported',
|
||||
numeric: NaN,
|
||||
},
|
||||
};
|
||||
this.render();
|
||||
return;
|
||||
}
|
||||
|
||||
const distinct = getDistinctNames(frames);
|
||||
let fieldInfo = distinct.byName[panel.tableColumn]; //
|
||||
|
||||
Reference in New Issue
Block a user