Перейти к содержимому

Yii2 debug panel как включить

  • автор:

Отладочная панель yii2

Всем привет. Поставил basic yii на хостинг. Все работает, но вот заметил что у других внизу есть отладочная панель, а у меня ее нету? как ее включить?

По идее в /config/web.php внизу должно быть написано:

а в /web/index.php есть строчки

которые определяют, соответственно, константы и то, будет ли отображена панель.

Но на продакшне включать дебаг панель — не надо.

Если надо показывать панель для определенных лиц, кто с других компов заходит на сайт, тогда нужно прописывать allowedIPs

Использование отладочной панели HTTP-клиента ¶

Расширение Yii 2 HTTP Client предоставляет панель отладки, которая может быть интегрирована с модулем Yii 2 Debug и отображать выполненные HTTP-запросы.

Добавьте код ниже в конфигурацию вашего приложения, чтобы включить её (если у вас уже включён модуль Debug, то достаточно просто добавить конфигурацию панелей):

Эта панель позволяет добавить в логи выполненный HTTP-запрос, чтобы увидеть его ответ. Вы можете получить ответ в виде строки или передать его непосредственно в браузер.

Note: только обычные добавленные в лог HTTP-запросы могут быть выведены в панель отладки, запросы, отправляемые в пакетном режиме — не могут. Также, имейте ввиду, что содержимое добавленного в журнал запроса может быть обрезано, в соответствии с yii\httpclient\Client::$contentLoggingMaxSize, поэтому при его выполнении может произойти сбой или привести к неожиданным результатам.

Alexander Borshak

В Yii 2 во вновь созданном приложении в режиме разработки по умолчанию внизу страницы отображается панель отладчика, которая выглядит вот так:

Есть, правда, одна особенность — по умолчанию она отображается только при просмотре сайта с локального компьютера, то есть — с адреса 127.0.0.1. Лично я же использую виртуальную машину с Ubuntu Server, на котором и крутится приложение Yii 2 — а сама разработка идет из-под Windows. То есть, хост уже не локальный. И полосы отладчика не видно.

Поиски в Гугле довольно быстро раскрыли источник проблемы — в конфигурации надо дополнительно указать параметр allowedIPs, где перечислить допустимые IP.

Однако, чтобы найти где именно надо внести правки, ушло прилично времени. В одном месте (на Тостере) даже промелькнуло, что для отображения тулбара дебаггера надо включить SEO-ссылки через urlManager. Но все оказалось проще, и красивые ссылки не нужны (но если включить, то не мешают).

Итак, на странице официальной документации по Yii 2 написано, что для активации тулбара надо в конфигурации добавить блок

На самом же деле в файле config/web.php уже есть необходимый блок, он выглядит вот так:

if (YII_ENV_DEV) <
// configuration adjustments for ‘dev’ environment
$config[‘bootstrap’][] = ‘debug’;
$config[‘modules’][‘debug’] = [
‘class’ => ‘yii\debug\Module’,
];

$config[‘bootstrap’][] = ‘gii’;
$config[‘modules’][‘gii’] = [
‘class’ => ‘yii\gii\Module’,
];
>

Здесь надо добавить строку, в которой будет задан список IP-адресов, на которых будет работать дебаггер:

$config[‘modules’][‘debug’][‘allowedIPs’] = [‘192.168.22.45’, ‘192.168.22.46’, ‘192.168.1.12’];

При задании ограничений можно использовать маски, то есть, чтобы позволить видеть дебаггер с любого компьютера, достаточно написать:

У меня же, в целях хоть какой-то безопасности, указано:

Итого, приведенный выше блок должен иметь вот такой вид (с учетом вашего списка IP-адресов):

if (YII_ENV_DEV) <
// configuration adjustments for ‘dev’ environment
$config[‘bootstrap’][] = ‘debug’;
$config[‘modules’][‘debug’] = [
‘class’ => ‘yii\debug\Module’,
];
$config[‘modules’][‘debug’][‘allowedIPs’] = [‘192.168.*’];

$config[‘bootstrap’][] = ‘gii’;
$config[‘modules’][‘gii’] = [
‘class’ => ‘yii\gii\Module’,
];
>

Программирование с помощью Yii2: использование отладчика.

В серии уроков Программирование с Yii2 я рассказываю своим читателям о фреймворка Yii2 для PHP.

В сегодняшнем учебнике я покажу вам, как установить Yii2 Debugger, и мы подробно рассмотрим его возможности. Это мощный помощник, который часто недоиспользуется.

Когда вы кодируете и тестируете свое приложение, отладчик может показать вам ваш путь к приложению, запросы и переменные запроса, характеристики производительности, настройки сервера и фреймворка и многое другое. Пожалуйста, следуйте вместе со мной для расширенного тура.

Прежде чем мы начнем, пожалуйста, помните, я стараюсь участвовать в обсуждениях ниже. Если у вас есть вопрос или предложение по теме, пожалуйста, напишите комментарий ниже или свяжитесь со мной в Twitter @reifman .

