Dec 13 2009

XHprof — профайлер PHP от Facebook

Category: PHP,Отладкаingvar @ 17:32

Профилирование кода позволяет выявить медленные участки в коде, что позволит в случае необходимости устранить их.

Новый PHP профайлер XHprof от компании Facebook — это альтернатива Xdebug (PHP профайлер Xdebug). XHprof был разработан специально для Facebook и начиная с март 2009 года его исходный код стал доступен для скачивания.

Читать дальше


Apr 01 2009

Zend Framework Debug Toolbar

Category: PHP,Zend Framework,Отладкаingvar @ 10:09

2009-scienta_debugbar

Отладочная панель для Zend Framework, скачать Scienta ZF Debug Bar,
ознакомиться.

Аналогичные панели для других php framework:
New in symfony 1.2: Customize the Web Debug Toolbar
CodeIgniter Debug Toolbar
Kohana Debug Toolbar
PHP_Debug Toolbar — прародитель всех панелей


Dec 19 2008

Symfony: отлавливаем фатальные ошибки

Category: Symfony,Отладкаingvar @ 10:57

При разработке приложения на Symfony бывают ситуации, когда на странице получаем «белый экран» без описания ошибок, и в логах тоже пусто. Это так называемые «фатальные ошибки», которые можно отловить, но для этого надо задействовать перехватчик ошибок.

Без плагинов можно сделать следующее.

Способ №1: используем перехватчик ошибок
Листинг 1: Добавляем в файлы index.php и frontend_dev.php

error_reporting(E_ALL);
ini_set('log_errors', 'On');
ini_set('display_errors', 'Off');
ini_set('error_log', '../logs/fatal_server.log');

Способ №2: воспользоваться плагинами Symfony
sfErrorHandlerPlugin


Jul 25 2008

HTTP отладка трафика и запросов в Internet Explorer (IE)

Category: ОтладкаIgor @ 23:48

Приложения для тестирования, отладки, анализа HTTP трафика и запросов в Internet Explorer. По другому их ещё называют HTTP Sniffers. Они позволяют просматривать HTTP headers, все запросы, Cookies, статистику, время выполнения запросов

1. HttpWatch 5.3
Платное решение
Поддержка: IE6, IE7
Возможности
Описание: лучший отладчик в своем роде

2. HTTP Analyzer 3.3.1 (IE Inspector)
Платное решение
Возможности: Monitor HTTP, Trace HTTP, Debug HTTP, Capture HTTP, Track HTTP and Analyze HTTP/HTTPS!
Впечатление: тоже очень хороший отладчик

3. ieHTTPHeaders
Бесплатное решение
Версия: 2.0 (2007-11-11)

4. IEWatch 4.6
Платное решение

5. fiddler2
Бесплатное решение
Версия: 2.1.6.2 (2008-03-05)


Jul 25 2008

Инструменты отладки Javascript скриптов в Internet Explorer (IE)

Category: Javascript,ОтладкаIgor @ 23:34

Отладка скрипта в IE без использования дополнительных утилит невозможна. Т.е. в базовой поставке Interner Explorer тестировать сценарии не получиться. Ниже приводятся решения в виде расширений (extension ) для IE, так и в виде обычных Javascript файлов.

Читать дальше…


Jul 21 2008

PHP профайлер Xdebug

Category: PHP,ОтладкаIgor @ 23:11

Есть такой замечательный отладчик/профайлер Xdebug. Как для Windows так и для никсов.

Сайт разработчика: xdebug.org.

Что это такое это? Это расширение для PHP, которое работает как debugger и profiler. В настройках можно указать, что использовать, а что нет, можно все включить. Очень важные параметр xdebug.profiler_output_name, если его оставить по умолчанию, тогда вся отладочная информация будет записываться в один файл, а это бывает плохо, т.к. грузиться, например, страница, а с ней запускается 3- и больше файлов PHP: сама страница, Ajax, CSS, локализация. И в итоге в отладке будет последний файл. А так с помощью маски получаем уникальные файлы. В данном случае в таком виде: cachegrind.out.1208803760.D_home_demo-site_htdocs_sf_sandbox_web_index_php. В общем на офф. сайте можно найти подробнейшую помощь по Xdebug.

Подключение его в php.ini:

[Xdebug]
zend_extension_ts="php_xdebug-2.0.3-5.2.5.dll"
xdebug.default_enable = Off

xdebug.profiler_enable = Off ;Off
xdebug.profiler_output_dir = "/tmp/xdebug/cachegrid"
xdebug.profiler_append = On
xdebug.profiler_output_name = "cachegrind.out.%t.%s"

xdebug.auto_trace = Off
xdebug.trace_format = 0
xdebug.collect_params = 1
xdebug.collect_return = 1
xdebug.collect_includes = 1
xdebug.trace_options = 1
xdebug.trace_output_dir = "/tmp/xdebug/trace"

Программы для просмотра логов profiler:

  1. KCacheGrind — не юзал.
  2. WinCacheGrind — софтина под Винду, старая, апреля 2005 года. На её данные особо опираться не следует, т.к. информация относительная. Но общую картину дать может. Сам пользуюсь. Несколько раз показала интересные вещи, плюс помогла найти баги.
  3. CachegrindVisualizer — с офф. сайта. Это кроссплатформенная программа для визуализации файлов в формате Callgrind, в частности, его подмножества используемого Cachegrind. Профайлер Xdebug является совместимым с Cachegrind.
  4. Webgrind — Xdebug profiling c web frontend на PHP5. Все просто скопировал файлы, конфиг прочитался автоматом из настроек php.ini. Стоит только выбрать файл, и результат на экран. Минус — все написано на ПХП и если файл профайлера огромный, то будут тормоза.
  5. XDebugClient — это клиент для дебаггера, прослушает его и отображает у себя в консоли, только под Windows, не проверял.

Что можно почитать: