44 lines
1.3 KiB
PHP
44 lines
1.3 KiB
PHP
<?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);
|
|
}
|
|
}
|