feat: Sentinel节点卡片添加HTTP链路延迟显示(横版左下角/网格右上角)
This commit is contained in:
@@ -294,6 +294,7 @@
|
||||
(sysInfo.trim() ? '<div class="node-sys">'+esc(sysInfo)+'</div>' : '')+
|
||||
'<div class="node-url">'+esc(n.url||'')+'</div>'+
|
||||
(n.notes ? '<div class="node-notes">📝 '+esc(n.notes)+'</div>' : '')+
|
||||
'<div class="node-latency" style="font-size:.7rem;color:var(--text-dim);margin-top:4px">⏱ —</div>'+
|
||||
'</div>'+
|
||||
'<div class="col-right-stack">'+
|
||||
'<div class="mtr" id="mtr-'+id+'-cpu"><div class="mtr-data"><span class="rlabel">CPU</span> <span class="rval cpu-val">0%</span></div><canvas id="'+id+'-cpu" height="60"></canvas></div>'+
|
||||
@@ -311,7 +312,10 @@
|
||||
'</div>';
|
||||
} else {
|
||||
card.innerHTML =
|
||||
'<div class="node-name">'+(n.online?'🟢':'🔴')+' '+esc(n.name)+'</div>'+
|
||||
'<div style="display:flex;justify-content:space-between;align-items:flex-start">'+
|
||||
'<div class="node-name">'+(n.online?'🟢':'🔴')+' '+esc(n.name)+'</div>'+
|
||||
'<span class="latency-val" style="font-size:.7rem;color:var(--text-dim);flex-shrink:0">⏱ —</span>'+
|
||||
'</div>'+
|
||||
(sysInfo.trim() ? '<div class="node-sys">'+esc(sysInfo)+'</div>' : '')+
|
||||
'<div class="node-url">'+esc(n.url||'')+'</div>'+
|
||||
(n.notes ? '<div class="node-notes">📝 '+esc(n.notes)+'</div>' : '')+
|
||||
@@ -342,6 +346,17 @@
|
||||
sysEl.textContent = si2;
|
||||
} else if (sysEl) { sysEl.remove(); }
|
||||
|
||||
// 延迟 (横版: col-left底部 / 网格: 右上角)
|
||||
var latEl = card.querySelector('.node-latency') || card.querySelector('.latency-val');
|
||||
if (latEl && n.latency_ms > 0) {
|
||||
var ms = n.latency_ms;
|
||||
latEl.textContent = '⏱ ' + (ms < 1000 ? ms + 'ms' : (ms/1000).toFixed(1)+'s');
|
||||
latEl.style.color = ms < 100 ? 'var(--success)' : ms < 500 ? 'var(--warning,#e0af68)' : 'var(--error)';
|
||||
} else if (latEl && n.online === false) {
|
||||
latEl.textContent = '⏱ —';
|
||||
latEl.style.color = 'var(--text-dim)';
|
||||
}
|
||||
|
||||
var body = isRow ? card.querySelector('.col-right-stack') : card.querySelector('.metrics-body');
|
||||
if (!body) return;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user