feat:根据type获取metic的对应值

This commit is contained in:
zhangyu
2021-02-04 12:32:14 +08:00
parent e4c63d6a3b
commit 44cee2e5de

View File

@@ -523,16 +523,16 @@ export const tableSet = {
case 'project': case 'project':
switch(prop){ switch(prop){
case 'id': return'e.id'; case 'id': return'e.id';
case 'asset': return'a.host'; case 'asset': return'a.host';
case 'port': return'e.port'; case 'port': return'e.port';
case 'project': return'p.name'; case 'project': return'p.name';
case 'module': return'm.name'; case 'module': return'm.name';
case 'type': return'm.type'; case 'type': return'm.type';
case 'state' :return 'es.state'; case 'state' :return 'es.state';
// case 'path': return'e.path'; // case 'path': return'e.path';
default : return prop; default : return prop;
} }
case 'dc': case 'dc':
switch(prop){ switch(prop){
@@ -689,6 +689,33 @@ export const tableSet = {
} }
} }
export function getMetricTypeValue(queryItem,type){
let copy=JSON.parse(JSON.stringify(queryItem));
switch (type) {
case 'min':
let min =copy.sort((x,y)=>{return parseFloat(x[1]) - parseFloat(y[1])})[0][1];
return min;
case 'max':
let max =copy.sort((x,y)=>{return parseFloat(y[1]) - parseFloat(x[1])})[0][1];
return max;
case 'avg':
copy = copy.map(t=>parseFloat(t[1]));
let sum = eval(copy.join('+'));
let avg = sum / copy.length;
return avg;
case 'last':
let last =copy.sort((x,y)=>{return parseFloat(y[0]) - parseFloat(x[0])})[0][1];
return last;
case 'first':
let first =copy.sort((x,y)=>{return parseFloat(y[0]) - parseFloat(x[0])})[copy.length][1];
return first;
case 'total':
copy = copy.map(t=>parseFloat(t[1]));
let total = eval(copy.join('+'));
return total;
}
}
export function blankPromise() { export function blankPromise() {
return new Promise(resolve => {resolve();}); return new Promise(resolve => {resolve();});
} }