服务器性能负载记录工具

来源:互联网 发布:ftp协议默认端口号 编辑:程序博客网 时间:2024/05/18 01:12

了半天居然没找到问题在哪里,一咬牙,写了个性能和负载的记录工具,再出事我可有记录了-,-||

备注:只能在linux下用。

  1. < ?php
  2. date_default_timezone_set('Asia/Shanghai');
  3. define('SLEEPTIME',10);       //10秒记录一次
  4. $memfile  = "/proc/meminfo";
  5. $loadfile = "/proc/loadavg";
  6. $logfile  = sprintf("/var/www/html/log/%s.log",date('Y-m-d'));
  7. while(1)
  8. {
  9. $log = getload();
  10. $log .= getmem();
  11. $log .= mymem();
  12. $log .= "/n/r".date("Y-m-d H:i:s");
  13. $log .= "/n/r/n/r";
  14. $handle = fopen($logfile,'a');
  15. fwrite($handle,$log);
  16. fclose($handle);
  17. sleep(SLEEPTIME);
  18. }
  19.  
  20. function getload()      //获得负载
  21. {
  22. global $loadfile;
  23. return file_get_contents($loadfile);
  24. }
  25. function getmem()      //获得内存占用
  26. {
  27. global $memfile;
  28. $mem = file($memfile);
  29. return $mem[0];
  30. }
  31. function mymem()       //程序本身内存占用
  32. {
  33. $pid = getmypid();
  34. exec("ps -eo%mem,rss,pid | grep $pid", $output);
  35.         $output = explode(" ", $output[0]);
  36.         return $output[1] * 1024;
  37. }
  38. ?>
原创粉丝点击