XDebug trace

Beavis

Banned
XDebug trace

Подскажите какую нибудь программку, которая могла бы открывать trace-файлы, сгенерированные XDebug'ом (*.xt) и анализировать их
Конечно XDebug и так создает файлы в человекочитаемом формате, но объем получается в сотни мегабайт, и глазами анализировать сложновато(
 

Krishna

Продался Java
которая могла бы открывать trace-файлы, сгенерированные XDebug'ом (*.xt)
О чём речь? Можно ссылку на документацию функционала XDebug о котором мы говорим? У профайлера вроде по дефолту cachegrind.out.1234...
 

Krishna

Продался Java
Wicked

Вот интересно, какой объём рынка пользователей таких утилит? Ну, то есть сколько людей занимается профилированием PHP относительно регулярно (больше, чем 1 раз для общего развития).

Меня интересует как это можно оценить, хотя бы приблизительно.
 

Beavis

Banned
Автор оригинала: baev
Если я правильно понял, тут:
http://forum.dklab.ru/viewtopic.php?t=20072
— ссылки на две такие программы.
не, это профайлер, это другая штука

Автор оригинала: triumvirat
может не надо от начала кода и до конца трассировку записывать, а писать только то, что надо?
так мне и надо от начала и до конца чтобы посмотреть где сколько памяти выделяется...

Автор оригинала: Wicked
а для более привычных .cg дофига программ приведено тут: http://xdebug.org/docs/profiler
ну с помощью профайлера можно только время мерить, память он не контролирует(


просто 64Мб памяти перестало сайту хватать, это наводит на подозрения что "кто-то слишком много ест" =)
 

weregod

unserializer
Автор оригинала: Krishna
Вот интересно, какой объём рынка пользователей таких утилит? Ну, то есть сколько людей занимается профилированием PHP относительно регулярно (больше, чем 1 раз для общего развития).
Меня интересует как это можно оценить, хотя бы приблизительно.
один из этих людей - я
как оценить даже думать лень ;)
 

Beavis

Banned
хорошо, тогда такой вопрос.. а кто как вообще контролирует расход памяти в скриптах?
 

Beavis

Banned
спасибо, посмотрю..

но всё таки мне кажется что если был бы аналог WinCacheGrind только не для профайлинга, а для trace, было бы очень удобно контролировать расход памяти... странно что ещё никто его не написал(
 

Wicked

Новичок
Beavis
заведи issue в xdebugtoolkit, может руки дойдут сделать :)

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

Beavis

Banned
Wicked
Да а что тут придумывать, сейчас trace-файлы и так представлены в удобном для чтения виде, всё наглядно, всё понятно...
А от программы хотелось бы чтобы она могла просто сворачивать/разворачивать вложенные функции и фильтровать те, которые памяти почти не выделяют.

Код:
    time        memory      mem_delta   function

    1,0618    1402384       +0           -> DbSimple_Generic_Database->_microtime() /home/power/domains/_lib/DbSimple/Generic.php:592
    1,0618    1402384       +0             -> microtime() /home/power/domains/_lib/DbSimple/Generic.php:889
    1,0618    1402384       +0             -> explode() /home/power/domains/_lib/DbSimple/Generic.php:889
    1,0728    1402640     +256           -> DbSimple_Mysql->_performQuery() /home/power/domains/_lib/DbSimple/Generic.php:593
    1,0792    1402848     +208             -> DbSimple_Generic_Database->_expandPlaceholders() /home/power/domains/_lib/DbSimple/Mysql.php:155
    1,0902    1403328     +480               -> is_array() /home/power/domains/_lib/DbSimple/Generic.php:711
    1,0929    1403368      +40               -> array_reverse() /home/power/domains/_lib/DbSimple/Generic.php:716
    1,0929    1403624     +256               -> array_pop() /home/power/domains/_lib/DbSimple/Generic.php:718
    1,0930    1403664      +40               -> DbSimple_Generic_Database->_expandPlaceholdersFlow() /home/power/domains/_lib/DbSimple/Generic.php:721
    1,1055    1403744      +80                 -> DbSimple_Mysql->_performGetPlaceholderIgnoreRe() /home/power/domains/_lib/DbSimple/Generic.php:753
    1,1055    1403824      +80                 -> trim() /home/power/domains/_lib/DbSimple/Generic.php:753
    1,1083    1405680    +1856                 -> preg_replace_callback() /home/power/domains/_lib/DbSimple/Generic.php:774
    1,1083    1407376    +1696                   -> DbSimple_Generic_Database->_expandPlaceholdersCallback() /home/power/domains/_lib/DbSimple/Generic.php:0
    1,1772    1405504    -1872             -> mysql_query() /home/power/domains/_lib/DbSimple/Mysql.php:156
    1,1774    1405504       +0             -> is_resource() /home/power/domains/_lib/DbSimple/Mysql.php:158
    1,1774    1405504       +0             -> preg_match() /home/power/domains/_lib/DbSimple/Mysql.php:159
-~{}~ 07.04.10 12:03:

и когда в файле миллион строк, эти отступы пробелами уже не спасают)

-~{}~ 07.04.10 12:05:

issue такой уже есть
http://code.google.com/p/xdebugtoolkit/issues/detail?id=2
 
Сверху