<?php class ServerApi extends ApiController { private function getSystemMemInfo() { $data = explode("\n", file_get_contents("/proc/meminfo")); $meminfo = array(); foreach ($data as $line) { $data = explode(":", $line); if (count($data)!=2) continue; $meminfo[$data[0]] = trim($data[1]); } return $meminfo; } private function getProcessorUsage(){ $loads=sys_getloadavg(); $core_nums=trim(shell_exec("grep -P '^physical id' /proc/cpuinfo|wc -l")); $load = round($loads[0]/($core_nums + 1)*100, 2); return $load; } public function default(){ //$this->requireAuth(); $response = [ "cpu_load" => $this->getProcessorUsage(), "uptime" => shell_exec('uptime -p'), "ramFree" => $this->getSystemMemInfo()["MemFree"], "ramTotal" => $this->getSystemMemInfo()["MemTotal"], "diskFree" => disk_free_space("/"), "diskTotal" => disk_total_space("/"), "serverTime" => date('m. d. Y H:i:s'), "serverTimeZone" => date('e'), ]; $this->response($response); } public function logStatus() { $logKeeper = new LogMaintainer(); $response = $logKeeper::getStats(); $this->response($response); } }