2014-11-15 78 views
0

我想在Yii中設置DB配置文件,因爲我們在處理大量數據時遇到了一些問題。我使用這些指令來進行設置:Yii 1.1: Configuring CWebLogRoute for DB profilingYii DB配置文件

這裏是我的代碼是什麼樣子

的index.php

defined('YII_DEBUG') or define('YII_DEBUG',true); 
//show profiler 
defined('YII_DEBUG_SHOW_PROFILER') or define('YII_DEBUG_SHOW_PROFILER',true); 
//enable profiling 
defined('YII_DEBUG_PROFILING') or define('YII_DEBUG_PROFILING',true); 
//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); 

的config/main.php

'db'=>array(
     'connectionString' => 'mysql:host=******;dbname=******', 
     'emulatePrepare' => true, 
     'username' => '******', 
     'password' => '******', 
     'charset' => 'utf8', 
     'enableProfiling' => YII_DEBUG_PROFILING, 
    ), 
    'authManager'=>array(
     'class'=>'DbAuthManager', 
     'connectionID'=>'db', 
     'defaultRoles'=>array('guest') 
    ), 
    'errorHandler'=>array(
     'errorAction'=>$errorHandler, 

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

後,我設置這一切,我有兩個「未定義常量」錯誤的config/main.php文件中使用的常量。

由於這不起作用,我試圖將它們硬編碼爲TRUE,錯誤消失,但沒有任何反應。當我嘗試CWebLogRoute時,屏幕上沒有看到任何東西,當我嘗試使用CFileLogRoute時,看不到任何寫入Yii日誌的東西。

任何想法爲什麼這不按預期工作?或者我錯過了輸出的地方?

在此先感謝您的幫助!

Yii的版本:1.1.13
PHP:5.5.3
阿帕奇
MySQL的

回答

0

您需要指明要記錄DB象下面這樣:

'log'=>array(
    'class'=>'CLogRouter', 
    'routes'=>array(
     array(
      'class'=>'CWebLogRoute', 
      'enabled' =>TRUE, 
      'categories' => 'system.db.*', 
     ), 
    ), 
), 

您還需要刪除'levels'=>'error, warning',該行只記錄了errorswarnings

您也可以兼得CFileLogRouteCWebLogRoute象下面這樣:

'log'=>array(
    'class'=>'CLogRouter', 
    'routes'=>array(
     array(
      'class'=>'CWebLogRoute', 
      'enabled' =>TRUE, 
      'categories' => 'system.db.*', 
     ), 
     array(
      'class'=>'CFileLogRoute', 
      'enabled' =>TRUE, 
      'categories' => 'system.db.*', 
     ), 
    ), 
),