mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
Merge pull request #1760 from masaori335/kairosdb-cleanup
Cleanup KairosDB Plugin
This commit is contained in:
@@ -29,8 +29,9 @@ function (angular, _, kbn) {
|
|||||||
var queries = _.compact(_.map(options.targets, _.partial(convertTargetToQuery, options)));
|
var queries = _.compact(_.map(options.targets, _.partial(convertTargetToQuery, options)));
|
||||||
var plotParams = _.compact(_.map(options.targets, function(target) {
|
var plotParams = _.compact(_.map(options.targets, function(target) {
|
||||||
var alias = target.alias;
|
var alias = target.alias;
|
||||||
if (typeof target.alias == 'undefined' || target.alias == "")
|
if (typeof target.alias === 'undefined' || target.alias === "") {
|
||||||
alias = target.metric;
|
alias = target.metric;
|
||||||
|
}
|
||||||
return !target.hide
|
return !target.hide
|
||||||
? {alias: alias,
|
? {alias: alias,
|
||||||
exouter: target.exOuter}
|
exouter: target.exOuter}
|
||||||
@@ -171,8 +172,9 @@ function (angular, _, kbn) {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
details += ") ";
|
details += ") ";
|
||||||
if (details != " ( ) ")
|
if (details !== " ( ) ") {
|
||||||
target += details;
|
target += details;
|
||||||
|
}
|
||||||
var datapoints = [];
|
var datapoints = [];
|
||||||
|
|
||||||
for (var i = 0; i < result.values.length; i++) {
|
for (var i = 0; i < result.values.length; i++) {
|
||||||
@@ -180,8 +182,9 @@ function (angular, _, kbn) {
|
|||||||
var v = result.values[i][1];
|
var v = result.values[i][1];
|
||||||
datapoints[i] = [v, t];
|
datapoints[i] = [v, t];
|
||||||
}
|
}
|
||||||
if (plotParams[index].exouter)
|
if (plotParams[index].exouter) {
|
||||||
datapoints = PeakFilter(datapoints, 10);
|
datapoints = new PeakFilter(datapoints, 10);
|
||||||
|
}
|
||||||
output.push({ target: target, datapoints: datapoints });
|
output.push({ target: target, datapoints: datapoints });
|
||||||
});
|
});
|
||||||
index ++;
|
index ++;
|
||||||
@@ -387,28 +390,32 @@ function (angular, _, kbn) {
|
|||||||
function PeakFilter(dataIn, limit) {
|
function PeakFilter(dataIn, limit) {
|
||||||
var datapoints = dataIn;
|
var datapoints = dataIn;
|
||||||
var arrLength = datapoints.length;
|
var arrLength = datapoints.length;
|
||||||
if (arrLength <= 3)
|
if (arrLength <= 3) {
|
||||||
return datapoints;
|
return datapoints;
|
||||||
|
}
|
||||||
var LastIndx = arrLength - 1;
|
var LastIndx = arrLength - 1;
|
||||||
|
|
||||||
// Check first point
|
// Check first point
|
||||||
var prvDelta = Math.abs((datapoints[1][0] - datapoints[0][0]) / datapoints[0][0]);
|
var prvDelta = Math.abs((datapoints[1][0] - datapoints[0][0]) / datapoints[0][0]);
|
||||||
var nxtDelta = Math.abs((datapoints[1][0] - datapoints[2][0]) / datapoints[2][0]);
|
var nxtDelta = Math.abs((datapoints[1][0] - datapoints[2][0]) / datapoints[2][0]);
|
||||||
if (prvDelta >= limit && nxtDelta < limit)
|
if (prvDelta >= limit && nxtDelta < limit) {
|
||||||
datapoints[0][0] = datapoints[1][0];
|
datapoints[0][0] = datapoints[1][0];
|
||||||
|
}
|
||||||
|
|
||||||
// Check last point
|
// Check last point
|
||||||
prvDelta = Math.abs((datapoints[LastIndx - 1][0] - datapoints[LastIndx - 2][0]) / datapoints[LastIndx - 2][0]);
|
prvDelta = Math.abs((datapoints[LastIndx - 1][0] - datapoints[LastIndx - 2][0]) / datapoints[LastIndx - 2][0]);
|
||||||
nxtDelta = Math.abs((datapoints[LastIndx - 1][0] - datapoints[LastIndx][0]) / datapoints[LastIndx][0]);
|
nxtDelta = Math.abs((datapoints[LastIndx - 1][0] - datapoints[LastIndx][0]) / datapoints[LastIndx][0]);
|
||||||
if (prvDelta >= limit && nxtDelta < limit)
|
if (prvDelta >= limit && nxtDelta < limit) {
|
||||||
datapoints[LastIndx][0] = datapoints[LastIndx - 1][0];
|
datapoints[LastIndx][0] = datapoints[LastIndx - 1][0];
|
||||||
|
}
|
||||||
|
|
||||||
for (var i = 1; i < arrLength - 1; i++) {
|
for (var i = 1; i < arrLength - 1; i++) {
|
||||||
prvDelta = Math.abs((datapoints[i][0] - datapoints[i - 1][0]) / datapoints[i - 1][0]);
|
prvDelta = Math.abs((datapoints[i][0] - datapoints[i - 1][0]) / datapoints[i - 1][0]);
|
||||||
nxtDelta = Math.abs((datapoints[i][0] - datapoints[i + 1][0]) / datapoints[i + 1][0]);
|
nxtDelta = Math.abs((datapoints[i][0] - datapoints[i + 1][0]) / datapoints[i + 1][0]);
|
||||||
if (prvDelta >= limit && nxtDelta >= limit)
|
if (prvDelta >= limit && nxtDelta >= limit) {
|
||||||
datapoints[i][0] = (datapoints[i - 1][0] + datapoints[i + 1][0]) / 2;
|
datapoints[i][0] = (datapoints[i - 1][0] + datapoints[i + 1][0]) / 2;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return datapoints;
|
return datapoints;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -327,25 +327,6 @@ function (angular, _) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
// Validation
|
// Validation
|
||||||
function MetricListToObject(MetricList) {
|
|
||||||
var result = {};
|
|
||||||
var Metric;
|
|
||||||
var MetricArray = [];
|
|
||||||
var MetricCnt = 0;
|
|
||||||
for (var i =0;i < MetricList.length; i++) {
|
|
||||||
Metric = MetricList[i];
|
|
||||||
MetricArray = Metric.split('.');
|
|
||||||
if(!result.hasOwnProperty(MetricArray[0])) {
|
|
||||||
result[MetricArray[0]] = {};
|
|
||||||
}
|
|
||||||
if(!result[MetricArray[0]].hasOwnProperty(MetricArray[1])) {
|
|
||||||
result[MetricArray[0]][MetricArray[1]] = [];
|
|
||||||
}
|
|
||||||
result[MetricArray[0]][MetricArray[1]].push(MetricArray[2]);
|
|
||||||
}
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
function validateTarget(target) {
|
function validateTarget(target) {
|
||||||
var errs = {};
|
var errs = {};
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user