Example, PHP code to get Linux server status.
-
-
function get_used_status(){
- $fp = popen('top -b -n 2 | grep -E "^(Cpu|Mem|Tasks)"',"r"); //Get the system cpu and memory usage at a certain moment
- $rs = "";
- while(!feof($fp)){
- $rs .= fread($fp,1024);
- }
- pclose($fp );
- $sys_info = explode("n",$rs);
- $tast_info = explode(",",$sys_info[3]);//Process array
- $cpu_info = explode(",",$sys_info[ 4]); //CPU occupancy array
- $mem_info = explode(",",$sys_info[5]); //Memory occupancy array
- //Number of running processes
- $tast_running = trim(trim($ taste_info[1],'running'));
- //CPU usage
- $cpu_usage = trim(trim($cpu_info[0],'Cpu(s): '),'%us'); //Percentage< ;/p>
//Memory occupancy
- $mem_total = trim(trim($mem_info[0],'Mem: '),'k total');
- $mem_used = trim($mem_info[1 ],'k used');
- $mem_usage = round(100*intval($mem_used)/intval($mem_total),2); //Percent
-
- /*hard disk usage begin*/
- $fp = popen( 'df -lh | grep -E "^(/)"',"r");
- $rs = fread($fp,1024);
- pclose($fp);
- $rs = preg_replace("/s{ 2,}/",' ',$rs); //Replace multiple spaces with "_"
- $hd = explode(" ",$rs);
- $hd_avail = trim($hd[3],' G'); //Disk available space size unit G
- $hd_usage = trim($hd[4],'%'); //Mount point percentage
- //print_r($hd);
- /*Hard disk usage end*/
//Detection time
- $fp = popen("date +"%Y-%m-%d %H:%M"","r");
- $ rs = fread($fp,1024);
- pclose($fp);
- $detection_time = trim($rs);
/*Get IP address begin*/
- /*
- $ fp = popen('ifconfig eth0 | grep -E "(inet addr)"','r');
- $rs = fread($fp,1024);
- pclose($fp);
- $rs = preg_replace(" /s{2,}/",' ',trim($rs)); //Replace multiple spaces with "_"
- $rs = explode(" ",$rs);
- $ip = trim($ rs[1],'addr:');
- */
- /*Get IP addressend*/
- /*
- $file_name = "/tmp/data.txt"; // Absolute path: homedata.dat
- $file_pointer = fopen($file_name, "a+"); // "w" is a mode, see below for details
- fwrite($file_pointer,$ip); // First cut the file to 0 bytes, then write
- fclose($file_pointer); // End
- */
return array('cpu_usage'=>$cpu_usage,'mem_usage'=>$mem_usage,'hd_avail'=> $hd_avail,'hd_usage'=>
-
-
|