refactor: extract isUseTrends() function
This commit is contained in:
20
dist/datasource-zabbix/datasource.js
vendored
20
dist/datasource-zabbix/datasource.js
vendored
@@ -250,12 +250,12 @@ System.register(['lodash', 'app/core/utils/datemath', './utils', './migrations',
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Create request for each target
|
// Create request for each target
|
||||||
var promises = _.map(options.targets, function (target) {
|
var promises = _.map(options.targets, function (t) {
|
||||||
var timeFrom = Math.ceil(dateMath.parse(options.range.from) / 1000);
|
var timeFrom = Math.ceil(dateMath.parse(options.range.from) / 1000);
|
||||||
var timeTo = Math.ceil(dateMath.parse(options.range.to) / 1000);
|
var timeTo = Math.ceil(dateMath.parse(options.range.to) / 1000);
|
||||||
|
|
||||||
// Prevent changes of original object
|
// Prevent changes of original object
|
||||||
target = _.cloneDeep(target);
|
var target = _.cloneDeep(t);
|
||||||
_this.replaceTargetVariables(target, options);
|
_this.replaceTargetVariables(target, options);
|
||||||
|
|
||||||
// Apply Time-related functions (timeShift(), etc)
|
// Apply Time-related functions (timeShift(), etc)
|
||||||
@@ -270,9 +270,7 @@ System.register(['lodash', 'app/core/utils/datemath', './utils', './migrations',
|
|||||||
timeTo = time_to;
|
timeTo = time_to;
|
||||||
}
|
}
|
||||||
|
|
||||||
var useTrendsFrom = Math.ceil(dateMath.parse('now-' + _this.trendsFrom) / 1000);
|
var useTrends = _this.isUseTrends([timeFrom, timeTo]);
|
||||||
var useTrendsRange = Math.ceil(utils.parseInterval(_this.trendsRange) / 1000);
|
|
||||||
var useTrends = _this.trends && (timeFrom <= useTrendsFrom || timeTo - timeFrom >= useTrendsRange);
|
|
||||||
|
|
||||||
// Metrics or Text query mode
|
// Metrics or Text query mode
|
||||||
if (target.mode !== 1) {
|
if (target.mode !== 1) {
|
||||||
@@ -639,6 +637,18 @@ System.register(['lodash', 'app/core/utils/datemath', './utils', './migrations',
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
}, {
|
||||||
|
key: 'isUseTrends',
|
||||||
|
value: function isUseTrends(timeRange) {
|
||||||
|
var _timeRange = _slicedToArray(timeRange, 2),
|
||||||
|
timeFrom = _timeRange[0],
|
||||||
|
timeTo = _timeRange[1];
|
||||||
|
|
||||||
|
var useTrendsFrom = Math.ceil(dateMath.parse('now-' + this.trendsFrom) / 1000);
|
||||||
|
var useTrendsRange = Math.ceil(utils.parseInterval(this.trendsRange) / 1000);
|
||||||
|
var useTrends = this.trends && (timeFrom <= useTrendsFrom || timeTo - timeFrom >= useTrendsRange);
|
||||||
|
return useTrends;
|
||||||
|
}
|
||||||
}]);
|
}]);
|
||||||
|
|
||||||
return ZabbixAPIDatasource;
|
return ZabbixAPIDatasource;
|
||||||
|
|||||||
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
20
dist/test/datasource-zabbix/datasource.js
vendored
20
dist/test/datasource-zabbix/datasource.js
vendored
@@ -121,12 +121,12 @@ var ZabbixAPIDatasource = function () {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Create request for each target
|
// Create request for each target
|
||||||
var promises = _lodash2.default.map(options.targets, function (target) {
|
var promises = _lodash2.default.map(options.targets, function (t) {
|
||||||
var timeFrom = Math.ceil(dateMath.parse(options.range.from) / 1000);
|
var timeFrom = Math.ceil(dateMath.parse(options.range.from) / 1000);
|
||||||
var timeTo = Math.ceil(dateMath.parse(options.range.to) / 1000);
|
var timeTo = Math.ceil(dateMath.parse(options.range.to) / 1000);
|
||||||
|
|
||||||
// Prevent changes of original object
|
// Prevent changes of original object
|
||||||
target = _lodash2.default.cloneDeep(target);
|
var target = _lodash2.default.cloneDeep(t);
|
||||||
_this.replaceTargetVariables(target, options);
|
_this.replaceTargetVariables(target, options);
|
||||||
|
|
||||||
// Apply Time-related functions (timeShift(), etc)
|
// Apply Time-related functions (timeShift(), etc)
|
||||||
@@ -141,9 +141,7 @@ var ZabbixAPIDatasource = function () {
|
|||||||
timeTo = time_to;
|
timeTo = time_to;
|
||||||
}
|
}
|
||||||
|
|
||||||
var useTrendsFrom = Math.ceil(dateMath.parse('now-' + _this.trendsFrom) / 1000);
|
var useTrends = _this.isUseTrends([timeFrom, timeTo]);
|
||||||
var useTrendsRange = Math.ceil(utils.parseInterval(_this.trendsRange) / 1000);
|
|
||||||
var useTrends = _this.trends && (timeFrom <= useTrendsFrom || timeTo - timeFrom >= useTrendsRange);
|
|
||||||
|
|
||||||
// Metrics or Text query mode
|
// Metrics or Text query mode
|
||||||
if (target.mode !== 1) {
|
if (target.mode !== 1) {
|
||||||
@@ -544,6 +542,18 @@ var ZabbixAPIDatasource = function () {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
}, {
|
||||||
|
key: 'isUseTrends',
|
||||||
|
value: function isUseTrends(timeRange) {
|
||||||
|
var _timeRange = _slicedToArray(timeRange, 2),
|
||||||
|
timeFrom = _timeRange[0],
|
||||||
|
timeTo = _timeRange[1];
|
||||||
|
|
||||||
|
var useTrendsFrom = Math.ceil(dateMath.parse('now-' + this.trendsFrom) / 1000);
|
||||||
|
var useTrendsRange = Math.ceil(utils.parseInterval(this.trendsRange) / 1000);
|
||||||
|
var useTrends = this.trends && (timeFrom <= useTrendsFrom || timeTo - timeFrom >= useTrendsRange);
|
||||||
|
return useTrends;
|
||||||
|
}
|
||||||
}]);
|
}]);
|
||||||
|
|
||||||
return ZabbixAPIDatasource;
|
return ZabbixAPIDatasource;
|
||||||
|
|||||||
@@ -73,12 +73,12 @@ class ZabbixAPIDatasource {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Create request for each target
|
// Create request for each target
|
||||||
let promises = _.map(options.targets, target => {
|
let promises = _.map(options.targets, t => {
|
||||||
let timeFrom = Math.ceil(dateMath.parse(options.range.from) / 1000);
|
let timeFrom = Math.ceil(dateMath.parse(options.range.from) / 1000);
|
||||||
let timeTo = Math.ceil(dateMath.parse(options.range.to) / 1000);
|
let timeTo = Math.ceil(dateMath.parse(options.range.to) / 1000);
|
||||||
|
|
||||||
// Prevent changes of original object
|
// Prevent changes of original object
|
||||||
target = _.cloneDeep(target);
|
let target = _.cloneDeep(t);
|
||||||
this.replaceTargetVariables(target, options);
|
this.replaceTargetVariables(target, options);
|
||||||
|
|
||||||
// Apply Time-related functions (timeShift(), etc)
|
// Apply Time-related functions (timeShift(), etc)
|
||||||
@@ -89,12 +89,7 @@ class ZabbixAPIDatasource {
|
|||||||
timeTo = time_to;
|
timeTo = time_to;
|
||||||
}
|
}
|
||||||
|
|
||||||
let useTrendsFrom = Math.ceil(dateMath.parse('now-' + this.trendsFrom) / 1000);
|
let useTrends = this.isUseTrends([timeFrom, timeTo]);
|
||||||
let useTrendsRange = Math.ceil(utils.parseInterval(this.trendsRange) / 1000);
|
|
||||||
let useTrends = this.trends && (
|
|
||||||
(timeFrom <= useTrendsFrom) ||
|
|
||||||
(timeTo - timeFrom >= useTrendsRange)
|
|
||||||
);
|
|
||||||
|
|
||||||
// Metrics or Text query mode
|
// Metrics or Text query mode
|
||||||
if (target.mode !== 1) {
|
if (target.mode !== 1) {
|
||||||
@@ -478,6 +473,16 @@ class ZabbixAPIDatasource {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
isUseTrends(timeRange) {
|
||||||
|
let [timeFrom, timeTo] = timeRange;
|
||||||
|
let useTrendsFrom = Math.ceil(dateMath.parse('now-' + this.trendsFrom) / 1000);
|
||||||
|
let useTrendsRange = Math.ceil(utils.parseInterval(this.trendsRange) / 1000);
|
||||||
|
let useTrends = this.trends && (
|
||||||
|
(timeFrom <= useTrendsFrom) ||
|
||||||
|
(timeTo - timeFrom >= useTrendsRange)
|
||||||
|
);
|
||||||
|
return useTrends;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function bindFunctionDefs(functionDefs, category) {
|
function bindFunctionDefs(functionDefs, category) {
|
||||||
|
|||||||
Reference in New Issue
Block a user