Если вы заметили пробел между эпизодами серии Yii, это потому, что в прошлом году мне пришлось провести операцию на головном мозге . Благодарим вас за терпение и поддержку. Приятно регулярно писать, и я с нетерпением жду продолжения освещения Yii2.

Начинаем

Установка отладчика

Во-первых, вам нужно добавить библиотеку yiisoft/yii2-debug в composer.json или установить ее вручную следующим образом:

Существует несколько способов настроить отладчик в вашем приложении. Наиболее распространенный способ — сделать это в конфигурации main.php вашего приложения:

В качестве альтернативы вы можете программно настроить отладчик для определенного режима, как я сделал ниже:

Вышеприведенная конфигурация отключает отладчик во время приемочных тестов.

Доступ к отладчику

Первоначально отладчик появится в нижней части экрана вашего приложения:

Программирование с помощью Yii2: использование отладчика.

Однако, нажав на значок меньше, чем знак справа, вы можете свести к минимуму панель инструментов, как показано ниже:

Вы можете получить доступ к отладчику в любое время, щелкнув по нему или посетив URL-адрес отладки, как показано:

Консоль отладки

Начальная консоль отладки отобразит панель инструментов в верхней части экрана, а затем список, отсортированный по времени убавания всех выполненных путей вашего приложения по URL-адресу:

Программирование с помощью Yii2: использование отладчика.

Нажимая элементы Tag выше, вы можете получить доступ к более подробной информации об отладке для любого заданного запроса страницы.

Панель инструментов

Вы также можете щелкнуть по определенным элементам панели инструментов, например Time или DB, чтобы перейти непосредственно к дисплею консоли для запросов производительности или базы данных для текущей исполняемой страницы:

Программирование с помощью Yii2: использование отладчика.

Каждый элемент панели инструментов примерно соответствует одной из доступных панелей отладки :

Программирование с помощью Yii2: использование отладчика.

Панель запроса

На странице запроса отображаются все переменные, связанные с определенным URL-адресом, от переменных запроса до куки-файлов:

Программирование с помощью Yii2: использование отладчика.

На этих панелях консоли вы всегда можете нажать All, Latest или Last10, чтобы перейти к другим запросам URL (вперед или назад):

Программирование с помощью Yii2: использование отладчика.

Панель конфигурации

На панели Configuration вы увидите подробную информацию о установленной системе, ее номере версии, расширениях и аналогичной информации для PHP:

Программирование с помощью Yii2: использование отладчика.

Фактически, если вы продолжите прокрутку вниз, панель Configuration (чрезмерно) обширна, даже включает в себя кредиты для команды разработчиков PHP:

Программирование с помощью Yii2: использование отладчика.

Панель журналов

Чрезвычайно полезна. В Log Messages отображается трассировка выполнения текущей страницы приложения:

Программирование с помощью Yii2: использование отладчика.

Это особенно полезно для навигации кода, чтобы найти проблемы с кодом и отладки запросов к базе данных:

Программирование с помощью Yii2: использование отладчика.

Панель профилирования производительности

Представление по умолчанию панели Performance Profiling показывает, как долго выполнялся каждый элемент вашего запроса, например Duration:

Программирование с помощью Yii2: использование отладчика.

Вы можете сортировать по Duration и находить самые медленные элементы своей страницы:

Программирование с помощью Yii2: использование отладчика.

Панель запросов базы данных

Панель Database Queries показывает вам много вышеперечисленных фильтров по активности базы данных:

Программирование с помощью Yii2: использование отладчика.

Панель Asset Bundles

Панель Asset Bundles покажет вам все компоненты, которые Yii использует на вашей странице, например CSS и JavaScript, и какие файлы активов загружаются:

Программирование с помощью Yii2: использование отладчика.

Панель сообщений электронной почты

В Email Messages если просматриваемая страница отправила сообщение с помощью SwiftMailer от Yii, вы увидите заголовки и настройки полей:

Программирование с помощью Yii2: использование отладчика.

В целом, отладчик Yii2 предоставляет довольно широкий и подробный обзор того, что происходит внутри фреймворка и вашем приложении.

В заключение

Надеюсь, вам понравилось исследовать консоль отладки Yii и что она будет для вас продуктивной.

Мы довольно далеко продвинулись в серии Yii2 , и в этот момент я хотел бы услышать, какие функции и запросы по темам будут наиболее полезными для вас. Вы можете опубликовать их в комментариях ниже или отправить мне по электронной почте на моем веб-сайте Lookahead Consulting .

Если вы хотите узнать, когда выидет следующий учебник Yii2, то подпишитесь на меня @reifman в Twitter или проверьте мою страницу инструктора . Моя страница инструктора будет включать все статьи из этой серии, как только они будут опубликованы.

Чтобы изучить более продвинутое приложение Yii2, ознакомьтесь с серией про стартап и Планировщиком встреч . Приложение теперь находится в альфа-релизе, и вы можете планировать встречи с друзьями. Вы также можете загрузить код — это с приложение открытым исходным кодом.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *