Профилировщик Xdebug - Неверный формат снимка профилировщика
Я пытаюсь открыть вывод профилировщика xdebug в PhpStorm, но получаю ошибку:
Incorrect profiler snapshot format
For input string: "fl=(2)"
Я не могу найти никаких указаний на то, что может быть причиной этого.
Я на OSX 10.13.4, PhpStorm версии 2018.1, запускаю процесс на PHP 5.6.33 с xdebug 2.5.5
Вот моя конфигурация php.ini:
[xdebug]
zend_extension=/usr/local/Cellar/php56/5.6.33_9/lib/php/xdebug.so
xdebug.profiler_enable=1
xdebug.profiler_output_dir=/tmp/debug/
xdebug.profiler_output_name=cachegrind.out.%c
xdebug.profiler_enable_trigger=1
xdebug.remote_enable=1
xdebug.remote_host=localhost
xdebug.remote_port=9000
xdebug.idekey=PHPSTORM
Я думаю, что вывод профилировщика выглядит немного странно:
fl=(2)
fn=(5) php::spl_autoload_call
23 80
cfl=(1)
cfn=(4)
calls=1 0 0
23 2045
Я не знаю, для чего эти числа в скобках, но я думаю, что это то, что отключает анализатор PhpStorm.
2 ответа
Я думаю, что нашел источник проблемы или, по крайней мере, ее часть. Похоже, это связано с самим сценарием. Трудно сказать, почему именно, может быть, потому что он запускает процесс демона, и это может потенциально испортить профилировщик, не уверен. Но если я запускаю профилировщик на что-то еще, это работает.
Это моя конфигурация, попробуйте:
zend_extension=/usr/lib/php5/20090626/xdebug.so
xdebug.idekey=PHPSTORM
xdebug.default_enable=1
xdebug.remote_enable=1
xdebug.remote_handler="dbgp"
xdebug.remote_host=127.0.0.1
xdebug.remote_port=9001
xdebug.remote_mode=req
xdebug.remote_autostart=0
xdebug.remote_connect_back=1
xdebug.remote_log = "/tmp/xdebug_cli.log"
xdebug.profiler_enable=1
И не забудьте включить прослушивание в phpstorm: