From da5ae919f868d1da90548d7cbafec55a06d2a62b Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Thu, 5 Jun 2014 20:41:32 +0200 Subject: Started "System Status" page --- modules/systemstatus.inc.php | 75 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 modules/systemstatus.inc.php (limited to 'modules/systemstatus.inc.php') diff --git a/modules/systemstatus.inc.php b/modules/systemstatus.inc.php new file mode 100644 index 00000000..c6d45812 --- /dev/null +++ b/modules/systemstatus.inc.php @@ -0,0 +1,75 @@ +$action(); + else + echo "Action $action not known in " . get_class(); + } + + protected function ajaxDiskStat() + { + $task = Taskmanager::submit('DiskStat'); + $task = Taskmanager::waitComplete($task); + + if (!isset($task['data']['list']) || empty($task['data']['list'])) { + Taskmanager::addErrorMessage($task); + Message::renderList(); + return; + } + $store = Property::getVmStoreUrl(); + $storeUsage = false; + $systemUsage = false; + if ($store !== false) { + if ($store === '') + $storePoint = '/'; + else + $storePoint = '/srv/openslx/nfs'; + foreach ($task['data']['list'] as $entry) { + if ($entry['mountPoint'] === $storePoint) + $storeUsage = array( + 'percent' => $entry['usedPercent'], + 'size' => Util::readableFileSize ($entry['sizeKb'] * 1024), + 'color' => dechex(round(($entry['usedPercent'] / 100) * 15)) . dechex(round(((100 - $entry['usedPercent']) / 100) * 15)) . '4' + ); + if ($entry['mountPoint'] === '/') + $systemUsage = array( + 'percent' => $entry['usedPercent'], + 'size' => Util::readableFileSize ($entry['sizeKb'] * 1024), + 'color' => dechex(round(($entry['usedPercent'] / 100) * 15)) . dechex(round(((100 - $entry['usedPercent']) / 100) * 15)) . '4' + ); + } + } + echo Render::parse('systemstatus/diskstat', array( + 'store' => $storeUsage, + 'system' => $systemUsage + )); + } + +} -- cgit v1.2.3-55-g7522