Comments 24
Эх, что-нить такое же, только чтобы можно было поставить на старонний хост, т.е. без копания в php.ini, есть?
0
Очень интересная вещь. Только пока не понятно, как понимать логи, которые попадают в WinCacheGrint
0
а их понимать не надо. там указано время выполнения каждой строки/время выполнения функции/кол-во вызовов и т.д.
все ясно вроде.
все ясно вроде.
0
Вещь не только интересная, но и полезная сохраннил для потомков на http://www.xdebug.ru
0
Спасибо!
+1
Простите за "дубль" этого же комментария в первой части этой стаьи, но может кому пригодится простенькое решение:
Задача: просто у удобно использовать такой функционал (согласно конфигу)
# подключаемый вспомогательный файл
# для виндовой утилиты WinCacheGrind (выдает профайл-лог)
# При отладке в адресной строке браузера вводить
# GET-параметр ?XDEBUG_PROFILE (http://yourhost/?XDEBUG_PROFILE).
# Открыть результат WinCacheGrind’ом
# php_value auto_prepend_file \home\debug.class.php
Путь: метод набирания вручную "http://yourhost/?XDEBUG_PROFILE" не удобен.
Решение: на панели закладок ФФ создаем новую закладку (клик правой кнопкой мыши)
и в поле "адрес" вводим (без кавычек, конечно же)
"javascript:document.location = document.location + '?XDEBUG_PROFILE';"
Результат: любая открытая вкладка (с нужным рабочим сайтом) будет перезагружена с добавлением "?XDEBUG_PROFILE".
Задача: просто у удобно использовать такой функционал (согласно конфигу)
# подключаемый вспомогательный файл
# для виндовой утилиты WinCacheGrind (выдает профайл-лог)
# При отладке в адресной строке браузера вводить
# GET-параметр ?XDEBUG_PROFILE (http://yourhost/?XDEBUG_PROFILE).
# Открыть результат WinCacheGrind’ом
# php_value auto_prepend_file \home\debug.class.php
Путь: метод набирания вручную "http://yourhost/?XDEBUG_PROFILE" не удобен.
Решение: на панели закладок ФФ создаем новую закладку (клик правой кнопкой мыши)
и в поле "адрес" вводим (без кавычек, конечно же)
"javascript:document.location = document.location + '?XDEBUG_PROFILE';"
Результат: любая открытая вкладка (с нужным рабочим сайтом) будет перезагружена с добавлением "?XDEBUG_PROFILE".
+1
Товарищи, у кого-нибудь получалось настроить многопользовательскую отладку на удаленном сервере с помощью xdebug?
Имеется в наличии:
1. Сервер для разработки PHP-проектов, с установленной последней версией xdebug
2. Несколько девелоперов, работающих над проектами, которые лежат на этом сервере.
Хочется:
- иметь возможность использовать пошаговую отладку в проектах на этом сервере
Пока что удалось:
- настроить пошаговую отладку на локальной машине девелопера с помощью Eclipse + PDT + PDT XDebug Extension
У xdebug есть директива xdebug.remote_host, в которой нужно указывать хост рабочей машины девелопера (на которой стоит Eclipse и прочие средства). Собственно, машин таких несколько, и не хотелось бы "отлаживать по очереди".
Может, кто имеет опыт подобной настройки?
Имеется в наличии:
1. Сервер для разработки PHP-проектов, с установленной последней версией xdebug
2. Несколько девелоперов, работающих над проектами, которые лежат на этом сервере.
Хочется:
- иметь возможность использовать пошаговую отладку в проектах на этом сервере
Пока что удалось:
- настроить пошаговую отладку на локальной машине девелопера с помощью Eclipse + PDT + PDT XDebug Extension
У xdebug есть директива xdebug.remote_host, в которой нужно указывать хост рабочей машины девелопера (на которой стоит Eclipse и прочие средства). Собственно, машин таких несколько, и не хотелось бы "отлаживать по очереди".
Может, кто имеет опыт подобной настройки?
0
а можно подробнее про PDT XDebug Extension? где его взять, как подключить к Eclipse?
0
Вот это - главный линк к оному расширению для Eclipse.
Вкратце:
1. Установить Eclipse.
2. Установить PDT для него.
3. Скачать последний PDT XDebug Extension. На странице, ссылка на которую приведена выше, есть линк на страницу загрузки, но я его также приведу здесь. Это линк на багзиллу Eclipse, и PDT XDebug Extension прикреплен там в виде аттача к багу. Пока, к сожалению, он распространяется только в таком виде. Скачивать нужно самый свежий файл, озаглавленный как "Prebuilt Binary of XDebug ...".
4. В полученном архиве находится 2 jar-файла, являющиеся расширениями к Eclipse, и очень толковая инструкция к использованию XDebug в формате PDF. К сожалению, в этой инструкции ничего не сказано по поводу того, что делать с указанными jar-файлами для того, чтобы подключить их к Eclipse и научить его общаться с XDebug, но на самом деле всё очень просто - их нужно переписать в папочку eclipse/plugins и перезапустить Eclipse, а дальше читать инструкцию, которая, я повторяю, очень толковая. Мне удалось настроить пошаговую отладку php-проектов, запущенных на локальном Denwer'е.
Вкратце:
1. Установить Eclipse.
2. Установить PDT для него.
3. Скачать последний PDT XDebug Extension. На странице, ссылка на которую приведена выше, есть линк на страницу загрузки, но я его также приведу здесь. Это линк на багзиллу Eclipse, и PDT XDebug Extension прикреплен там в виде аттача к багу. Пока, к сожалению, он распространяется только в таком виде. Скачивать нужно самый свежий файл, озаглавленный как "Prebuilt Binary of XDebug ...".
4. В полученном архиве находится 2 jar-файла, являющиеся расширениями к Eclipse, и очень толковая инструкция к использованию XDebug в формате PDF. К сожалению, в этой инструкции ничего не сказано по поводу того, что делать с указанными jar-файлами для того, чтобы подключить их к Eclipse и научить его общаться с XDebug, но на самом деле всё очень просто - их нужно переписать в папочку eclipse/plugins и перезапустить Eclipse, а дальше читать инструкцию, которая, я повторяю, очень толковая. Мне удалось настроить пошаговую отладку php-проектов, запущенных на локальном Denwer'е.
0
Если не ошибаюсь, то в php.ini или xdebug.ini нужно закомментировать директиву xdebug.remote_host и добавить
; для дебага с разных машин
xdebug.remote_connect_back=1
; для дебага с разных машин
xdebug.remote_connect_back=1
0
Начиная с 2.0.0RC4, Xdebug сохраняет время выполнения в микросекундах (10-6c), а до этого сохранял в десятках миллисекунд (10-5c).
В связи с этим при просмотре результатов профайлинга в WinCacheGrind все числа в 10 раз меньше настоящих (например, 40мс вместо 400мс).
Так как WinCacheGrind уже давно не обновлялась, пытался найти более старые версии xdebug под win, но так ничего и не нашёл.
В связи с этим при просмотре результатов профайлинга в WinCacheGrind все числа в 10 раз меньше настоящих (например, 40мс вместо 400мс).
Так как WinCacheGrind уже давно не обновлялась, пытался найти более старые версии xdebug под win, но так ничего и не нашёл.
0
не надо искать более старые версии. XDebug1 сохраняет данные в формате, который WinCacheGrind не понимает (обычный txt). кстати, а где вы нашли информацию про время выполнения?
PS: сайт проекта обновился немного. кто-то спрашивал про remote debbugin' http://www.xdebug.org/docs/remote
PS: сайт проекта обновился немного. кто-то спрашивал про remote debbugin' http://www.xdebug.org/docs/remote
0
версия 2.0 под Win, для PHP разных версий: http://pecl4win.php.net/ext.php/php_xdeb…
0
Для 2.0 тоже в WinCacheGrind время выводится неправильно, из-за смены единиц измерения. Об этом написано в changelog'е версии 2.0RC4 от [17-05-2007].
Поэтому решил пользовать версию 2.0RC3, с которой WinCacheGrind правильно отображает время выполнения.
Use µ seconds instead of a tenths of µ seconds to avoid confusion in profile information.
Поэтому решил пользовать версию 2.0RC3, с которой WinCacheGrind правильно отображает время выполнения.
0
Под windows и mac с июня 2007 есть CachegrindVisualizer - http://code.google.com/p/cachegrindvisualizer/
0
появился Xdebug под PHP 5.3.0 - http://xdebug.org/link.php?url=xdebug202…
0
текущая версия - xdebug 2.0.2
Fixed bug #325: DBGP: "detach" stops further sessions being established from Apache.
Fixed bug #321: Code coverage crashes on empty PHP files.
Fixed bug #318: Segmentation Fault in code coverage analysis.
Fixed bug #315: Xdebug crashes when including a file that doesn't exist.
Fixed bug #314: PHP CLI Error Logging thwarted when XDebug Loaded.
Fixed bug #300: Direction of var_dump().
Always set the transaction_id and command. (Related to bug #313).
Fixed bug #325: DBGP: "detach" stops further sessions being established from Apache.
Fixed bug #321: Code coverage crashes on empty PHP files.
Fixed bug #318: Segmentation Fault in code coverage analysis.
Fixed bug #315: Xdebug crashes when including a file that doesn't exist.
Fixed bug #314: PHP CLI Error Logging thwarted when XDebug Loaded.
Fixed bug #300: Direction of var_dump().
Always set the transaction_id and command. (Related to bug #313).
0
Sign up to leave a comment.
XDebug — если при отладке вам надоели echo(), var_dump() и print_r(). Часть 2.