Файл кэширования очень маленький

#profiling #xdebug #kcachegrind

#профилирование #ошибка xdebug #kcachegrind

Вопрос:

Я новичок в профилировании. Я пытаюсь профилировать свой PHP с помощью xdebug.

Файл cachegrind создается, но не содержит значительного содержимого

Я установил xdebug.profiler_enable_trigger = 1 xdebug.profiler_output_name = cachegrind %p %H %R.cg

Я вызываю свою страницу с дополнительным параметром GET?XDEBUG_PROFILE=1 Мой файл cachegrind сгенерирован, но не имеет значительного содержимого

Вот мой вывод:

 version: 1
creator: xdebug 2.7.0alpha1 (PHP 7.0.30-dev)
cmd: C:WPNserverwwwDMResourcesClassesVendorClassesPHPMySQLiDatabaseMysqliDb.php
part: 1
positions: line

events: Time Memory

fl=(1)
fn=(221) php::mysqli->close
1244 103 -14832

fl=(42)
fn=(222) MysqliDbExt->__destruct
1239 56 0
cfl=(1)
cfn=(221)
calls=1 0 0
1244 103 -14832
  

Вот и все — я, должно быть, упускаю что-то фундаментальное.

Ответ №1:

Я думаю, вы столкнулись с этой ошибкой в xdebug. Как предложил Дерик в журнале отслеживания проблем, вы можете обойти эту проблему, добавив %r к выходному имени профилировщика. например: xdebug.profiler_output_name = cachegrind %p %H %R %r.cg (с добавлением %r случайного числа к имени)