优化前端的流量显示信息

pull/131/head
nzzaidi 2022-02-07 23:12:48 +08:00
parent edcaa6ce45
commit 8263cca26e
1 changed files with 102 additions and 62 deletions

View File

@ -4,47 +4,57 @@ var d = 0;
var server_status = new Array(); var server_status = new Array();
function timeSince(date) { function timeSince(date) {
if(date == 0) if (date == 0) return "从未";
return "从未.";
var seconds = Math.floor((new Date() - date) / 1000); var seconds = Math.floor((new Date() - date) / 1000);
var interval = Math.floor(seconds / 60); var interval = Math.floor(seconds / 31536000);
if (interval > 1)
return interval + " 分钟前."; if (interval > 1) return interval + " 年前";
else interval = Math.floor(seconds / 2592000);
return "几秒前."; if (interval > 1) return interval + " 月前";
interval = Math.floor(seconds / 86400);
if (interval > 1) return interval + " 日前";
interval = Math.floor(seconds / 3600);
if (interval > 1) return interval + " 小时前";
interval = Math.floor(seconds / 60);
if (interval > 1) return interval + " 分钟前";
/*if(Math.floor(seconds) >= 5)
return Math.floor(seconds) + " seconds";*/
else return "刚刚";
} }
function bytesToSize(bytes, precision, si) function bytesToSize(bytes, precision, si) {
{
var ret; var ret;
si = typeof si !== 'undefined' ? si : 0; si = typeof si !== "undefined" ? si : 0;
if(si != 0) { if (si != 0) {
var megabyte = 1000 * 1000; var kilobyte = 1000;
var megabyte = kilobyte * 1000;
var gigabyte = megabyte * 1000; var gigabyte = megabyte * 1000;
var terabyte = gigabyte * 1000; var terabyte = gigabyte * 1000;
} else { } else {
var megabyte = 1024 * 1024; var kilobyte = 1024;
var megabyte = kilobyte * 1024;
var gigabyte = megabyte * 1024; var gigabyte = megabyte * 1024;
var terabyte = gigabyte * 1024; var terabyte = gigabyte * 1024;
} }
if ((bytes >= megabyte) && (bytes < gigabyte)) { if (bytes >= 0 && bytes < kilobyte) {
ret = (bytes / megabyte).toFixed(precision) + ' M'; return bytes + " B";
} else if (bytes >= kilobyte && bytes < megabyte) {
} else if ((bytes >= gigabyte) && (bytes < terabyte)) { ret = (bytes / kilobyte).toFixed(precision) + " K";
ret = (bytes / gigabyte).toFixed(precision) + ' G'; } else if (bytes >= megabyte && bytes < gigabyte) {
ret = (bytes / megabyte).toFixed(precision) + " M";
} else if (bytes >= gigabyte && bytes < terabyte) {
ret = (bytes / gigabyte).toFixed(precision) + " G";
} else if (bytes >= terabyte) { } else if (bytes >= terabyte) {
ret = (bytes / terabyte).toFixed(precision) + ' T'; ret = (bytes / terabyte).toFixed(precision) + " T";
} else { } else {
return bytes + ' B'; return bytes + " B";
} }
if(si != 0) { if (si != 0) {
return ret + 'B'; return ret + "B";
} else { } else {
return ret + 'iB'; return ret + "iB";
} }
} }
@ -178,28 +188,58 @@ function uptime() {
// Network // Network
var netstr = ""; var netstr = "";
if(result.servers[i].network_rx < 1024*1024) if (result.servers[i].network_rx < 1024)
netstr += (result.servers[i].network_rx/1024).toFixed(1) + "K"; netstr += result.servers[i].network_rx.toFixed(0) + "B";
else if (result.servers[i].network_rx < 1024 * 1024)
netstr += (result.servers[i].network_rx / 1024).toFixed(1) + "K";
else else
netstr += (result.servers[i].network_rx/1024/1024).toFixed(1) + "M"; netstr +=
netstr += " | " (result.servers[i].network_rx / 1024 / 1024).toFixed(1) + "M";
if(result.servers[i].network_tx < 1024*1024) netstr += " | ";
netstr += (result.servers[i].network_tx/1024).toFixed(1) + "K"; if (result.servers[i].network_tx < 1024)
netstr += result.servers[i].network_tx.toFixed(0) + "B";
else if (result.servers[i].network_tx < 1024 * 1024)
netstr += (result.servers[i].network_tx / 1024).toFixed(1) + "K";
else else
netstr += (result.servers[i].network_tx/1024/1024).toFixed(1) + "M"; netstr +=
(result.servers[i].network_tx / 1024 / 1024).toFixed(1) + "M";
TableRow.children["network"].innerHTML = netstr; TableRow.children["network"].innerHTML = netstr;
//Traffic //Traffic
var trafficstr = ""; var trafficstr = "";
if(result.servers[i].network_in < 1024*1024*1024*1024) if (result.servers[i].network_in < 1024)
trafficstr += (result.servers[i].network_in/1024/1024/1024).toFixed(2) + "G"; trafficstr += result.servers[i].network_in.toFixed(0) + "B";
else if (result.servers[i].network_in < 1024 * 1024)
trafficstr += (result.servers[i].network_in / 1024).toFixed(1) + "K";
else if (result.servers[i].network_in < 1024 * 1024 * 1024)
trafficstr +=
(result.servers[i].network_in / 1024 / 1024).toFixed(1) + "M";
else if (result.servers[i].network_in < 1024 * 1024 * 1024 * 1024)
trafficstr +=
(result.servers[i].network_in / 1024 / 1024 / 1024).toFixed(2) +
"G";
else else
trafficstr += (result.servers[i].network_in/1024/1024/1024/1024).toFixed(2) + "T"; trafficstr +=
trafficstr += " | " (result.servers[i].network_in / 1024 / 1024 / 1024 / 1024).toFixed(
if(result.servers[i].network_out < 1024*1024*1024*1024) 2
trafficstr += (result.servers[i].network_out/1024/1024/1024).toFixed(2) + "G"; ) + "T";
trafficstr += " | ";
if (result.servers[i].network_out < 1024)
trafficstr += result.servers[i].network_out.toFixed(0) + "B";
else if (result.servers[i].network_out < 1024 * 1024)
trafficstr += (result.servers[i].network_out / 1024).toFixed(1) + "K";
else if (result.servers[i].network_out < 1024 * 1024 * 1024)
trafficstr +=
(result.servers[i].network_out / 1024 / 1024).toFixed(1) + "M";
else if (result.servers[i].network_out < 1024 * 1024 * 1024 * 1024)
trafficstr +=
(result.servers[i].network_out / 1024 / 1024 / 1024).toFixed(2) +
"G";
else else
trafficstr += (result.servers[i].network_out/1024/1024/1024/1024).toFixed(2) + "T"; trafficstr +=
(result.servers[i].network_out / 1024 / 1024 / 1024 / 1024).toFixed(
2
) + "T";
TableRow.children["traffic"].innerHTML = trafficstr; TableRow.children["traffic"].innerHTML = trafficstr;
// CPU // CPU