XCallGraph - новый тул для просмотра профайлов XDebug!

Krishna

Продался Java
Ну вот, собственно релизю первую версию XCallGraph

Работает с профилями XDebug >= 2.1.3.

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

Качать дистрибутив и смотреть скрины тут: http://sourceforge.net/projects/xcallgraph/

Инструкции по профилированию с помощью XDebug читать тут: http://xdebug.org/docs/profiler

Большая просьба оставлять фидбек - писать на почту, указанную в Help/About, писать тут вопросы и отзывы.




Что скорее всего будет реализовано в следующих релизах:

* Оптимизация производительности
* Группировка с агрегацией по файлам и директориям

Что может быть реализовано в перспективе (не в последнюю очередь зависит от востребованности проекта у пользователей и их отзывов/реквестов)

* Интеграция в PDT
* Работа через сетевое соединение, с отображением профилей запросов в реальном времени (нужен патч XDebug)
* Вывод графа в графическом режиме (Аля Cachegrindvizualizer, но без такого гемора и нужды в сторонних тулзах)
* Экспорт визуального графа в SVG/PNG
* Отображение UML-диаграммы последовательности.
* Экспорт UML-диаграммы последовательности в .XMI (формат хранения UML, который понимают UML-редакторы)
* Печать визуального графа / UML с поддержкой многостраничности (делать большие плакатики из нескольких листов A4)

Так же, жду ваших идей и предложений.

UPD1:
Выложена версия 0.1.1 !

Изменения:
* Хоткей на открытие файла
* Сборка под Linux (пока только GTK)
* Корректное сообщение об ошибке для слишком старых версий XDebug
* Багфиксы ошибок парсинга профилей сделанных под виндой
 

Krishna

Продался Java
Отпишитесь если кто просто успешно запустил хотя бы )))
 

Krishna

Продался Java
Иван Redjik Матвеев
Да. Возможно даже сегодня.
И для Linux, на неделе.
 

Krishna

Продался Java
Поступил первый фидбек - тот билд, что был залит ранее не работал с JRE 1.6. (требовал 1.7)
Пофиксено, файл обновлён без изменения версии (0.1.0)
 

Krishna

Продался Java
Raziel[SD]
Спасибо!
Не смог распарсить, все в аттаче.
У тебя XDebug версии 0.9.6 (или другая, которая пишет, что она 0.9.6), а тулза работает с 2.1.3 и выше. Дело в том, что там менялся формат файлов, причём так круто менялся, что даже вот не смогла она прочитать версию в 0.9.6 и поэтому не выдала более корректное сообщение об ошибке версии.

З.Ы. хотелось бы хоткей на открытие файла(Ctrl+O)
Сделаю в следующей версии.
 

Krishna

Продался Java
З.Ы. Щас вспомнил, 0.9.6 это не версия XDebug, а видимо формата. В общем, диагноз остаётся прежним. Нужно обновить XDebug хотя бы до 2.1.3.
Причём, не только чтобы моя прога работала, там ещё и ошибки в профилировании. В 2.1.2 например последняя из известных критических.
 

Redjik

Падаван
ради этого дела поставил php 5.3.12 на денвер и последний xdebug.

Полет нормальный - все работает.

UPD.
При клике на Show Internal Functions, если в списке (я так понял), только internal functions - вылетает ошибка - после нее полет нормальный
 

Krishna

Продался Java
При клике на Show Internal Functions, если в списке (я так понял), только internal functions - вылетает ошибка - после нее полет нормальный
Просим ошибку в студию, по возможности со скриншотом. Ну или хотя бы текст и на какой вкладке это происходит.
 

Redjik

Падаван


происходит на любой из вкладок, после этого просто пустое поле, как будто чистый загрузил.

если снова кликнуть по Show Internal Functions, все встает на места
 

Redjik

Падаван
Офигенская штука, я раньше профилировал по логам в yii, но так намного удобнее.
Только вот я немножко не врубаюсь в некоторые моменты, но если не дойдет до самого - спрошу.
 

Krishna

Продался Java
А могешь ещё выкласть сюда или прислать на епочту XCallGraph\workspace\.metadata\.log? И, по возможности, cachegrind.out.4508 :)
 

Krishna

Продался Java
Офигенская штука, я раньше профилировал по логам в yii, но так намного удобнее.
Только вот я немножко не врубаюсь в некоторые моменты, но если не дойдет до самого - спрошу.
Ну таких "штук" и раньше много было, начиная с почившего в бозе Wincachegrind, просто у них у всех свои недостатки. Задача сделать наиболее юзабельный и функциональный вариант.

Да, там многое смущать может, если сам не догадаешься - не стесняйся спрашивать)
 

Raziel[SD]

untitled00
З.Ы. Щас вспомнил, 0.9.6 это не версия XDebug, а видимо формата. В общем, диагноз остаётся прежним. Нужно обновить XDebug хотя бы до 2.1.3.
Причём, не только чтобы моя прога работала, там ещё и ошибки в профилировании. В 2.1.2 например последняя из известных критических.
Может тогда версию проверять ?

Обновил xdebug, все заработало, мне нравится, спасибо.

UPD.
При клике на Show Internal Functions, если в списке (я так понял), только internal functions - вылетает ошибка - после нее полет нормальный
Если нажать "show internal functions" и "show includes directive", а потом отключить обе(в любой последовательности) вылетает ошибка эта ошибка.

З.Ы. на сайте xdebug'а есть замечательная тулза, подробно показывает, как установить xdebug: http://xdebug.org/wizard.php
 
Сверху