itemid-mode: minor refactor
This commit is contained in:
32
dist/datasource-zabbix/datasource.js
vendored
32
dist/datasource-zabbix/datasource.js
vendored
@@ -342,10 +342,22 @@ System.register(['lodash', 'app/core/utils/datemath', './utils', './migrations',
|
|||||||
return { data: data };
|
return { data: data };
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
}, {
|
||||||
|
key: 'queryNumericData',
|
||||||
|
value: function queryNumericData(target, timeRange, useTrends, options) {
|
||||||
|
var _this2 = this;
|
||||||
|
|
||||||
|
var getItemOptions = {
|
||||||
|
itemtype: 'num'
|
||||||
|
};
|
||||||
|
return this.zabbix.getItemsFromTarget(target, getItemOptions).then(function (items) {
|
||||||
|
return _this2.queryNumericDataForItems(items, target, timeRange, useTrends, options);
|
||||||
|
});
|
||||||
|
}
|
||||||
}, {
|
}, {
|
||||||
key: 'queryNumericDataForItems',
|
key: 'queryNumericDataForItems',
|
||||||
value: function queryNumericDataForItems(items, target, timeRange, useTrends, options) {
|
value: function queryNumericDataForItems(items, target, timeRange, useTrends, options) {
|
||||||
var _this2 = this;
|
var _this3 = this;
|
||||||
|
|
||||||
var _timeRange = _slicedToArray(timeRange, 2),
|
var _timeRange = _slicedToArray(timeRange, 2),
|
||||||
timeFrom = _timeRange[0],
|
timeFrom = _timeRange[0],
|
||||||
@@ -357,7 +369,7 @@ System.register(['lodash', 'app/core/utils/datemath', './utils', './migrations',
|
|||||||
if (useTrends) {
|
if (useTrends) {
|
||||||
if (this.enableDirectDBConnection) {
|
if (this.enableDirectDBConnection) {
|
||||||
getHistoryPromise = this.zabbix.getTrendsDB(items, timeFrom, timeTo, options).then(function (history) {
|
getHistoryPromise = this.zabbix.getTrendsDB(items, timeFrom, timeTo, options).then(function (history) {
|
||||||
return _this2.zabbix.dbConnector.handleGrafanaTSResponse(history, items);
|
return _this3.zabbix.dbConnector.handleGrafanaTSResponse(history, items);
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
var valueType = this.getTrendValueType(target);
|
var valueType = this.getTrendValueType(target);
|
||||||
@@ -377,7 +389,7 @@ System.register(['lodash', 'app/core/utils/datemath', './utils', './migrations',
|
|||||||
// Use history
|
// Use history
|
||||||
if (this.enableDirectDBConnection) {
|
if (this.enableDirectDBConnection) {
|
||||||
getHistoryPromise = this.zabbix.getHistoryDB(items, timeFrom, timeTo, options).then(function (history) {
|
getHistoryPromise = this.zabbix.getHistoryDB(items, timeFrom, timeTo, options).then(function (history) {
|
||||||
return _this2.zabbix.dbConnector.handleGrafanaTSResponse(history, items);
|
return _this3.zabbix.dbConnector.handleGrafanaTSResponse(history, items);
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
getHistoryPromise = this.zabbix.getHistory(items, timeFrom, timeTo).then(function (history) {
|
getHistoryPromise = this.zabbix.getHistory(items, timeFrom, timeTo).then(function (history) {
|
||||||
@@ -387,7 +399,7 @@ System.register(['lodash', 'app/core/utils/datemath', './utils', './migrations',
|
|||||||
}
|
}
|
||||||
|
|
||||||
return getHistoryPromise.then(function (timeseries) {
|
return getHistoryPromise.then(function (timeseries) {
|
||||||
return _this2.applyDataProcessingFunctions(timeseries, target);
|
return _this3.applyDataProcessingFunctions(timeseries, target);
|
||||||
}).then(function (timeseries) {
|
}).then(function (timeseries) {
|
||||||
return downsampleSeries(timeseries, options);
|
return downsampleSeries(timeseries, options);
|
||||||
}).catch(function (error) {
|
}).catch(function (error) {
|
||||||
@@ -395,18 +407,6 @@ System.register(['lodash', 'app/core/utils/datemath', './utils', './migrations',
|
|||||||
return [];
|
return [];
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}, {
|
|
||||||
key: 'queryNumericData',
|
|
||||||
value: function queryNumericData(target, timeRange, useTrends, options) {
|
|
||||||
var _this3 = this;
|
|
||||||
|
|
||||||
var getItemOptions = {
|
|
||||||
itemtype: 'num'
|
|
||||||
};
|
|
||||||
return this.zabbix.getItemsFromTarget(target, getItemOptions).then(function (items) {
|
|
||||||
return _this3.queryNumericDataForItems(items, target, timeRange, useTrends, options);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}, {
|
}, {
|
||||||
key: 'getTrendValueType',
|
key: 'getTrendValueType',
|
||||||
value: function getTrendValueType(target) {
|
value: function getTrendValueType(target) {
|
||||||
|
|||||||
2
dist/datasource-zabbix/datasource.js.map
vendored
2
dist/datasource-zabbix/datasource.js.map
vendored
File diff suppressed because one or more lines are too long
57
dist/test/datasource-zabbix/datasource.js
vendored
57
dist/test/datasource-zabbix/datasource.js
vendored
@@ -195,10 +195,32 @@ var ZabbixAPIDatasource = function () {
|
|||||||
return { data: data };
|
return { data: data };
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Query target data for Metrics mode
|
||||||
|
*/
|
||||||
|
|
||||||
|
}, {
|
||||||
|
key: 'queryNumericData',
|
||||||
|
value: function queryNumericData(target, timeRange, useTrends, options) {
|
||||||
|
var _this2 = this;
|
||||||
|
|
||||||
|
var getItemOptions = {
|
||||||
|
itemtype: 'num'
|
||||||
|
};
|
||||||
|
return this.zabbix.getItemsFromTarget(target, getItemOptions).then(function (items) {
|
||||||
|
return _this2.queryNumericDataForItems(items, target, timeRange, useTrends, options);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Query history for numeric items
|
||||||
|
*/
|
||||||
|
|
||||||
}, {
|
}, {
|
||||||
key: 'queryNumericDataForItems',
|
key: 'queryNumericDataForItems',
|
||||||
value: function queryNumericDataForItems(items, target, timeRange, useTrends, options) {
|
value: function queryNumericDataForItems(items, target, timeRange, useTrends, options) {
|
||||||
var _this2 = this;
|
var _this3 = this;
|
||||||
|
|
||||||
var _timeRange = _slicedToArray(timeRange, 2),
|
var _timeRange = _slicedToArray(timeRange, 2),
|
||||||
timeFrom = _timeRange[0],
|
timeFrom = _timeRange[0],
|
||||||
@@ -210,7 +232,7 @@ var ZabbixAPIDatasource = function () {
|
|||||||
if (useTrends) {
|
if (useTrends) {
|
||||||
if (this.enableDirectDBConnection) {
|
if (this.enableDirectDBConnection) {
|
||||||
getHistoryPromise = this.zabbix.getTrendsDB(items, timeFrom, timeTo, options).then(function (history) {
|
getHistoryPromise = this.zabbix.getTrendsDB(items, timeFrom, timeTo, options).then(function (history) {
|
||||||
return _this2.zabbix.dbConnector.handleGrafanaTSResponse(history, items);
|
return _this3.zabbix.dbConnector.handleGrafanaTSResponse(history, items);
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
var valueType = this.getTrendValueType(target);
|
var valueType = this.getTrendValueType(target);
|
||||||
@@ -230,7 +252,7 @@ var ZabbixAPIDatasource = function () {
|
|||||||
// Use history
|
// Use history
|
||||||
if (this.enableDirectDBConnection) {
|
if (this.enableDirectDBConnection) {
|
||||||
getHistoryPromise = this.zabbix.getHistoryDB(items, timeFrom, timeTo, options).then(function (history) {
|
getHistoryPromise = this.zabbix.getHistoryDB(items, timeFrom, timeTo, options).then(function (history) {
|
||||||
return _this2.zabbix.dbConnector.handleGrafanaTSResponse(history, items);
|
return _this3.zabbix.dbConnector.handleGrafanaTSResponse(history, items);
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
getHistoryPromise = this.zabbix.getHistory(items, timeFrom, timeTo).then(function (history) {
|
getHistoryPromise = this.zabbix.getHistory(items, timeFrom, timeTo).then(function (history) {
|
||||||
@@ -240,7 +262,7 @@ var ZabbixAPIDatasource = function () {
|
|||||||
}
|
}
|
||||||
|
|
||||||
return getHistoryPromise.then(function (timeseries) {
|
return getHistoryPromise.then(function (timeseries) {
|
||||||
return _this2.applyDataProcessingFunctions(timeseries, target);
|
return _this3.applyDataProcessingFunctions(timeseries, target);
|
||||||
}).then(function (timeseries) {
|
}).then(function (timeseries) {
|
||||||
return downsampleSeries(timeseries, options);
|
return downsampleSeries(timeseries, options);
|
||||||
}).catch(function (error) {
|
}).catch(function (error) {
|
||||||
@@ -248,18 +270,6 @@ var ZabbixAPIDatasource = function () {
|
|||||||
return [];
|
return [];
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}, {
|
|
||||||
key: 'queryNumericData',
|
|
||||||
value: function queryNumericData(target, timeRange, useTrends, options) {
|
|
||||||
var _this3 = this;
|
|
||||||
|
|
||||||
var getItemOptions = {
|
|
||||||
itemtype: 'num'
|
|
||||||
};
|
|
||||||
return this.zabbix.getItemsFromTarget(target, getItemOptions).then(function (items) {
|
|
||||||
return _this3.queryNumericDataForItems(items, target, timeRange, useTrends, options);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}, {
|
}, {
|
||||||
key: 'getTrendValueType',
|
key: 'getTrendValueType',
|
||||||
value: function getTrendValueType(target) {
|
value: function getTrendValueType(target) {
|
||||||
@@ -328,6 +338,11 @@ var ZabbixAPIDatasource = function () {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Query target data for Text mode
|
||||||
|
*/
|
||||||
|
|
||||||
}, {
|
}, {
|
||||||
key: 'queryTextData',
|
key: 'queryTextData',
|
||||||
value: function queryTextData(target, timeRange) {
|
value: function queryTextData(target, timeRange) {
|
||||||
@@ -350,6 +365,11 @@ var ZabbixAPIDatasource = function () {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Query target data for Item ID mode
|
||||||
|
*/
|
||||||
|
|
||||||
}, {
|
}, {
|
||||||
key: 'queryItemIdData',
|
key: 'queryItemIdData',
|
||||||
value: function queryItemIdData(target, timeRange, useTrends, options) {
|
value: function queryItemIdData(target, timeRange, useTrends, options) {
|
||||||
@@ -369,6 +389,11 @@ var ZabbixAPIDatasource = function () {
|
|||||||
return _this5.queryNumericDataForItems(items, target, timeRange, useTrends, options);
|
return _this5.queryNumericDataForItems(items, target, timeRange, useTrends, options);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Query target data for IT Services mode
|
||||||
|
*/
|
||||||
|
|
||||||
}, {
|
}, {
|
||||||
key: 'queryITServiceData',
|
key: 'queryITServiceData',
|
||||||
value: function queryITServiceData(target, timeRange, options) {
|
value: function queryITServiceData(target, timeRange, options) {
|
||||||
|
|||||||
@@ -143,6 +143,22 @@ class ZabbixAPIDatasource {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Query target data for Metrics mode
|
||||||
|
*/
|
||||||
|
queryNumericData(target, timeRange, useTrends, options) {
|
||||||
|
let getItemOptions = {
|
||||||
|
itemtype: 'num'
|
||||||
|
};
|
||||||
|
return this.zabbix.getItemsFromTarget(target, getItemOptions)
|
||||||
|
.then(items => {
|
||||||
|
return this.queryNumericDataForItems(items, target, timeRange, useTrends, options);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Query history for numeric items
|
||||||
|
*/
|
||||||
queryNumericDataForItems(items, target, timeRange, useTrends, options) {
|
queryNumericDataForItems(items, target, timeRange, useTrends, options) {
|
||||||
let [timeFrom, timeTo] = timeRange;
|
let [timeFrom, timeTo] = timeRange;
|
||||||
let getHistoryPromise;
|
let getHistoryPromise;
|
||||||
@@ -184,16 +200,6 @@ class ZabbixAPIDatasource {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
queryNumericData(target, timeRange, useTrends, options) {
|
|
||||||
let getItemOptions = {
|
|
||||||
itemtype: 'num'
|
|
||||||
};
|
|
||||||
return this.zabbix.getItemsFromTarget(target, getItemOptions)
|
|
||||||
.then(items => {
|
|
||||||
return this.queryNumericDataForItems(items, target, timeRange, useTrends, options);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
getTrendValueType(target) {
|
getTrendValueType(target) {
|
||||||
// Find trendValue() function and get specified trend value
|
// Find trendValue() function and get specified trend value
|
||||||
var trendFunctions = _.map(metricFunctions.getCategories()['Trends'], 'name');
|
var trendFunctions = _.map(metricFunctions.getCategories()['Trends'], 'name');
|
||||||
@@ -259,6 +265,9 @@ class ZabbixAPIDatasource {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Query target data for Text mode
|
||||||
|
*/
|
||||||
queryTextData(target, timeRange) {
|
queryTextData(target, timeRange) {
|
||||||
let [timeFrom, timeTo] = timeRange;
|
let [timeFrom, timeTo] = timeRange;
|
||||||
let options = {
|
let options = {
|
||||||
@@ -277,6 +286,9 @@ class ZabbixAPIDatasource {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Query target data for Item ID mode
|
||||||
|
*/
|
||||||
queryItemIdData(target, timeRange, useTrends, options) {
|
queryItemIdData(target, timeRange, useTrends, options) {
|
||||||
let itemids = target.itemids;
|
let itemids = target.itemids;
|
||||||
itemids = this.templateSrv.replace(itemids, options.scopedVars, zabbixItemIdsTemplateFormat);
|
itemids = this.templateSrv.replace(itemids, options.scopedVars, zabbixItemIdsTemplateFormat);
|
||||||
@@ -292,6 +304,9 @@ class ZabbixAPIDatasource {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Query target data for IT Services mode
|
||||||
|
*/
|
||||||
queryITServiceData(target, timeRange, options) {
|
queryITServiceData(target, timeRange, options) {
|
||||||
// Don't show undefined and hidden targets
|
// Don't show undefined and hidden targets
|
||||||
if (target.hide || (!target.itservice && !target.itServiceFilter) || !target.slaProperty) {
|
if (target.hide || (!target.itservice && !target.itServiceFilter) || !target.slaProperty) {
|
||||||
|
|||||||
Reference in New Issue
Block a user