2014-02-18 49 views
1

如何查看每個AR查詢數據庫需要多少資源(操作系統和處理器)?Yii應用程序使用的系統資源

功能memory_get_usage()memory_get_peak_usage()不能幫助我們在這個問題上。

現在我使用的是:

ExecutionTime: <?=round(Yii::getLogger()->executionTime, 3); ?>; 
MemoryUsage: <?=round(Yii::getLogger()->memoryUsage/1024/1024, 3)." MB"; ?>; 

但是這會導致整個應用程序。

回答

0

你可以嘗試使用「CWebLogRoute」。它會告訴你更多的信息。

嘗試將它添加到「main.php」下面。

'log' => array(
    'class' => 'CLogRouter', 
    'routes' => array(
     array(
      'class' => 'CFileLogRoute', 
      'levels' => 'error, warning', 
     ), 

     array(
      'class'=>'CWebLogRoute', 
     ), 
    ), 
), 
1

也許你應該安裝yii調試工具欄http://www.yiiframework.com/extension/yii-debug-toolbar/。我們發現它非常適用於性能分析,一旦安裝,它非常易於主動運行

defined('YII_ENABLE_ERROR_HANDLER') or define('YII_ENABLE_ERROR_HANDLER', false); 
//show profiler 
defined('YII_DEBUG_SHOW_PROFILER') or define('YII_DEBUG_SHOW_PROFILER', false); 
//enable profiling 
defined('YII_DEBUG_PROFILING') or define('YII_DEBUG_PROFILING', false); 
//trace level 
defined('YII_TRACE_LEVEL') or define('YII_TRACE_LEVEL', 0); 
//execution time 
defined('YII_DEBUG_DISPLAY_TIME') or define('YII_DEBUG_DISPLAY_TIME', false); 
//debuging 
defined('YII_DEBUG') or define('YII_DEBUG',true); 

認爲這些行也是用於sql分析。發現有幾個谷歌搜索,但我找不到原來的網址。對不起,那

你也應該將其添加到配置/主

'components'=>array(
    'log'=>array(
     'class'=>'CLogRouter', 
     'routes'=>array(
        array(
         'class'=>'ext.yii-debug-toolbar.YiiDebugToolbarRoute', 
       'ipFilters'=>array('127.0.0.1'), 
        ), 
       ), 
      ), 
) 
相關問題