Comments 47
Красивая? Вы лучше посмотрите красота какая для ZendFramework — code.google.com/p/zfdebug/
-1
как раз сегодня наткнулся на подобную реализацию
www.yiiframework.com/extension/yiidebugtb
но yii-debug-toolbar мне нравится больше
www.yiiframework.com/extension/yiidebugtb
но yii-debug-toolbar мне нравится больше
+1
Ага, в Kohana такую же сделали — удобная весчь.
0
Мне одному это напоминает django-debug-toolbar ???
0
Врядли одному.
А какая собственно разница? Главное, чтобы работало, не так ли?
А какая собственно разница? Главное, чтобы работало, не так ли?
0
Symfony в свое время очень радовал такой панелькой. Джанго, собственно, тоже. Почему бы и нет? :)
0
Он не просто напоминает. django-debug-toolbar'a мне в Yii очень не хватало, вот я его частично и перенес.
+1
А еще рекомендую xdebug у него вывод тоже очень информативен и есть куча всяких дополнительных возможностей.
0
UFO just landed and posted this here
Не нашел расширения для Yii. На досуге попробую прикрутить. Спасибо за наводку.
+1
Не нужны никакие расширения Yii, это расширение PHP, которое для своей работы ничего не требует от php-кода и является полноценным дебаггером (интерфейс для отладки через xdebug есть во многих IDE'шках).
+1
Я понимаю, что это самостоятельный продукт. Но нужно его же интегрировать в ядро. А для этого нужно расширять CLogRouter с функциями xdebug
0
Не нужно, xdebug не выполняет функции логирования, соответственно CLogRouter здесь вообще не при делах, разве что можно вывести служебную информацию типа отправленных хедеров, списка ошибок, использования памяти(а это уже вторичный функционал).
С помощью xdebug вы можете к примеру задавать через ide'шку точки останова, где выполнение php кода будет останавливаться и через ту же ide смотреть значения нужных вам переменных, выполнять код пошагово, причем можно даже на удаленном сервере.
Это основное назначение. И я здесь не вижу необходимости и способов интеграции с фреймворком, кроме как вывести разного рода мелочи типа использования памяти.
С помощью xdebug вы можете к примеру задавать через ide'шку точки останова, где выполнение php кода будет останавливаться и через ту же ide смотреть значения нужных вам переменных, выполнять код пошагово, причем можно даже на удаленном сервере.
Это основное назначение. И я здесь не вижу необходимости и способов интеграции с фреймворком, кроме как вывести разного рода мелочи типа использования памяти.
0
Я Вас понял. Просто не работал с это библиотекой и не знаю её принципов. Посмотрю на досуге.
0
Вы не правы. У xdebug очень богатый функционал. Который можно поделить на 3 части.
1. Удаленная отладка — это то про что вы говорите.
2. Весьма навороченный профайлер (собранный лог можно анализировать в специальных программах).
3. Более информативный вывод ошибок (то о чем в посте). Вывод можно настраивать (куча всяких настроек).
Но я наверняка уверен, что интегрировав в Yii можно будет добиться еще больших результатов.
1. Удаленная отладка — это то про что вы говорите.
2. Весьма навороченный профайлер (собранный лог можно анализировать в специальных программах).
3. Более информативный вывод ошибок (то о чем в посте). Вывод можно настраивать (куча всяких настроек).
Но я наверняка уверен, что интегрировав в Yii можно будет добиться еще больших результатов.
0
Это вы сами закастомайзили дизайн yii-debug-toolbar'а или он такой в новых версиях? Неплохо выглядит.
Мне вот не хватает возможности включать/выключать тулбар get-переменной, которая потом сохраняется в сессии, надо будет как-то набросать такой костылик.
Еще очень кстати была бы вкладочка с переменными, которые передаются во вьюшки, это правда придется в рендерер внедряться, но если это получится сделать к примеру миксином, который через конфиг можно будет присобачить к любому рендереру — было бы чудесно. (Может такое уже есть, тогда делитесь ссылкой)
Мне вот не хватает возможности включать/выключать тулбар get-переменной, которая потом сохраняется в сессии, надо будет как-то набросать такой костылик.
Еще очень кстати была бы вкладочка с переменными, которые передаются во вьюшки, это правда придется в рендерер внедряться, но если это получится сделать к примеру миксином, который через конфиг можно будет присобачить к любому рендереру — было бы чудесно. (Может такое уже есть, тогда делитесь ссылкой)
0
Извиняюсь, насчет дизайна панельки — все ясно, я перепутал с этой штукой, которую и использую в своих проектах.
Кстати, можно было бы сравнить эти две панельки, интересно, у какой из них больше преимуществ.
Кстати, можно было бы сравнить эти две панельки, интересно, у какой из них больше преимуществ.
0
Сегодня утром ставил yiidebugtb и моё личное мнение — сыровато.
yii-debug-toolbar более информативен и красив.
yii-debug-toolbar более информативен и красив.
+1
Вот на выходных «допилил». Появилась еще одна панель которая выводит информацию о всех отрендеренныъ вьюшках, дамп переданных во вью данных и состояния контроллера(ов)/виджетов на момент рендеринга вьюшек. Теперь бы отзывы от общественности получить )
0
Раз дело зашло об инструментах для отладки под Yii, могу еще посоветовать www.yiiframework.com/extension/php-console/ для тех, кто использует Chrome (расширение для работы с phpConsole, аналог FirePhp, отправляет всю отладочную информацию в хедерах)
+1
Спасибо всем за отзывы, критику и предложения. Ввиду дефицита времени в данный момент, инструмент получился достаточно скудный по функционалу, но в ближайшее время я планирую возобновить работу и добавить массу полезных вещей. Если у вас есть какие то идеи по улучшению этого инструмента — размещайте на GitHub, по мере возможности буду реализовывать.
+3
Почему-то sql запросы не отображаются. Я делаю через CActiveDataProvider
0
В компонент db нужно добавить параметр enableProfiling = true
+1
Там в ссылке на расширение в каталоге расширений Yii закралась ошибка — лишняя точка в линке. Поэтому ссылка не работает. Подправьте пожалуйста.
+1
Очень мешает тот факт, что расширение не работает, когда на странице есть JS ошибки.
yiidebugtb в таких случаях продолжает работать.
yiidebugtb в таких случаях продолжает работать.
0
Если драйвер БД dblib, то упадет по эксепшену при попытке взять аттрибуты соединения, т.к. драйвер не поддерживает эту функцию. Это файл yii-debug-toolbar/panels/YiiDebugToolbarPanelSql.php строка 201. Предлагаю либо там добавить проверку на
'dblib' !== $connection->driverName
или обернуть все это дело в try{}catch 0
А можно по аналогии с ipFilter добавить фильтр по юзерам?
0
Отличная панелька! Спасибо за ваш труд)
0
C yiilite не работает…
0
бывает что расширение подглючивает, и он выводит только линк для показа debug-toolbar, но самого тулбара так и не выводит.
для этого небольшой фикс в YiiDebugToolbarRoute.php:
для этого небольшой фикс в YiiDebugToolbarRoute.php:
public function collectLogs($logger, $processLogs=false)
{
$startEndTime = $this->_endTime;
parent::collectLogs($logger, $processLogs);
if ($this->_endTime == $startEndTime) {
$this->processLogs(null);
}
}
protected function processLogs($logs)
{
$this->_endTime = microtime(true);
// disable log route based on white list
$this->enabled = $this->enabled && $this->checkContentTypeWhitelist();
$this->enabled && $this->getToolbarWidget()->run();
}
0
Если отладка производится на компьютере с динамическим IP, то удобно в конфигурации прописать так:
Или выбрать любого другого провайдера предоставляющего услугу динамической привязки. Выбор последнего у меня обусловлен только тем что его поддерживаем мой модем.
Единственное замечание если в настройках прописана строка константа с IP, то отключение YiiDebugToolbar можно делать только через 'enabled'=>YII_DEBUG, в случае же с gethostbyname лучше строку все же комментировать так же.
'ipFilters'=>array(
gethostbyname('XXX.dyndns-ip.com'),
),
Или выбрать любого другого провайдера предоставляющего услугу динамической привязки. Выбор последнего у меня обусловлен только тем что его поддерживаем мой модем.
Единственное замечание если в настройках прописана строка константа с IP, то отключение YiiDebugToolbar можно делать только через 'enabled'=>YII_DEBUG, в случае же с gethostbyname лучше строку все же комментировать так же.
0
Меня вот что-то смущает один момент: а на продакшене 'enabled'=>YII_DEBUG же будет в false установлено и логирования вообще всего не будет. Это же ни есть хорошо?
0
На продакшене лучше использовать только нативное логирование пхп и только критических ошибок, дабы не нагружать основной процесс. Логирование на уровне фремворка включается только на dev и demo площадках.
0
Sign up to leave a comment.
Расширение yii-debug-toolbar