| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238 | 
							- <?php
 
- /**
 
-  *
 
-  * Cube Framework $Id$ qrmaTa+NriMTJ48TshnokxMdVBOgkgKyaCcqQAEZOSU=
 
-  *
 
-  * @link        http://codecu.be/framework
 
-  * @copyright   Copyright (c) 2016 CodeCube SRL
 
-  * @license     http://codecu.be/framework/license Commercial License
 
-  *
 
-  * @version     1.8
 
-  */
 
- namespace Cube;
 
- /**
 
-  * debug and different usage statistics class class
 
-  *
 
-  * Class Debug
 
-  *
 
-  * @package Cube
 
-  */
 
- class Debug
 
- {
 
-     protected static $_memoryStart;
 
-     protected static $_memoryEnd;
 
-     protected static $_timeStart;
 
-     protected static $_timeEnd;
 
-     protected static $_sqlQueries = array();
 
-     protected static $_sqlCount = 0;
 
-     protected static $_cpuUsageStart;
 
-     protected static $_cpuUsageEnd;
 
-     protected static $_cpuTimeUsageStart;
 
-     protected static $_cpuTimeUsageEnd;
 
-     public static function setMemoryStart()
 
-     {
 
-         self::$_memoryStart = self::_getMemory();
 
-     }
 
-     public static function setMemoryEnd()
 
-     {
 
-         self::$_memoryEnd = self::_getMemory();
 
-     }
 
-     public static function setTimeStart()
 
-     {
 
-         self::$_timeStart = self::_getCurrentTime();
 
-     }
 
-     public static function setTimeEnd()
 
-     {
 
-         self::$_timeEnd = self::_getCurrentTime();
 
-     }
 
-     public static function addSqlCount()
 
-     {
 
-         self::$_sqlCount++;
 
-     }
 
-     public static function setCpuUsageStart()
 
-     {
 
-         self::$_cpuUsageStart = self::_getCpuUsage();
 
-         self::$_cpuTimeUsageStart = microtime(true);
 
-     }
 
-     public static function setCpuUsageEnd()
 
-     {
 
-         self::$_cpuUsageEnd = self::_getCpuUsage();
 
-         self::$_cpuTimeUsageEnd = microtime(true);
 
-     }
 
-     /**
 
-      *
 
-      * add sql query to the debug log
 
-      *
 
-      * @param string $query
 
-      * @param null   $count
 
-      */
 
-     public static function addSqlQuery($query, $count = null)
 
-     {
 
-         if ($count === null) {
 
-             $count = count(self::$_sqlQueries);
 
-         }
 
-         $time = self::_getCurrentTime();
 
-         if (array_key_exists($count, self::$_sqlQueries)) {
 
-             $time -= self::$_sqlQueries[$count]['time'];
 
-         }
 
-         self::$_sqlQueries[$count] = array(
 
-             'query' => (string)$query,
 
-             'time'  => $time,
 
-         );
 
-     }
 
-     /**
 
-      *
 
-      * get current sql query count
 
-      *
 
-      * @return integer
 
-      */
 
-     public static function getSqlCount()
 
-     {
 
-         return self::$_sqlCount;
 
-     }
 
-     /**
 
-      *
 
-      * will return the memory usage in KB
 
-      *
 
-      * @return string
 
-      */
 
-     public static function getMemoryUsage()
 
-     {
 
-         self::setMemoryEnd();
 
-         return number_format((self::$_memoryEnd - self::$_memoryStart) / 1024, 2);
 
-     }
 
-     /**
 
-      *
 
-      * will return the loading time in seconds with 3 decimals
 
-      *
 
-      * @return string
 
-      */
 
-     public static function getLoadingSpeed()
 
-     {
 
-         self::setTimeEnd();
 
-         return number_format((self::$_timeEnd - self::$_timeStart), 3);
 
-     }
 
-     /**
 
-      *
 
-      * will return the sql queries executed
 
-      * if min time is > 0, return queries with running time that is greater
 
-      * than the input value
 
-      *
 
-      * @param float $minTime
 
-      *
 
-      * @return array
 
-      */
 
-     public static function getSqlQueries($minTime = null)
 
-     {
 
-         $queries = array();
 
-         if ($minTime > 0) {
 
-             foreach (self::$_sqlQueries as $query) {
 
-                 if ($query['time'] >= $minTime) {
 
-                     $queries[] = $query;
 
-                 }
 
-             }
 
-             return $queries;
 
-         }
 
-         return self::$_sqlQueries;
 
-     }
 
-     /**
 
-      *
 
-      * will return the number of sql queries executed
 
-      *
 
-      * @return integer
 
-      */
 
-     public static function getCountSqlQueries()
 
-     {
 
-         return count(self::$_sqlQueries);
 
-     }
 
-     /**
 
-      *
 
-      * returns cpu usage
 
-      *
 
-      * @return float
 
-      */
 
-     public static function getCpuUsage()
 
-     {
 
-         self::setCpuUsageEnd();
 
-         $time = (self::$_cpuTimeUsageEnd - self::$_cpuTimeUsageStart) * 1000000;
 
-         if ($time > 0) {
 
-             $usec = self::$_cpuUsageEnd - self::$_cpuUsageStart;
 
-             return sprintf("%01.2f", ($usec / $time) * 100);
 
-         }
 
-         return 0;
 
-     }
 
-     /**
 
-      *
 
-      * sets a loading time variable
 
-      *
 
-      * @return integer
 
-      */
 
-     protected static function _getCurrentTime()
 
-     {
 
-         list($usec, $sec) = explode(" ", microtime());
 
-         return ((float)$usec + (float)$sec);
 
-     }
 
-     /**
 
-      *
 
-      * sets a memory load variable
 
-      *
 
-      * @return integer
 
-      */
 
-     protected static function _getMemory()
 
-     {
 
-         return memory_get_usage();
 
-     }
 
-     /**
 
-      *
 
-      * get cpu usage
 
-      *
 
-      * @return float|null
 
-      */
 
-     protected static function _getCpuUsage()
 
-     {
 
-         if (function_exists('getrusage')) {
 
-             $data = getrusage();
 
-             return $data["ru_utime.tv_sec"] * 1e6 + $data["ru_utime.tv_usec"];
 
-         }
 
-         return 0;
 
-     }
 
- }
 
 
  |