Yii. Режим отладки и журналирование ошибок
Кому-то может показаться странным, зачем включать режим отладки, когда на сайте еще совсем ничего нет. Но я считаю, что лучше это сделать заранее, лишним не будет :)
http://www.simplecoding.org/yii-php-framework-sozdayom-igrovoj-sajt-chast-8-poisk-oshibok.html
http://yiiframework.ru/doc/cookbook/ru/core.development
Итак, за включение режима отладки отвечает константа
, необходимо этой константе присвоить значение
defined('YII_DEBUG') or define('YII_DEBUG',true);YII_DEBUG
в файле index.php
. Чтобы включить режим отладки, необходимо этой константе присвоить значение
true
:
Включение журналирования ошибок осуществляется в уже знакомом нам конфигурационном файле
protected/config/main.php.
Как гласит документация, фреймворк предлагает
нам несколько вариантов ведения лога: в файл, вывод на экран, запись
в базу данных, отправка по eMail.
За ведение лога отвечает компонент приложения
CLogRouter. Подключаем и настраиваем
его.
Для логирования запросов БД, необходимо добавить следующие строки (источник):
Если вы используете аддон FireBug, то Yii предоставляет возможность вывода логов в его консоль:
Для контроля за расходуемыми ресурсами, можно использовать такие параметры, как
'log'=>array( 'class'=>'CLogRouter', 'routes'=>array( … array( // отображается внизу страницы 'class'=>'CWebLogRoute', 'levels'=>'profile, trace, info', ), ), ),
Для логирования запросов БД, необходимо добавить следующие строки (источник):
'db'=>array( … // включаем профайлер 'enableProfiling'=>true, // показываем значения параметров 'enableParamLogging' => true, ),
Если вы используете аддон FireBug, то Yii предоставляет возможность вывода логов в его консоль:
'log' => array( 'class' => 'CLogRouter', 'routes' => array( array( 'class' => 'CWebLogRoute', 'categories' => 'application', 'showInFireBug' => true ), ), ),
Для контроля за расходуемыми ресурсами, можно использовать такие параметры, как
memoryUsage
- возвращает объём использованной памяти (в байтах) и executionTime
– время создания страницы:$memory = round(Yii::getLogger()->memoryUsage/1024/1024, 3); $time = round(Yii::getLogger()->executionTime, 3); echo '<br />Использовано памяти: '.$memory.' МБ<br />'; echo 'Время выполнения: '.$time.' с<br />';Основные источники:
http://www.simplecoding.org/yii-php-framework-sozdayom-igrovoj-sajt-chast-8-poisk-oshibok.html
http://yiiframework.ru/doc/cookbook/ru/core.development
Этот комментарий был удален автором.
ОтветитьУдалитьО выводе в FireBug не знал, спасибо !
ОтветитьУдалить