Как стать автором
Обновить

Комментарии 14

PHPStorm:
Tools -> Analyze Stacktrace.
Tools -> Analyze Xdebug Profiler Snapshot
Возможно я не вижу чего-то очевидного, или какой-нить кнопки в PHPStorm, но как эти два инстумента связанны с Execution trace?
Tools -> Analyze Xdebug Profiler Snapshot позволяет построить дерево callee/caller с указанием времени выполнения и места в коде.

П.С. Сам по себе формат трейса простейший и я справлялся консолью (например, cat trace.xt | grep mysql и т.д.)

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

Грепнуть трейс легко. Можно даже список файлов вытащить :)

cat abc.xt | sed -r 's~^.*/path/to/host(.*):.*$~\1~' | sort | uniq -c

Сложнее перейти к предыдущему/следующему вызову, особенно когда нужно относительно далеко забраться от найденного вызова.
Есть ещё вот такая тулза:
kcachegrind.sourceforge.net/html/Home.html
и для вин:
sourceforge.net/projects/qcachegrindwin/files/latest/download

Нормально читает и отображает файлы профилировки (не трассировки). Оставлю тут на всякий случай =)
Давным-давно тут даже был соответствующий пост: habrahabr.ru/post/75166/ (по ссылке список анализаторов)
Спасибо за ссылку! Но, как я понял после беглого просмотра, там речь про лог профилирования, а не трассировки.
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь

Ну можно заюзать AOP и повесить замеры памяти + скорости вызов нужных методов.

НЛО прилетело и опубликовало эту надпись здесь
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории