2012-08-31 41 views
5

當執行中發生錯誤時,我們會獲得堆棧跟蹤,如下圖所示。在yii框架中顯示堆棧跟蹤

see this

我想看看這個跟蹤頁面每次我執行一個頁面時底部。 (即使沒有錯誤),以便我可以找出哪些頁面運行以及框架內發生了什麼

如何激活此功能?

非常感謝您

回答

10

A「堆棧跟蹤」並沒有太大的意義了錯誤的場景之外,但你可以看到什麼的Yii達到通過啓用調試模式。在您的index.php添加

defined('YII_DEBUG') or define('YII_DEBUG',true); 

和在主Yii的配置數組(CONFIG/main.php)的log部件,所述部件routes下添加此數組:

  array(
       'class'=>'CWebLogRoute', 
       'enabled' => YII_DEBUG, 
      ), 

這將顯示你想要什麼。

確保從生產代碼中刪除YII_DEBUG行!

+0

謝謝,但我想獲得更多的細節。 – Joyal

+0

有關具體內容的更多細節? – Ansari

+2

請記住添加'defined('YII_DEBUG')或define('YII_DEBUG',true);'line _before_包括yii.php或yiilite.php。 –

0

如果您在配置文件中定義了文件日誌路由,則可以在存儲在運行時目錄中的日誌文件中看到日誌。

文件日誌路由的定義是這樣的:

... 
'routes'=>array(
       array(
        'class'=>'CFileLogRoute', 
        'levels'=>'trace, info', 
        'categories'=>'system.*', 
       ), 
     ) 
2

你可以在您的項目中打開這些代碼行config/main.php

'log'=>array(
     'class'=>'CLogRouter', 
     'routes'=>array(
      array(
       'class'=>'CFileLogRoute', 
       'levels'=>'error, warning', 
      ), 
      // uncomment the following to show log messages on web pages 

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

     ), 
    ),