diff --git a/manual_trading_hub/static/app.css b/manual_trading_hub/static/app.css
index 4330f03..9b89807 100644
--- a/manual_trading_hub/static/app.css
+++ b/manual_trading_hub/static/app.css
@@ -833,8 +833,12 @@ html[data-theme="light"] .host-metric-bar {
height: 100%;
width: 0%;
border-radius: inherit;
- background: #3b82f6;
- transition: width 0.35s ease;
+ background: #22c55e;
+ transition: width 0.35s ease, background 0.2s ease;
+}
+
+.host-metric-fill.ok {
+ background: #22c55e;
}
.host-metric-fill.warn {
diff --git a/manual_trading_hub/static/app.js b/manual_trading_hub/static/app.js
index 04494ab..b7ae024 100644
--- a/manual_trading_hub/static/app.js
+++ b/manual_trading_hub/static/app.js
@@ -112,8 +112,16 @@
function hostMetricLevel(percent) {
const p = Number(percent);
if (!Number.isFinite(p)) return "ok";
- if (p >= 90) return "bad";
- if (p >= 75) return "warn";
+ if (p >= HOST_RESOURCE_ALERT_THRESHOLD) return "bad";
+ return "ok";
+ }
+
+ function hostOverallLevel(cpu, mem, disk) {
+ const vals = [cpu && cpu.percent, mem && mem.percent, disk && disk.percent];
+ for (let i = 0; i < vals.length; i++) {
+ const p = Number(vals[i]);
+ if (Number.isFinite(p) && p >= HOST_RESOURCE_ALERT_THRESHOLD) return "bad";
+ }
return "ok";
}
@@ -122,9 +130,8 @@
const p = Math.max(0, Math.min(100, Number(percent) || 0));
const level = hostMetricLevel(p);
fillEl.style.width = p + "%";
- fillEl.classList.remove("warn", "bad");
- if (level === "warn") fillEl.classList.add("warn");
- if (level === "bad") fillEl.classList.add("bad");
+ fillEl.classList.remove("warn", "bad", "ok");
+ fillEl.classList.add(level === "bad" ? "bad" : "ok");
}
function checkHostResourceAlert(cpu, mem) {
@@ -225,14 +232,7 @@
const disk = data.disk || {};
const net = data.network || {};
checkHostResourceAlert(cpu, mem);
- const levels = [
- hostMetricLevel(cpu.percent),
- hostMetricLevel(mem.percent),
- hostMetricLevel(disk.percent),
- ];
- let overall = "ok";
- if (levels.includes("bad")) overall = "bad";
- else if (levels.includes("warn")) overall = "warn";
+ const overall = hostOverallLevel(cpu, mem, disk);
if (dot) dot.className = "host-status-dot " + overall;
const hostname = data.hostname || "服务器";
if (name) {
diff --git a/manual_trading_hub/static/index.html b/manual_trading_hub/static/index.html
index 9e2cc89..19cfbe6 100644
--- a/manual_trading_hub/static/index.html
+++ b/manual_trading_hub/static/index.html
@@ -653,6 +653,6 @@
-
+