feat: cumulative pulled/pushed GB totals in pools and array card headers
disk_io now returns {tr, tw} cumulative GB alongside {r, w} rates.
A centered span in each card h3 shows ↓total ↑total (since last boot),
updating each poll. Helpers updated for the new object format.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 4.6
parent
e9b9d1b5da
commit
63b1f0a76c
@@ -559,16 +559,23 @@ function vv_disk_io_rates(): array {
|
||||
// Save current snapshot
|
||||
@file_put_contents($snapFile, json_encode(['t' => $now, 'd' => $current], JSON_UNESCAPED_UNICODE));
|
||||
|
||||
$dt = max(0.5, $now - $prevTime);
|
||||
$rates = [];
|
||||
$dt = max(0.5, $now - $prevTime);
|
||||
$out = [];
|
||||
foreach ($current as $dev => [$rs, $ws]) {
|
||||
if (!isset($prev[$dev])) continue;
|
||||
[$prs, $pws] = $prev[$dev];
|
||||
$r = max(0.0, ($rs - $prs) * 512 / $dt / 1048576);
|
||||
$w = max(0.0, ($ws - $pws) * 512 / $dt / 1048576);
|
||||
if ($r > 0.01 || $w > 0.01) $rates[$dev] = [round($r, 1), round($w, 1)];
|
||||
$entry = [
|
||||
'tr' => round($rs * 512 / 1073741824, 2), // cumulative GB read
|
||||
'tw' => round($ws * 512 / 1073741824, 2), // cumulative GB written
|
||||
];
|
||||
if (isset($prev[$dev])) {
|
||||
[$prs, $pws] = $prev[$dev];
|
||||
$r = max(0.0, ($rs - $prs) * 512 / $dt / 1048576);
|
||||
$w = max(0.0, ($ws - $pws) * 512 / $dt / 1048576);
|
||||
if ($r > 0.01) $entry['r'] = round($r, 1);
|
||||
if ($w > 0.01) $entry['w'] = round($w, 1);
|
||||
}
|
||||
$out[$dev] = $entry;
|
||||
}
|
||||
return $rates;
|
||||
return $out;
|
||||
}
|
||||
|
||||
function vv_disk_thresholds(): array {
|
||||
|
||||
Reference in New Issue
Block a user